Kubernetes, CNI

Jeonghak Cho·2025년 4월 9일

Kubernetes

목록 보기
8/20

📗CNI 개요

CNI (Container Network Interface) 는 쿠버네티스에서 Pod들이 네트워크로 통신할 수 있도록 해주는 핵심 구성요소이다. 쿠버네티스나 다른 컨테이너 런타임이 Pod가 생성될 때 네트워크를 연결할 수 있도록 도와주는 표준이다.

🏳️‍🌈 [궁금한점]

  • CNI 가 무엇인가
  • 인기있는 CNI 드라이버는 어떤 것인가
  • 어떤게 제일 좋아?

🔗[목차]

CNI 드라이버 특징

CNI특징장점단점적합한 환경
Flannel가장 단순한 CNI, VXLAN 기반- 설치/운영이 매우 간단
- 소규모에 적합
- 네트워크 정책 미지원
- 고급 기능 부족
테스트, 소규모 클러스터
CalicoBGP 기반 L3 네트워킹 + 정책 지원- 고성능
- 세밀한 네트워크 정책
- 클라우드/온프레미스 모두 적합
- 설정이 다소 복잡대규모, 보안 요구 높은 환경
CiliumeBPF 기반 고성능, L3~L7 제어 가능- HTTP 수준 정책
- 성능 우수
- 관찰성 뛰어남
- 최신 커널 필요
- 설치/운영 복잡
고성능, 관찰성/보안 요구 환경
Weave자동 피어링 지원, 간단한 구성- 쉬운 설치
- 자동 네트워크 연결
- 성능 낮음
- 대규모 환경에는 부적절
데브/테스트, 소규모 클러스터
CanalFlannel + Calico 조합- 정책 지원
- 적당한 성능과 간편함
- 고급 기능 부족
- 일부 복잡도 존재
중간 규모, 정책도 필요한 환경
Bridge로컬 테스트용, 브리지 기반 네트워크- 단순 구성
- Minikube 등에서 유용
- 확장 불가
- 기능 미약
로컬 개발, 테스트 용도

CNI vs CSI vs CRI 구분

항목설명
CNIContainer Network Interface – Pod 간 네트워크 연결
CSIContainer Storage Interface – PVC/PV 연결 등 스토리지 관련 인터페이스
CRIContainer Runtime Interface – containerd, CRI-O 등 런타임 연동

CNI 오버레이 네트워크 여부

CNI 자체는 오버레이 네트워크인지 아닌지를 정의하지 않는다. CNI는 Pod 간 네트워크 연결을 가능하게 하는 플러그인 인터페이스 사양일 뿐이고, 오버레이 네트워크인지 아닌지는 각 CNI 드라이버의 구현 방식에 따라 다르다.오버레이 네트워크는 CNI가 아닌, CNI 드라이버의 선택에 따라 사용 여부가 결정된다. Flannel, Weave, Canal은 오버레이 기반이다. Calico(eBGP), Cilium(eBPF) 등은 오버레이 없이도 동작하며, 성능 상 유리하다.

오버레이 네트워크란 실제 네트워크 위에 가상의 네트워크를 덧씌운 구조를 말한다. VXLAN, IP-in-IP 등을 사용해 Pod 네트워크와 물리 네트워크를 분리한다. 네트워크 충돌 방지, 유연성의 장점을 가지나 성능 오버헤드 발생이 단점이다.

CNI오버레이 사용 여부방식비고
Flannel사용VXLAN, host-gw 등기본 VXLAN
Calico(기본은 오버레이 아님)L3 라우팅IP-in-IP나 VXLAN도 가능
Cilium(eBPF 기반)직접 라우팅오버레이 아님
Weave사용자체 오버레이 프로토콜자동 피어링
Canal사용Flannel 방식 따름VXLAN 기반
Bridge로컬 연결브리지 네트워크단일 호스트에서만 사용

CNI 성능 비교

순위CNI성능 수준비고
1Cilium매우 높음eBPF 기반, 고성능
2Calico (non-overlay)높음BGP 기반 라우팅 시 성능 좋음
3Flannel (host-gw)중간단순한 라우팅 방식
4Weave낮음오버레이 + 피어링 overhead
5Canal낮음Flannel + Calico 조합이라 오버헤드 있음

Cilium 성능이 좋은 이유

항목설명
기술 기반eBPF (Extended Berkeley Packet Filter) – 커널 공간에서 동작
데이터 경로사용자 공간을 거치지 않고 커널 내에서 처리 (context switch 최소화)
L3~L7 지원IP 뿐 아니라 HTTP, gRPC 등 애플리케이션 레벨까지 정책 가능
오버레이 없음오버레이 네트워크가 없어 네트워크 지연 최소화
XDP, Maglev 등 고급 기능 지원매우 빠른 패킷 처리 및 로드 밸런싱 기능 제공

0개의 댓글