Strimzi uses an init container to gather additional information about the running Kafka node. This is done in two situations:
- For node port listeners, we need to find out the node address to use it as the advertised address
- For rack awareness, we need to find the corresponding label to configure the rack
Right now, we configure the init container for all Kafka nodes. But it is really needed only for brokers or mixed nodes. Controller-only nodes do not need it because:
- They are never exposed through node ports
- Rack awareness does not make sense for them since they have only the metadata topic with replicas on each controller - so there is nothing to distribute.
We should clean this up and use the init container only when needed.