2026. 2. 21. 14:53ㆍk8s
Kubernetes에서 실행 중인 Pod의 이미지를 변경하면 어떤 일이 발생할까?
이번 글에서는 kubectl set image 명령어를 통해
Pod의 이미지를 변경하고, 컨테이너가 재시작되는 과정을 직접 확인해본다.
📌 기본 개념
Pod의 spec.containers[].image 필드는 변경 가능하다.
이미지를 변경하면 Kubernetes는:
- 기존 컨테이너 종료
- 새로운 이미지 Pull
- 컨테이너 재생성
과정을 수행한다.
중요한 점은:
Pod 자체가 삭제되는 것이 아니라
컨테이너만 재생성된다.
1️⃣ 현재 Pod 상태 확인
먼저 nginx Pod가 실행 중이라고 가정한다.
kubectl get po nginx
출력 예시:
NAME READY STATUS RESTARTS AGE
nginx 1/1 Running 0 3m
RESTARTS 값이 현재 재시작 횟수다.
2️⃣ 이미지 변경
nginx 이미지를 1.24.0 버전으로 변경해보자.
kubectl set image pod/nginx nginx=nginx:1.24.0
명령어 형식:
kubectl set image POD/이름 컨테이너이름=이미지:태그
3️⃣ 이벤트 확인
이미지 변경 후 다음 명령어로 상세 정보를 확인한다.
kubectl describe po nginx
하단 Events 부분에 다음과 같은 로그가 나타난다.
Normal Killing Container definition changed, will be restarted
Normal Pulling Pulling image "nginx:1.24.0"
Normal Pulled Successfully pulled image
Normal Created Created container
Normal Started Started container
이 로그는 다음을 의미한다:
- 기존 컨테이너 종료
- 새 이미지 다운로드
- 새 컨테이너 생성 및 시작
4️⃣ RESTARTS 증가 확인
실시간으로 변화를 확인하려면:
kubectl get po nginx -w
잠시 후 RESTARTS 값이 증가한다.
NAME READY STATUS RESTARTS AGE
nginx 1/1 Running 1 4m
이 값은 컨테이너 재시작 횟수를 의미한다.
📌 이미지 변경 확인 방법
현재 사용 중인 이미지를 직접 확인할 수도 있다.
kubectl get po nginx -o jsonpath='{.spec.containers[].image}{"\n"}'
출력 예:
nginx:1.24.0
🔍 동작 원리 정리
이미지를 변경하면 Kubernetes는 다음 순서로 동작한다.
- Pod의 스펙 변경 감지
- kubelet이 기존 컨테이너 종료
- 새로운 이미지 Pull
- 새 컨테이너 생성
- RESTARTS 값 증가
Pod는 그대로 유지되고, 내부 컨테이너만 교체된다.
⚙ 운영에서 알아둘 점
이번 실습은 단일 Pod 기준이다.
운영 환경에서는 보통:
- Deployment
- StatefulSet
을 사용한다.
이 경우에는 컨트롤러가 새로운 Pod를 생성하여 점진적으로 교체하는 방식으로 동작한다.
Standalone Pod와는 동작 방식이 다르다.
🏁 정리
Pod의 이미지를 변경하면:
- 컨테이너가 종료되고
- 새 이미지가 Pull되며
- 컨테이너가 재생성되고
- RESTARTS 값이 증가한다.
이 과정을 이해하면
컨테이너 재시작 로그 분석이나 운영 중 장애 대응 시 도움이 된다.
'k8s' 카테고리의 다른 글
| 📜 kubectl logs --previous 완전 정리 (컨테이너 재시작 로그 확인 방법) (0) | 2026.02.21 |
|---|---|
| 🔍 kubectl run에서 sh가 필요할 때와 필요 없는 이유 (0) | 2026.02.21 |
| 📦 Kubernetes ResourceQuota 완전 정리 (Namespace 리소스 제한) (0) | 2026.02.21 |
| Grafana에서 Minecraft 로그를 INFO/WARN/ERROR로 분리하기 (Data Stream + Pipeline + Kafka Connect) (0) | 2026.02.14 |
| Grafana+Metricbeat 대시보드 구성과 디스크 사용량 불일치 해결 정리 (0) | 2026.02.14 |