KUBERNETES OPERATIONS LAB

Kubernetes

까먹지 않기 위한 쿠버네티스 운영 노트

4개 장애 시나리오 · 8개 명령어
SIGNAL · Pending

Pod가 스케줄링되지 않는다

이미지보다 먼저 scheduler 이벤트를 본다. 리소스 부족, affinity, taint, PVC 바인딩을 순서대로 좁힌다.

확인 순서

  1. 이벤트FailedScheduling 메시지와 반복 횟수를 확인한다.
  2. 배치 조건requests, nodeSelector, affinity, toleration을 비교한다.
  3. 스토리지PVC가 Pending이면 StorageClass와 provisioner 이벤트를 확인한다.

진단 명령어

kubectl describe pod <pod> -n <ns>
kubectl get events -n <ns> --sort-by=.lastTimestamp
kubectl get nodes -o custom-columns=NAME:.metadata.name,TAINTS:.spec.taints
kubectl get pvc -n <ns>
운영 메모requests를 낮추거나 toleration을 추가하기 전에 왜 해당 제약이 설정됐는지 먼저 확인한다.