컨테이너 워크로드 배포를 허용하는 사용자 클러스터를 만듭니다.
시작하기 전에
사용자 클러스터를 만드는 데 필요한 권한을 얻으려면 조직 IAM 관리자에게 사용자 클러스터 관리자 역할 (user-cluster-admin 역할)을 부여해 달라고 요청하세요.
사용자 클러스터 만들기
사용자 클러스터를 만드는 데 필요한 권한을 얻으려면 IAM 관리자에게 사용자 클러스터 관리자 역할 (user-cluster-admin 역할)을 부여해 달라고 요청하세요.
다음 단계를 완료하여 사용자 클러스터를 만듭니다.
콘솔
탐색 메뉴에서 클러스터를 선택합니다.
클러스터 만들기를 클릭합니다.
이름 필드에 사용자 클러스터의 이름을 지정합니다.
GDC 클러스터 버전을 선택합니다. 각 버전은 고유한 Kubernetes 버전에 매핑됩니다.
다음을 클릭합니다.
클러스터의 네트워크 설정을 구성합니다. 클러스터를 만든 후에는 이러한 네트워크 설정을 변경할 수 없습니다. 사용자 클러스터의 기본 및 유일하게 지원되는 인터넷 프로토콜은 인터넷 프로토콜 버전 4(IPv4)입니다.
전용 부하 분산기 노드를 만들려면 만들 노드 수를 입력합니다. 기본적으로 노드는 0개이며 부하 분산기 트래픽은 제어 노드를 통해 실행됩니다.
사용할 서비스 CIDR (클래스 없는 도메인 간 라우팅)을 선택합니다. 배포된 서비스(예: 부하 분산기)에는 이 범위의 IP 주소가 할당됩니다.
사용할 포드 CIDR을 선택합니다. 클러스터는 이 범위에서 포드와 VM에 IP 주소를 할당합니다.
다음을 클릭합니다.
사용자 클러스터에 대해 자동 생성된 기본 노드 풀의 세부정보를 검토합니다. edit 수정을 클릭하여 기본 노드 풀을 수정합니다.
노드 풀을 추가로 만들려면 노드 풀 추가를 선택합니다. 기본 노드 풀을 수정하거나 새 노드 풀을 추가할 때 다음 옵션을 사용하여 맞춤설정합니다.
- 노드 풀의 이름을 할당합니다. 노드 풀을 만든 후에는 이름을 수정할 수 없습니다.
- 노드 풀에서 만들 워커 노드 수를 지정합니다.
워크로드 요구사항에 가장 적합한 머신 클래스를 선택합니다. 다음 설정 목록을 확인하세요.
- 머신 유형
- CPU
- 메모리
저장을 클릭합니다.
만들기를 클릭하여 사용자 클러스터를 만듭니다.
API
API를 직접 사용하여 새 사용자 클러스터를 만들려면 GDC 인스턴스에 커스텀 리소스를 적용하세요.
Cluster커스텀 리소스를 만들고cluster.yaml과 같은 YAML 파일로 저장합니다.apiVersion: cluster.gdc.goog/v1 kind: Cluster metadata: name: CLUSTER_NAME namespace: platform spec: clusterNetwork: podCIDRSize: POD_CIDR serviceCIDRSize: SERVICE_CIDR initialVersion: kubernetesVersion: KUBERNETES_VERSION loadBalancer: ingressServiceIPSize: LOAD_BALANCER_POOL_SIZE nodePools: - machineTypeName: MACHINE_TYPE name: NODE_POOL_NAME nodeCount: NUMBER_OF_WORKER_NODES taints: TAINTS labels: LABELS releaseChannel: channel: UNSPECIFIED다음을 바꿉니다.
CLUSTER_NAME: 클러스터의 이름입니다. 클러스터 이름은-system로 끝나면 안 됩니다.-system접미사는 GDC에서 생성한 클러스터용으로 예약되어 있습니다.POD_CIDR: 포드 가상 IP 주소가 할당되는 네트워크 범위의 크기입니다. 설정하지 않으면 기본값21이 사용됩니다.SERVICE_CIDR: 서비스 가상 IP 주소가 할당되는 네트워크 범위의 크기입니다. 설정하지 않으면 기본값23이 사용됩니다.KUBERNETES_VERSION: 클러스터의 Kubernetes 버전입니다(예:1.26.5-gke.2100). 구성할 수 있는 Kubernetes 버전을 나열하려면 클러스터에 사용 가능한 Kubernetes 버전 나열을 참고하세요.LOAD_BALANCER_POOL_SIZE: 부하 분산기 서비스에서 사용하는 중복되지 않는 IP 주소 풀의 크기입니다. 설정되지 않은 경우 기본값20이 사용됩니다.MACHINE_TYPE: 노드 풀의 작업자 노드에 사용할 머신 유형입니다. 구성할 수 있는 항목은 사용 가능한 머신 유형을 참고하세요.NODE_POOL_NAME: 노드 풀의 이름NUMBER_OF_WORKER_NODES: 노드 풀에서 프로비저닝할 워커 노드 수입니다.TAINTS: 이 노드 풀의 노드에 적용할 테인트입니다. 이 필드는 선택 사항입니다.LABELS: 이 노드 풀의 노드에 적용할 라벨입니다. 키-값 쌍 목록을 포함합니다. 이 필드는 선택사항입니다.
커스텀 리소스를 GDC 인스턴스에 적용합니다.
kubectl apply -f cluster.yaml --kubeconfig ADMIN_CLUSTER_KUBECONFIGADMIN_CLUSTER_KUBECONFIG를 조직 관리자 클러스터의 kubeconfig 파일 경로로 바꿉니다.
클러스터에 사용 가능한 Kubernetes 버전 나열
kubectl CLI를 사용하여 GDC 인스턴스에서 사용 가능한 Kubernetes 버전을 나열할 수 있습니다.
kubectl get userclustermetadata.upgrade.private.gdc.goog \
-o=custom-columns=K8S-VERSION:.spec.kubernetesVersion \
--kubeconfig ADMIN_CLUSTER_KUBECONFIG
ADMIN_CLUSTER_KUBECONFIG를 관리자 클러스터의 kubeconfig 파일 경로로 바꿉니다.
결과는 다음과 유사합니다.
K8S-VERSION
1.25.10-gke.2100
1.26.5-gke.2100
1.27.4-gke.500
사용자 클러스터에서 GPU 리소스 지원
GDC는 사용자 클러스터에 NVIDIA 그래픽 처리 장치 (GPU) 지원을 제공하며 GPU 기기를 사용자 워크로드로 실행합니다. GPU 지원은 GPU 머신이 프로비저닝된 클러스터에 대해 기본적으로 사용 설정됩니다. 딥 러닝 컨테이너를 활용하기 전에 사용자 클러스터가 GPU 기기를 지원하는지 확인합니다. 예를 들어 Deep Learning Containers를 실행하려면 GPU 노드가 하나 이상 있는 사용자 클러스터를 만들어야 합니다.
사용자 클러스터는 GDC 콘솔 또는 API를 직접 사용하여 만들 수 있습니다. 연결된 컨테이너에서 GPU 워크로드를 지원하도록 사용자 클러스터에 GPU 머신을 프로비저닝해야 합니다. 자세한 내용은 사용자 클러스터 만들기를 참고하세요.
지원되는 NVIDIA GPU 카드
GDC 클러스터는 A100 PCIe 80GB NVIDIA GPU를 지원합니다. 이 지원을 사용 설정하려면 사용자 클러스터에서 a2-ultragpu-1g-gdc 머신 유형을 프로비저닝하세요.