$ kubectl get --raw=/healthz/etcd
$ ssh devops@kubernets.master
$ docker run -it \
-v /var/lib/etcd:/var/lib/etcd \
-v /etc/kubernetes/pki/etcd:/etc/kubernetes/pki/etcd \
-p 2380:2380 \
-p 2379:2379 \
--network=host \
k8s.gcr.io/etcd:3.2.24
# running inside docker
$ etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt \
--cert-file /etc/kubernetes/pki/etcd/peer.crt \
--key-file /etc/kubernetes/pki/etcd/peer.key \
-endpoints=https://<master3IP>:2379,https://<master2IP>:2379,https://<master1IP>:2379 \
member list
>> a874c87fd42044f: name=<master1Hostname> peerURLs=https://<master1IP>:2380 clientURLs=https://<master1IP>:2379 isLeader=true
>> 3be12ef2ee5f92e7(unstarted): name=<master3Hostname> peerURLs=https://<master3IP>:2380
>> da3e2155721a00f6: name=<master2Hostname> peerURLs=https://<master2IP>:2380 clientURLs=https://<master2IP>:2379 isLeader=false
# remove "unstarted" node
$ etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt \
--cert-file /etc/kubernetes/pki/etcd/peer.crt \
--key-file /etc/kubernetes/pki/etcd/peer.key \
-endpoints=https://<master3IP>:2379,https://<master2IP>:2379,https://<master1IP>:2379 \
member remove 3be12ef2ee5f92e7
# re-add again
$ etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt \
--cert-file /etc/kubernetes/pki/etcd/peer.crt \
--key-file /etc/kubernetes/pki/etcd/peer.key \
-endpoints=https://<master3IP>:2379,https://<master2IP>:2379,https://<master1IP>:2379 \
member add <master3Hostname> https://<master3IP>:2380
[!NOTE|label:references:]
[!NOTE|label:references:]