8.2.5. 升级 Kafka 资源以支持 v1beta2
先决条件
-
支持
v1beta2API 版本的一个 Cluster Operator 已启动且正在运行。
流程
对部署中的每个 Kafka 自定义资源执行以下步骤。
更新编辑器中的
Kafka自定义资源。oc edit kafka KAFKA-CLUSTER
oc edit kafka KAFKA-CLUSTERCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您还没有这样做,请将 update
.spec.kafka.listener更新为新的通用监听程序格式,如 第 8.2.6 节 “将监听程序更新到通用监听器配置” 所述。警告API 版本
v1beta2不支持旧的监听程序格式。-
如果存在,将
关联性从.spec.kafka.affinity移到.spec.kafka.template.pod.affinity。 -
如果存在,将
容限从.spec.kafka.tolerations移到.spec.kafka.template.pod.tolerations。 -
如果存在,则删除
.spec.kafka.template.tlsSidecarContainer。 -
如果存在,则删除
.spec.kafka.tlsSidecarContainer。 如果存在以下策略配置:
-
.spec.kafka.template.externalBootstrapService.externalTrafficPolicy .spec.kafka.template.perPodService.externalTrafficPolicy-
将配置移动到
.spec.ka.listeners[].configuration.externalTrafficPolicy,两者都用于loadbalancer和type: nodeport侦听器。 -
remove
.spec.kafka.template.externalBootstrapService.externalTrafficPolicy或.spec.kafka.template.perPodService.externalTrafficPolicy.
-
将配置移动到
-
如果存在以下
负载均衡器监听程序配置之一:-
.spec.kafka.template.externalBootstrapService.loadBalancerSourceRanges .spec.kafka.template.perPodService.loadBalancerSourceRanges-
将配置移到
.spec.ka.kafka.listeners[].configuration.loadBalancerSourceRanges,用于type: loadbalancer侦听器。 -
remove
.spec.kafka.template.externalBootstrapService.loadBalancerSourceRanges或.spec.kafka.template.perPodService.loadBalancerSourceRanges.
-
将配置移到
-
如果
type: 外部日志记录配置了 in.spec.kafka.logging:替换包含日志配置的 ConfigMap
名称:logging: type: external name: my-config-map
logging: type: external name: my-config-mapCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
valueFrom.configMapKeyRef字段,并指定将日志记录存储在的 ConfigMap名称和键:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果使用
.spec.kafka.metrics字段来启用指标数据:创建一个将 JMX Prometheus 导出器的 YAML 配置存储到一个键下的新 ConfigMap。YAML 必须与
.spec.kafka.metrics字段中当前的内容匹配。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 添加指向 ConfigMap 和键的 a
.spec.kafka.metricsConfig属性:Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
删除 old
.spec.kafka.metrics字段。
- 保存文件,退出编辑器并等待更新的自定义资源得到协调。
接下来要做什么
对于每个 Kafka 自定义资源,升级 ZooKeeper、Topic Operator、实体 Operator 和 Cruise Control(如果已部署)的配置来支持 v1beta2 版本。这在以下步骤中进行了说明。
当所有 Kafka 配置都更新为支持 v1beta2 时,您可以将 Kafka 自定义资源升级到 v1beta2。