THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- We plan to add the following new metrics :
- kafka.network:name=ControlPlaneRequestQueueSize,type=RequestChannel
kafka.network:name=ControlPlaneResponseQueueSize,type=RequestChannel
to show the size of the new control plane, request and response queues. - kafka.network:name=ControlPlaneNetworkProcessorIdlePercentControlPlaneNetworkProcessorAvgIdlePercent,type=SocketServer
kafka.server:name=ControlPlaneRequestHandlerIdlePercentControlPlaneRequestHandlerAvgIdlePercent,type=KafkaRequestHandlerPool
with the former monitoring the idle percentage of pinned control plane network thread, and the latter monitoring the idle percentage of pinned control plane request handler thread. (Pinned control plane threads are explained in details below.) - kafka.network:name=ControlPlaneExpiredConnectionsKilledCount,type=SocketServer
to show the number of expired connections that were disconnected on the control plane.
- kafka.network:name=ControlPlaneRequestQueueSize,type=RequestChannel
- The meaning of the existing metric
kafka.network:name=RequestQueueSize,type=RequestChannel
will be changed, and it will be used to show the size of the data request queue only, which does not include controller requests. - The meaning of the two existing metrics
kafka.network:name=NetworkProcessorAvgIdlePercent,type=SocketServer
kafka.server:name=RequestHandlerAvgIdlePercent,type=KafkaRequestHandlerPool
will be changed slightly in that they now only cover the threads for data plane threads, not including the pinned threads for controller requests. - We plan to add a new config for brokers to specify a dedicated listener for controller connections: the "control.plane.listener.name" config. When not set explicitly, the config will have a default value of "null" and indicate that the proposed change in this KIP will not take effect. A detailed explanation of the config is shown in the "proposed changes" section.
- A new listener-to-endpoint entry dedicated to controller connections need to be added to the "listeners" config and the "advertised.listeners" config.
Also a new entry needs to be added to the "listener.security.protocol.map" to specify the security protocol of the new endpoint.
...