개요
Service Mesh는 마이크로서비스 간 통신을 투명하게 관리하는 인프라 레이어. 애플리케이션 코드 변경 없이 트래픽 제어, 보안, 관측성을 제공.
- 핵심 개념: 사이드카 프록시(Sidecar Proxy)를 각 서비스 옆에 배치해 모든 네트워크 트래픽을 가로채 제어
주요 도구
Docker 환경
| 도구 | 설명 |
|---|
| Istio | 가장 널리 쓰이는 Service Mesh, Envoy 기반, 기능 풍부 |
| linkerd | 경량화, 러스트 기반 마이크로프록시, 성능 우수 |
Kubernetes 환경
| 도구 | 설명 |
|---|
| Kiali | Istio 시각화 대시보드 |
| Consul Connect | HashiCorp Consul 기반 Service Mesh |
| AWS App Mesh | AWS 관리형 Service Mesh |
핵심 기능
| 기능 | 설명 |
|---|
| 트래픽 관리 | 로드밸런싱, A/B 테스트, 카나리 배포, 서킷 브레이커 |
| 보안 | mTLS(상호 TLS) 자동화, 서비스 간 인증·인가 |
| 관측성 | 분산 추적(Jaeger), 메트릭(Prometheus), 로그 |
| 장애 처리 | 재시도, 타임아웃, 폴트 인젝션 |
Istio vs Linkerd
| 항목 | Istio | Linkerd |
|---|
| 복잡도 | 높음 | 낮음 |
| 성능 | 상대적으로 무거움 | 경량, 빠름 |
| 기능 | 매우 풍부 | 핵심 기능 집중 |
| 학습 곡선 | 가파름 | 완만함 |
| 적합 | 대규모, 복잡한 환경 | 성능 중시, 단순 환경 |
관련 항목