Google Distributed Cloud (GDC) 오프라인을 사용하면 GDC의 GKE를 사용하여 생성한 후 Kubernetes 클러스터를 관리할 수 있습니다. 이 서비스를 사용하면 다음과 같은 워크플로를 통해 변화하는 컨테이너 워크로드 요구사항에 적응하고 기존 클러스터 노드를 유지할 수 있습니다.
공유 클러스터를 프로젝트에 연결 및 연결 해제: 클러스터를 만든 후 공유 클러스터를 여러 프로젝트에 연결 및 연결 해제하여 공유 클러스터의 워크로드 범위를 변경합니다.
조직의 클러스터 보기: 조직의 클러스터를 나열하여 컨테이너 워크로드에 사용할 수 있는 항목을 추적합니다.
Kubernetes 버전 나열: 최신 Kubernetes 버전에 해당하는 클러스터 기능을 파악하기 위해 클러스터의 Kubernetes 버전을 확인합니다.
업데이트 가능한 클러스터 속성 보기:
Cluster커스텀 리소스 정의 내에서 변경할 수 있는 속성을 확인합니다.
이 문서는 여러 프로젝트에 걸쳐 있는 클러스터에서 호스팅되는 컨테이너 워크로드를 관리하는 플랫폼 관리자 그룹의 IT 관리자와 단일 프로젝트 내에서 애플리케이션 워크로드를 생성하는 애플리케이션 운영자 그룹의 개발자를 대상으로 합니다. 자세한 내용은 GDC 오프라인 문서의 대상을 참고하세요.
시작하기 전에
이 문서의 작업을 완료하려면 다음 리소스와 역할이 있어야 합니다.
공유 Kubernetes 클러스터에서 노드 풀을 보고 관리하려면 조직 IAM 관리자에게 다음 역할을 부여해 달라고 요청하세요.
- 사용자 클러스터 관리자 (
user-cluster-admin) - 사용자 클러스터 노드 뷰어 (
user-cluster-node-viewer)
이러한 역할은 프로젝트 네임스페이스에 바인딩되지 않습니다.
- 사용자 클러스터 관리자 (
표준 Kubernetes 클러스터에서 노드 풀을 보고 관리하려면 조직 IAM 관리자에게 표준 클러스터 관리자(
standard-cluster-admin) 역할을 부여해 달라고 요청하세요. 이 역할은 프로젝트 네임스페이스에 바인딩됩니다.Kubernetes 클러스터에 대해 명령어를 실행하려면 다음 리소스가 있어야 합니다.
Kubernetes 클러스터 이름을 찾거나 플랫폼 관리자 그룹의 구성원에게 클러스터 이름을 묻습니다.
Kubernetes 클러스터의 kubeconfig 파일이 없는 경우 로그인하여 생성합니다.
Kubernetes 클러스터의 kubeconfig 경로를 사용하여 이 안내의
KUBERNETES_CLUSTER_KUBECONFIG를 바꿉니다.
프로젝트 계층 구조에서 클러스터 이동
프로젝트는 서비스 인스턴스의 논리적 그룹화를 제공합니다. GDC 프로젝트 계층 구조에서 공유 Kubernetes 클러스터를 추가 및 삭제하여 서비스를 적절하게 그룹화할 수 있습니다. 표준 클러스터는 단일 프로젝트로 범위가 지정되므로 프로젝트 계층 구조에서 이동할 수 없습니다.
공유 클러스터에 프로젝트 연결
GDC 콘솔에서 공유 클러스터를 만들 때는 컨테이너 워크로드를 성공적으로 배포하려면 먼저 프로젝트를 하나 이상 연결해야 합니다. 기존 클러스터에 프로젝트를 추가해야 하는 경우 다음 단계를 완료하세요.
- 탐색 메뉴에서 Kubernetes Engine > 클러스터를 선택합니다.
- 클러스터 목록에서 클러스터를 클릭하여 클러스터 세부정보 페이지를 엽니다.
- 프로젝트 연결을 선택합니다.
- 프로젝트 목록에서 추가할 수 있는 프로젝트를 선택합니다. 저장을 클릭합니다.
공유 클러스터에서 프로젝트 분리
기존 공유 클러스터에서 프로젝트를 분리하려면 다음 단계를 완료하세요.
- 탐색 메뉴에서 Kubernetes Engine > 클러스터를 선택합니다.
- 클러스터 목록에서 클러스터를 클릭하여 클러스터 세부정보 페이지를 엽니다.
클러스터에서 분리할 프로젝트의 delete 분리를 클릭합니다.
조직의 모든 클러스터 보기
조직에서 사용할 수 있는 모든 Kubernetes 클러스터와 상태, Kubernetes 버전, 기타 세부정보를 확인할 수 있습니다.
Kubernetes 클러스터는 영역 리소스이므로 영역별로만 클러스터를 나열할 수 있습니다.
콘솔
탐색 메뉴에서 Kubernetes Engine > 클러스터를 선택합니다.
조직에서 사용할 수 있는 모든 공유 클러스터가 상태 및 기타 정보와 함께 표시됩니다.

gdcloud
조직에서 사용할 수 있는 영역의 공유 클러스터를 나열합니다.
gdcloud clusters list출력은 다음과 비슷합니다.
CLUSTERREF.NAME READINESS.STATE TYPE CURRENTVERSION.USERCLUSTERVERSION CURRENTVERSION.SUPPORT.STATUS user-vm-1 Ready user 1.15.0-gdch.394225-1.28.15-gke.1200 In Support user-vm-2 Ready user 1.15.0-gdch.394225-1.29.12-gke.800 In Support
API
조직에서 영역의 사용 가능한 Kubernetes 클러스터를 나열합니다.
kubectl get clusters.cluster.gdc.goog -n KUBERNETES_CLUSTER_NAMESPACE \ --kubeconfig MANAGEMENT_API_SERVER다음을 바꿉니다.
MANAGEMENT_API_SERVER: 영역 API 서버의 kubeconfig 경로입니다. 타겟 영역의 API 서버에 대한 kubeconfig 파일을 아직 생성하지 않은 경우 로그인을 참고하세요.KUBERNETES_CLUSTER_NAMESPACE: 클러스터의 네임스페이스입니다. 공유 클러스터의 경우platform네임스페이스를 사용합니다. 표준 클러스터의 경우 클러스터의 프로젝트 네임스페이스를 사용합니다.
출력은 다음과 비슷합니다.
NAME STATE K8S VERSION user-vm-1 Running 1.25.10-gke.2100 user-test Running 1.26.5-gke.2100
클러스터에 사용 가능한 Kubernetes 버전 나열
GDC 영역에서 사용 가능한 Kubernetes 버전을 나열하여 클러스터에서 액세스할 수 있는 Kubernetes 기능을 확인할 수 있습니다.
영역에서 사용 가능한 Kubernetes 버전을 나열합니다.
kubectl get userclustermetadata.upgrade.private.gdc.goog \ -o=custom-columns=K8S-VERSION:.spec.kubernetesVersion \ --kubeconfig MANAGEMENT_API_SERVERMANAGEMENT_API_SERVER를 클러스터의 영역 API 서버 kubeconfig 파일로 바꿉니다.결과는 다음과 유사합니다.
K8S-VERSION 1.25.10-gke.2100 1.26.5-gke.2100 1.27.4-gke.500
업데이트 가능한 속성 보기
각 Kubernetes 클러스터에는 생성된 후 변경할 수 있는 속성 집합이 있습니다. Cluster 커스텀 리소스의 spec에 있는 변경 가능한 속성만 변경할 수 있습니다. spec의 일부 속성은 클러스터가 프로비저닝된 후 업데이트할 수 없습니다. 업데이트 가능한 속성을 보려면 다음 단계를 완료하세요.
콘솔
탐색 메뉴에서 Kubernetes Engine > 클러스터를 선택합니다.
Kubernetes 클러스터 목록에서 클러스터 이름을 클릭하여 속성을 확인합니다.
수정 가능한 속성에는 edit 수정 아이콘이 있습니다.
kubectl
Cluster사양의 속성 목록과 각 속성에 해당하는 유효한 값을 확인하세요.kubectl explain clusters.cluster.gdc.goog.spec \ --kubeconfig MANAGEMENT_API_SERVERMANAGEMENT_API_SERVER를 영역 API 서버의 kubeconfig 경로로 바꿉니다. 타겟 영역의 API 서버에 대한 kubeconfig 파일을 아직 생성하지 않은 경우 로그인을 참고하세요.출력은 다음과 비슷합니다.
KIND: Cluster VERSION: cluster.gdc.goog/v1 RESOURCE: spec <Object> DESCRIPTION: <empty> FIELDS: clusterNetwork <Object> The cluster network configuration. If unset, the default configurations with pod and service CIDR sizes are used. Optional. Mutable. initialVersion <Object> The GDC air-gapped version information of the user cluster during cluster creation. Optional. Default to use the latest applicable version. Immutable. loadBalancer <Object> The load balancer configuration. If unset, the default configuration with the ingress service IP address size is used. Optional. Mutable. nodePools <[]Object> The list of node pools for the cluster worker nodes. Optional. Mutable. releaseChannel <Object> The release channel a cluster is subscribed to. When a cluster is subscribed to a release channel, GDC maintains the cluster versions for users. Optional. Mutable.GDC 콘솔 또는 kubectl CLI를 사용하여 이러한 설정을 업데이트합니다. 예를 들어 노드 풀의 크기를 조절할 수 있습니다.