rondagostino commented on pull request #11503:
URL: https://github.com/apache/kafka/pull/11503#issuecomment-975956591


   > I think we need to discuss the question of whether to include 
controller.listener.names in listener.names a bit more.
   
   @cmccabe As discussed offline, it turns out that the current code already 
forbids `controller.listener.names` from appearing in `listeners` under some 
circumstances for the KRaft broker-only setup.
   
   Config 1: yields **"inter.broker.listener.name must be a listener name 
defined in advertised.listeners."**
   ```
   process.roles=broker
   node.id=2
   controller.quorum.voters=1@localhost:9093
   listeners=PLAINTEXT://localhost:9092
   inter.broker.listener.name=PLAINTEXT
   controller.listener.names=PLAINTEXT
   ```
   
   Config 2: yields **"advertised.listeners cannot contain any of 
controller.listener.names"**
   ```
   process.roles=broker
   node.id=2
   controller.quorum.voters=1@localhost:9093
   listeners=PLAINTEXT://localhost:9092
   inter.broker.listener.name=PLAINTEXT
   controller.listener.names=PLAINTEXT
   advertised.listeners=PLAINTEXT://localhost:9092
   ```
   
   Config 3: this works as it should; `controller.listener.names` does not 
appear in `listeners`:
   ```
   process.roles=broker
   node.id=2
   controller.quorum.voters=1@localhost:9093
   listeners=PLAINTEXT://localhost:9092
   inter.broker.listener.name=PLAINTEXT
   controller.listener.names=CONTROLLER
   listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
   ```
   
   However, adding CONTROLLER as a listener is acceptable with the current 
code.  For example:
   
   **Currently acceptable, should be rejected**
   ```
   process.roles=broker
   node.id=2
   controller.quorum.voters=1@localhost:9093
   listeners=PLAINTEXT://localhost:9092,CONTROLLER://localhost:9093
   inter.broker.listener.name=PLAINTEXT
   controller.listener.names=CONTROLLER
   listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
   ```
   
   The inclusion of `CONTROLLER://localhost:9093` in `listeners` adds/does 
nothing -- in particular, the broker does **not** listen there, so really all 
it does is encourage confusion.
   
   So while this is a breaking change, it is only a breaking change for certain 
configurations, and it is likely acceptable given that KRaft is still in 
Preview rather than General Availability.
   
   It would be good to add some text about this in KIP-631.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to