피드로 돌아가기
How Does Traffic Actually Reach Your Pods? Kubernetes Services & kube-proxy Explained
Dev.toDev.to
Infrastructure

ClusterIP와 kube-proxy를 통한 무중단 Pod 트래픽 라우팅 구현

How Does Traffic Actually Reach Your Pods? Kubernetes Services & kube-proxy Explained

Sreekanth Kuruba2026년 6월 16일4intermediate

Context

Pod의 동적 생성 및 소멸에 따른 IP 주소 변경으로 인한 엔드포인트 불안정성 발생. 클라이언트가 개별 Pod IP를 직접 관리할 때 발생하는 연결 관리 오버헤드와 서비스 가용성 저하 해결 필요.

Technical Solution

  • ClusterIP 도입을 통한 서비스 레벨의 단일 가상 IP 제공으로 Pod IP 변경과 무관한 안정적 엔드포인트 확보
  • Label과 Selector 기반의 Dynamic Discovery 메커니즘을 통한 대상 Pod의 자동 식별 및 EndpointSlices 관리
  • kube-proxy를 통한 노드별 네트워킹 규칙 프로그래밍으로 패킷 포워딩 단계의 오버헤드 제거
  • iptables 및 IPVS 모드를 활용한 효율적인 Destination NAT(DNAT) 처리로 트래픽의 투명한 리다이렉션 구현
  • eBPF 기반의 Cilium 도입을 통해 iptables의 복잡도를 제거하고 네트워크 관찰 가능성을 높이는 구조적 확장성 제공

1. 서비스 통신 장애 시 Label Selector 일치 여부와 Pod의 Ready 상태 우선 확인

2. 대규모 클러스터 환경에서 성능 최적화를 위해 iptables 모드 대신 IPVS 모드 검토

3. 네트워크 오버헤드 극소화가 필요한 경우 eBPF 기반 CNI 솔루션 도입 고려

4. 외부 노출 필요성에 따라 NodePort와 LoadBalancer 타입의 적절한 선택지 결정

원문 읽기