노드 자동 복구

이 페이지에서는 Google Kubernetes Engine에서 노드 자동 복구를 구성하는 방법을 살펴봅니다.

개요

GKE의 노드 자동 복구 기능은 클러스터노드를 정상 작동 상태로 유지하는 데 도움이 됩니다. 이 기능이 사용 설정되면 GKE는 클러스터의 각 노드 상태를 주기적으로 확인합니다. 노드가 장시간 동안 연이어 상태 검사에 실패하는 경우, GKE는 노드의 복구 프로세스를 시작합니다.

복구 기준

GKE는 노드의 상태를 사용하여 노드를 복구해야 하는지 결정합니다. Ready 상태를 보고하는 노드는 정상으로 간주됩니다. 노드가 일정 시간 임계값 동안 연이어 비정상 상태 보고서를 보고하는 경우, GKE가 복구 작업을 트리거합니다. 비정상 상태의 뜻은 다음과 같습니다.

  • 일정 시간 임계값(약 10분) 동안 노드가 연이은 검사에서 NotReady 상태를 보고하는 경우
  • 일정 시간 임계값(약 10분) 동안 노드가 상태를 전혀 보고하지 않는 경우
  • 장시간(약 30분) 동안 노드의 부팅 디스크에 디스크 공간이 부족한 경우

노드 복구 프로세스

노드 복구가 필요함을 GKE가 감지하면 해당 노드는 드레이닝되고 다시 만들어집니다. 노드가 응답하지 않거나 드레이닝 명령어를 처리할 수 없을 만큼 비정상 상태인 경우, 드레이닝이 성공하지 못할 수 있습니다.

여러 노드의 복구가 필요한 경우, GKE는 여러 노드를 동시에 복구할 수 있습니다. GKE는 클러스터의 크기와 클러스터의 손상된 노드 수에 따라 복구 수를 제한합니다. 클러스터가 클수록 한도가 높아지고 손상된 노드가 많으면 한도가 줄어듭니다. 복구 프로세스 중에 언제든 노드 자동 복구를 사용 중지하면 진행 중인 복구는 취소되지 않으며 현재 복구 중인 노드의 복구가 완료됩니다.

GKE는 작업 로그에서 자동 복구 이벤트의 항목을 생성합니다. gcloud container operations list 명령어를 사용하여 로그를 확인할 수 있습니다.

노드 자동 복구 사용 설정

노드 자동 복구는 노드 풀 단위로 사용 설정할 수 있습니다. 클러스터를 만들 때 클러스터의 기본 노드 풀에서 자동 복구를 사용 또는 사용 안함으로 설정할 수 있습니다. 추가 노드 풀을 만드는 경우, 기본 노드 풀의 자동 복구 설정과 관계없이 이러한 노드 풀의 자동 복구를 사용 설정하거나 사용 중지할 수 있습니다.

gcloud

노드 자동 복구가 사용 설정된 클러스터 또는 노드 풀을 만들려면 gcloud 명령줄 도구를 사용하여 클러스터 또는 노드 풀을 만들 때 --enable-autorepair 옵션을 지정합니다.

자동 복구가 사용 설정된 클러스터를 만들려면 다음 명령어를 실행합니다.

gcloud container clusters create [CLUSTER_NAME] --zone [COMPUTE_ZONE] \
--enable-autorepair

자동 복구가 사용 설정된 노드 풀을 만들려면 다음을 실행합니다.

gcloud container node-pools create [POOL_NAME] --cluster [CLUSTER_NAME] \
--zone [COMPUTE_ZONE] --enable-autorepair

기존 노드 풀에서 자동 복구를 사용 설정하려면 다음을 실행합니다.

gcloud container node-pools update [POOL_NAME] --cluster [CLUSTER_NAME] \
--zone [COMPUTE_ZONE] --enable-autorepair

콘솔

기본 노드 풀의 노드 자동 복구가 사용 설정된 클러스터를 만들려면 다음 단계를 따르세요.

  1. GCP Console에서 Google Kubernetes Engine 메뉴로 이동합니다.

    Google Kubernetes Engine 메뉴로 이동

  2. 클러스터 만들기를 클릭합니다.

  3. 표준 클러스터 템플릿을 선택하거나 작업 부하에 적합한 템플릿을 선택합니다.

  4. 원하는 대로 클러스터를 구성합니다.

  5. 고급 수정을 클릭합니다. 자동 복구 사용을 선택합니다.

  6. 만들기를 클릭합니다.

노드 자동 복구가 사용 설정된 노드 풀을 만들려면 다음 단계를 따르세요.

  1. GCP Console에서 Google Kubernetes Engine 메뉴로 이동합니다.

    Google Kubernetes Engine 메뉴로 이동

  2. 클러스터의 수정 버튼(연필 모양)을 클릭합니다.

  3. 노드 풀 메뉴에서 노드 풀 추가를 클릭합니다.

  4. 노드 풀을 원하는 대로 구성합니다. 그런 다음 노드 풀의 고급 수정을 클릭합니다.

  5. 자동 복구 사용을 선택합니다.

  6. 저장을 클릭하여 노드 풀 구성을 저장합니다.

  7. 저장을 다시 클릭하여 클러스터를 수정합니다.

기존 노드 풀의 노드 자동 복구를 사용 설정하려면 다음 단계를 따릅니다.

  1. GCP Console에서 Google Kubernetes Engine 메뉴로 이동합니다.

    Google Kubernetes Engine 메뉴로 이동

  2. 클러스터의 수정 버튼(연필 모양)을 클릭합니다.

  3. 노드 풀 메뉴에서 수정할 노드 풀의 고급 수정을 클릭합니다.

  4. 자동 복구 사용을 선택합니다.

  5. 저장을 클릭하여 노드 풀 구성을 저장합니다.

  6. 저장을 다시 클릭하여 클러스터를 수정합니다.

노드 자동 복구 사용 중지

gcloud

노드 풀의 자동 복구를 사용 중지하려면 다음 명령어를 실행합니다.

gcloud container node-pools update [POOL_NAME] --cluster [CLUSTER_NAME] \
--zone [COMPUTE_ZONE] --no-enable-autorepair

콘솔

기존 노드 풀의 노드 자동 복구를 사용 중지하려면 다음 단계를 따르세요.

  1. GCP Console에서 Google Kubernetes Engine 메뉴로 이동합니다.

    Google Kubernetes Engine 메뉴로 이동

  2. 클러스터의 수정 버튼(연필 모양)을 클릭합니다.

  3. 노드 풀 메뉴에서 수정할 노드 풀의 고급 수정을 클릭합니다.

  4. 자동 복구 사용 선택을 해제합니다.

  5. 저장을 클릭하여 노드 풀 구성을 저장합니다.

  6. 저장을 다시 클릭하여 클러스터를 수정합니다.

다음 단계

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Kubernetes Engine