AKS(Azure Kubernetes Service)의 OSM(Open Service Mesh) 추가 기능

OSM(Open Service Mesh)은 확장 가능한 네이티브 클라우드 서비스 메시로, 매우 동적인 마이크로 서비스 환경을 일관되게 관리하고, 안전하게 만들고, 즉시 사용 가능한 가시성 기능을 사용할 수 있습니다.

OSM은 Kubernetes에서 Envoy 기반 컨트롤 플레인을 실행하며 SMI API로 구성할 수 있습니다. OSM은 Envoy 프록시를 애플리케이션의 각 인스턴스에 사이드카 컨테이너로 주입하여 작동합니다. Envoy 프록시는 액세스 제어 정책에 대한 규칙을 포함 및 실행하고 라우팅 구성을 구현하며 메트릭을 캡처합니다. 컨트롤 플레인은 정책 및 라우팅 규칙이 최신 상태인지 확인하고 프록시가 정상인지 확인하기 위해 Envoy 프록시를 지속적으로 구성합니다.

Microsoft에서 OSM 프로젝트를 시작했지만 이제 CNCF(Cloud Native Computing Foundation)에서 관리합니다.

참고 항목

CNCF(Cloud Native Computing Foundation)에서 OSM(Open Service Mesh)를 종료함에 따라 OSM 구성을 식별하고 이를 동등한 Istio 구성으로 마이그레이션하는 것이 좋습니다. OSM에서 Istio로 마이그레이션에 대한 자세한 내용은 OSM(Open Service Mesh) 구성을 Istio로 마이그레이션 지침을 참조하세요.

OSM 추가 기능 사용

Azure CLI 또는 Bicep 템플릿을 통해 OSM 추가 기능을 사용하도록 설정하여 AKS(Azure Kubernetes Service) 클러스터에 OSM을 추가할 수 있습니다. OSM 추가 기능은 AKS와 통합된 OSM의 완벽하게 지원되는 설치를 제공합니다.

Important

클러스터가 실행 중인 Kubernetes 버전에 따라 OSM 추가 기능이 다른 버전의 OSM을 설치합니다.

Kubernetes 버전 설치된 OSM 버전
1.24.0 이상 1.2.5
1.23.5에서 1.24.0 사이 1.1.3
1.23.5 미만 1.0.0

이전 버전의 OSM은 설치에 사용할 수 없거나 해당 AKS 버전이 수명이 다한 경우 적극적으로 지원될 수 없습니다. AKS 버전 지원 창에 대한 정보는 AKS Kubernetes 릴리스 일정에서 확인할 수 있습니다.

기능 및 특징

OSM은 다음과 같은 기능을 제공합니다.

  • 상호 TLS(mTLS)를 사용하도록 설정하여 서비스 간 통신을 보호합니다.
  • Envoy 프록시의 자동 사이드카 삽입을 사용하여 OSM 메시에 애플리케이션을 온보딩합니다.
  • 배포 시 트래픽 이동을 투명하게 구성합니다.
  • 서비스에 대한 세분화된 액세스 제어 정책을 정의하고 실행합니다.
  • 관찰 가능성과 애플리케이션 메트릭에 대한 인사이트를 사용하여 서비스를 모니터링하고 디버그합니다.
  • 클러스터에 배포된 서비스 엔드포인트 간의 통신을 암호화합니다.
  • HTTP/HTTPS 및 TCP 트래픽 모두의 트래픽 권한 부여를 사용하도록 설정합니다.
  • A/B 테스트 또는 카나리아 배포를 위해 둘 이상의 서비스 간에 가중치 기반 트래픽 제어를 구성합니다.
  • 애플리케이션 트래픽에서 KPI를 수집하고 봅니다.
  • 외부 인증서 관리와 통합합니다.
  • NGINX, Contour애플리케이션 라우팅과 같은 기존 수신 솔루션과 통합됩니다.

수신 및 OSM에 대한 자세한 내용은 수신을 사용하여 클러스터 내 서비스에 대한 외부 액세스 관리수신을 위해 Contour와 OSM 통합을 참조하세요. networking.k8s.io/v1 API를 사용하여 OSM을 수신 컨트롤러와 통합하는 방법의 예는 Kubernetes Nginx 수신 컨트롤러를 사용한 수신을 참조하세요. OSM과 자동으로 통합되는 애플리케이션 라우팅 사용에 대한 자세한 내용은 애플리케이션 라우팅을 참조하세요.

제한 사항

OSM AKS 추가 기능에는 다음과 같은 제한 사항이 있습니다.

  • 설치 후에는 kubectl patch를 사용하여 포트 IP 주소 및 포트 범위 제외를 위해 Iptables 리디렉션을 사용하도록 설정해야 합니다. 자세한 내용은 iptables 리디렉션을 참조하세요.
  • IMDS, Azure DNS 또는 Kubernetes API 서버에 액세스해야 하는 Pod는 전역 아웃바운드 IP 범위 제외를 사용하여 제외된 아웃바운드 IP 범위의 글로벌 목록에 해당 IP 주소를 추가해야 합니다.
  • OSM은 Windows Server 컨테이너를 지원하지 않습니다.

다음 단계

Azure CLI 또는 Bicep 템플릿을 사용하여 OSM 추가 기능을 사용하도록 설정한 후 다음을 수행할 수 있습니다.