반응형
이번엔 쿠버네티스 네트워크 대해 간략하게 알아보도록 하겠습니다.
쿠버네티스 네트워크
쿠버네티스의 네트워크 다음과 같은 주요 원칙을 따릅니다.
1-1. 모든 파드는 고유한 IP를 갖는다.
- 각 파드는 자체 네트워크 네임스페이스를 가지며, 하나 이상의 컨테이너가 포함됩니다.
- 파드 내부의 컨테이너는 localhost를 통해 서로 통신 할 수 있습니다.
그림에서 보는 것 처럼 하나의 파드안에 여러 개의 컨테이너가 있어도 localhost 환경에서 통신을 한다는 의미 입니다.
1-2. 모든 파드는 동일한 네트워크 공간에서 서로 통신 가능하다.
- 파드들은 NAT(Network Address Translation) 없이 서로 통신이 가능 해야 합니다.
- 이를 위해 쿠버네티스는 CNI(Container Network Interface) 플러그인을 사용하여 네트워크를 설정 합니다.
- 다만, 파드에서 외부로 통신을 해야할 경우에는 NAT 되어 출발지 IP가 Node의 IP로 변환되어 나가게 됩니다.
1-3. 노드와 파드 간 통신이 가능해야 한다.
- 클러스터 내의 각 노드는 자신이 호스팅하는 파드 뿐만 아니라 클러스터 내의 모든 파드와 직접 통신 할 수 있어야 합니다.
- 이는 여러 CNI 플러그인을 통해 구현 됩니다.
- 대표적인 CNI 플러그인으로는 Flannel, Calico, Cilium 등이 있으며, 각각의 방식으로 노드 간 트래픽을 관리 합니다.
1-4. 쿠버네티스 네트워크 모델의 동작 방식
1. 새로운 파드가 생성되면 쿠버네티스는 해당 파드에 IP 주소 할당
2. 각 노드는 쿠버네티스 네트워크 정책에 따라 자신이 호스트하는 파드들과 다른 노드에 있는 파드들과의 통신 조정
3. 네트워크 플러그인은 트래픽을 라우팅하거나 오버레이 네트워크를 사용하여 파드 간의 연결 유지
4. 서비스 및 네트워크 정책이 추가적으로 적용되어 트래픽 제어
다음엔 CNI 플러그인의 동작 방식 등 조금 더 자세하게 알아보도록 하겠습니다.
감사합니다.
반응형
'쿠버네티스 > 이론' 카테고리의 다른 글
스테이트풀셋(StatefulSet) 이란 ? (0) | 2025.01.02 |
---|---|
쿠버네티스 Deployment 란 ? (0) | 2024.12.04 |
쿠버네티스 Downward API 란? (2) | 2024.11.28 |
쿠버네티스 ConfigMap, Secret 이란 ? (0) | 2024.11.26 |
쿠버네티스 퍼시스턴트볼륨(PV) 퍼시스턴트볼륨 클레임(PVC) 이란? (0) | 2024.11.12 |