Skip to main content

kubernetes에서 노드 rejoin 방법

image.png

perplexity에서 생성한 AI이미지

시작하는말

안녕하세요, 고니입니다.

kubernetes환경에서 호스트네임 변경같이 특정 노드의 속성변경 작업이 진행되는 경우  reset 및 join하는 절차가 필요하기 때문에 작성하였습니다.

사전 작업

삭제할 노드에서 워커노드 제외방법를 통해 제외 준비 합니다.

본 작업

  1. 노드 삭제

    • 마스터 노드에서 실행
      $> kubectl delete nodes {{ 삭제할 노드명 }}

      * 삭제할 노드가 etcd가 구성된 Master노드의 경우 deletes  말고 etcd member 제외 방법 절차로 삭제작업을 수행해야 합니다. 


    • 워커 노드에서 실행
      $> kubeadm reset
      ...
      [Y/n] Y
      ...

  2. 노드 추가

    • 마스터 노드에서 토큰 생성
      $> 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 {{ 토큰해시값 }}