5.5. 使用 BMO 从用户置备的集群中删除主机
您可以使用 Bare Metal Operator (BMO)从用户置备的集群中删除裸机主机。
先决条件
- 您创建了用户置备的裸机集群。
- 您有到主机的基板管理控制器 (BMC) 访问权限。
-
通过创建一个
Provisioning
CR,在集群中部署了置备服务。
流程
运行以下命令进行 cordon 和 drain 节点:
$ oc adm drain app1 --force --ignore-daemonsets=true
输出示例
node/app1 cordoned WARNING: ignoring DaemonSet-managed Pods: openshift-cluster-node-tuning-operator/tuned-tvthg, openshift-dns/dns- default-9q6rz, openshift-dns/node-resolver-zvt42, openshift-image-registry/node-ca-mzxth, openshift-ingress-cana ry/ingress-canary-qq5lf, openshift-machine-config-operator/machine-config-daemon-v79dm, openshift-monitoring/nod e-exporter-2vn59, openshift-multus/multus-additional-cni-plugins-wssvj, openshift-multus/multus-fn8tg, openshift -multus/network-metrics-daemon-5qv55, openshift-network-diagnostics/network-check-target-jqxn2, openshift-ovn-ku bernetes/ovnkube-node-rsvqg evicting pod openshift-operator-lifecycle-manager/collect-profiles-27766965-258vp evicting pod openshift-operator-lifecycle-manager/collect-profiles-27766950-kg5mk evicting pod openshift-operator-lifecycle-manager/collect-profiles-27766935-stf4s pod/collect-profiles-27766965-258vp evicted pod/collect-profiles-27766950-kg5mk evicted pod/collect-profiles-27766935-stf4s evicted node/app1 drained
从
BareMetalHost
CR 中删除customDeploy
规格。运行以下命令,为主机编辑
BareMetalHost
CR:$ oc edit bmh -n openshift-machine-api <host_name>
删除
spec.customDeploy
和spec.customDeploy.method
行:... customDeploy: method: install_coreos
运行以下命令,验证主机的置备状态是否更改为
deprovisioning
:$ oc get bmh -A
输出示例
NAMESPACE NAME STATE CONSUMER ONLINE ERROR AGE openshift-machine-api controller1 externally provisioned true 58m openshift-machine-api worker1 deprovisioning true 57m
当
BareMetalHost
状态更改为available
时,运行以下命令来删除主机:$ oc delete bmh -n openshift-machine-api <bmh_name>
注意您可以运行这个步骤,而无需编辑
BareMetalHost
CR。可能需要过些时间,BareMetalHost
状态才会从取消置备
更改为available
。运行以下命令来删除节点:
$ oc delete node <node_name>
验证
运行以下命令验证您是否删除了节点:
$ oc get nodes
输出示例
NAME STATUS ROLES AGE VERSION controller1 Ready master,worker 2d23h v1.24.0+dc5a2fd