Istio 2편: Envoy config로 해부하는 Ambient mode
데브옵스
Istio 2편: Envoy config로 해부하는 Ambient mode
두줄요약
Istio Ambient mode의 요청 흐름을 Envoy config와 트래픽 경로로 단계별로 해부했습니다.\nHBONE, ztunnel, Waypoint가 어떻게 구현되는지 실제 설정 기준으로 설명했습니다.
구조와 흐름
- Envoy의 기본 처리 순서인 Listener → Route → Cluster → Endpoint를 기준으로 Ambient mode의 트래픽 경로를 해부
- Gateway의 요청이 Virtual Host 매칭과 클러스터 선택을 거쳐 in-mesh 여부와 Waypoint 설정에 따라 서로 다른 Endpoint로 분기
- internal listener, transport_socket_match, tunneling_config, UpstreamTlsContext 조합으로 HBONE 구현 방식 설명
성능/운영 포인트
- north-south 트래픽과 east-west 트래픽의 라우팅 정책을 Waypoint로 통합해 중복 관리 부담을 완화
- ztunnel이 Pod 네트워크 네임스페이스에 소켓을 생성하고 iptables와 패킷 마킹으로 트래픽을 투명하게 리다이렉트
- packet mark와 connmark로 무한 리다이렉트와 응답 경로 중복 처리를 방지
적용해볼 점
- Ambient mode에서 실제 트래픽 경로를 이해하려면 istioctl proxy-config로 Envoy 설정을 확인할 필요
- Gateway와 Waypoint의 역할을 분리해 L7 정책과 라우팅 정책을 한 곳에서 관리하는 설계 검토 가능
