第 2 章 受管代理配置

在 OpenShift 上部署 AMQ Streams 时,您可以通过 Kafka 自定义资源的 config 属性来指定代理配置。但是,某些代理配置选项由 AMQ Streams 直接管理。

因此,如果您在 OpenShift 中使用 AMQ Streams,则无法配置以下选项:

  • broker.id 指定 Kafka 代理的 ID
  • log.dirs 目录用于日志数据
  • zookeeper.connect 配置,使用 ZooKeeper 连接 Kafka
  • 将 Kafka 集群公开给客户端 的监听程序
  • 允许或拒绝用户执行操作的 授权机制
  • 证明需要访问 Kafka 的用户的身份的 验证机制

代理 ID 从 0 (零)开始,对应于代理副本数量。根据 Kafka 自定义资源中的 spec.kafka.storage 配置,日志目录被挂载到 /var/lib/kafka/data/kafka-logIDXIDX 是 Kafka 代理 pod 索引。

有关排除的列表,请参阅 KafkaClusterSpec 模式参考

在 RHEL 上使用 AMQ Streams 时,这些排除并不适用。在这种情况下,您需要在基本代理配置中添加这些属性来识别代理并提供安全访问。

RHEL 上 AMQ Streams 的代理配置示例

# ...
broker.id = 1
log.dirs = /var/lib/kafka
zookeeper.connect = zoo1.my-domain.com:2181,zoo2.my-domain.com:2181,zoo3.my-domain.com:2181
listeners = internal-1://:9092
authorizer.class.name = kafka.security.auth.SimpleAclAuthorizer
ssl.truststore.location = /path/to/truststore.jks
ssl.truststore.password = 123456
ssl.client.auth = required
# ...