Configuration for nodes (zookeeper & config files) is confusion and inconsistent between node types
- Dominant language
- Java
- Stars
- 6.1k
- Forks
- 1.5k
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 189
Description
Configuing nodes is faily confusing! For example, brokers and servers require `-zkAddress` parameters, whether or not they are provided a `-configFileName`. Meanwhile, controllers do not allow that parameter if a `-configFileName` is provided and instead has `controller.zk.str` configuration value. Same for the the `-clusterName` and `controller.helix.cluster.name` configuration value.
This difference makes orchestration confusing.
Also, as a user the `zk.str` configuration name is pretty meaninless and doesn't help with understanding.
I imagine comitting to a consistent pattern among the launcher script commands would help: require `-zkAddress` on all types. Additinally, I imagine having a clear config value that is consistent for all of them, eg `zookeeper.address` (making the config agnostic of `controller` vs. `broker` vs. `server`)
Contributor guide
Research direction
Start by comparing the launcher commands and configuration handling for brokers, servers, and controllers, focusing on -zkAddress, -configFileName, -clusterName, and the related configuration keys. Done means the node types follow a documented, consistent pattern for ZooKeeper and cluster configuration, with clear naming for the relevant config values.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- distributed-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100