1.3.2. 在安装程序置备的基础架构中替换失败的 Red Hat Virtualization 节点
执行此流程替换在 Red Hat Virtualization 安装程序置备的基础架构(IPI)上无法正常工作的失败节点。
流程
-
登陆到 OpenShift Web 控制台,点 Compute
Nodes。 - 确定出现故障的节点。记录其 Machine Name。
登录到 Red Hat Virtualization 管理门户,并从出现故障的虚拟机中删除与 mon 和 OSD 关联的虚拟磁盘。
此步骤是必需的,以便在虚拟机实例被删除时不会删除磁盘。
重要删除磁盘时,请勿永久选择删除选项。
-
在 OpenShift Web 控制台中,点 Compute
Machines。搜索所需的机器。 -
点 Actions
Edit Annotations,然后点 Add More。 -
添加
machine.openshift.io/exclude-node-draining
并点 Save。 点 Actions
Delete Machine,然后点 Delete。 新机器会自动创建,等待新机器启动。
重要此活动可能需要至少 5 到 10 分钟或更长时间。这一期间内生成的 Ceph 错误是临时的,在新节点标上并正常运行时自动解决。
-
点 Compute
Nodes,确认新节点是否处于 Ready 状态。 使用以下任一方法之一将 OpenShift Data Foundation 标签应用到新节点:
- 从用户界面
- 对于新节点,点击 Action Menu(⋮)→ Edit Labels。
-
添加
cluster.ocs.openshift.io/openshift-storage
并点 Save。
- 使用命令行界面
执行以下命令,将 OpenShift Data Foundation 标签应用到新节点:
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
- 可选:如果未自动删除失败的虚拟机,请从 Red Hat Virtualization 管理门户中删除虚拟机。
验证步骤
执行以下命令并验证输出中是否存在新节点:
$ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
点 Workloads
Pods,确认新节点上的以下 pod 处于 Running 状态 : -
csi-cephfsplugin-*
-
csi-rbdplugin-*
-
- 验证所有其他必需的 OpenShift 数据基础容器集是否都处于 Running 状态。
验证新 OSD pod 是否在替换节点上运行。
$ oc get pods -o wide -n openshift-storage| egrep -i new-node-name | egrep osd
可选:如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。
对于上一步中标识的每个新节点,请执行以下操作:
创建调试 pod,并为所选主机打开 chroot 环境。
$ oc debug node/<node name> $ chroot /host
运行 "lsblk" 并检查
ocs-deviceset
名旁边的 "crypt" 关键字。$ lsblk
- 如果验证步骤失败,请联系红帽支持。