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 |