Replacing a master node
When a hardware failure occurs, you might find that the master node is not working properly. Complete these steps to replace a master node.
- Recreate the new master node. Ensure that the new master node has the same host name, IP address, and interface name as the old master node.
- Configure SSH authentication for the new master node. Keep the same password or SSH key authentication as the old master node.
-
Run a command to replace master node:
-
For Linux® x86_64, run the following command:
docker run -t --net=host -e LICENSE=accept -v $(pwd):/installer/cluster ibmcom/icp-inception-amd64:3.1.1-ee install -l master-node-ip -
For Linux® on Power® (ppc64le), run the following command:
docker run -t --net=host -e LICENSE=accept -v $(pwd):/installer/cluster ibmcom/icp-inception-ppc64le:3.1.1-ee install -l master-node-ip -
For IBM® Z, run the following command:
docker run -t --net=host -e LICENSE=accept -v $(pwd):/installer/cluster ibmcom/icp-inception-s390x:3.1.1-ee install -l master-node-ip
-
Updating the etcd members
If the etcd pod runs on the new master node, it might fail to start. Complete the following steps to update the etcd members.
Configure etcdctl
- To access your
etcdcluster by using the command line interface (CLI), you must install and configureetcdctl, the command line client foretcd. You can obtain theetcdctlbinary file from theibmcom/etcd:v3.2.18image by running the following command:docker run --rm -v /usr/local/bin:/data <cluster_name>.icp:8500/ibmcom/etcd:v3.2.18 cp /usr/local/bin/etcdctl /data - Set up the endpoint as one of your available
etcdmembers by running the following command:export endpoint=<Endpoint IP address> - To use the
etcdctlv3 API, set up an alias by running the following command:alias etcdctl3="ETCDCTL_API=3 etcdctl --endpoints=https://${endpoint}:4001 --cacert=/etc/cfc/conf/etcd/ca.pem --cert=/etc/cfc/conf/etcd/client.pem --key=/etc/cfc/conf/etcd/client-key.pem"
Update the etcd members
If the etcd pod runs on the new master node, it might fail to start due to inconsistent data. To update the etcd members, see the steps in etcd pod failed to start due to inconsistent data.