멀티클러스터 설치
멀티클러스터 설치 (Install Multicluster)
여러 쿠버네티스 클러스터에 걸쳐 앰비언트 모드로 Istio 메시를 설치해요.
출처: Istio 문서
본문
- Before you begin
- Install ambient multi-primary on different networks
- Verify the ambient installation
- Configure failover behavior in multicluster ambient installation
- Kiali Dashboard for Ambient Multi-network
이 가이드를 따라 여러 클러스터에 걸친 Istio 앰비언트 서비스 메시를 설치해 보세요.
현재 상태와 제한 사항 (Current Status and Limitations)
앰비언트 멀티클러스터 설치를 진행하기 전에, 이 기능의 현재 상태와 제한 사항을 이해하는 것이 중요해요.
알려진 제한 사항 (Known Limitations)
네트워크 토폴로지 제약 (Network Topology Restrictions)
멀티클러스터 단일 네트워크(single-network) 구성은 테스트되지 않았으며, 깨져 있을 수 있어요:
- 같은 네트워크를 공유하는 클러스터에 앰비언트를 배포할 때는 주의하세요
- 멀티 네트워크 구성만 지원돼요
컨트롤 플레인 제약 (Control Plane Limitations)
프라이머리-리모트(primary remote) 구성은 현재 지원되지 않아요:
- 여러 프라이머리 클러스터만 가질 수 있어요
- 하나 이상의 리모트 클러스터가 있는 구성은 올바르게 동작하지 않을 거예요
웨이포인트 요구사항 (Waypoint Requirements)
클러스터 전반에 걸쳐 유니버설 웨이포인트 배포가 전제돼요:
- 모든 클러스터가 동일하게 이름 지어진 웨이포인트 배포를 가져야 해요
- 웨이포인트 구성은 클러스터 간에 수동으로 동기화되어야 해요 (예: Flux, ArgoCD 같은 도구 사용)
- 트래픽 라우팅은 일관된 웨이포인트 명명 규칙에 의존해요
서비스 가시성과 범위 (Service Visibility and Scoping)
서비스 범위(service scope) 구성은 클러스터 간에 읽히지 않아요:
- 균일한 서비스 범위 구성만 지원돼요. 모든 클러스터에서 서비스 범위가 일치해야 해요
- 로컬 클러스터의 서비스 범위 구성만 진실의 원천(source of truth)으로 사용돼요
- 원격 클러스터의 서비스 범위는 존중되지 않아요. 그래서 같은 서비스가 다른 클러스터에서 다른 범위를 가지면 예상치 못한 트래픽 동작이 생길 수 있어요
- 클러스터 간 서비스 발견이 의도된 서비스 경계를 존중하지 않을 수 있어요
서비스의 웨이포인트가 global로 표시되면, 그 서비스도 global이 돼요:
- 이는 단일 네트워크 멀티클러스터 배포에서 의도치 않은 클러스터 간 트래픽을 초래할 수 있어요
- 이 문제의 해결책은 여기에서 추적되고 있어요
원격 네트워크에서의 부하 분산 (Load Distribution on Remote Network)
원격 네트워크로 가는 트래픽은 엔드포인트 간에 균등하게 분산되지 않아요:
- 원격 네트워크로 페일오버할 때, HTTP 요청 멀티플렉싱과 커넥션 풀링 때문에 원격 네트워크의 단일 엔드포인트가 지나치게 많은 요청을 받을 수 있어요
- 사이드카 모드에도 현재 매우 유사한 문제가 있어요
- 이 문제의 해결책은 여기에서 추적되고 있어요
게이트웨이 제약 (Gateway Limitations)
앰비언트 이스트-웨스트(east-west) 게이트웨이는 현재 meshed mTLS 트래픽만 지원해요:
- 앰비언트 이스트-웨스트 게이트웨이로는 네트워크 간에
istiod를 노출할 수 없어요. 이 용도로는 여전히 클래식 e/w 게이트웨이를 사용할 수 있어요.