Add the new etcd member

Finish adding the new control plane node by adding the new etcd member to the cluster.

Procedure
  1. Add the new etcd member to the cluster by performing the following steps in a single bash shell session:

    1. Find the IP of the new control plane node by running the following command:

      $ oc get nodes -owide -l node-role.kubernetes.io/control-plane

      Make note of the node’s IP address for later use.

    2. List the etcd pods by running the following command:

      $ oc get -n openshift-etcd pods -l k8s-app=etcd -o wide
    3. Connect to one of the running etcd pods by running the following command. The etcd pod on the new node should be in a CrashLoopBackOff state.

      $ oc rsh -n openshift-etcd <running_pod>

      Replace <running_pod> with the name of a running pod shown in the previous step.

    4. View the etcd member list by running the following command:

      sh-4.2# etcdctl member list -w table
    5. Add the new control plane etcd member by running the following command:

      sh-4.2# etcdctl member add <new_node> --peer-urls="https://<ip_address>:2380"

      where:

      <new_node>

      Specifies the name of the new control plane node

      <ip_address>

      Specifies the IP address of the new node.

    6. Exit the rsh shell by running the following command:

      sh-4.2# exit
  2. Force an etcd redeployment by running the following command:

    $ oc patch etcd cluster -p='{"spec": {"forceRedeploymentReason": "single-master-recovery-'"$( date --rfc-3339=ns )"'"}}' --type=merge
  3. Turn the etcd quorum guard back on by running the following command:

    $ oc patch etcd/cluster --type=merge -p '{"spec": {"unsupportedConfigOverrides": null}}'
  4. Monitor the cluster Operator rollout by running the following command:

    $ watch oc get co
Important

Red Hat supports a cluster that has 4 or 5 control plane nodes only on bare-metal infrastructure.