搜索

3.7. 更新在 vSphere 上运行的节点上运行的硬件

download PDF

您必须确保您在 vSphere 中运行的节点在 OpenShift Container Platform 支持的硬件版本上运行。目前,硬件版本 15 或更高版本都支持集群中的 vSphere 虚拟机。

您可以立即更新虚拟硬件,或在 vCenter 中计划更新。

重要
  • OpenShift Container Platform 版本 4.16 需要 VMware 虚拟硬件版本 15 或更高版本。
  • 在将 OpenShift 4.12 升级到 OpenShift 4.13 之前,您必须将 vSphere 更新至 v7.0.2 或更高版本; 否则,OpenShift 4.12 集群被标记为 不可升级

3.7.1. 更新 vSphere 上的虚拟硬件

要在 VMware vSphere 上更新虚拟机 (VM) 的硬件,请单独更新您的虚拟机,以减少集群停机风险。

重要

自 OpenShift Container Platform 4.13 起,VMware 虚拟硬件版本 13 不再被支持。您需要升级到 VMware 版本 15 或更高版本来支持功能。

3.7.1.1. 为 vSphere 上的 control plane 节点更新虚拟硬件

要减少停机的风险,建议按顺序更新 control plane 节点。这样可确保 Kubernetes API 保持可用,etcd 保留仲裁。

先决条件

  • 在托管 OpenShift Container Platform 集群的 vCenter 实例中具有执行所需权限的权限。
  • 您的 vSphere ESXi 主机是 7.0U2 或更高版本。

流程

  1. 列出集群中的 control plane 节点。

    $ oc get nodes -l node-role.kubernetes.io/master

    输出示例

    NAME                    STATUS   ROLES    AGE   VERSION
    control-plane-node-0    Ready    master   75m   v1.29.4
    control-plane-node-1    Ready    master   75m   v1.29.4
    control-plane-node-2    Ready    master   75m   v1.29.4

    请注意 control plane 节点的名称。

  2. 将 control plane 节点标记为不可调度。

    $ oc adm cordon <control_plane_node>
  3. 关闭与 control plane 节点关联的虚拟机 (VM)。在 vSphere 客户端中通过右键单击虚拟机并选择 Power Shut Down Guest OS 进行此操作。不要使用 Power Off 来关闭虚拟机,因为它可能无法安全地关闭。
  4. 更新 vSphere 客户端中的虚拟机。如需更多信息,请参阅 VMware 文档中的手动升级虚拟机兼容性
  5. 打开与 control plane 节点关联的虚拟机。在 vSphere 客户端中通过右键单击虚拟机并选择 Power On 来进行此操作。
  6. 等待节点报告为 Ready

    $ oc wait --for=condition=Ready node/<control_plane_node>
  7. 再次将 control plane 节点标记为可以调度:

    $ oc adm uncordon <control_plane_node>
  8. 对集群中的每个 control plane 节点重复此步骤。

3.7.1.2. 更新 vSphere 上计算节点的虚拟硬件

要降低停机的风险,建议按顺序更新计算节点。

注意

可以在并行给定工作负载中更新多个计算节点,可以接受具有 NotReady 状态的多个节点。管理员负责确保所需的计算节点可用。

先决条件

  • 在托管 OpenShift Container Platform 集群的 vCenter 实例中具有执行所需权限的权限。
  • 您的 vSphere ESXi 主机是 7.0U2 或更高版本。

流程

  1. 列出集群中的计算节点。

    $ oc get nodes -l node-role.kubernetes.io/worker

    输出示例

    NAME              STATUS   ROLES    AGE   VERSION
    compute-node-0    Ready    worker   30m   v1.29.4
    compute-node-1    Ready    worker   30m   v1.29.4
    compute-node-2    Ready    worker   30m   v1.29.4

    注意计算节点的名称。

  2. 将计算节点标记为不可调度:

    $ oc adm cordon <compute_node>
  3. 从计算节点撤离容器集。执行此操作有多种方法。例如,您可以撤离节点上的所有或选定 pod:

    $ oc adm drain <compute_node> [--pod-selector=<pod_selector>]

    如需从节点上撤离 pod 的其他选项,请参阅"如何撤离节点上的 pod"部分。

  4. 关闭与计算节点关联的虚拟机 (VM)。在 vSphere 客户端中通过右键单击虚拟机并选择 Power Shut Down Guest OS 进行此操作。不要使用 Power Off 来关闭虚拟机,因为它可能无法安全地关闭。
  5. 更新 vSphere 客户端中的虚拟机。如需更多信息,请参阅 VMware 文档中的手动升级虚拟机兼容性
  6. 打开与计算节点关联的虚拟机。在 vSphere 客户端中通过右键单击虚拟机并选择 Power On 来进行此操作。
  7. 等待节点报告为 Ready

    $ oc wait --for=condition=Ready node/<compute_node>
  8. 将计算节点再次标记为可调度:

    $ oc adm uncordon <compute_node>
  9. 对集群中的每个计算节点重复此步骤。

3.7.1.3. 为 vSphere 上的模板更新虚拟硬件

先决条件

  • 在托管 OpenShift Container Platform 集群的 vCenter 实例中具有执行所需权限的权限。
  • 您的 vSphere ESXi 主机是 7.0U2 或更高版本。

流程

  1. 如果 RHCOS 模板被配置为 vSphere 模板 ,请在进行下一步前参阅将模板转换为一个虚拟机

    注意

    从模板转换后,请不要打开虚拟机电源。

  2. 更新 vSphere 客户端中的虚拟机。如需更多信息,请参阅 VMware 文档中的手动升级虚拟机兼容性
  3. 将 vSphere 客户端中的虚拟机从虚拟机转换为模板。如需更多信息,请参阅 VMware 文档中的将虚拟机转换为 vSphere 客户端中的模板

3.7.2. 在 vSphere 上调度虚拟硬件的更新

虚拟机开启或重新启动时,可以计划进行虚拟硬件更新。您可以按照 VMware 文档中的虚拟机兼容性升级调度专门在 vCenter 中调度虚拟硬件更新。

在 OpenShift Container Platform 升级前调度升级时,在 OpenShift Container Platform 升级过程中重启节点时会进行虚拟硬件更新。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.