kubernetes에서 노드 rejoin 방법
perplexity에서 생성한 AI이미지 |
시작하는말
안녕하세요, 고니입니다.
kubernetes환경에서 호스트네임 변경같이 특정 노드의 속성변경 작업이 진행되는 경우 reset 및 join하는 절차가 필요하기 때문에 작성하였습니다.
사전 작업
삭제할 노드에서 워커노드 제외방법를 통해 제외 준비 합니다.
본 작업
-
노드 삭제
- 마스터 노드에서 실행
$> kubectl delete nodes {{ 삭제할 노드명 }}
* 삭제할 노드가 etcd가 구성된 Master노드의 경우 deletes 말고 etcd member 제외 방법 절차로 삭제작업을 수행해야 합니다.
- 워커 노드에서 실행
$> kubeadm reset ... [Y/n] Y ...
- 마스터 노드에서 실행
-
노드 추가
- 마스터 노드에서 토큰 생성
$> kubeadm token create --print-join-command 1234abcd
- 워커노드에서 실행
$> kubeadm join {{ masterIP:6443}} --node-name {{ 호스트네임 }} --token {{ 토큰명 }} --discovert-token-ca-cert-hash {{ 토큰해시값 }}
- 추가하는 노드가 Master인 경우
$> kubeadm join --control-plane {{ masterIP:6443}} --node-name {{ 호스트네임 }} --token {{ 토큰명 }} --discovert-token-ca-cert-hash {{ 토큰해시값 }}
- 마스터 노드에서 토큰 생성