본문 바로가기
[GPUaaS]/Prometheus

[NCP 실전] kubectl rollout restart statefulset prometheus-k8s -n monitoring 의미

by METAVERSE STORY 2026. 1. 14.
반응형

 

 

 


🔍 명령어 원문

 
kubectl rollout restart statefulset prometheus-k8s -n monitoring

이 한 줄이 의미하는 것은:

“Prometheus 서버를 무중단 방식으로 재시작해서
새로운 AlertRule, ConfigMap, Secret 설정을 반영해라”

이다.

 

 

 


1️⃣ 이 명령이 왜 필요한가?

Prometheus는 다음 설정을 시작할 때만 로딩한다.

설정
AlertRule gpu-aas-alerts.yaml
ConfigMap 알람 규칙
Secret Slack, Email, Thanos
ruleSelector gpu-alerts

ConfigMap을 수정해도
Prometheus는 메모리 안에 옛 설정을 쓰고 있음.

그래서:

“파일은 바뀌었는데 Prometheus는 모르고 있음”

→ 이 상태를 해결하는 게 rollout restart

 

 

 


2️⃣ 왜 delete pod가 아니라 rollout restart 인가?

Prometheus는 StatefulSet으로 운영됨

방식 결과
pod 삭제 강제 종료 → 데이터 손실 위험
rollout restart 안전한 순서 재시작

rollout restart는 내부적으로:

 
prometheus-k8s-0 종료 → 새 prometheus-k8s-0 생성 → 설정 다시 로딩 → 기존 데이터 유지

즉,
TSDB(시계열 데이터) 보존 + 설정 갱신

 

 

 


3️⃣ 이게 GPUaaS에서 중요한 이유

GPUaaS 알람은:

상황 의미
GPU hang 학습 중단
Pod Pending 고객 불만
GPU Idle 돈 낭비

AlertRule을 수정했는데
Prometheus가 reload 안 하면:

“장애가 나도 알람이 안 옴”

→ 운영사고

그래서 변경 후 반드시:

 
kubectl rollout restart statefulset prometheus-k8s -n monitoring

 

 

 

 


4️⃣ 실제로 무슨 일이 일어나나?

실행하면 내부적으로:

 
1. Prometheus Pod 종료
2. 새 Pod 생성
3. ConfigMap 다시 읽음
4. AlertRule 다시 로딩
5. 알람 평가 재시작
 
 
 
 

확인:

 
kubectl get pods -n monitoring -w

보면:

 
prometheus-k8s-0   Terminating
prometheus-k8s-0   Running
 
 
 

 

 

 


5️⃣ 언제 이걸 실행해야 하나?

아래 중 하나라도 바꿨다면 반드시 실행:

변경한 것
AlertRule gpu-aas-alerts.yaml
Alertmanager Slack / Email
Thanos S3 설정
Prometheus 설정 ruleSelector, scrape

 

 

 


🎯 요약

이 명령은:

“GPUaaS의 심장(Prometheus)을
새 규칙으로 다시 부팅하는 안전한 방법”

이다.

 

 

 

반응형

댓글