반응형
1. Pilot
- Pilot은 Istio의 트래픽 관리 컴포넌트로, 서비스 간의 트래픽을 어떻게 라우팅할지 결정합니다.
- 애플리케이션과 관련된 트래픽 규칙(예: 라우팅 정책, 리트라이, 타임아웃 등)을 관리하며, 이 정보를 각 사이드카 프록시(Envoy)에게 전달합니다.
- 이를 통해 사용자는 트래픽 라우팅 전략을 중앙에서 제어하고, Canary 배포나 A/B 테스트 같은 트래픽 제어 정책을 쉽게 적용할 수 있습니다.
2. Envoy (사이드카 프록시)
- Envoy는 사이드카 형태로 각 애플리케이션 Pod에 배포되는 프록시입니다. Istio는 이 Envoy 프록시를 활용해 트래픽을 가로채고 제어합니다.
- Envoy 프록시는 서비스 간의 모든 트래픽을 가로채서 관찰하고, Pilot에서 전달받은 트래픽 관리 정책을 기반으로 트래픽을 제어합니다.
- Envoy는 트래픽 로드 밸런싱, 서비스 디스커버리, 재시도/백오프 전략, 서킷 브레이킹 등 다양한 기능을 제공합니다.
- TLS 암호화 및 인증을 통해 서비스 간 보안 통신을 강화하며, Metric을 수집해 모니터링을 위한 데이터를 제공합니다.
3. Citadel (보안 관리)
- Citadel은 Istio의 보안 컴포넌트로, 각 서비스 간의 통신을 암호화하고 인증을 관리합니다.
- 서비스 간의 통신을 보호하기 위해 mTLS(상호 TLS) 인증을 설정하고, 서비스를 인증할 수 있는 키와 인증서를 관리합니다.
- Citadel은 각 서비스의 사이드카 프록시(Envoy)에게 인증서를 발급하고, 주기적으로 갱신함으로써 안전한 통신을 보장합니다.
- 이를 통해 서비스 간 통신의 기밀성과 무결성을 보장하고, 제3자의 공격을 방지할 수 있습니다.
4. Galley (구성 관리)
- Galley는 구성 유효성 검사 및 정책 관리 컴포넌트입니다.
- Istio 설정 파일의 구성 유효성을 검사하여 시스템에 오류가 있는 구성이 적용되지 않도록 합니다.
- 클러스터의 구성 데이터를 수집해 Istio 컴포넌트로 전달하며, 정책을 일관되게 관리할 수 있게 도와줍니다.
- Istio 1.5 버전 이후로는 Galley의 기능이 제거되고 Istiod로 통합되었습니다.
5. Mixer (정책 및 텔레메트리)
- Mixer는 Istio의 정책 관리와 모니터링 데이터를 수집하는 컴포넌트입니다.
- 각 서비스 요청 시, Mixer는 설정된 정책을 기반으로 서비스 요청의 허용 여부를 결정하며, 서비스 요청에 대해 인증, 로깅, 트래픽 제한 등을 수행할 수 있습니다.
- 트래픽에 대한 메트릭을 수집하고 로깅하여 클러스터의 가시성을 높입니다.
- Istio 1.5 이후 Mixer 기능이 제거되고, 메트릭 수집과 정책 관리가 Envoy와 다른 컴포넌트로 이전되었습니다.
6. Istiod
- Istiod는 Istio 1.5 버전부터 도입된 통합 관리 컴포넌트로, 기존에 분리되어 있던 Pilot, Citadel, Galley 기능을 하나의 단일 컴포넌트로 통합한 것입니다.
- 이를 통해 Istio의 관리 기능이 단순화되고 성능이 최적화되었습니다.
- Istiod는 각 Envoy 프록시에 대한 설정 전달, 인증서 발급, 트래픽 정책 적용 등의 작업을 수행합니다.
반응형
'K8S' 카테고리의 다른 글
helm plugin 수동 설치 - windows (0) | 2024.11.25 |
---|---|
daemonset, deployment, statefulset 비교 정리 (0) | 2024.11.10 |
[kubernetes] ingress 를 거치는 통신 과정 (0) | 2024.11.07 |
CKA 합격 후기 및 팁 (1) | 2024.06.04 |
[kubernetes] "connection to the server controlplane:6443 was refused" 오류 트러블슈팅 (0) | 2024.05.10 |
댓글