error execution phase check-etcd: etcd cluster is not healthy: failed to dial endpoint

본 글에서는 Master Node 3개를 구동하다가 init했던 Master Node를 Drain Delete Reset한 후 다시 Join을 시도하다가 Error가 발생했다.

Google Searching해본 결과 기존 etcd pod에 Drain했던 node 데이터가 남아있어 충돌하는 것으로 보인다.

유효한 마스터 노드에서 데이터 삭제

유효한 마스터 노드에서 kubectl get pod -n kube-system 을 입력해 etcd-노드명 Pod으로 진입한다.

kubectl exec -it etcd-노드명 -n kube-system sh

목록확인

etcdctl --cacert="/etc/kubernetes/pki/etcd/ca.crt" --cert="/etc/kubernetes/pki/etcd/server.crt" --key="/etc/kubernetes/pki/etcd/server.key" member list

본인이 join하려는 ip가 존재한다면 remove 진행

etcdctl --cacert="/etc/kubernetes/pki/etcd/ca.crt" --cert="/etc/kubernetes/pki/etcd/server.crt" --key="/etc/kubernetes/pki/etcd/server.key" member remove <1열의ID값>

다른 node의 etcd-pod으로 들어가 리스트에서 제거된 것 확인

Join할 노드로 이동해 Join 명령어 입력, 완료

Leave a Comment