How to Remove a Control-Plane Node from OpenShift

Learn how to safely remove an extra control-plane node from a Red Hat OpenShift cluster with step-by-step commands and deep validation checks.

Managing a Red Hat OpenShift Cluster is not just about scaling up—it also requires knowing how to safely scale down. One of the most sensitive operations is removing an extra control-plane node, especially when etcd quorum and cluster stability are at stake.

In this guide, you’ll learn how to remove a control-plane node from an OpenShift Cluster using a real-world scenario, validated with deep checks to ensure cluster health.

Why Would You Remove a Control-Plane Node?

There are several legitimate reasons to remove a control-plane node from an OpenShift Cluster:

  • Accidental over-provisioning during UPI installation
  • Hardware failures or VM decommissioning
  • Migrating to a supported odd-numbered control-plane topology
  • Cost or resource optimization

Best Practice: Always maintain an odd number of etcd members (3 or 5) to preserve quorum.

Prerequisites Before Removing a Node

Before you remove a node from a Red Hat OpenShift Cluster, ensure:

  • etcd operator is Available and Healthy
  • Cluster operators are stable
  • You have cluster-admin access
  • You identify the correct control-plane node

Validate etcd health:

oc get co etcd

Expected state:

AVAILABLE=True
DEGRADED=False

Step 1: Identify the Control-Plane Node

List all nodes in the cluster:

oc get nodes

In this example, hpc-ctrln1.ocp.arkit.co.in is the additional control-plane node to be removed.

Step 2: Drain the Control-Plane Node

Safely evict workloads from the node:

oc adm drain hpc-ctrln1.ocp.arkit.co.in \
--ignore-daemonsets \
--delete-emptydir-data \
--force \
--timeout=10m

Why this matters

  • Prevents workload disruption
  • Ensures pods are rescheduled gracefully
  • Required before node removal

Step 3: Verify etcd Membership

Check current etcd members:

oc -n openshift-etcd exec -it \
$(oc -n openshift-etcd get pods -l app=etcd -o name | head -1) \
-- etcdctl member list

Locate the member ID associated with the node being removed.

Step 4: Remove the Node from etcd Cluster

Set a healthy etcd pod and remove the member:

ETCD_POD=etcd-hpc-ctrlvn1.ocp.arkit.co.in

oc -n openshift-etcd exec -it $ETCD_POD -- \
etcdctl member remove 6063b47df1f308c7

Confirm removal:

oc -n openshift-etcd exec -it $ETCD_POD -- \
etcdctl member list

The removed node must no longer appear.

Step 5: Validate Cluster Health (Deep Validation)

Kubernetes API Endpoints

oc get endpoints kubernetes -n default

Ensure only active control-plane IPs are listed.
API Services Health

oc get apiservices | grep False || echo "All API services OK"

Final etcd Confirmation

oc -n openshift-etcd exec -it \
$(oc -n openshift-etcd get pods -l app=etcd -o name | head -1) \
-- etcdctl member list

This confirms the node is fully removed from etcd.

Practical Tips and Best Practices

✔ Always remove the node from etcd first, then decommission the host
✔ Never remove multiple control-plane nodes at once
✔ Monitor oc get co until all operators stabilize
❌ Do not delete the VM before etcd removal

Key Takeaways

  • Removing a control-plane node from an OpenShift Cluster requires precision
  • etcd quorum protection is critical
  • Deep validation ensures zero hidden failures
  • Proper node removal keeps Red Hat OpenShift production-ready

Conclusion & Call to Action

Removing an additional control-plane node from a Red Hat OpenShift Cluster is a controlled, safe operation when done correctly. By draining the node, removing it from etcd, and validating cluster health, you protect your platform from instability.
👉 If you manage OpenShift in production, bookmark this guide and share it with your platform team.
👉 Want more OpenShift troubleshooting and Linux deep-dives? Follow and subscribe for advanced OpenShift content.
Happy clustering! 🚀

Thanks for your wonderful Support and Encouragement

Ravi Kumar Ankam

My Name is ARK. Expert in grasping any new technology, Interested in Sharing the knowledge. Learn more & Earn More

Leave a Reply

Your email address will not be published. Required fields are marked *