第 53 章 CruiseControlSpec 模式参考
使用于: KafkaSpec
配置一个 Cruise Control 集群。
配置选项与以下内容相关:
- 目标配置
- 资源分布目标的容量限制
53.1. config 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
使用 config 属性将控制选项配置为密钥。
这些值可以是以下 JSON 类型之一:
- 字符串
- Number
- 布尔值
例外
您可以指定并配置 Cruise Control 文档 中列出的选项。
但是,AMQ Streams 会负责配置和管理与以下内容相关的选项,这无法更改:
- 安全性(加密、身份验证和授权)
- 连接到 Kafka 集群
- 客户端 ID 配置
- ZooKeeper 连接
- Web 服务器配置
- 自我修复
无法设置具有以下前缀的属性:
-
bootstrap.servers -
capacity.config.file -
client.id -
failed.brokers.zk.path -
kafka.broker.failure.detection.enable -
metric.reporter.sampler.bootstrap.servers -
网络。 -
request.reason.required -
安全性。 -
self.healing. -
ssl. -
topic.config.provider.class -
two.step. -
webserver.accesslog. -
webserver.api.urlprefix -
webserver.http. -
webserver.session.path -
zookeeper.
如果 config 属性包含一个无法更改的选项,它将被忽略,并将警告信息记录到 Cluster Operator 日志文件。所有其他支持选项都转发到 Cruise Control,包括对 AMQ Streams 配置的选项的以下例外:
-
支持的 TLS 版本和密码套件的任何
ssl配置 -
配置
webserver属性以启用 Cross-Origin Resource Sharing (CORS)
Cruise Control 配置示例
apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
name: my-cluster
spec:
# ...
cruiseControl:
# ...
config:
# Note that `default.goals` (superset) must also include all `hard.goals` (subset)
default.goals: >
com.linkedin.kafka.cruisecontrol.analyzer.goals.RackAwareGoal,
com.linkedin.kafka.cruisecontrol.analyzer.goals.ReplicaCapacityGoal
hard.goals: >
com.linkedin.kafka.cruisecontrol.analyzer.goals.RackAwareGoal
cpu.balance.threshold: 1.1
metadata.max.age.ms: 300000
send.buffer.bytes: 131072
webserver.http.cors.enabled: true
webserver.http.cors.origin: "*"
webserver.http.cors.exposeheaders: "User-Task-ID,Content-Type"
# ...