GKE 클러스터에서 Kubernetes 베타 API 사용


Kubernetes 베타 API를 사용하여 Google Kubernetes Engine(GKE) 클러스터에서 새 기능에 액세스합니다. 버전 1.24 이상에 도입된 베타 API를 사용하려면 베타 API를 구성합니다.

Kubernetes API에 새로운 기능이 도입되는 방법

GKE 클러스터는 제어 영역 및 워커 노드로 구성됩니다. 제어 영역은 내부 및 외부 구성요소와 함께 최종 사용자가 통신할 수 있도록 Kubernetes API를 노출하는 API 서버를 노출합니다. 이 API는 알파 또는 베타 단계에 도입된 이후 시간이 지남에 따라 발전합니다. 그런 다음 결국에는 일반 정식 버전(GA)으로 전환되거나 최신 부 버전에서 지원 중단되고 삭제됩니다.

알파 API는 알파 클러스터에만 사용할 수 있지만 베타 API는 모든 유형의 GKE 클러스터에 사용할 수 있습니다. Kubernetes 버전 1.24부터 새로운 베타 API는 기본적으로 새 클러스터에서 사용 중지됩니다. 1.24 이전 버전을 실행하는 기존 클러스터는 자동으로 사용설정(1.24 이전)되거나 수동으로 사용 설정된 베타 API(1.24 이상)가 기존 클러스터에서 사용 중지될 수 없으므로 사용 설정된 기존 베타 API를 계속 사용합니다. 모든 클러스터에서 버전 1.24 이전에 도입된 기존 베타 API가 기본적으로 사용 설정되며 기존 베타 API의 새 버전도 기본적으로 사용 설정된 상태로 유지됩니다.

예를 들어 v1beta1 API가 Kubernetes 버전 1.22에 도입된 경우 이 베타 API의 새 버전(예: v1beta3)은 Kubernetes 버전 1.25에 도입되고 자동으로 사용 설정됩니다. 이 문제는 완전히 새로운 베타 API가 아닌 기존 베타 API의 새 버전이므로 발생합니다. 그러나 Kubernetes 버전 1.24 이상에 도입된 v1beta1 버전의 새로운 베타 API는 기본적으로 사용 중지되어 있습니다.

버전 1.24 이상에 도입된 베타 API를 사용하려면 클러스터 및 리소스별로 베타 API를 구성해야 합니다. 클러스터 생성 시 또는 기존 클러스터에 대해 API를 사용 설정할 수 있습니다. 클러스터의 부 버전에 사용 가능한 베타 API를 보려면 사용 가능한 베타 API를 참조하세요.

베타 API를 사용 설정하면 베타 API가 지원 중단되고 API가 삭제된 부 버전으로 클러스터가 업그레이드될 때까지 베타 API가 사용 설정된 상태로 유지됩니다. 클러스터가 사용 설정한 베타 API를 보려면 사용 설정된 베타 API 확인을 참조하세요.

사용 가능한 베타 API

GKE 클러스터에 Kubernetes 베타 API의 하위 집합을 사용 설정할 수 있습니다. 다른 베타 API는 다음과 같은 이유로 사용할 수 없습니다.

  • 베타 API는 정식 버전 외의 Kubernetes 기능을 사용합니다.
  • 베타 API는 안전하지 않습니다.
  • 베타 API는 Autopilot과 호환되지 않습니다.

베타 API 및 베타 API가 도입된 해당 부 버전은 다음 표를 참조하세요.

Kubernetes 버전 베타 API가 추가된 Kubernetes 부 버전 GKE에서 사용 가능 Notes
1.29
  • 없음
  • admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies
  • admissionregistration.k8s.io/v1beta1/validatingadmissionpolicybindings
두 API를 동시에 사용 설정해야 합니다. 그러면 허용 정책 유효성 검사 베타 기능이 사용 설정됩니다.
1.28
  • admissionregistration.k8s.io/v1beta1/validatingadmissionpolicies
  • admissionregistration.k8s.io/v1beta1/validatingadmissionpolicybindings
  • 없음
1.27
  • authentication.k8s.io/v1beta1/selfsubjectreviews
  • authentication.k8s.io/v1beta1/selfsubjectreviews

베타 API 사용 전 고려사항

Kubernetes 베타 API에는 Kubernetes 지원 중단 정책이 적용됩니다. 베타 API가 지원 중단되면 사용을 중지해야 합니다. 자세한 내용은 베타 API 지원 중단을 참조하세요.

시작하기 전에

시작하기 전에 다음 태스크를 수행했는지 확인합니다.

  • Google Kubernetes Engine API를 사용 설정합니다.
  • Google Kubernetes Engine API 사용 설정
  • 이 태스크에 Google Cloud CLI를 사용하려면 gcloud CLI를 설치한 후 초기화합니다. 이전에 gcloud CLI를 설치한 경우 gcloud components update를 실행하여 최신 버전을 가져옵니다.

베타 API 구성

베타 API는 클러스터별, 리소스별로 사용 설정됩니다. 클러스터를 만들 때나 기존 클러스터에 API를 사용 설정할 수 있습니다.

이러한 명령어의 베타 API 리소스를 나열하기 위해서는 {group}/{version}/{resource} 표현을 사용합니다. 버전은 베타 버전이어야 합니다. 이 유효한 표현의 예시는 authentication.k8s.io/v1beta1/selfsubjectreviews입니다.

다음 섹션의 명령어에서 다음 변수를 바꿉니다.

  • CLUSTER_NAME: 업데이트하려는 클러스터의 이름입니다.
  • LIST_OF_APIS: 쉼표로 구분된 목록으로, 사용 설정할 베타 API 목록입니다.
  • COMPUTE_REGION: 새 클러스터의 Compute Engine 리전입니다. 영역 클러스터의 경우 --zone=COMPUTE_ZONE을 사용합니다.

베타 API를 사용 설정하여 새 클러스터 만들기

베타 API 목록을 사용 설정하여 새 클러스터를 만듭니다.

gcloud container clusters create-auto CLUSTER_NAME  \
    --enable-kubernetes-unstable-apis=LIST_OF_APIS \
    --region=COMPUTE_REGION

기존 클러스터에서 베타 API 사용 설정

기존 클러스터에서 베타 API 목록을 사용 설정합니다.

gcloud container clusters update CLUSTER_NAME  \
    --enable-kubernetes-unstable-apis=LIST_OF_APIS \
    --region=COMPUTE_REGION

기존 클러스터에서 베타 API 사용 중지

클러스터에서 이미 사용 설정된 베타 API는 사용 중지할 수 없습니다. 베타 API는 지원 중단되고 클러스터가 API가 삭제된 부 버전으로 업그레이드될 때까지 계속 사용 설정된 상태로 남습니다. 자세한 내용은 베타 API 지원 중단을 참조하세요.

사용 설정된 베타 API 확인

GKE 클러스터에 사용 설정된 베타 API를 확인합니다.

gcloud container clusters describe CLUSTER_NAME \
    --region=COMPUTE_REGION \
    --format="value(enableK8sBetaApis.enabledApis)"

베타 API 지원 중단

베타 API가 사용 설정되면 베타 API가 지원 중단되고 클러스터가 API가 삭제된 부 버전으로 업그레이드될 때까지 사용 설정된 상태로 남습니다.

베타 API는 일반적으로 지원 중단되기 전에 새로운 베타 버전, 안정화 버전 또는 교체되지 않는 세 가지 부 버전에서 사용할 수 있습니다. 베타 API 버전은 지원 중단 이후에는 3개의 부 버전에서 삭제됩니다. 지원 중단되고 예정된 Kubernetes 부 버전에서 삭제되는 베타 API를 사용하는 경우 클러스터를 베타 API가 제거된 부 버전으로 업그레이드할 수 있도록 지원되는 API로 마이그레이션해야 합니다. 자세한 내용은 GKE에서 Kubernetes 지원 중단의 작동 방식을 참조하세요.

GKE에서는 지원 중단된 Kubernetes API 사용을 감지함으로써 이러한 프로세스를 더 쉽게 수행할 수 있습니다. GKE에서 지원 중단된 API 사용을 감지하면 해당 API가 삭제된 부 버전으로의 자동 업그레이드를 일시중지합니다. 또한 GKE는 계속 업그레이드하기 위한 조치를 취할 수 있도록 지원 중단 정보 및 권장사항을 공유하여 클러스터가 지원 중단된 API를 사용하고 있다는 사실을 알립니다. 자세한 내용은 예정된 Kubernetes 지원 중단에 대한 노출 평가 및 해결을 참조하세요.

지원 중단된 API의 전체 목록과 GKE에서 사용 감지 여부는 Kubernetes API 지원 중단 표를 참조하세요.

다음 단계