Istio 3-2편: Partially Enrolled Pod와 Untaint Controller
2
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

이 게시물은 Ambient mode 롤아웃 중 Kubernetes에서 Pod이 Running/Ready여도 mesh 관점에서 partially enrolled 상태로 트래픽이 실패할 수 있음을 설명합니다. Pod의 traffic redirection은 istio-cni가 pod 네트워크 네임스페이스에 redirection rule을 설정하고 ztunnel이 해당 workload를 인지하는 두 단계가 함께 완료되어야 동작함을 정리합니다. redirection은 일부 적용됐지만 ztunnel 등록이 완료되지 않으면 ambient.istio.io/redirection=pending annotation이 남고 ingress/egress가 동작하지 않을 수 있음에 주목합니다. partially enrolled이 생기는 원인으로 새 노드에서 istio-cni/ztunnel DaemonSet과 일반 workload 스케줄이 거의 동시에 진행되어 race가 발생함을 제시합니다. 해결책으로 untaint-controller를 도입해 cni.istio.io/not-ready startup taint를 istio-cni Ready 전에는 남겨 일반 Pod 스케줄을 차단하고, istio-cni Ready 후 taint를 제거해 scheduling을 허용하는 흐름을 설명합니다. 설정은 pilot.taint.enabled와 PILOT_ENABLE_NODE_UNTAINT_CONTROLLERS feature flag, 그리고 Karpenter의 startupTaints 조합이 필요함을 강조합니다.

연관 게시글