쿠버네티스를 배포하면 클러스터를 얻는다. 모든 클러스터는 최소 한개 이상의 워커 노드를 갖는다.
컨트롤 플레인 컴포넌트는 스케쥴링과 같은 클러스터에 대한 전반적인 결정을 수행하고, 클러스터 이벤트를 감지하고 반응한다.
컨트롤 플레인 컴포넌트는 클러스터 내 어떤 머신에서든 동작할 수 있다. 그러나 보통은 한 머신에 모든 컨트롤 플레인 컴포넌트를 구동시키고록 구성(Configure)하고 사용자 컨테이너는 다른 머신에서 동작시킨다. (양자를 구분, 격리하는게 일반적이다.)
이하는 컨트롤 플래인 컴포넌트의 종류이다.
쿠버네티스 API를 호출하는 쿠버네티스 컨트롤 플래인 컴포넌트. API서버는 쿠버네티스 컨트롤 플래인의 프론트엔드 역할을 한다.
쿠버네티스 API 서버의 주요 구현은 kube-apiserver임. 이 친구는 수평으로 스케일아웃되도록 디자인되었기 때문에 더 많은 kube-apiserver 인스턴스를 실행하고 인스턴스간의 트래픽을 균형있게 조절가능하다.
💡 API 서버를 통해 클러스터 내 공유되는 상태를 감시하고, 현재 상태를 의도된 상태로 이행하는 루프를 컨트롤러라고 한다.
https://etcd.io/docs/v3.6/faq/
모든 클러스터 데이터를 담는 쿠버네티스 뒷단의 저장소. 키-값 형태로 되어있다. 이를 활용하려면 이 데이터를 백업해 두는 것도 필수임.