클러스터 만들기

이 페이지에서는 Google Kubernetes Engine에서 클러스터를 만드는 방법을 보여줍니다. 클러스터 작동 방법을 보려면 클러스터 아키텍처를 참조하세요.

시작하기 전에

이 작업을 준비하려면 다음 단계를 수행하세요.

  • Google Kubernetes Engine API가 사용 설정되었는지 확인합니다.
  • Google Kubernetes Engine API 사용 설정
  • Cloud SDK가 설치되었는지 확인합니다.
  • 기본 프로젝트 ID를 설정합니다.
    gcloud config set project [PROJECT_ID]
  • 영역 클러스터를 사용하는 경우 기본 컴퓨팅 영역을 설정합니다.
    gcloud config set compute/zone [COMPUTE_ZONE]
  • 지역 클러스터를 사용하는 경우 기본 컴퓨팅 지역을 설정합니다.
    gcloud config set compute/region [COMPUTE_REGION]
  • gcloud를 최신 버전으로 업데이트합니다.
    gcloud components update

클러스터 유형

GKE에서는 다음 네 가지 유형의 클러스터를 만들 수 있습니다.

영역 클러스터
영역 클러스터는 특정 지역 내에 있는 하나 이상의 컴퓨팅 영역에서 실행됩니다. 다중 영역 클러스터는 단일 지역 내에서 2개 이상의 컴퓨팅 영역 간에 노드를 실행합니다. 영역 클러스터는 단일 클러스터 마스터를 실행합니다.
지역 클러스터
지역 클러스터는 3개의 컴퓨팅 영역 간에 3개의 클러스터 마스터를 실행하고, 2개 이상의 컴퓨팅 영역에서 노드를 실행합니다.
비공개 클러스터
비공개 클러스터는 기본적으로 해당 클러스터 마스터 및 노드를 공개 인터넷에서 숨기는 영역 또는 지역 클러스터입니다.
알파 클러스터
알파 클러스터는 알파 Kubernetes 기능이 사용 설정된 상태로 실행되는 실험적인 영역 또는 지역 클러스터입니다. 알파 클러스터는 30일 후 만료되며 프로덕션 용도로는 권장되지 않습니다.

클러스터 템플릿

GCP 콘솔을 사용해서 새 클러스터를 만들 경우 사용 가능한 모든 클러스터 템플릿이 표시됩니다. 기본적으로 표준 템플릿이 선택됩니다. 포함된 사전 설정을 포함하여 특정 템플릿에 대해 자세히 알아보려면 해당 항목을 클릭하세요. 사전 설정은 페이지 오른쪽에 있는 정보 패널에 표시됩니다.

다음 템플릿을 사용할 수 있습니다.

  • 표준 클러스터: 새로운 3 노드 영역 클러스터의 이전 기본값과 동일합니다.
  • 첫 번째 클러스터: 덜 강력한 노드를 실행하고 자동 확장과 같은 일부 고급 기능을 사용하지 않는 작은 클러스터입니다.
  • CPU 집중 애플리케이션: 해당 노드가 표준 클러스터보다 더 강력한 다중 코어 CPU를 제공하는 클러스터입니다.
  • 메모리 집중 애플리케이션: 해당 노드가 일반적으로 강력한 다중 코어 CPU와 대용량 메모리를 제공하는 클러스터입니다.
  • GPU 가속 컴퓨팅: 기본 노드 풀이 덜 강력한 노드로 구성되었고 GPU 설정 노드 풀이 추가로 포함된 클러스터입니다. 자동 확장은 기본적으로 사용되지 않습니다.
  • 고가용성: 클러스터가 지역 클러스터로 구성되었고, 특정 지역의 각 영역에 클러스터 마스터가 제공됩니다. 자동 확장 및 유지관리 기간이 사용 설정됩니다.

템플릿을 선택한 후에는 클러스터를 맞춤설정할 수 있습니다.

제공된 템플릿 외에도 기존 클러스터를 복제할 수 있습니다.

템플릿 사전 설정 맞춤설정

클러스터를 맞춤설정하려면 먼저 사용 사례와 가장 일치하는 템플릿을 클릭합니다. 클러스터를 만들기 전에 모든 편집 가능한 필드를 변경할 수 있습니다.

  • 고급 클러스터 전체 옵션을 구성하려면 양식 하단 근처에 있는 고급 옵션을 클릭합니다.
  • 지정된 노드 풀에 있는 노드의 CPU 또는 메모리를 구성하려면 해당 노드 풀에 대해 맞춤설정을 클릭합니다.
  • 지정된 노드 풀에 대해 고급 옵션을 구성하려면 고급 수정을 클릭합니다.

기존 클러스터 복제

기존 클러스터 구성을 새 클러스터의 기본값으로 사용하려면 클러스터 템플릿 대신 기존 클러스터 복제를 클릭합니다. 드롭다운 메뉴에서 복제할 클러스터를 선택합니다.

여러 클러스터 작업

개발자가 만들었거나, 개발자의 프로젝트 내에서 다른 사용자가 만들었거나, Google Cloud Platform 콘솔을 사용하여 만든 여러 클러스터를 작업하는 경우, 해당 클러스터와 상호작용하도록 kubectl 명령줄 도구를 구성해야 합니다.

자세한 내용은 kubectl의 클러스터 액세스 구성을 참조하세요.

영역 클러스터

기본적으로 클러스터는 단일 컴퓨팅 영역에 생성됩니다. 다중 영역 클러스터는 동일 지역 내의 여러 영역에 있는 노드를 실행합니다. 단일 영역 또는 다중 영역 클러스터에 있는 모든 노드는 동일한 클러스터 마스터로 제어됩니다.

다중 영역 클러스터는 여러 영역의 노드에서 애플리케이션을 실행함으로써 애플리케이션의 가용성을 향상시키는 데 도움을 줄 수 있습니다. 이렇게 하면 영역 전체 중단이 발생하더라도 다운타임을 방지할 수 있습니다.

다중 영역 클러스터 작동 방법

처음에 또는 기존 클러스터에 영역을 추가하여 다중 영역 클러스터를 만들 때, GKE는 모든 영역에서 리소스 공간을 동일하게 만듭니다.

예를 들어 각각 4개의 코어가 포함된 2개 노드를 요청하고, 클러스터를 3개 영역에 분산하도록 요청한다고 가정해보세요. 이 경우에는 각 영역에 8개 코어가 배치되어 총 24개의 코어를 얻게 됩니다.

다중 영역 클러스터는 해당 포드가 영역 간에 고르게 예약되도록 영역 간에 리소스를 고르게 분포하려고 시도합니다. 이렇게 하면 가용성 및 장애 복구가 향상됩니다. 컴퓨팅 리소스가 영역간에 고르게 분포되지 않았으면 스케줄러가 포드를 고르게 예약하지 못할 수 있습니다. 포드 안티 어피니티를 지정하여 고른 리소스 분포를 보장할 수 있습니다.

다중 영역 클러스터의 노드 풀에는 다중 영역 가용성이 자동으로 포함됩니다. 이러한 노드는 오류 도메인을 나타내는 라벨이 Kubernetes에 적용되므로, Kubernetes 스케줄러가 이를 고려할 수 있습니다.

단일 영역 클러스터 만들기

gcloud

gcloud 명령줄 도구를 사용하여 클러스터를 만들려면 gcloud container clusters 명령어를 사용합니다.

gcloud container clusters create [CLUSTER_NAME] [--zone [COMPUTE_ZONE]]

여기서 [CLUSTER_NAME]은 클러스터에 대해 개발자가 선택한 이름입니다. 선택적인 --zone 플래그는 gcloud config set compute/zone으로 설정된 기본 compute/zone 속성을 재정의합니다.

선택적 플래그의 전체 목록은 gcloud container clusters create 문서를 참조하세요.

콘솔

GCP 콘솔을 사용하여 클러스터를 만들려면 다음 단계를 수행하세요.

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

    Google Kubernetes Engine 메뉴로 이동

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

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

  4. 필요한 경우 템플릿을 맞춤설정합니다. 다음 필드는 필수입니다.

    • 이름: 클러스터 이름을 선택합니다. 프로젝트 및 영역 내에서 고유해야 합니다.
    • 위치 유형: 클러스터의 모든 노드가 동일 영역에 있는지 아니면 지정된 지역의 모든 영역에 있을 수 있는지 여부입니다.
    • 영역: 위치 유형영역인 경우 클러스터를 만들 Compute Engine 컴퓨팅 영역입니다.
    • 지역: 위치 유형지역인 경우 클러스터를 만들 Compute Engine 컴퓨팅 영역입니다.
    • 노드 풀:
      • 클러스터 크기: 클러스터에 만들 노드 수입니다. 노드 및 리소스에 대해 사용 가능한 리소스 할당량이 있어야 합니다(예: 방화벽 경로).
      • 머신 유형: 인스턴스에 사용할 Compute Engine 머신 유형입니다. 각 머신 유형은 서로 다르게 청구됩니다. 기본 머신 유형은 n1-standard-1입니다. 머신 유형 가격 정보는 머신 유형 가격표를 참조하세요.
  5. 만들기를 클릭합니다.

GCP 콘솔에서 클러스터를 만든 다음에는 해당 클러스터와 상호작용하도록 kubectl을 구성해야 합니다. 자세한 내용은 kubeconfig 항목 생성을 참조하세요.

다중 영역 클러스터 만들기

gcloud

다중 영역 클러스터를 만들려면 다음 명령어를 실행합니다. --zone을 사용하여 클러스터 제어 영역에 대한 영역을 지정합니다. --node-locations를 사용하여 원하는 모든 노드 영역을 지정합니다.

gcloud container clusters create [CLUSTER_NAME] \
--zone [COMPUTE_ZONE] \
--node-locations [COMPUTE_ZONE],[COMPUTE_ZONE],...]`

각 항목의 의미는 다음과 같습니다.

  • [CLUSTER_NAME]은 클러스터에 대해 개발자가 선택한 이름입니다.
  • --zone <var>[COMPUTE_ZONE]</var>은 클러스터 제어 영역에 대한 영역입니다.
  • --node-locations <var>[COMPUTE_ZONE]</var>,<var>[COMPUTE_ZONE]</var>,...] 은 클러스터 제어 영역의 영역을 포함하여, 클러스터가 실행되는 모든 영역입니다.

예를 들면 다음과 같습니다.

gcloud container clusters create example-cluster \
--zone us-central1-a \
--node-locations us-central1-a,us-central1-b,us-central1-c

--num-nodes 플래그를 생략한 경우 클러스터에서 생성되는 기본 영역별 노드 수는 3개입니다. 3개 영역이 지정되었기 때문에, 이 명령어는 us-central1-a, us-central1-b, us-central1-c에 각각 3개씩 9개 노드의 클러스터를 만듭니다.

콘솔

다중 영역 클러스터를 만들려면 다음 단계를 수행하세요.

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

    Google Kubernetes Engine 메뉴로 이동

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

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

  4. 영역 드롭다운 메뉴에서 클러스터 제어 영역에 대해 원하는 영역을 선택합니다(예: us-central1-a).

  5. 원하는 대로 클러스터를 구성한 후 고급 옵션을 클릭합니다.

  6. 추가 영역 위치 섹션에서 클러스터를 실행하려는 추가 영역을 선택합니다.

  7. 저장을 클릭하여 고급 옵션 오버레이를 종료합니다.

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

GCP 콘솔에서 클러스터를 만든 다음에는 해당 클러스터와 상호작용하도록 kubectl을 구성해야 합니다. 자세한 내용은 kubeconfig 항목 생성을 참조하세요.

지역 클러스터

지역 클러스터는 지역 내 여러 영역에 Kubernetes 리소스를 배포합니다. 지역 클러스터는 3개 영역 간에 3개의 클러스터 마스터를 만들고, 기본적으로 3개 영역에 또는 원하는 수 만큼 여러 영역에 노드를 만듭니다.

지역 클러스터에 대해 자세히 알아보려면 지역 클러스터 개념 페이지를 참조하세요.

지역 클러스터 만들기

GCP 콘솔 또는 gcloud 명령줄 도구를 사용하여 지역 클러스터를 만들 수 있습니다.

기본적으로 지역 클러스터가 생성되면 클러스터의 노드 풀이 3개 영역 간에 복제됩니다.

gcloud

지역 클러스터를 만들려면 다음 명령어를 실행합니다.

gcloud container clusters create [CLUSTER_NAME] --region [REGION] \
[--node-locations [COMPUTE_ZONE],[COMPUTE_ZONE]...]]

여기서 [CLUSTER_NAME]은 지역 클러스터에 대해 개발자가 선택한 이름이고 [REGION]은 원하는 지역입니다(예: us-central1). 영역이 3개가 넘는 지역의 경우 또는 더 적은 개수의 영역이 선호되는 경우, 선택적인 --node-locations 플래그는 노드가 복제되는 기본 영역을 재정의합니다.

예를 들어 us-east1에서 9개 노드로 지역 클러스터를 만들려면 다음을 사용하세요(기본값 3개 노드 각각에 3개 영역 포함).

gcloud container clusters create my-regional-cluster --region us-west1

6개 노드로 지역 클러스터를 만들려면 다음을 사용하세요(--num-nodes로 지정된 대로 2개 노드 각각에 3개 영역 포함).

gcloud container clusters create my-regional-cluster --num-nodes 2 \
--region us-west1

2개 영역에 6개 노드가 포함된 지역 클러스터를 만들려면 다음을 사용하세요(3개 노드가 각각 포함된, --node-locations로 지정된 2개 영역).

gcloud container clusters create my-regional-cluster --region us-central1 \
--node-locations us-central1-b,us-central1-c

콘솔

지역 클러스터를 만들려면 다음 단계를 수행하세요.

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

    Google Kubernetes Engine 메뉴로 이동

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

  3. 고가용성 클러스터 템플릿을 선택합니다.

  4. 지역 드롭다운 메뉴에서 원하는 [지역][r]을 선택합니다(예: us-central1).

  5. 원하는 대로 클러스터를 구성한 후 만들기를 클릭합니다.

GCP 콘솔에서 클러스터를 만든 다음에는 해당 클러스터와 상호작용하도록 kubectl을 구성해야 합니다. 자세한 내용은 kubeconfig 항목 생성을 참조하세요.

비공개 클러스터

비공개 클러스터를 만드는 방법을 알아보려면 비공개 클러스터 방법 가이드를 참조하세요.

알파 클러스터

알파 클러스터는 모든 Kubernetes API와 기능을 사용 설정한 상태로 안정적인 Kubernetes 출시 버전을 실행하는 단기 인스턴스입니다.

알파 클러스터에 대해 알아보려면 알파 클러스터 개념 페이지를 참조하세요.

알파 클러스터 만들기

gcloud

알파 클러스터를 만들려면 다음 명령어를 실행합니다.

gcloud container clusters create [CLUSTER_NAME] \
    --enable-kubernetes-alpha [--zone [COMPUTE_ZONE]]
    [--cluster-version [VERSION]]

각 항목의 의미는 다음과 같습니다.

  • [CLUSTER_NAME]은 클러스터에 대해 개발자가 선택한 이름입니다.
  • [COMPUTE_ZONE]은 클러스터를 만들 Compute Engine [컴퓨팅 영역]입니다. 선택적인 --zone 플래그는 gcloud config set compute/zone으로 설정된 기본 compute/zone 속성을 재정의합니다. 참고: 기본 컴퓨팅 영역은 gcloud config set compute/zone [COMPUTE_ZONE]을 사용하여 설정하거나 --zone을 사용하여 지정해야 합니다.
  • [VERSION]은 클러스터에서 실행할 GKE 버전입니다. 설정되지 않은 경우 클러스터는 버전 관리 및 업그레이드에 설명된 현재 기본 버전을 실행합니다.

알파 클러스터가 업그레이드되지 않고 30일 후 삭제된다는 경고 확인 메시지가 표시됩니다.

This will create a cluster with all Kubernetes Alpha features enabled.
- This cluster will not be covered by the GKE SLA and should
  not be used for production workloads.
- You will not be able to upgrade the master or nodes.
- The cluster will be deleted after 30 days.

콘솔

알파 클러스터를 만들려면 다음 단계를 수행하세요.

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

    Google Kubernetes Engine 메뉴로 이동

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

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

  4. 클러스터 버전 드롭다운 메뉴에서 클러스터에서 실행하려는 원하는 GKE 버전을 선택합니다.

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

  6. 알파 클러스터를 만들려면 먼저 알파 클러스터와 호환되지 않는 설정을 사용하지 않도록 설정합니다.

    1. 고급 옵션을 선택합니다.
    2. 자동 복구 사용을 사용하지 않도록 설정합니다.
    3. 저장을 클릭하여 기본 클러스터 만들기 화면으로 돌아갑니다.
  7. 고급 옵션을 클릭합니다. 페이지 하단 근처에서 이 클러스터에서 Kubernetes 알파 기능 사용 설정을 선택합니다.

  8. 경고를 읽고 결과를 이해합니다를 선택합니다.

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

GCP 콘솔에서 클러스터를 만든 다음에는 해당 클러스터와 상호작용하도록 kubectl을 구성해야 합니다. 자세한 내용은 kubeconfig 항목 생성을 참조하세요.

알파 클러스터 만료

알파 클러스터가 만료되는 시간을 확인하려면 다음 명령어를 실행합니다.

gcloud container clusters list

바이너리 승인 포함 클러스터

바이너리 승인은 Cloud에서 실행되는 애플리케이션에 대해 소프트웨어 공급망 보안을 제공하는 GCP 서비스입니다. 바이너리 승인은 Container Registry 또는 다른 컨테이너 이미지 레지스트리에서 GKE에 배포하는 이미지에서 작동합니다. 바이너리 승인을 사용하면 애플리케이션을 프로덕션 환경에 배포하기 전에 소프트웨어의 품질 및 무결성을 보호하는 내부 프로세스가 성공적으로 완료되었는지 확인할 수 있습니다.

바이너리 승인을 사용 설정하여 클러스터를 만드는 방법을 보려면 바이너리 승인 문서클러스터 만들기를 참조하세요.

다음 단계

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

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

Kubernetes Engine