Istio 핵심 개념 정리
Istio 쉽게 이해하기 — DevOps / Platform 엔지니어 관점 정리 한 줄 요약 Istio는 Sidecar(Envoy)를 통해 모든 서비스 간 트래픽을 통제하고, Istiod가 정책(config)을 내려 네트워크를 코드처럼 다루게 해주는 시스템이다. 1. 먼저 구조부터 이해하자 Client → Pod(App) → Envoy → 네트워크 →...

Source: DEV Community
Istio 쉽게 이해하기 — DevOps / Platform 엔지니어 관점 정리 한 줄 요약 Istio는 Sidecar(Envoy)를 통해 모든 서비스 간 트래픽을 통제하고, Istiod가 정책(config)을 내려 네트워크를 코드처럼 다루게 해주는 시스템이다. 1. 먼저 구조부터 이해하자 Client → Pod(App) → Envoy → 네트워크 → 상대 Envoy → 상대 App ↑ Istiod 모든 요청은 Envoy를 통과한다 Istiod는 Envoy에게 “어떻게 동작할지”를 알려준다 👉 핵심 애플리케이션이 아니라 네트워크 레이어에서 제어한다 2. Sidecar / Envoy 핵심 정리 Sidecar Pod 안에서 앱 옆에 붙는 컨테이너 트래픽을 가로채고 처리 Envoy Istio가 사용하는 실제 프록시 엔진 HTTP / gRPC 이해 라우팅 / 보안 / 메트릭 담당 👉 관계 Istio = Control Plane Envoy = Data Plane ` 3. Istiod의 “정책”은 무엇인가? 👉 핵심 Kubernetes CRD로 정의된 설정을 Envoy가 이해할 수 있는 config로 변환해서 내려준다 4. CRD를 “역할 중심”으로 이해하기 CRD를 하나씩 외우면 헷갈린다. 👉 역할 기준으로 보면 바로 이해된다. 4.1 Gateway — "입구" 👉 외부에서 들어오는 요청을 받는 지점 `yaml kind: Gateway spec: servers: port: number: 80 protocol: HTTP hosts: "*" 📌 비유 Nginx / LoadBalancer 4.2 VirtualService — "어디로 보낼지 결정" 👉 요청을 어떤 서비스로 보낼지 정의 `yaml kind: VirtualService spec: hosts: my-service http: route: destination: host: my-service subset: v1 weight: 90 destination: host: my-service subset: v2