컨테이너를 분산 배치, 상태 관리 및 컨테이너의 구동 환경까지 관리해 주는 도구

기능
- Automated rollouts and rollbacks
- Service discovery and load balancing
- Self-healing

구성
- Control Plane(Master node)
- 주요 컨트롤 유닛으로서 Worker Nodes를 관리하는 주체 = 오케스트라의 지휘자
- kubectl
- 관리자가 쿠버네티스에 명령 및 관리하기 위해 사용하는 CLI 명령줄 도구
- API Server에 요청
- API Server
- REST API를 통해 etcd 정보 조회 및 업데이트, 명령 실행
- etcd
- 모든 클러스터 데이터를 담는 key-value 저장소
- 각 워커 노드 정보, 실행 중인 컨테이너 갯수 .. 등등
- controllers
- scheduler
- 새로 생성된 Pod을 감지하고 실행할 노드 선택
- Worker 노드
- kubelet
- 클러스터의 각 노드에서 실행되는 에이전트. Kubelet은 파드에서 컨테이너가 확실하게 동작하도록 관리 ⇒ Control Plane에게 받은 명령을 컨테이너 명령어로 변환하여 실행
- kube-proxy
- 컨테이너 런타임
- 컨테이너 실행을 담당하는 소프트웨어
- ex) Docker 플랫폼
- addon

따라 배우는 쿠버네티스
[따배쿠] 쿠버네티스 시리즈
https://kubernetes.io/
https://www.samsungsds.com/kr/insights/220222_kubernetes1.html
https://www.samsungsds.com/kr/insights/kubernetes-2.html
https://velog.io/@holicme7/K8s-쿠버네티스란-무엇인가