Charmed Apache Kafka Documentation - Reference Listeners

Apache Kafka listeners

Charmed Apache Kafka comes with a set of listeners that can be enabled for inter- and intra-cluster communication.

Internal listeners are used for internal traffic and exchange of information between Apache Kafka brokers, whereas external listeners are used for external clients to be optionally enabled based on the relations created on particular charm endpoints. Each listener is characterized by a specific port, scope and protocol.

In the following table, we summarize the protocols, the port and the relation that each listener is bound to. Note that based on whether a certificates relation is present, one of two mutually exclusive types of listeners can be opened.

Listener name Driving endpoints Protocol Port Scope
SASL_INTERNAL cluster SASL_PLAINTEXT 19092 internal
SASL_INTERNAL cluster + certificates SASL_SSL 19093 internal
SASL_EXTERNAL kafka-client SASL_PLAINTEXT 9092 external
SASL_EXTERNAL kafka-client + certificates SASL_SSL 9093 external
SSL_EXTERNAL trusted-certificate + certificates SSL 9094 external
SSL_EXTERNAL trusted-ca + certificates SSL 9094 external

Since cluster is a peer relation, the SASL_INTERNAL listener is always enabled.