[Kubernetes] deployment / replicaSet / pod / node 간 관계

Xabi·2025년 9월 1일

kubernetes

목록 보기
8/20

관계

Deployment

└─> ReplicaSet (버전 관리, scale 관리)

└─> Pod (실행 단위, 1개 이상 컨테이너 포함)

└─> Node (Pod가 실제로 배치되어 실행되는 물리/가상 서버)

리소스역할하위 리소스와 관계주요 특징
Deployment애플리케이션 선언적 관리ReplicaSet 관리롤링 업데이트, 롤백, 스케일링
ReplicaSet특정 버전의 Pod 집합 관리Pod 관리원하는 Pod 개수(Replica) 유지
Pod컨테이너 실행 단위컨테이너 포함, Node 위에서 실행최소 배포 단위, 1개 이상의 컨테이너 포함
Node워커 머신(물리/가상)Pod 실행kubelet, kube-proxy, container runtime 동작
  • Deployment는 직접 Pod를 만들지 않고, 항상 ReplicaSet을 통해 Pod를 관리.
  • ReplicaSet은 “현재 Pod 개수 vs 원하는 개수”를 맞춰주는 역할.
  • Pod는 컨테이너 묶음(1개 이상) → 스케줄러가 Node에 할당.
  • Node는 실제 실행 환경 (워커 노드).

예제 yaml (deployment)

동작 과정

  1. Deployment 생성 → replicas: 3 이라는 선언에 맞춰 ReplicaSet 생성.
  2. ReplicaSet은 Pod 3개를 관리 → 개수가 줄면 새로 생성, 많으면 삭제.
  3. Pod는 컨테이너(Nginx)를 실행하는 최소 단위 → 스케줄러가 Node에 배치.
  4. Node는 실제 물리/가상 머신 → kubelet이 Pod를 실행하고 상태 관리.
profile
롱런하는 개발자!

0개의 댓글