
Dell ObjectScale 1.4 管理指南
执行节点更换服务过程 (ObjectScale on OpenShift)
要手动更换节点,请完成这些步骤。对 Red Hat OpenShift 群集上的 ObjectScale 实例使用此过程。
前提条件
- 确保更换节点的名称和 IP 地址与要更换的节点相同。
- 如果更换过程所需时间超过 1 小时(很可能),则将开始为所更换节点上的数据运行恢复。但是,一旦节点已更换且正常运行,它应该会停止。
步骤
-
准备好节点以进行删除:
- 如果节点运行状况良好,请遵循将节点置于维护模式 (ObjectScale on OpenShift),通过将节点置于 MM 来准备好要更换的节点。
- 如果节点处于故障状态,请遵循使用本地存储设备部署的 OpenShift Container Storage 中的相关说明进行操作https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/4.6/html/replacing_nodes/openshift_container_storage_deployed_using_local_storage_devices#replacing-a-failed-node-on-bare-metal-user-provisioned-infrastructure_rhocs
- 在服务节点中,运行以下命令以将节点标记为不可计划:
kubectl cordon <NODE_NAME>
- 删除处于终止状态的 Pod:
kubectl get pods -A -o wide | grep-i <NODE_NAME> | awk '{if ($4 == "Terminating") system ("kubectl -n " $1 " delete pods " $2 " --grace-period=0 " " --force ")}' - 通过从节点清除 Pod 来释放节点:注:要列出清除对象,而不执行操作,请在以下命令中添加 --dry-run=client 参数。
kubectl drain <NODE_NAME> --force --delete-local-data --ignore-daemonsets
- 在服务节点中,运行以下命令以将节点标记为不可计划:
-
从群集中删除节点:
kubectl delete node <NODE_NAME>
-
以物理方式移除并更换故障节点硬件。执行此操作时,请确保:
- 将所有驱动器从故障节点移至新的计算节点。然后,按照 OpenShift 文档中概述的步骤安装并将其重新加入 OpenShift 群集。
- 新节点满足适用于 Red Hat OpenShift 的 Dell ObjectScale 应用程序安装指南的“ObjectScale on OpenShift 部署前提条件”中列出的要求。
所有 PVC 绑定都会保留,并且所有有状态 Pod 都会在新节点上启动。 -
确保新节点已添加到群集,并且所有节点都已准备就绪。例如:
kubectl get nodes
NAME STATUS ROLES AGE VERSION master0.ocp4.cmo.com Ready master 15d v1.19.0+e49167a master1.ocp4.cmo.com Ready master 15d v1.19.0+e49167a master2.ocp4.cmo.com Ready master 15d v1.19.0+e49167a worker0.ocp4.cmo.com Ready worker 15d v1.19.0+e49167a worker1.ocp4.cmo.com Ready worker 46m v1.19.0+e49167a worker2.ocp4.cmo.com Ready worker 15d v1.19.0+e49167a
-
验证 CSI 可识别该节点,并且它显示在裸机节点列表中。例如:
kubectl get csibmnodes
NAME UUID ADDRESSES csibmnode-4f19a3e9-9c9b-40a8-... 4f19a3e9-9c9b-40a8-... {"Hostname":"master0.ocp4.cmo.com","InternalIP":"10.236.224.60"} csibmnode-a0dba2b4-5eab-4c34-... a0dba2b4-5eab-4c34-... {"Hostname":"worker0.ocp4.cmo.com","InternalIP":"10.236.224.66"} csibmnode-bb7dcedc-139b-4d8f-... bb7dcedc-139b-4d8f-... {"Hostname":"master2.ocp4.cmo.com","InternalIP":"10.236.224.64"} csibmnode-bdb9f0b8-f52d-4aaf-... bdb9f0b8-f52d-4aaf-... {"Hostname":"worker1.ocp4.cmo.com","InternalIP":"10.236.224.68"} csibmnode-de3eebf0-dfcd-41e9-... de3eebf0-dfcd-41e9-... {"Hostname":"worker3.ocp4.cmo.com","InternalIP":"10.236.224.72"} csibmnode-e820eea6-3145-4fb8-... e820eea6-3145-4fb8-... {"Hostname":"master1.ocp4.cmo.com","InternalIP":"10.236.224.62"} csibmnode-f21e396b-2d91-43d5-... f21e396b-2d91-43d5-... {"Hostname":"worker2.ocp4.cmo.com","InternalIP":"10.236.224.70"} -
验证群集是否可用。例如:
kubectl get ecs
NAME PHASE READY COMPONENTS S3 ENDPOINT MGMT API ecs-cluster Available 23/23 10.236.228.53:443 10.236.228.52:4443
-
验证其他功能和组件,其中包括:
- S3 I/O。
- ObjectScale 门户。
- Kubectl 命令输出。
- 所有 Pod(包括以前处于挂起状态的 Pod)现在都在运行。
- Pod 重新启动未发生或增加。
请提供评级(1-5星)。
请提供评级(1-5星)。
请提供评级(1-5星)。
请选择这篇文章是否有帮助。
注释中不得包含以下特殊字符:<>()\