此内容没有您所选择的语言版本。

Chapter 2. Managed broker configurations


When you deploy Streams for Apache Kafka on OpenShift, you specify broker configuration through the config property of the Kafka custom resource. However, certain broker configuration options are managed directly by Streams for Apache Kafka and cannot be set within this config property.

As such, if you are using Streams for Apache Kafka on OpenShift, you cannot configure the following options through the config property:

  • node.id to specify the ID of the Kafka node
  • log.dirs directories for log data
  • listeners to expose the Kafka cluster to clients
  • authorization mechanisms to allow or decline actions executed by users
  • authentication mechanisms to prove the identity of users requiring access to Kafka

Node IDs start from 0 (zero) and run sequentially across the Kafka cluster. Log directories are mounted to /var/lib/kafka/data/kafka-log<pod_id> based on the spec.storage configuration specified in the KafkaNodePool custom resource. For JBOD storage, they are mounted at /var/lib/kafka/data-<volume_id>/kafka-log<pod_id>.

For a list of exclusions, see the KafkaClusterSpec schema reference.

These exclusions don’t apply when using Streams for Apache Kafka on RHEL. In this case, you need to add these properties in your basic broker configuration to identify your brokers and provide secure access.

Example broker configuration for Streams for Apache Kafka on RHEL

# ...
node.id = 1
process.roles = broker

# controller listeners
controller.quorum.bootstrap.servers=localhost:9090, localhost:9091, localhost:9092
controller.listener.names = CONTROLLER
metadata.log.dir = /var/lib/kafka/metadata

# broker listeners
listeners = CLIENT://0.0.0.0:9093, INTERNAL://0.0.0.0:9094
inter.broker.listener.name = INTERNAL
listener.security.protocol.map = CLIENT:SSL,INTERNAL:SSL

# advertized listener for CLIENT connections (external access)
advertised.listeners = CLIENT://my-broker-1.my-domain.com:9093, INTERNAL://my-broker-1.my-domain.com:9094

# Authentication settings for listeners
ssl.keystore.type = PKCS12
ssl.keystore.location = /path/to/keystore.p12
ssl.keystore.password = keystore-password
ssl.truststore.type = PKCS12
ssl.truststore.location = /path/to/truststore.p12
ssl.truststore.password = truststore-password
ssl.client.auth = required

# authorization settings
authorizer.class.name = org.apache.kafka.metadata.authorizer.StandardAuthorizer
super.users = User:superuser
# ...

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部