Kubernetes Pod
Kubernetes의 최소 배포 단위. 하나 이상의 컨테이너가 네트워크와 스토리지를 공유하는 논리 호스트. 컨테이너는 격리 단위, Pod는 배포 단위. 사이드카 패턴(로깅, 프록시)이 Pod의 다중 컨테이너를 활용. `CrashLoopBackOff`: 컨테이너가 ...
sys.entry
M
Me
hyunyoun's Blog
software-engineering-devops1 min read
Kubernetes Pod
Kubernetes의 최소 배포 단위. 하나 이상의 컨테이너가 네트워크와 스토리지를 공유하는 논리 호스트.
핵심 특성
- 같은 네트워크 네임스페이스: Pod 내 컨테이너들은
localhost로 통신 - 같은 스토리지 볼륨: 공유 Volume 마운트 가능
- 원자적 스케줄링: Pod 전체가 하나의 노드에 배치됨
- 일시적(Ephemeral): Pod는 재시작이 아닌 교체(replace)됨
Pod vs Container
컨테이너는 격리 단위, Pod는 배포 단위. 사이드카 패턴(로깅, 프록시)이 Pod의 다중 컨테이너를 활용.
CODE
spec:
containers:
- name: app
image: myapp:latest
- name: sidecar-proxy
image: envoy:latest # 같은 네트워크로 app과 통신라이프사이클
CODE
Pending → Running → Succeeded/Failed
CrashLoopBackOff: 컨테이너가 반복 실패 시 기하급수적 백오프로 재시작 대기.
Pod를 직접 쓰지 않는 이유
Pod 단독 사용 시 노드 장애에서 자동 복구 불가. 실제 운영에서는 Deployment/StatefulSet/DaemonSet 같은 상위 추상화 사용:
연결 노트
- ZK-Container-Isolation — Pod는 컨테이너 격리 위에 구축
- ZK-Zero-Trust-Security — Network Policy로 Pod 간 트래픽 제어