1.3. 了解 Machine Config Operator 节点排空行为


当您使用机器配置更改系统功能时(如添加新配置文件、修改 systemd 单元或内核参数或更新 SSH 密钥),Machine Config Operator (MCO) 会应用这些更改,并确保每个节点处于所需的配置状态。

在进行更改后,MCO 会确保生成新的机器配置。在大多数情况下,当应用新的机器配置时,Operator 会在每个受影响的节点上执行以下步骤,直到所有受影响的节点都有更新的配置:

  1. Cordon.对于额外的工作负载,MCO 会将节点标记为不可调度。
  2. Drain.MCO 终止节点上运行的所有工作负载,导致工作负载重新调度到其他节点上。
  3. Apply.MCO 根据需要将新配置写入节点。
  4. 重新启动.MCO 重启节点。
  5. Uncordon.对于工作负载,MCO 将节点标记为可调度。

在此过程中,MCO 根据机器配置池中设置的 MaxUnavailable 值维护所需的 pod 数量。

注意

有些条件可能会阻止 MCO 排空节点。如果 MCO 无法排空节点,Operator 将无法重启该节点,从而导致通过机器配置对节点进行任何更改。如需更多信息和缓解步骤,请参阅 MCCDrainError runbook。

如果 MCO 在 master 节点上排空 pod,请注意以下条件:

  • 在单节点 OpenShift 集群中,MCO 会跳过排空操作。
  • MCO 不会排空静态 pod,以防止干扰服务(如 etcd)。
注意

在某些情况下,节点不会被排空。如需更多信息,请参阅 "About the Machine Config Operator"。

使用节点中断策略或禁用 control plane 重启,可以缓解排空和重启周期造成的中断。如需更多信息,请参阅"了解机器配置更改后节点重启的行为"和"禁用 Machine Config Operator 自动重新引导"。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.