CodeBlanks Logo Icon CodeBlanks

kubectl describe pod

Pod sorunlarını describe ile incelemeyi öğrenirsin.

kubectl describe pod

Pod hiç başlamıyorsa log da yoktur; cevap describe çıktısının Events bölümündedir. Sık görülen nedenler:

Events:
  Warning  Failed     kubelet  Failed to pull image "api:1.1": not found
  Warning  BackOff    kubelet  Back-off pulling image "api:1.1"          # ImagePullBackOff
  Warning  FailedScheduling  default-scheduler  0/3 nodes are available: 3 Insufficient memory.
  Warning  FailedMount  kubelet  configmap "api-ayar" not found
  Warning  Unhealthy  kubelet  Readiness probe failed: HTTP probe failed with statuscode: 503

Olayları süzmek

Olaylar yaklaşık bir saat saklanır. Yalnızca uyarıları ya da belirli bir nesneyi görmek için süzülür:

kubectl get events --field-selector type=Warning
kubectl get events --field-selector involvedObject.name=api-xyz
kubectl describe pod api-xyz | sed -n '/Events/,$p'
kubectl get pod api-xyz -o jsonpath='{.status.containerStatuses[0].state}'

Uygulama Olaylardan nedeni bul

Üç komut yaz: api-xyz pod'unu ayrıntılı göster; yalnızca Warning türündeki olayları listele; yalnızca api-xyz nesnesine ait olayları involvedObject.name ile listele.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
kubectl describe pod api-xyz
kubectl get events --field-selector type=Warning
kubectl get events --field-selector involvedObject.name=api-xyz

Beklenen çıktı

Name:         api-xyz
Status:       Pending
Events:
  Warning  Failed  kubelet  Failed to pull image "api:1.1": not found
LAST SEEN   TYPE      REASON   OBJECT        MESSAGE
2m          Warning   Failed   pod/api-xyz   Failed to pull image "api:1.1": not found

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 ImagePullBackOff durumunun en yaygın nedenleri nelerdir?

  • Bellek yetersizliği
  • Uygulama hatası
  • Yanlış port
  • Yanlış image adı/etiketi ya da özel registry için eksik imagePullSecrets Doğru cevap

Açıklama: Olaydaki "not found" ya da "unauthorized" ayrımı nedeni gösterir.

2 Yalnızca uyarı olaylarını göster.

Soru
kubectl get events --field-selector type=____
Cevap
kubectl get events --field-selector type=Warning

Açıklama: Olay türleri Normal ve Warning'dir.

3 Olayları eşleştir.

Kavram Anlamı
Failed to pull image Image çekilemedi
Insufficient memory Node'da yer yok
configmap not found Eksik ayar
Readiness probe failed Hazır değil

Orta seviye bölümündeki tüm dersler