1.2.3. 在用户置备的基础架构中替换失败的 VMware 节点

执行此流程替换 VMware 用户置备的基础架构(UPI)中的故障节点。

先决条件

  • 红帽建议为替换节点配置与被替换节点的类似基础架构、资源和磁盘。
  • 您必须登录 OpenShift Container Platform (RHOCP) 集群。

流程

  1. 确定需要替换的节点及其虚拟机。
  2. 使用以下命令删除节点:

    $ oc delete nodes <node_name>
  3. 登录 vSphere 并终止标识的虚拟机。

    重要

    应当仅从清单中删除虚拟机,而不应从磁盘中删除虚拟机。

  4. 使用所需基础架构在 vSphere 上创建新虚拟机。请参阅平台要求
  5. 使用新虚拟机创建新的 OpenShift Container Platform worker 节点。
  6. 检查与处于 Pending 状态的 OpenShift Container Platform 相关的证书签名请求(CSR):

    $ oc get csr
  7. 为新节点批准所有所需的 OpenShift Container Platform CSR:

    $ oc adm certificate approve <Certificate_Name>
  8. ComputeNodes,确认新节点是否处于 Ready 状态
  9. 使用以下任一方法之一将 OpenShift Data Foundation 标签应用到新节点:

    从用户界面
    1. 对于新节点,点击 Action Menu(⋮)Edit Labels
    2. 添加 cluster.ocs.openshift.io/openshift-storage 并点 Save
    使用命令行界面
    • 执行以下命令,将 OpenShift Data Foundation 标签应用到新节点:

      $ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""

验证步骤

  1. 执行以下命令并验证输出中是否存在新节点:

    $ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
  2. WorkloadsPods,确认新节点上的以下 pod 处于 Running 状态

    • csi-cephfsplugin-*
    • csi-rbdplugin-*
  3. 验证所有其他必需的 OpenShift 数据基础容器集是否都处于 Running 状态。
  4. 验证新 OSD pod 是否在替换节点上运行。

    $ oc get pods -o wide -n openshift-storage| egrep -i new-node-name | egrep osd
  5. 可选:如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。

    对于上一步中标识的每个新节点,请执行以下操作:

    1. 创建调试 pod,并为所选主机打开 chroot 环境。

      $ oc debug node/<node name>
      $ chroot /host
    2. 运行 "lsblk" 并检查 ocs-deviceset 名旁边的 "crypt" 关键字。

      $ lsblk
  6. 如果验证步骤失败,请联系红帽支持