第 8 章 配置部署
使用 AMQ Streams 自定义资源配置和管理 AMQ Streams 部署。AMQ Streams 为每个发行版本提供示例自定义资源,允许您配置和创建支持的 Kafka 组件实例。通过将自定义资源配置为根据您的特定要求包含其他功能来微调部署。对于 Kafka Connect 连接器的特定配置区域,如指标、日志记录和外部配置,您还可以使用 ConfigMap
资源。通过使用 ConfigMap
资源来融合配置,您可以集中维护。您还可以使用配置供应商从外部来源加载配置,我们建议提供 Kafka Connect 连接器配置的凭证。
使用自定义资源配置并创建以下组件的实例:
- Kafka 集群
- Kafka Connect 集群
- Kafka MirrorMaker
- Kafka Bridge
- Sything Control
您还可以使用自定义资源配置来管理实例或修改部署,以引入其他功能。这可能包括支持以下配置:
- (预览)指定节点池
- 保护对 Kafka 代理的客户端访问
- 从集群外部访问 Kafka 代理
- 创建主题
- 创建用户(客户端)
- 控制功能门
- 更改日志频率
- 分配资源限值和请求
- 引入功能,如 AMQ Streams Drain Cleaner、Cruise Control 或 distributed tracing。
AMQ Streams 自定义资源 API 参考 描述了您可以在配置中使用的属性。
应用到自定义资源的标签也会应用到组成集群的 OpenShift 资源。这为资源提供了一个方便的机制来根据需要进行标记。
将更改应用到自定义资源配置文件
您可以使用 spec
属性将配置添加到自定义资源中。添加配置后,您可以使用 oc
将更改应用到自定义资源配置文件:
oc apply -f <kafka_configuration_file>
8.1. 使用示例配置文件
通过纳入其他支持的配置来进一步增强部署。从 AMQ Streams 软件下载页 提供了可下载发行工件的示例配置文件。
默认情况下,示例文件仅包含自定义资源的基本属性和值。您可以使用 oc
命令行工具下载并应用示例。为部署构建您自己的 Kafka 组件配置时,示例可以作为一个起点。
如果使用 Operator 安装 AMQ Streams,您仍然可以下载示例文件,并使用它们上传配置。
发行工件包括 一个示例
目录,其中包含配置示例。
AMQ Streams 提供的配置文件示例
examples ├── user 1 ├── topic 2 ├── security 3 │ ├── tls-auth │ ├── scram-sha-512-auth │ └── keycloak-authorization ├── mirror-maker 4 ├── metrics 5 ├── kafka 6 │ └── nodepools 7 ├── cruise-control 8 ├── connect 9 └── bridge 10
- 1
KafkaUser
自定义资源配置,由 User Operator 管理。- 2
KafkaTopic
自定义资源配置,由 Topic Operator 管理。- 3
- Kafka 组件的身份验证和授权配置。包括 TLS 和 SCRAM-SHA-512 身份验证的示例配置。Red Hat Single Sign-On 示例包括
Kafka
自定义资源配置和 Red Hat Single Sign-On 域规格。您可以使用示例尝试 Red Hat Single Sign-On 授权服务。另外,还有一个启用了oauth
身份验证和keycloak
授权指标的示例。 - 4
- 用于部署 Mirror Maker 的
Kafka
自定义资源配置。包括复制策略和同步频率配置示例。 - 5
- 指标配置,包括 Prometheus 安装和 Grafana 仪表板文件。
- 6
- 用于部署
Kafka
的 Kafka 自定义资源配置。包括临时或持久单一或多节点部署的示例配置。 - 7
- (预览) Kafka 集群中 Kafka 节点的
KafkaNodePool
配置。包括使用 KRaft (Kafka Raft metadata)模式或 ZooKeeper 的集群中节点配置示例。 - 8
- 使用 Cruise Control 的部署配置的
Kafka
自定义资源。包含KafkaRebalance
自定义资源,从 Cruise Control 生成优化提议,以及示例配置,以使用默认或用户优化目标。 - 9
- 用于部署 Kafka Connect 的
KafkaConnect
和KafkaConnector
自定义资源配置。包括单节点或多节点部署的配置示例。 - 10
KafkaBridge
自定义资源配置用于部署 Kafka Bridge。