TIL

K3s Flannel, CNI 정리

하얀잔디 2026. 1. 3. 10:07

CNI 

  • CNI = Container Network Interface
  • 쿠버네티스에서 파드 네트워크를 어떻게 만들지 정한 표준 규격
  • kubelet이 파드 만들 때 CNI 플러그인 호출해서
    • 파드 IP 할당
    • 네트워크 인터페이스 연결
    • 라우팅 설정함
  • CNI 자체가 네트워크를 만드는 게 아니라 이 규칙대로 만들어라는 약속임

 

 


 

 

Flannel 

  • Flannel = CNI 플러그인 중 하나
  • 목적 하나임
    모든 파드가 서로 IP로 직접 통신 가능하게 만들기
  • 가장 단순한 구조라서
    • 설정 거의 없음
    • 설치하면 바로 됨

Flannel이 하는 일 

  • 파드 IP가:
    • 같은 노드에 있든
    • 다른 노드에 있든
  • 실제로 그 IP까지 패킷이 도달하게 해줌

 

동작원리

  • 노드마다 Pod IP 대역 하나씩 할당
  • 노드 간 통신은
    • VXLAN 터널로 패킷 감싸서 전달함
  • 그래서
    • 노드 ↔ 노드 UDP 8472 필수

Flannel 쓰면 좋은 경우

  • 단일 클러스터
  • 사내망 / 폐쇄망
  • 일단 쿠버네티스 돌려야 하는 상황

Flannel 단점

  • 네트워크 정책(NetworkPolicy) 제어 약함
  • 트래픽 제어, 보안 세밀하게 못 함
  • 대규모 / 복잡한 네트워크에는 한계 있음

한 줄 요약

  • CNI = 파드 네트워크 규칙
  • Flannel = 그 규칙을 구현한 가장 단순한 놈
  • 8472 안 열면 파드 통신 안 됨
  • 설정 귀찮으면 Flannel이 답

 

 

 

 

CNI는 규칙이고
Flannel은 구현체고
Flannel은 쉽고 단순한 대신 기능은 적음

'TIL' 카테고리의 다른 글

keepAlived vs HAproxy 차이 쉽게  (0) 2026.01.05
K3S MetalLB 란  (0) 2026.01.05
Redis on-off가 1~2분 주기로 반복될 때  (0) 2026.01.01
Fernet 정리  (1) 2025.12.29
마이그레이션 제대로 한 후기  (0) 2025.12.18