Istio

정의 대기 중입니다.

Istio는 서비스의 보안, 연결 및 모니터링을 위한 투명한 방법을 제공하는 오픈 소스 서비스 메쉬 플랫폼입니다. 네트워크 계층을 추상화하여 마이크로서비스 아키텍처의 복잡성을 관리하도록 설계되었습니다. Istio는 일반적으로 Kubernetes 클러스터 내에 배포된 마이크로서비스 집합으로 실행됩니다. 아키텍처는 제어 평면(Control Plane)과 데이터 평면(Data Plane)의 두 가지 주요 구성 요소로 구성됩니다. 제어 평면(예: Pilot, Citadel, Galley)은 데이터 평면의 프록시를 관리하고 구성합니다. 데이터 평면은 각 서비스 인스턴스와 함께 사이드카로 배포된 Envoy 프록시로 구성됩니다. 이러한 Envoy 프록시는 서비스 간의 모든 네트워크 트래픽을 가로채어 정책을 적용하고 원격 측정을 수집합니다. 주요 기능에는 트래픽 관리(예: 라우팅, 로드 밸런싱, 오류 주입), 보안(예: 상호 TLS 인증, 권한 부여 정책) 및 관찰 가능성(예: 메트릭, 로그, 분산 추적)이 포함됩니다. 단점으로는 사이드카 프록시로 인해 운영 복잡성과 리소스 오버헤드가 발생하지만, 이는 분산 시스템 관리의 상당한 이점으로 상쇄되는 경우가 많습니다. Istio를 통해 개발자는 네트워크 문제보다는 비즈니스 로직에 집중할 수 있으며, 카나리 배포, A/B 테스트 및 복원력 패턴과 같은 고급 기능을 즉시 사용할 수 있습니다.

        graph LR
  Center["Istio"]:::main
  Rel_advanced_propulsion_systems["advanced-propulsion-systems"]:::related -.-> Center
  click Rel_advanced_propulsion_systems "/terms/advanced-propulsion-systems"
  Rel_microservices["microservices"]:::related -.-> Center
  click Rel_microservices "/terms/microservices"
  Rel_service_mesh["service-mesh"]:::related -.-> Center
  click Rel_service_mesh "/terms/service-mesh"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 지식 테스트

1 / 3

🧒 5살도 이해할 수 있게 설명

컴퓨터 시스템에서 실행되는 모든 다양한 앱에 대한 매우 스마트한 교통 통제관과 같아서, 앱들이 서로 안전하고 효율적으로, 그리고 길을 잃지 않고 대화하도록 보장합니다.

🤓 Expert Deep Dive

Istio의 아키텍처는 Envoy 프록시를 사이드카로 활용하여 애플리케이션 포드에 주입함으로써 모든 들어오고 나가는 트래픽을 가로채고 관리합니다. 역사적으로 Pilot(트래픽 관리), Citadel(보안) 및 Galley(구성 유효성 검사)로 구성되었던 제어 평면은 istiod와 같은 구성 요소가 많은 기능을 통합하면서 발전했습니다. Pilot은 xDS API(Discovery Service)를 통해 Envoy 프록시를 구성하여 동적 라우팅, 로드 밸런싱 및 오류 주입을 가능하게 합니다. Citadel은 SPIFFE/SPIRE ID를 사용하여 강력한 서비스 간 인증 및 권한 부여를 제공하고 인증서 회전을 관리합니다. Galley는 구성 수집 및 유효성 검사를 처리합니다. 단점으로는 모든 서비스 인스턴스에 대해 Envoy 사이드카를 실행하는 상당한 리소스 오버헤드(CPU/메모리)와 추가 네트워크 홉으로 인한 지연 시간 증가가 있습니다. 권한 부여 정책의 잘못된 구성, Envoy 프록시 자체의 잠재적 취약점 또는 Istio 제어 평면 구성 요소 내의 문제로 인해 취약점이 발생할 수 있습니다. 동적 마이크로서비스 환경 전반에 걸쳐 일관된 정책 시행을 보장하는 것이 핵심 과제입니다.

📚 출처