👉 이 게시글은 도커 / 쿠버네티스 온라인 부트캠프 with 카카오엔터프라이즈 강의를 바탕으로 작성되었습니다.
클러스터는 노드라고 불리는 워커 머신의 집합이며, 모든 클러스터는 한 개 이상의 워커 노드를 가진다.
- 노드 : 컨테이너화된 애플리케이션을 실행하는 서버 (가상 또는 물리 둘다 가능)
컨트롤 플레인은 워커 노드와 클러스터 내 파드를 관리하는 역할을 한다. 컨트롤 플레인의 구성 요소는 다음과 같다.
애플리케이션의 구성 요소인 파드를 호스트하는 역할을 한다. 워커 노드의 구성 요소는 다음과 같다.
하나 이상의 컨테이너로 구성된 배포의 최소 단위이다. 1개의 파드에는 2개 이상의 각각 다른 이미지를 가진 컨테이너를 생성할 수 있으며, 파드 내의 컨테이너들은 동일한 볼륨과 연결 가능하다. 파드 리소스는 노드 IP와 별개로 파드만의 고유한 IP를 할당받으며, 파드 내의 컨테이너들은 IP를 공유한다. 보통 쿠버네티스에서는 yaml 파일 생성 후 apply 명령을 통해 파드를 실행한다.
CNI는 파드간의 연결을 용이하게 하는 일종의 플러그인이다. 네트워크로 연결되어야 할 파드는 동일한 노드나 서로 다른 노드에 존재할 수 있는데, 이렇게 분산되어 있는 파드를 네트워크로 묶어주는 역할을 한다. 컨테이너 런타임이 CNI 플러그인을 호출하여 컨테이너의 네트워킹 네임스페이스에 인터페이스를 추가하거나 제거하는 역할을 한다.