- 인쇄
- PDF
클러스터 노드풀 관리
- 인쇄
- PDF
VPC 환경에서 이용 가능합니다.
클러스터 내의 노드풀 목록을 확인하고 개별 노드풀 상세 정보 확인, 삭제, 업그레이드, 워커 노드 개수 변경 등 관리 작업을 수행할 수 있습니다.
노드풀 목록 확인
전체 노드풀 목록
서비스 내에 생성된 모든 노드풀의 목록을 확인하려면 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Services > Containers > Ncloud Kubernetes Service > Node pools 메뉴를 차례대로 클릭해 주십시오.
개별 클러스터 내의 노드풀 목록
각 클러스터 내의 노드풀 목록을 확인하는 방법은 다음과 같습니다.
- 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Services > Containers > Ncloud Kubernetes Service 메뉴를 차례대로 클릭해 주십시오.
- 클러스터 목록에서 노드풀 목록을 확인할 클러스터의 행을 클릭해 주십시오.
노드풀 상세 정보 보기
각 노드풀의 상세 정보를 확인하려면 노드풀 목록에서 확인할 노드풀의 이름을 클릭해 주십시오.
노드풀 추가
클러스터에 새로운 노드풀을 추가하는 방법은 다음과 같습니다.
- 클러스터 목록에서 개별 클러스터 행을 클릭해 주십시오.
- 클러스터 상세 정보 탭에서 노드풀 영역 아래에 있는 [추가] 버튼을 클릭해 주십시오.
- 노드풀의 이름, 서버 이미지 이름, 서버 타입, 노드 수, Kubernetes Label, Taint, 서브넷, Node IAM Role을 입력한 후 [다음] 버튼을 클릭해 주십시오.
- 노드풀 설정을 다시 한 번 확인한 후 [생성하기] 버튼을 클릭해 주십시오.
노드풀 내의 워커 노드 개수 변경
워커 노드 개수를 직접 변경
클러스터 노드풀의 워커 노드 개수는 직접 변경하거나, 클러스터 Autoscaler를 사용하여 자동으로 증감되도록 설정할 수 있습니다.
클러스터 노드풀의 워커 노드 개수를 직접 변경하는 방법은 다음과 같습니다.
- 클러스터 목록에서 개별 클러스터 행을 클릭해 주십시오.
- 클러스터 상세 정보 탭의 노드풀 목록에서 확인할 노드풀의 이름을 클릭해 주십시오.
- 노드풀 상세 정보 페이지에서 [수정] 버튼을 클릭해 주십시오.
- 설정 팝업 창에서 미설정 버튼을 클릭한 후 워커 노드 개수를 입력해 주십시오.
- [수정] 버튼을 클릭해 주십시오.
특정 워커 노드 제거
노드풀의 노드 개수를 감소시킬 때 작업 우선순위는 다음과 같습니다.
- 정지 상태인 노드
- 생성일이 오래된 노드
클러스터 노드풀의 특정 노드를 제거 하는 방법은 다음과 같습니다.
- 클러스터 목록에서 개별 클러스터 행을 클릭해 주십시오.
- 클러스터 상세 정보 탭의 노드풀 목록에서 확인할 노드풀의 이름을 클릭해 주십시오.
- 노드풀 상세 정보 페이지에서 대상 노드의 [삭제] 버튼을 클릭해 주십시오.
또는 대상 노드를 정지한 후, 노드 수를 수정하여 진행할 수 있습니다.
클러스터 Autoscaler를 통한 개수 자동 증감
클러스터 Autoscaler를 사용하여 워커 노드 개수가 자동으로 증감되도록 하려면 클러스터 Autoscaler 사용을 참조해 주십시오.
노드풀의 Kubernetes Label과 Taint 수정
노드풀의 Kubernetes Label과 Taint를 수정하는 방법은 다음과 같습니다.
- 클러스터 목록에서 개별 클러스터 행을 클릭해 주십시오.
- 클러스터 상세 정보 탭의 노드풀 목록에서 확인할 노드풀의 이름을 클릭해 주십시오.
- 노드풀 상세 정보 페이지에서 Kubernetes Label 혹은 Taint 목록 하단의 [수정] 버튼을 클릭해 주십시오.
- Kubernetes Label 혹은 Taint를 변경한 후, [확인] 버튼을 클릭해 주십시오.
노드풀 삭제
클러스터 노드풀을 삭제하는 방법은 다음과 같습니다.
- 클러스터 목록에서 개별 클러스터 행을 클릭해 주십시오.
- 클러스터 상세 정보 탭의 노드풀 목록에서 삭제할 노드풀의 이름을 클릭해 주십시오.
- 노드풀 상세 정보 페이지에서 [삭제] 버튼을 클릭해 주십시오.
- 확인 팝업창에 해당 노드풀의 이름을 입력한 후 [삭제] 버튼을 클릭해 주십시오.
노드 라벨을 통한 노드풀 식별
각 노드가 속해 있는 노드풀의 정보는 노드 라벨에 추가되며, ncloud.com/nks-nodepool: {노드풀 이름}
형태로 표시됩니다. --show-labels
옵션을 사용하여 노드 라벨을 확인할 수 있습니다. 노드 라벨을 이용하여 노드풀을 식별한 후 각 노드풀의 사양에 따라 Pod를 효율적으로 배치할 수 있습니다.
노드 라벨을 확인하려면 아래 명령어를 실행해 주십시오.
$ kubectl --kubeconfig $KUBE_CONFIG get nodes --show-labels
노드풀 업그레이드
추가 증가 노드 개수와 서비스 불가 가능 노드 개수를 지정하여 노드풀의 버전 업그레이드를 수행할 수 있습니다.
노드풀 버전 업그레이드는 다음과 같이 진행됩니다.
- 추가 증가 노드 개수만큼의 신규 버전 노드를 생성한 후 등록될 때까지 대기
- 교체 대상 노드에 더이상 Pod가 스케줄링될 수 없도록 설정한 후 기존 Pod를 다른 노드로 재배치
- 교체 대상 노드를 제거
- 모든 노드가 신규 버전으로 교체될 때까지 위의 작업을 반복
업그레이드 전 점검
노드풀을 업그레이드하기 전 아래의 사항을 확인하여 서비스에 영향을 줄 수 있는 요소를 점검해 주십시오.
- 신규 버전 변경 사항: Kubernetes changelog를 참조하여 신규 버전에서 변경된 사항들이 서비스에 영향을 줄 수 있는지 확인하십시오.
- 버전 차이 정책: Version Skew Policy를 참조하여 클러스터 및 구성 요소의 버전 간 호환성을 확인하십시오.
- Admission Webhook: 클러스터 내에 Webhook이 있는 경우 업그레이드 도중 교착 상태에 빠질 수 있으므로, Dynamic Admission Control을 참조하여 업그레이드 전 미리 조치를 취하십시오.
- 가용 서버 확보: 안정적인 업그레이드를 위해 추가 증가 노드 개수만큼의 가용 서버를 확보하십시오.
- 노드 정보 변경 확인: 노드풀을 업그레이드하면 기존 노드 관련 정보들은 초기화 또는 변경되므로, 업그레이드를 수행하기 전 로컬 볼륨 정보, 노드 이름, IP, 라벨 등의 정보를 미리 확인하십시오.
다음 사항을 참고하여 업그레이드와 관련된 세부 사항을 설정할 수 있습니다.
- PodDisruptionBudget: Specifying a Disruption Budget을 참고하여 클러스터 업그레이드 중에도 서비스 중인 Pod를 원하는 비율 또는 개수로 유지할 수 있습니다.
- Readiness Probe: Define readiness probes를 참고하여 노드풀 교체 중 Pod가 재배치될 때 Pod가 서비스 가능 상태일때만 Ncloud Kubernetes Service 리소스를 통해 접근 가능하도록 설정할 수 있습니다.
업그레이드 방법
노드풀을 업그레이드하는 방법은 다음과 같습니다.
- 클러스터 목록에서 업그레이드할 노드풀이 있는 클러스터의 행을 클릭해 주십시오.
- 클러스터 상세 정보 탭에서 업그레이드할 노드풀 이름 아래에 있는 [업그레이드] 버튼을 클릭해 주십시오.
- 추가 증가 노드 개수, 서비스 불가 가능 노드 개수를 설정한 후 업그레이드를 수행해 주십시오.
- 추가 증가 노드 개수: 업그레이드 중 추가될 수 있는 노드의 개수를 의미합니다. 기본값은 1이며, 최소 0에서 최대 0까지 지정할 수 있습니다.
- 서비스 불가 가능 노드 개수: 업그레이드를 수행하는 도중에 서비스 불가 상태가 되어도 무방한 노드 개수를 의미합니다. 기본값은 0이며, 최대 5까지 지정할 수 있습니다.
기존 노드의 개수가 감소할 때 이 개수만큼 추가로 감소되며, 신규 노드가 추가될 때 최대 추가 증가 노드 개수와 서비스 불가 가능 노드 개수의 합계만큼 증가할 수 있습니다.
노드 개수 설정 예시
- 예시 1: 노드풀 크기 5, 추가 증가 노드 개수 1, 서비스 불가 가능 노드 개수 0
노드풀 크기보다 1개가 더 생성될 수 있으므로, 최대 6개의 노드가 존재할 수 있습니다.
기존 노드풀 크기보다 노드가 줄어들 수 없습니다.
노드 교체가 한 개씩 이루어지므로, 비교적 느리지만 안정적인 업그레이드가 가능합니다.
- 예시 2: 노드풀 크기 5, 추가 증가 노드 개수 5, 서비스 불가 가능 노드 개수 0
노드풀 크기보다 5개가 더 생성될 수 있으므로. 최대 10개의 노드가 존재할 수 있습니다.
기존 노드풀 크기보다 노드가 줄어들 수 없습니다.
한 번에 많은 노드를 추가하므로, 비교적 빠르고 안정적인 업그레이드가 가능합니다.
- 예시 3: 노드풀 크기 5, 추가 증가 노드 개수 0, 서비스 불가 가능 노드 개수 5
기존 노드풀 크기보다 개수가 줄어들 수 있고, 최소 0개의 노드가 존재할 수 있습니다.
기존 노드풀 크기보다 노드가 추가될 수 없습니다.
한 번에 교체될 수 있는 노드 개수가 많으므로, 빠른 업그레이드가 가능하지만 클러스터가 불안정해질 수 있습니다.