13.2.3.2. config


使用 config 属性将 Kafka 代理选项配置为密钥。

标准 Apache Kafka 配置可能会提供,仅限于不是由 AMQ Streams 直接管理的属性。

无法配置的选项与以下内容相关:

  • 安全(加密、身份验证和授权)
  • 监听程序配置
  • 代理 ID 配置
  • 日志数据目录的配置
  • Broker 间通信
  • zookeeper 连接

这些值可以是以下 JSON 类型之一:

  • 字符串
  • 数字
  • 布尔值

您可以指定并配置 Apache Kafka 文档 中列出的选项,但那些直接由 AMQ Streams 管理的选项除外。具体来说,所有键为等于或以以下任一字符串开头的配置选项将被禁止:

  • 监听程序
  • advertised.
  • 代理.
  • listener.
  • host.name
  • port
  • inter.broker.listener.name
  • sasl.
  • ssl.
  • 安全性.
  • password.
  • principal.builder.class
  • log.dir
  • zookeeper.connect
  • zookeeper.set.acl
  • authorizer.
  • super.user

config 属性中存在禁止选项时,会忽略它,并把警告信息输出到 Cluster Operator 日志文件中。所有其他支持的选项都传递给 Kafka。

禁止的选项有例外。对于使用特定 密码套件 作为 TLS 版本进行客户端连接,您可以配置 allowed ssl 属性。您还可以配置 zookeeper.connection.timeout.ms 属性,以设置建立 ZooKeeper 连接的最长时间。

Kafka 代理配置示例

apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
  name: my-cluster
spec:
  kafka:
    # ...
    config:
      num.partitions: 1
      num.recovery.threads.per.data.dir: 1
      default.replication.factor: 3
      offsets.topic.replication.factor: 3
      transaction.state.log.replication.factor: 3
      transaction.state.log.min.isr: 1
      log.retention.hours: 168
      log.segment.bytes: 1073741824
      log.retention.check.interval.ms: 300000
      num.network.threads: 3
      num.io.threads: 8
      socket.send.buffer.bytes: 102400
      socket.receive.buffer.bytes: 102400
      socket.request.max.bytes: 104857600
      group.initial.rebalance.delay.ms: 0
      ssl.cipher.suites: "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
      ssl.enabled.protocols: "TLSv1.2"
      ssl.protocol: "TLSv1.2"
      zookeeper.connection.timeout.ms: 6000
    # ...

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.