본문으로 건너뛰기
K8s 클러스터 구성 컴포넌트

K8s 클러스터 구성 컴포넌트

Kubernetes 클러스터는 관리를 담당하는 Control Plane과 실제 워크로드가 실행되는 Worker Node로 구성됩니다.


1. Control Plane (관리 영역)

컴포넌트역할
kube-apiserver클러스터의 중앙 통로. 모든 요청을 처리하며 인증/인가를 담당함
etcd클러스터의 모든 상태 정보를 저장하는 ‘두뇌’ 역할을 하는 키-값 저장소
kube-scheduler생성된 Pod를 어느 노드에 배치할지 결정하는 스케줄러
kube-controller-manager노드, 레플리카, 엔드포인트 등 클러스터의 상태를 관리하는 컨트롤러들의 집합

2. Worker Node (작업 영역)

컴포넌트역할
kubelet각 노드에서 실행되는 관리자. 컨테이너가 Pod 스펙에 따라 실행되도록 보장함
kube-proxy노드 내부의 네트워크 규칙을 관리하고 서비스로의 트래픽을 라우팅함
Container Runtime실제로 컨테이너를 실행하는 소프트웨어 (containerd, CRI-O 등)

3. 전체 아키텍처 다이어그램

컴포넌트 간의 상호작용을 한눈에 보여주는 아키텍처 구조입니다.

    graph TD
    subgraph CP[Control Plane]
        API[kube-apiserver]
        ETCD[(etcd)]
        SCHED[kube-scheduler]
        KCM[kube-controller-manager]

        API <--> ETCD
        API --- SCHED
        API <--> KCM
    end

    subgraph Node1[Worker Node 1]
        K1[kubelet]
        P1[kube-proxy]
        Pod1[Pods]
        K1 --- Pod1
    end

    subgraph Node2[Worker Node 2]
        K2[kubelet]
        P2[kube-proxy]
        Pod2[Pods]
        K2 --- Pod2
    end

    API <==> K1
    API <==> K2
    Admin[관리자 / kubectl] -- "명령 전달" --> API
  

각 컴포넌트는 유기적으로 연결되어 있으며, API 서버를 중심으로 클러스터의 선언적 상태(Desired State)를 유지하기 위해 협력합니다.