참고: 표준 서비스는 Anthos Service Mesh 버전 1.6.8 이상에서 자동으로 지원됩니다.
이 페이지에서는 Anthos Service Mesh의 표준 서비스가 무엇인지 설명합니다.
표준 서비스란 무엇인가요?
Anthos Service Mesh 1.6.8은 프로덕션 워크로드를 관찰하고 관리하기 쉬운 단일 서비스로 나타내는 개념적, 아키텍쳐 모델인 표준 서비스를 지원합니다. 이러한 워크로드는 여러 클러스터, 다양한 백엔드 플랫폼, 다양한 스키마와 구성을 포함할 수 있습니다.
Compute Engine 사용자: 표준 서비스는 관리형 인스턴스 그룹과 상당히 유사하지만 표준 서비스는 멀티 리전일 수 있습니다.
Kubernetes 사용자: 표준 서비스는 Kubernetes '앱' 개념 및 애플리케이션 CRD와 상당히 유사합니다.
서버리스 사용자: 표준 서비스는 App Engine 서비스 및 Cloud Run 서비스 개념과 매우 유사합니다. 한 가지 차이점은 Google 서버리스 서비스는 기본적으로 리전 서비스이지만 표준 서비스는 전역/멀티 리전 추상화라는 점입니다.
예를 들어 다음 시나리오는 모두 표준 서비스를 참조하는 방법을 설명합니다.
- 서비스가 중단되었습니다.
- 온프레미스 및 퍼블릭 클라우드에서 모두 서비스가 실행됩니다.
- 서비스의 새 버전 배포
- 서비스 Foo에서 트래픽을 너무 많이 전송해서 용량을 초과시킬 수 있습니다.
표준 서비스는 단일 메시 내에 존재하므로 Anthos Service Mesh의 Fleet과 Google Cloud 프로젝트(각각 메시와 일대일로 대응)에서도 고유합니다.
특정 워크로드는 하나의 표준 서비스의 일부로만 허용될 수 있습니다.
워크로드 그룹에서 다음을 포함하여 정의하는 표준 서비스의 전체 범위를 확인할 수 있습니다.
- 호스트 이름 및 IP 주소
- 네트워크
- 네트워크 및 보안 정책
- 라우팅 및 부하 분산
- VM 및 컨테이너 이미지
- 실제 또는 가상 인프라
- 지리적 리전
- CI/CD 시스템
- 소스 코드
- 원격 분석
- 서비스 수준 목표 및 알림
GKE Enterprise 서비스 페이지에서 각 서비스의 운영 세부정보를 표시하는 대시보드를 볼 수 있습니다.
표준 서비스 요구사항 및 제한사항
표준 서비스는 Anthos Service Mesh 버전 1.6.8 이상에서만 사용할 수 있습니다.
각 표준 서비스는 단일 Kubernetes/Istio 네임스페이스 안에 있으며 네임스페이스 경계를 넘을 수 없습니다.
표준 서비스에 상위 네임스페이스 내에서 고유한 이름을 지정해야 합니다. 자세한 내용은 표준 서비스 정의를 참조하세요.
표준 서비스는 여러 클러스터와 리전에 있을 수 있습니다. 클러스터 및 리전별로 리소스 및 원격 분석을 분류할 수 있지만 서비스의 범위나 고유성을 결정하는 요소는 아닙니다.
따라서 표준 서비스의 고유 ID는 다음과 같이 결정됩니다.
mesh id + namespace + canonical name.
버전
버전이란 서비스의 여러 '버전' 또는 '출시'를 구분하고 식별하는 데 사용할 수 있는 서비스의 단계적 변경사항을 의미합니다.
개별 워크로드에 '표준 버전'으로 라벨을 지정하여 표준 서비스 버전을 구분합니다. 이 라벨은 정의할 수 있는 임의의 문자열입니다. 경우에 따라 라벨이 자동으로 설정될 수 있지만 사용자 또는 서비스를 배포하는 CI/CD 시스템에서 라벨을 적용해야 합니다. 이 라벨 설정에 대한 안내는 표준 서비스 정의를 참조하세요.
여러 버전이 동시에 프로덕션 단계에 있을 수 있습니다. 다음을 수행하기 위해 여러 버전을 동시에 실행하는 것이 가장 자주 사용됩니다.
- 서비스의 모든 인스턴스에서 새 바이너리, 새 구성 또는 둘 다의 점진적 출시 이 경우 전환하는 동안 이전 버전과 새 버전이 모두 활성화됩니다.
- 서비스의 두 가지 버전이 다운스트림 호출자의 하위 집합에 노출되어 변경사항이 미치는 영향을 테스트하는 'A/B 테스트' 또는 '실시간 실험'