Kubernetes 1.29에서 지원 중단된 API


이 페이지에서는 GKE 버전 1.29로 업그레이드하기 위해 클러스터를 준비하는 방법을 설명합니다. 1.29에서 삭제되어 지원 중단된 API로 호출하는 API 클라이언트를 찾고 해당 클라이언트를 업데이트하여 GA API를 사용할 수 있습니다. 자세한 내용은 Kubernetes 지원 중단된 API 마이그레이션 가이드를 참조하세요.

버전 1.29에서 삭제된 API

Kubernetes 버전 1.29에서 지원 중단된 API는 GA로 전환된 베타 API(예: v2) 또는 하나의 베타 버전에서 다른 베타 버전으로 전환됩니다(예: v1beta1에서 v1beta2). GA API는 장기 호환성 보장을 제공하며 지원 중단된 베타 API 대신 사용됩니다.

업데이트된 API를 사용하여 새 버전으로 전환된 API의 모든 기존 객체와 상호 작용할 수 있습니다.

흐름 제어 리소스

FlowSchema 및 PriorityLevelConfiguration의 flowcontrol.apiserver.k8s.io/v1beta2 API 버전은 v1.29부터 더 이상 제공되지 않습니다.

v1.29부터 사용 가능한 flowcontrol.apiserver.k8s.io/v1 API 버전 또는 v1.26부터 사용 가능한 flowcontrol.apiserver.k8s.io/v1beta3 API 버전을 사용하도록 매니페스트 및 API 클라이언트를 마이그레이션합니다.

새 API를 사용하여 기존의 모든 영구 객체에 액세스할 수 있습니다.

flowcontrol.apiserver.k8s.io/v1 API 버전에는 다음과 같은 주요 변경사항이 있습니다.

  • PriorityLevelConfiguration spec.limited.assuredConcurrencyShares 필드의 이름이 spec.limited.nominalConcurrencyShares로 변경되고 지정되지 않은 경우 기본적으로 30만 설정되며 명시적 값 0은 30으로 변경되지 않습니다.

flowcontrol.apiserver.k8s.io/v1beta3 API 버전에는 다음과 같은 주요 변경사항이 있습니다.

  • PriorityLevelConfiguration spec.limited.assuredConcurrencyShares 필드 이름이 spec.limited.nominalConcurrencyShares로 변경됩니다.

버전 1.29로 업그레이드 준비

API 객체를 삭제하고 다시 만들 필요가 없습니다. GA로 전환된 API에 대해 모든 기존 API 객체는 새로운 API 버전을 사용하여 읽고 업데이트할 수 있습니다.

그러나 Kubernetes 1.29으로 업그레이드하기 전에 클라이언트와 매니페스트를 마이그레이션하는 것이 좋습니다. 자세한 내용은 Kubernetes 지원 중단된 API 마이그레이션 가이드를 참조하세요.

지원 중단 통계 및 추천을 확인하면 클러스터가 Kubernetes 1.29 지원 중단된 API를 사용 중인지 파악할 수 있습니다. GKE는 Kubernetes 객체의 구성을 사용하는 것이 아니라 사용자 에이전트가 지원 중단된 API를 호출할 때 지원 중단 통계를 생성합니다.

지원 중단된 API를 사용하여 클러스터 찾기

지원 중단 통계에서 지원 중단된 API를 사용 중인 클러스터를 찾을 수 있습니다. 지원 중단 통계는 또한 클러스터에서 지원 중단된 API를 호출하는 API 클라이언트와 같은 정보를 제공합니다.

또한 감사 로그를 사용해서 지원 중단된 API를 호출하는 클라이언트를 찾을 수 있습니다.

지원 중단된 API에 쓰기 호출을 수행하는 API 클라이언트 찾기

Google Cloud Observability가 사용 설정된 클러스터의 경우 다음 관리자 활동 감사 로그 쿼리를 사용하여 Google이 관리하지 않는 사용자 에이전트가 사용한 지원 중단된 API를 표시할 수 있습니다.

resource.type="k8s_cluster"
labels."k8s.io/removed-release"="DEPRECATED_API_MINOR_VERSION"
protoPayload.authenticationInfo.principalEmail:("system:serviceaccount" OR "@")
protoPayload.authenticationInfo.principalEmail!~("system:serviceaccount:kube-system:")

DEPRECATED_API_MINOR_VERSION을 지원 중단된 API가 삭제된 마이너 버전(예: 1.22)으로 바꿉니다.

관리자 활동 감사 로그는 GKE 클러스터에 대해 자동으로 사용 설정됩니다. 이 쿼리를 사용하면 지원 중단된 API에 쓰기 호출을 수행하는 사용자 에이전트가 표시됩니다.

지원 중단된 API에 읽기 호출을 수행하는 API 클라이언트 찾기

기본적으로 감사 로그는 지원 중단된 API에 대해 쓰기 호출만 표시합니다. 지원 중단된 API에 대해 읽기 호출도 표시하려면 데이터 액세스 감사 로그를 구성합니다.

안내에 따라 Google Cloud 콘솔을 사용하여 데이터 액세스 감사 로그 구성을 수행합니다. Google Cloud 콘솔에서 Kubernetes Engine API를 선택합니다. 정보 패널의 로그 유형 탭에서 Admin ReadData Read를 선택합니다.

이러한 로그가 사용 설정되면 이제 원본 쿼리를 사용해서 지원 중단된 API에 대해 읽기 호출 및 쓰기 호출을 모두 볼 수 있습니다.

타사 구성요소 업그레이드

지원 중단 통계에서는 클러스터에서 지원 중단된 API를 호출하는 서드 파티 에이전트에 대한 결과를 표시할 수 있습니다.

지원 중단된 API를 호출하는 타사 에이전트를 확인하려면 다음 권장사항을 따르는 것이 좋습니다.

  1. 서드 파티 소프트웨어 제공업체에 업데이트된 버전이 있는지 확인합니다.
  2. 서드 파티 소프트웨어를 최신 버전으로 업그레이드합니다. 소프트웨어를 업그레이드할 수 없는 경우 지원 중단되어 삭제된 API를 사용하는 버전으로 GKE를 업그레이드하면 서비스가 손상되는지 테스트해야 합니다.

프로덕션 클러스터를 업그레이드하기 전에 스테이징 클러스터에서 이러한 업그레이드와 GKE 버전 업그레이드를 수행하여 서비스 중단을 모니터링하는 것이 좋습니다.

지원 중단의 영향을 받은 클러스터 업데이트

지원 중단의 영향을 받은 클러스터를 업그레이드하려면 다음 단계를 수행하세요.

  1. 로그에서 지원 중단된 API가 사용자 에이전트에 사용되는지 확인합니다.
  2. 지원 중단된 API를 사용하는 사용자 에이전트를 지원되는 API 버전을 사용하도록 업데이트합니다.
  3. 지원 중단된 API를 호출하는 서드 파티 소프트웨어를 최신 버전으로 업데이트합니다.
  4. 프로덕션 클러스터를 업그레이드하기 전에 테스트 클러스터를 업그레이드하고 테스트 환경에서 애플리케이션을 테스트하여 지원 중단된 API를 더 이상 사용할 수 없게 되면 발생할 수 있는 서비스 중단을 줄입니다.
  5. 영향을 받은 사용자 에이전트를 업데이트할 수 없는 경우 별도의 테스트 클러스터를 업그레이드하여 업그레이드로 인해 서비스 중단이 발생하는지 확인합니다. 업그레이드로 인해 서비스 중단이 발생하지 않으면 클러스터를 수동으로 업그레이드하면 됩니다.

  6. 모든 사용자 에이전트를 업데이트한 후 GKE는 지원 중단된 API의 사용이 30일 동안 관찰되지 않을 때까지 기다리고 자동 업데이트를 차단 해제합니다. 자동 업그레이드는 출시 일정에 따라 진행됩니다.

리소스

자세한 내용은 OSS Kubernetes 설명서에서 확인할 수 있습니다.