관리형 Anthos Service Mesh는 출시 버전이 1.22.1-gke.100 이상인 GKE 클러스터의 경우 신속 채널에서 정식 버전(GA) 기능으로 VPC 서비스 제어(VPC-SC)를 지원합니다.
시작하기 전에
VPC-SC 조직 정책과 서비스 경계는 조직 수준에서 구성됩니다. VPC-SC 관리에 적합한 역할을 부여받았는지 확인합니다.
VPC-SC 서비스 경계 설정
서비스 경계를 만들거나 업데이트합니다.
서비스 경계에 클러스터 프로젝트 및 Fleet 프로젝트를 추가합니다. 여러 VPC-SC 경계에 서비스 메시를 분산하는 것은 지원되지 않습니다.
서비스 경계에 제한된 서비스를 추가합니다.
Anthos Service Mesh 클러스터에서 서비스 경계에 액세스할 수 있도록 특정 서비스를 서비스 경계의 허용 및 제한된 서비스 목록에 추가해야 합니다. 이러한 서비스에 대한 액세스는 클러스터의 Virtual Private Cloud(VPC) 네트워크 내에서도 제한됩니다.
이러한 서비스를 추가하지 않으면 Anthos Service Mesh 설치가 실패하거나 올바르게 작동하지 않을 수 있습니다. 예를 들어 Mesh Configuration API를 서비스 경계에 추가하지 않으면 설치가 실패하고 워크로드는 관리형 제어 영역에서 Envoy 구성을 수신하지 않습니다.
Console
- 서비스 경계 업데이트의 단계에 따라 경계를 수정합니다.
- VPC 서비스 경계 수정 페이지를 클릭합니다.
- 제한된 서비스, 보호할 서비스에서 서비스 추가를 클릭합니다.
- 제한할 서비스 지정 대화상자에서 서비스 필터링을 클릭하고 Mesh Configuration API를 입력합니다.
- 서비스 체크박스를 선택합니다.
- Mesh Configuration API 추가를 클릭합니다.
- c~f단계를 반복하여 다음을 추가합니다.
- Cloud Service Mesh Certificate Authority API
- GKE Hub API
- Cloud IAM API
- Cloud Monitoring API
- Cloud Trace API
- Cloud Monitoring API
- Google Cloud Resource Manager API
- Cloud Run API
- Google Compute Engine API
- Google Container Registry API
- Artifact Registry API
- Google Cloud Storage API
- 저장을 클릭합니다.
gcloud
제한된 서비스 목록을 업데이트하려면
update
명령어를 사용하여 쉼표로 구분된 목록으로 추가할 서비스를 지정합니다.gcloud access-context-manager perimeters update PERIMETER_NAME \ --add-restricted-services=meshconfig.googleapis.com,meshca.googleapis.com,gkehub.googleapis.com,iam.googleapis.com,monitoring.googleapis.com,cloudtrace.googleapis.com,monitoring.googleapis.com,cloudresourcemanager.googleapis.com,run.googleapis.com,compute.googleapis.com,containerregistry.googleapis.com,artifactregistry.googleapis.com,storage.googleapis.com \ --policy=POLICY_NAME
각 항목의 의미는 다음과 같습니다.
PERIMETER_NAME은 업데이트할 서비스 경계의 이름입니다.
POLICY_NAME은 조직의 액세스 정책의 숫자 이름입니다.
330193482019
).
VPC 액세스 가능 서비스를 클릭하고 '제한된 모든 서비스'로 설정하면 위 단계에서 제한된 서비스가 VPC-SC 경계 내에서 계속 액세스할 수 있습니다.
경계 네트워크에서 Anthos Service Mesh를 설치하지 않는 한
asmcli
명령어를 실행하는 ID가 서비스 경계에 액세스할 수 있도록 인그레스 규칙을 추가합니다.자세한 내용은 서비스 경계 업데이트를 참조하세요.
VPC-SC 경계에 관리형 Anthos Service Mesh 설치
관리형 Anthos Service Mesh 구성 페이지의 단계를 따릅니다. 그런 다음 제어 영역이 성공적으로 프로비저닝되었는지 확인하고 VPC-SC 관련 오류가 없는지 확인합니다.
문제 해결
최신 GKE 1.22 이미지로 클러스터를 만들 수 없습니다.
VPC-SC 제한 환경에서 최신 1.22 이미지로 클러스터를 만들지 못하게 하는 알려진 문제가 있습니다. 해결 방법은 먼저 기본 GKE 채널 이미지를 사용하여 이 클러스터를 만든 후 이미지를 업그레이드하는 것입니다.
gcloud container clusters create CLUSTER \ --region REGION \ --release-channel=rapid \ --workload-pool=PROJECT_ID.svc.id.goog \ --project PROJECT_ID
gcloud container clusters upgrade CLUSTER \ --region REGION \ --master --cluster-version 1.22 \ --project PROJECT_ID
컨테이너는 이미지를 다운로드할 수 없습니다.
이미지가 서비스 경계 외부에 있으면 이 오류가 발생할 수 있습니다. 이미지를 경계 내에 있는 버킷으로 이동하거나 경계를 업데이트하여 이그레스 규칙을 추가합니다. 일반적으로 이그레스 규칙은 선택한 ID에서 Container Registry API, Artifact Registry API, Cloud Storage API에 액세스하도록 허용할 수 있습니다.
ControlPlaneRevision
CRD의 상태 필드에 VPC-SC 오류가 표시됩니다.
또는 다음 명령어를 실행하여 오류에 대한 자세한 정보를 확인합니다.
gcloud logging read --project=PROJECT_ID \ 'protoPayload.metadata.@type=type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata'
각 항목의 의미는 다음과 같습니다.
- PROJECT_ID는 오류가 발생한 프로젝트의 프로젝트 ID입니다.