10.3. 关于执行 canary rollout 更新
下列步骤概述了金丝雀 rollout 更新过程的高级工作流:
根据 worker 池创建自定义机器配置池 (MCP)。
注意您可以更改 MCP 中的
maxUnavailable
设置,以指定在任意给定时间可以更新的机器的百分比或数量。默认值为1
。将节点选择器添加到自定义 MCP。对于您不想与剩余的集群同时更新的每个节点,请向节点添加匹配的标签。该标签将节点与 MCP 相关联。
重要不要从节点中删除默认 worker 标签。节点必须具有 role 标签才能在集群中正常工作。
在更新过程中暂停您不想更新的 MCP。
注意暂停 MCP 也会暂停
kube-apiserver-to-kubelet-signer
自动 CA 证书轮转。在自安装日期起的 292 天生成新 CA 证书,旧证书将从安装日期的 365 天后删除。请参阅红帽 OpenShift 4 中的了解 CA 证书自动续订,以了解您在下一次自动 CA 证书轮转前的时间。确保发生 CA 证书轮转时取消暂停池。如果 MCP 暂停,MCO 无法将新轮转的证书推送到这些节点。这会导致集群降级,并在多个
oc
命令中造成失败,包括oc debug
、oc logs
、oc exec
和oc attach
。如果在轮转证书时,如果 MCP 被暂停,则 OpenShift Container Platform Web 控制台的 Alerting UI 中收到警报。- 执行集群更新。更新过程更新没有暂停的 MCP,包括 control plane 节点。
- 在更新的节点上测试应用程序,以确保它们按预期工作。
- 取消暂停剩余的 MCP,等待池中的节点完成更新,并在这些节点上测试应用程序。重复此过程,直到所有 worker 节点都已更新。
- 可选:从更新的节点中删除自定义标签并删除自定义 MCP。