Service mesh

agnusdei·2026년 9월 30일

서비스 메시(Service Mesh)는 마이크로서비스 아키텍처(Microservices Architecture, MSA)에서 서비스 간 통신을 전담하는 전용 인프라 계층(Infra Layer)입니다.

애플리케이션 소스 코드 수정 없이 network level 통신제어, 보안, 관찰 가능성(Observability)을 구현합니다.


1. 등장 배경

  • 기존 문제: 마이크로서비스 수가 급증하면서 서비스 간 통신 제어, 라우팅, 보안 인증, 트래픽 모니터링 코드를 개발자가 애플리케이션 내에 직접 구현해야 함.
  • 해결책: 통신 관련 로직을 애플리케이션 코드에서 분리하여 인프라 영역으로 이전.

2. 핵심 아키텍처 구조

서비스 메시는 크게 두 가지 컴포넌트로 구성됩니다.

+-------------------------------------------------------+
| Control Plane (제어 영역) |
| - 정책 관리, 프록시 설정 배포, 증명서 발급 |
+-------------------------------------------------------+
│ Configuration
▼
+-------------------------------------------------------+
| Data Plane (데이터 영역) |
| +------------------+ +------------------+ |
| | Service A | | Service B | |
| | +------------+ | mTLS | +------------+ | |
| | | Sidecar |<===========>| Sidecar | | |
| | | Proxy | | Network | | Proxy | | |
| | +------------+ | | +------------+ | |
| +------------------+ +------------------+ |
+-------------------------------------------------------+

구분주요 역할대표 기술
Data Plane (데이터 영역)서비스 인스턴스 옆에 사이드카(Sidecar) 형태로 프록시를 배치하여 네트워크 트래픽을 중계 및 처리Envoy Proxy
Control Plane (제어 영역)사이드카 프록시들의 동작 정책(라우팅, 보안, 수집 등)을 중앙에서 관리 및 배포Istio, Linkerd

3. 핵심 기능

  • Traffic Management (트래픽 관리): 동적 라우팅, 카나리 배포(Canary Deployment), A/B 테스트, 카오스 테스팅.
  • Resilience (회복 탄력성): 서킷 브레이커(Circuit Breaker), 타임아웃, 재시도(Retry), 래이트 리미팅(Rate Limiting).
  • Security (보안): 서비스 간 상호 레이어 보안(Mutual Transport Layer Security, mTLS) 기반 암호화, 역할 기반 Access Control (RBAC).
  • Observability (관찰 가능성): 서비스 간 트랜잭션 추적(Distributed Tracing), 분산 메트릭 수집, 액세스 로그 제공.

4. 대표적 솔루션

  • Istio: 가장 광범위하게 사용되는 오픈소스 서비스 메시 솔루션 (Control Plane 중심).
  • Linkerd: 경량화 및 고성능에 초점을 맞춘 서비스 메시 솔루션.
  • Consul Connect: HashiCorp의 서비스 디스커버리 및 서비스 메시 솔루션.

0개의 댓글