Istio
Istio는 오픈소스 서비스 메시(Service Mesh) 플랫폼으로, 마이크로서비스 아키텍처에서 서비스 간 통신을 관리하고 보안, 관측, 트래픽 제어 기능을 제공한다.
애플리케이션 코드 변경 없이 트래픽 관리, 로깅, 모니터링, 보안 정책 적용이 가능하며, 주로 Kubernetes 환경에서 사용된다.
주요 특징
- 트래픽 관리: 서비스 간 요청 라우팅, A/B 테스트, 카나리 배포, 장애 복원 기능 지원.
- 보안 강화: 서비스 간 통신 암호화(mTLS), 인증, 권한 부여 정책 적용.
- 관측(Observability): 분산 트레이싱, 메트릭, 로깅을 통한 서비스 상태 모니터링.
- 정책 기반 제어: 접근 제어, 속도 제한, 리소스 할당 등 정책 적용 가능.
- 플랫폼 독립성: Kubernetes를 중심으로 다양한 환경에서 동작 가능.
- Sidecar 아키텍처: Envoy 프록시를 각 서비스 옆에 배치해 트래픽 관리와 관측 수행.
장점
- 애플리케이션 코드 변경 불필요: 인프라 레이어에서 통신 관리 가능.
- 서비스 안정성 향상: 트래픽 제어와 장애 복원 기능으로 다운타임 최소화.
- 보안 강화: 서비스 간 인증 및 암호화로 내부 네트워크 보호.
- 가시성 제공: 분산 시스템 상태를 실시간으로 관찰 가능.
- 확장성 및 유연성: 마이크로서비스가 많아도 일관된 정책 적용 가능.
관련 용어
- Service Mesh: 서비스 간 통신을 추상화하고 관리하는 인프라 계층.
- Sidecar Proxy: 각 서비스 옆에 배치되어 네트워크 트래픽을 처리하는 프록시(Envoy 등).
- Envoy: Istio에서 기본으로 사용하는 프록시 서버.
- mTLS (Mutual TLS): 서비스 간 상호 인증 및 통신 암호화 방식.
- Telemetry: 트래픽, 로그, 메트릭 등 서비스 상태 관측 데이터.
- Pilot / Mixer / Citadel: Istio 핵심 컴포넌트 (트래픽 관리, 정책/관측, 보안 담당).
주요 솔루션 및 사용 사례
- 주요 솔루션
- Istio Control Plane: Pilot, Mixer, Citadel, Galley 등으로 구성되어 정책, 트래픽, 보안, 관측 관리.
- Envoy Proxy: 트래픽 라우팅, TLS, 메트릭 수집 담당.
- Istio Gateway: 외부 트래픽을 클러스터로 안전하게 라우팅.
- Telemetry & Tracing: Prometheus, Grafana, Jaeger 등과 연동하여 모니터링.
- 사용 사례
- 마이크로서비스 트래픽 관리: 카나리 배포, A/B 테스트, 트래픽 샤딩 적용.
- 보안 강화: 서비스 간 통신 암호화와 인증 적용.
- 분산 시스템 관측: 서비스 상태, 호출 체인, 응답 시간 시각화.
- 리소스 정책 적용: 서비스별 요청 제한, QoS, 액세스 정책 관리.
- 클라우드 네이티브 운영: Kubernetes 기반 대규모 서비스 안정적 운영.


