관리형 Cloud Service Mesh 출시 채널

Cloud Service Mesh는 보안 업데이트를 제공하고 알려진 문제를 해결하며 새로운 기능을 소개하기 위해 자주 업데이트를 출시합니다. 출시 채널은 Cloud Service Mesh 버전의 안정성과 특성 세트 간에 균형을 맞춥니다. Cloud Service Mesh 출시 채널은 Google Kubernetes Engine(GKE) 출시 채널과 연결되어 있습니다. Google에서 각 출시 채널의 버전과 업그레이드 주기를 자동으로 관리합니다.

이 문서에서는 출시 채널 비교, 비관리형 프록시 업데이트 방법을 설명합니다.

사용 가능한 출시 채널

다음 출시 채널을 사용할 수 있습니다. 채널마다 기능 가용성과 업데이트 빈도의 절충안을 제공합니다. 각 채널의 기능은 성숙도 수준이 다릅니다. 클러스터 및 Google 인프라를 보호하기 위해 모든 출시 채널에 중요한 보안 패치가 제공됩니다.

채널 새로운 관리형 Cloud Service Mesh 제공 여부 속성
신속 각 Cloud Service Mesh 출시 후 가능한 한 빨리 최신 Cloud Service Mesh 버전을 다운로드하고, 출시 버전에 포함되는 즉시 새로운 기능을 사용할 수 있습니다. 제어 영역은 최신의 이용 가능한 패치 버전을 유지하기 위해 자주 업데이트되며 새로운 기능을 제공합니다. 신속 채널은 사전 프로덕션 환경에서 최신 Cloud Service Mesh 버전 및 API를 테스트하는 데 가장 적합합니다.
일반 신속에서 일반 채널로 승격* Cloud Service Mesh 및 Istio 기능은 처음 소개된 후 비교적 곧바로 액세스할 수 있지만 조금 더 긴 시간 동안 검증된 버전으로 액세스할 수 있습니다. 사용 가능한 기능과 출시 안정성의 균형이 유지되며, 대부분의 사용자에게 권장됩니다.
안정화 일반에서 공개 버전으로 승격* 새로운 기능보다 안정성을 우선시합니다. 이 채널의 변경사항 및 새 버전은 신속 채널 및 일반 채널에 출시된 후 가장 마지막으로 출시되므로 더 오랜 기간 동안 검증됩니다.
*다음 채널의 승격 일정은 오픈소스 Istio 출시, Anthos 출시, 패치 일정을 비롯한 여러 요소에 따라 달라지므로 변경될 수 있습니다. 최신 정보를 받아보려면 Cloud Service Mesh 출시 노트 URL을 피드 리더에 추가하거나 피드 URL을 다음과 같이 직접 추가하세요. https://cloud.google.com/feeds/servicemesh-release-notes.xml

관리형 Cloud Service Mesh의 부 버전에 사용량이 충분하고 신속 채널에서 안정성이 보인 경우 일반 채널로 승격됩니다. 결국 부 버전은 공개 버전 채널로 승격되어 중요도가 높은 업데이트 및 보안 패치만 수신합니다. 각 승격은 버전을 실행하는 제어 영역의 성능을 기준으로 단계적 안정성과 프로덕션 준비 상태를 나타냅니다.

모든 채널은 일반 안정화(GA) 출시 버전을 기반으로 합니다(단, 표시된 대로 개별 기능이 항상 GA로 간주되지는 않음). 새 Cloud Service Mesh 버전은 신속 채널에 먼저 출시되며 시간이 지남에 따라 일반 및 공개 버전 채널로 승격됩니다. 이렇게 하면 비즈니스, 안정성, 기능 요구사항을 충족하는 채널을 선택할 수 있습니다.

클러스터의 Cloud Service Mesh 채널은 GKE 클러스터 채널에 따라 결정됩니다.

GKE 채널 Cloud Service Mesh 채널
신속 신속
일반 일반
안정화 안정화
(채널 없음) 일반

채널별 Cloud Service Mesh 버전

Cloud Service Mesh 채널은 관리형 Cloud Service Mesh를 프로비저닝할 때 GKE 클러스터 채널에 따라 결정됩니다. 나중에 GKE 클러스터 채널을 변경하면 원래 Cloud Service Mesh 채널이 유지됩니다.

다음 표에서는 현재 채널의 Cloud Service Mesh 버전 매핑을 보여줍니다.

채널 Cloud Service Mesh 버전
신속 1.19
일반 1.18
안정화 1.18

기본 채널

클러스터에 단일 관리 채널이 설치되어 있는 새로 설치된 Cloud Service Mesh에서 이 채널은 해당 클러스터의 기본 채널이 됩니다.

기존 Istio 또는 Cloud Service Mesh가 설치된 클러스터에 기본 태그가 구성된 경우 관리형 버전에 연결되어야 합니다. 그렇지 않으면 별도의 조치는 필요하지 않습니다.

istio-injection=enabled 라벨을 채널에 사용하는 다른 라벨(예: 기본 버전)에 대한 삽입을 가리키는 별칭으로 사용할 수 있습니다. 이 문서에서는 istio.io/rev 네임스페이스 라벨을 사용하여 삽입하도록 표시되지만 istio-injection=enabled 라벨을 사용할 수도 있습니다.

삽입 라벨

Cloud Service Mesh를 사용하여 지정된 네임스페이스에서 워크로드를 관리할 수 있지만 설치된 채널에 따라 네임스페이스에 라벨을 지정해야 합니다. 관리형 Cloud Service Mesh는 두 가지 유형의 라벨을 지원합니다.

  • 표준 버전 라벨, 즉 채널 stable, regular, rapid에 해당하는 asm-managed-stable, asm-managed, asm-managed-rapid
  • 기본 삽입 라벨(예: istio-injection=enabled)은 해당 클러스터의 기본 채널에 해당합니다. 기본 삽입 라벨을 사용하면 버전 간 마이그레이션이 간소화됩니다. 예를 들어 Istio OSS 또는 비관리형 Cloud Service Mesh에서 관리형 Cloud Service Mesh로 마이그레이션할 때는 각 네임스페이스에 개별적으로 다시 라벨을 지정할 필요가 없습니다. Cloud Service Mesh 문서에서는 istio.io/rev 네임스페이스 라벨을 사용하여 삽입하도록 표시되지만 istio-injection=enabled 라벨을 사용할 수도 있습니다.

삽입 라벨의 다른 예시로는 sidecar.istio.io/inject(일반적으로 게이트웨이에 사용됨) 및 istio.io/rev(네임스페이스 및 워크로드 모두에서 사용됨)로 워크로드에 라벨을 지정하는 작업이 있습니다.

기본 삽입 라벨

기본 삽입 라벨을 네임스페이스에 적용하려면 다음 안내를 따르세요.

kubectl label namespace NAMESPACE istio-injection=enabled istio.io/rev- --overwrite

버전 라벨

다른 Kubernetes 라벨과 마찬가지로 버전 라벨은 키-값 쌍입니다. 버전 라벨의 키는 항상 istio.io/rev이지만, 값은 달라집니다. 출시 채널을 선택하려면 다음 버전 이름 중 하나를 네임스페이스에 적용합니다.

버전 이름 채널
asm-managed 일반
asm-managed-rapid 신속
asm-managed-stable 안정화

예를 들어 일반 출시 채널을 네임스페이스에 적용하려면 다음을 입력합니다.

kubectl label namespace NAMESPACE istio.io/rev=asm-managed --overwrite

클러스터에 사용되는 것과 동일한 출시 채널을 사용하는 것이 좋습니다.

네임스페이스에 사용되는 출시 채널을 보려면 다음 안내를 따르세요.

kubectl get namespace NAMESPACE -o jsonpath='{.metadata.labels.istio\.io/rev}{"\n"}'

비관리형 프록시 업데이트

Cloud Service Mesh가 출시될 때마다 서비스와 게이트웨이의 비관리형 프록시를 다시 시작합니다. 제어 영역과 프록시의 버전이 서로 달라도 서비스 메시에는 문제가 없지만 새 Cloud Service Mesh 버전으로 구성되도록 프록시를 업데이트하는 것이 좋습니다.

  1. 제어 영역 및 프록시 버전을 확인합니다.

  2. 제어 영역이 프록시보다 최신 버전이면 서비스 및 게이트웨이의 비관리형 프록시를 다시 시작합니다.

    kubectl rollout restart deployment -n NAMESPACE