사용자 클러스터 크기 조절

사용자 클러스터 크기 조절은 노드를 추가 또는 제거하는 것을 의미합니다. 노드를 추가하려면 새 노드에 IP 주소를 사용할 수 있어야 합니다. 노드 풀의 복제본 수를 변경하여 사용자 클러스터의 크기를 조절합니다.

사용자 클러스터의 최대 및 최소 한도에 대한 자세한 내용은 할당량 및 한도를 참조하세요.

노드 풀 관리에 대한 자세한 내용은 노드 풀 만들기 및 관리를 참조하세요.

사용 가능한 IP 주소가 충분한지 확인

크기 조절 후 노드 N개를 만들려면 사용 가능한 IP 주소가 N+1개 있어야 합니다.

클러스터 크기를 조정하기 전에 IP 주소가 충분한지 확인합니다. 확인 방법은 클러스터에서 DHCP 서버를 사용하는지 또는 고정 IP 주소를 사용하는지에 따라 다릅니다.

DHCP

클러스터에서 DHCP를 사용하는 경우 DHCP 서버가 충분한 IP 주소를 제공할 수 있는지 확인합니다. 크기 조절 후 클러스터에 있을 노드 수보다 하나 이상의 IP 주소를 제공할 수 있어야 합니다.

고정 IP

고정 IP 주소가 충분한지 확인하는 방법은 클러스터가 GKE On-Prem API에 등록되어 있는지 여부에 따라 다릅니다. 다음 중 하나에 해당하는 경우 사용자 클러스터가 GKE On-Prem API에 등록된 것입니다.

  • Google Cloud 콘솔, Google Cloud CLI(gcloud CLI) 또는 GKE On-Prem API에 클러스터를 자동으로 등록하는 Terraform을 사용하여 클러스터를 만든 경우입니다. 이러한 표준 애플리케이션을 모두 합쳐서 GKE On-Prem API 클라이언트라고 부릅니다.

  • gkectl enroll cluster 명령어는 GKE On-Prem API에서 관리하도록 구성되는 사용자 클러스터에서 실행되었습니다.

GKE On-Prem API가 사용자 클러스터를 관리하는 경우 콘솔을 사용하여 IP 수를 계산하고 필요한 경우 IP를 더 추가합니다. GKE On-Prem API로 사용자 클러스터를 관리하지 않는 경우 먼저 gkectl update cluster를 실행하여 클러스터에 IP 주소가 충분히 할당되었는지 확인합니다. 그렇지 않은 경우 오류 메시지에서 필요한 추가 IP 주소의 수를 확인할 수 있습니다.

고정 IP 추가

GKE On-Prem API로 클러스터를 관리하는 경우 콘솔을 사용하여 IP 주소를 추가합니다. 아니면 관리자 워크스테이션에서 명령줄을 사용합니다.

콘솔

  1. 콘솔에서 Google Kubernetes Engine 클러스터 개요 페이지로 이동합니다.

    GKE 클러스터로 이동

  2. 사용자 클러스터가 있는 Google Cloud 프로젝트를 선택합니다.

  3. 클러스터 목록에서 클러스터 이름을 클릭한 다음 세부정보 더보기 패널에서 세부정보 보기를 클릭합니다.

  4. 네트워킹 섹션에서 수정을 클릭합니다.

  5. 추가 고정 IP 주소 추가 대화상자에서 IP 주소 추가를 클릭합니다. IP 주소와 호스트 이름(선택사항)을 입력합니다. 필요한 경우 반복합니다. 작업을 마치면 완료를 클릭합니다.

명령줄

  1. 수정할 사용자 클러스터의 IP 블록 파일을 엽니다.

  2. 사용자 클러스터에 사용하려는 모든 IP 주소가 IP 블록 파일에 포함되어 있는지 확인합니다. IP 블록 파일에는 크기 조절 후 클러스터에 있을 노드 수보다 IP 주소가 하나 이상 많아야 합니다.

  3. 사용자 클러스터에 예약된 주소를 보려면 다음을 실행합니다.

    kubectl get cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
      --namespace USER_CLUSTER_NAME USER_CLUSTER_NAME --output yaml
    

    다음을 바꿉니다.

    • ADMIN_CLUSTER_KUBECONFIG: 관리자 클러스터 kubeconfig 파일의 경로
    • USER_CLUSTER_NAME: 사용자 클러스터의 이름
  4. 필요에 따라 해당 블록에 추가 고정 IP 주소를 최대한 많이 추가한 후 gkectl update cluster를 실행합니다.

다음은 IP 주소 4개와 해당 호스트 이름이 있는 IP 블록 파일의 예시입니다.

hostconfig:
dns: 172.16.255.1
tod: 216.239.35.0
blocks:
- netmask: 255.255.248.0
  gateway: 21.0.135.254
  ips:
  - ip: 21.0.133.41
    hostname: user-node-1
  - ip: 21.0.133.50
    hostname: user-node-2
  - ip: 21.0.133.56
    hostname: user-node-3
  - ip: 21.0.133.47
    hostname: user-node-4

클러스터 크기 조절

콘솔

  1. 콘솔에서 Google Kubernetes Engine 클러스터 개요 페이지로 이동합니다.

    GKE 클러스터로 이동

  2. 사용자 클러스터가 있는 Google Cloud 프로젝트를 선택합니다.

  3. 클러스터 목록에서 클러스터 이름을 클릭한 다음 세부정보 더보기 패널에서 세부정보 보기를 클릭합니다.

  4. 노드 탭을 클릭합니다.

  5. 크기를 조정할 노드 풀의 이름을 클릭합니다.

  6. 크기 조절을 클릭합니다.

  7. 노드 필드에 노드 풀에 원하는 노드 수를 입력한 후 완료를 클릭합니다.

  8. 을 클릭하여 이전 페이지로 돌아갑니다.

  9. 콘솔에 클러스터 상태: 진행 중인 변경사항이 표시됩니다. 세부정보 표시를 클릭하여 리소스 상태 조건상태 메시지를 확인합니다.

명령줄

사용자 클러스터 구성 파일에서 하나 이상의 nodePools 요소에 있는 replicas 필드의 값을 업데이트합니다.

클러스터 크기를 조절합니다.

gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG

다음을 바꿉니다.

  • ADMIN_CLUSTER_KUBECONFIG: 관리자 클러스터 kubeconfig 파일의 경로

  • USER_CLUSTER_CONFIG: 사용자 클러스터 구성 파일의 경로

크기 조절이 성공했는지 확인합니다.

kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get nodes

kubectl --kubeconfig USER_CLUSTER_KUBECONFIG describe machinedeployments NODE_POOL_NAME | grep Replicas

다음을 바꿉니다.

  • USER_CLUSTER_KUBECONFIG: 사용자 클러스터 kubeconfig 파일의 경로

  • NODE_POOL_NAME: 크기를 조절한 노드 풀의 이름

문제 해결

클러스터 생성 및 업그레이드 문제 해결을 참조하세요.