본 포스팅은 따배쿠(따라하면서 배우는 쿠버네티스)을 보고 정리한 내용입니다.
Control Plane
-
etcd:
- key-value 타입의 저장소 (k8s, control-plane 및 노드들의 다양한 상태 정보를 저장
)
-
kube-apiserver:
- k8s API를 사용하도록 요청을 받고 요청이 유효한지 검사
-
kube-scheduler:
- API, etcd기반으로 Pod 실행할 노드 선택
-
kube-controller-manager:
- Pod를 관찰하며 개수를 보장
Worker Node
- kubelet:
- 모든 노드에서 실행되는 k8s 에이전트 (데몬 형태로 동작
)
- kube-proxy:
- k8s의 network 동작을 관리(iptable을 가지고 있음)
- Container runtime:
- 컨테이너를 실행하는 엔진(docker → CRI-O)
Addons
- DNS:
- CoreDNS
- Web UI (Dashboard):
- k8s 웹 UI 대시보드
- Container Resource Monitoring:
- cAdvisor(kubelet에 존재)
- Cluster-level Logging:
- 컨테이너 로그, k8s 운영 로그들을 수집해서 중앙화
- ELK(ElasticSearch, Logstash, Kibana), EFK(ElasticSearch, Fluentd, Kibana), DataDog