Ssoon

[9주차] Ambient Mode : 개요요 본문

Istio Hands-on Study [1기]

[9주차] Ambient Mode : 개요요

구구달스 2025. 6. 3. 16:46

🌐 Istio Ambient Mesh: 서비스 메시의 새로운 패러다임

  • Ambient Mesh는 Istio의 새로운 모드로, sidecar 없이도 서비스 메시의 기능을 제공하며 더 간단하고 비용 효율적인 네트워킹을 가능하게 합니다.

🚀 Ambient Mesh란?

  • Ambient Mesh는 Istio의 새로운 데이터 플레인 모드로, 기존의 sidecar 기반 접근 방식과 달리 sidecar 프록시를 사용하지 않는 방식입니다. 대신, Kubernetes 클러스터의 네트워크 계층에서 동작하는 L4 프록시와 L7 프록시를 사용해 서비스 간 통신을 관리합니다. 이 방식은 초보자도 쉽게 설정할 수 있도록 설계되었으며, 복잡한 설정 없이도 Istio의 강력한 기능을 활용할 수 있습니다.
  • 예를 들어, 마이크로서비스 간의 트래픽 암호화나 로깅 같은 기능을 사용하고 싶다면, 기존에는 각 파드에 sidecar 프록시(Envoy)를 추가해야 했습니다. 하지만 Ambient Mesh는 이런 복잡한 설정을 줄이고, 클러스터 전체에서 공유되는 프록시를 통해 동일한 기능을 제공합니다.
Ambient Mesh는 sidecar 없이도 Istio의 기능을 제공하며,
설정이 간단하고 리소스 사용이 효율적입니다.

🛠️ Ambient Mesh의 구성 요소

  • Ambient Mesh는 두 가지 주요 구성 요소로 동작합니다:
    • ztunnel (Zero Trust Tunnel)
      ztunnel은 L4 레이어에서 동작하는 경량 프록시로, 클러스터 내 모든 노드에 배포됩니다. 이 프록시는 트래픽 암호화, 인증, 로깅 같은 기본적인 네트워크 기능을 처리합니다. ztunnel은 모든 서비스 메시 트래픽의 첫 번째 진입점 역할을 하며, 보안과 가시성을 제공합니다.
    • Waypoint Proxy
      Waypoint Proxy는 L7 레이어에서 동작하며, 필요에 따라 선택적으로 배포됩니다. 이 프록시는 트래픽 라우팅, 로드 밸런싱, 정책 적용 같은 고급 기능을 처리합니다. 예를 들어, 특정 서비스에 대해 A/B 테스트나 카나리 배포를 구현하려면 Waypoint Proxy를 사용합니다.
  • 이 두 구성 요소는 서로 협력하여 sidecar 없이도 Istio의 모든 기능을 제공합니다. 초보자는 ztunnel만으로도 기본적인 서비스 메시 기능을 시작할 수 있고, 필요에 따라 Waypoint Proxy를 추가해 더 복잡한 요구 사항을 처리할 수 있습니다.
ztunnel은 L4에서 보안과 기본 네트워킹을,
Waypoint Proxy는 L7에서 고급 트래픽 관리를 담당합니다.

🔄 Ambient Mesh의 작동 방식

  • Ambient Mesh는 트래픽을 처리하는 방식이 매우 직관적입니다. 아래는 간단한 예시로 작동 방식을 설명합니다:
    • ztunnel로 트래픽 캡처: 클러스터 내 모든 트래픽은 노드에 배포된 ztunnel로 라우팅됩니다. ztunnel은 트래픽을 암호화하고, 서비스 간 인증을 처리합니다.
    • L7 처리(선택적): 고급 트래픽 관리(예: HTTP 라우팅, 재시도 정책)가 필요한 경우, 트래픽은 Waypoint Proxy로 전달됩니다.
    • Istio 제어: Istio의 제어 플레인(istiod)은 ztunnel과 Waypoint Proxy를 조정하여 정책과 구성을 적용합니다.
  • 예를 들어, 아래는 ztunnel을 활성화하는 간단한 Istio 설정 예시입니다:
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  namespace: istio-system
  name: ambient-profile
spec:
  profile: ambient
  • 이 YAML 파일은 Istio를 Ambient Mesh 모드로 설정합니다. 초보자라도 이 파일을 적용하면 ztunnel이 클러스터에 자동 배포됩니다.
Ambient Mesh는 ztunnel로 기본 트래픽을 처리하고,
필요 시 Waypoint Proxy로 고급 기능을 추가하며,
Istio 제어 플레인이 이를 관리합니다.

🌟 Ambient Mesh의 장점

  • Ambient Mesh는 기존 sidecar 모델에 비해 여러 가지 장점을 제공합니다:
    • 리소스 효율성: sidecar 프록시를 각 파드에 배포하지 않으므로 CPU와 메모리 사용량이 줄어듭니다.
    • 간단한 설정: 초보자도 복잡한 sidecar 주입 없이 쉽게 설정할 수 있습니다.
    • 유연성: ztunnel만으로 기본 기능을 사용하거나, Waypoint Proxy를 추가해 고급 기능을 구현할 수 있습니다.
    • 호환성: 기존 Istio 사용자도 Ambient Mesh로 점진적으로 전환할 수 있습니다.
  • 예를 들어, 리소스가 제한된 환경에서 서비스 메시를 도입하고 싶다면, Ambient Mesh는 적은 리소스로도 강력한 기능을 제공합니다.
Ambient Mesh는 리소스 효율적이고,
설정이 간단하며, 유연한 확장이 가능합니다.

⚙️ 언제 Ambient Mesh를 사용해야 할까?

  • Ambient Mesh는 다음과 같은 경우에 적합합니다:
    • 리소스 절약이 필요한 환경: sidecar 모델의 높은 리소스 사용량이 부담스러운 경우.
    • 초보자 친화적 설정: 복잡한 설정 없이 서비스 메시를 빠르게 시작하고 싶은 경우.
    • 점진적 도입: 기존 Istio 사용자라면, Ambient Mesh를 점진적으로 도입해 sidecar와 혼합 사용 가능.
  • 반면, 매우 복잡한 L7 트래픽 관리(예: 고급 라우팅 정책)가 필수라면, Waypoint Proxy를 추가하거나 기존 sidecar 모델을 고려할 수 있습니다.
Ambient Mesh는
리소스 효율성과 간단한 설정이 필요한 환경에 최적화되어 있습니다.

📌 핵심 요약

  • Ambient Mesh는 Istio의 새로운 데이터 플레인 모드로, sidecar 없이도 서비스 메시 기능을 제공합니다.
  • ztunnel은 L4에서 트래픽 암호화와 인증을, Waypoint Proxy는 L7에서 고급 트래픽 관리를 처리합니다.
  • 리소스 효율성, 간단한 설정, 유연한 확장성을 제공하며, 초보자도 쉽게 시작할 수 있습니다.
  • 기존 Istio와 호환되며, 점진적 도입이 가능합니다.
  • 설정 예시로 YAML 파일을 사용해 ztunnel을 활성화할 수 있습니다.
 
Comments