[쿠버네티스] Component동작으로 이해하기 (TS러버)
해당 블로그는 [쿠버네티스 어나더 클래스] 강의에 일부 내용입니다. 복습을 위한 자료 입니다.
강의 링크 :https://inf.run/f2xSR
쿠버네티스는 내부적으로 다양한 컴포넌트(Component) 들이 유기적으로 동작하며 클러스터를 구성합니다. 이들은 Control Plane, Worker Node, Add-on으로 나뉘며, 일부는 Pod 형태로, 일부는 OS 데몬으로 동작합니다.
1. 쿠버네티스 외부 / OS 레벨 컴포넌트
컴포넌트설명kubectl사용자 명령어를 API 서버에 전달하는 CLI 도구kubeadm클러스터 초기화, 노드 조인 등 설치 및 관리 도구kubelet각 노드에서 Pod 상태를 관리하고 컨트롤 플레인과 통신하는 에이전트container runtime실제 컨테이너를 실행하는 도구 (Docker, containerd, CRI-O 등)
2. Control Plane Components
클러스터를 제어하고 중앙에서 상태를 관리하는 컴포넌트로, 보통 마스터 노드에 설치됩니다.
kube-apiserver: 모든 요청의 진입점 (REST API)
etcd: 모든 상태를 저장하는 Key-Value 저장소 (쿠버네티스의 DB)
kube-scheduler: 새 Pod이 어느 노드에 배치될지 결정
kube-controller-manager: 다양한 컨트롤러들(ReplicaSet 등)을 관리
cloud-controller-manager(선택): 클라우드 자원 제어 (로드밸런서, 볼륨 등)
3. Worker Node Components
실제 애플리케이션 컨테이너(Pod) 를 실행하는 노드 구성요소
kubelet: Pod이 제대로 실행되도록 관리
kube-proxy: 네트워크 라우팅과 서비스 로드밸런싱 역할
container runtime: Pod 내 컨테이너 실행 도구
4. Add-on Components
기본 기능을 보완하거나 확장하는 역할
Metrics Server: HPA 등에 필요한 리소스 모니터링 도구
CoreDNS: 내부 DNS 서비스 제공
Calico: CNI 네트워크 플러그인, 네트워크 정책 제어
Kubernetes Dashboard: 웹 UI 대시보드 (선택)
5. 쿠버네티스 리소스 (Resource) 구조 이해
쿠버네티스 리소스는 Controller와 Object로 구분되며, 모두 kubectl 또는 YAML 선언으로 관리됩니다.
Controller
다른 리소스를 감시하고 상태를 유지/제어하는 역할
예:
Deployment→ReplicaSet→Pod생성,HPA→ 오토스케일 관리
Object
독립적으로 실행 자원으로 존재
예:
Pod,Service,ConfigMap,Secret,PVC
리소스의 Scope
Namespace-level: 논리적으로 분리된 공간 (예:
Pod,Service,ConfigMap등)Cluster-level: 클러스터 전역에서 동작하는 리소스 (예:
Node,ClusterRole등)
쿠버네티스는 이처럼 중앙 제어 구조를 통해 자동화된 상태 관리와 유지 보수성 높은 인프라 운영을 가능하게 합니다.
답변 0





