Dünyanın en detaylı ücretsiz FDE + DevOps kütüphanesi: 140 üzeri ders, 70 üzeri lab ve 80 uzun yazı, İngilizce ve Türkçe. Öğrenmeye başla →

DevOps Practitioner · Modül 1: Kubernetes workload management · Lab

CrashLoopBackOffun Config Nedenini Bul

45 dk uygulama · Temel

Sahip olduğun makinede yerel KinD veya k3d kümesi; bu lab için demo alanı.

Yerel kılavuz: aşağıdaki adımları kendi makinende sırayla uygula, sonra doğrulama listesini kontrol et.

Kazanımlar

  • Poddan ReplicaSete ve Deploymenta sahiplik zincirini yürümek
  • Olay ve kayıt metninden imaj, komut ve config nedenlerini ayırmak
  • Config nedenini manifestte düzeltip kararlı çalışan pod göstermek
  1. Adım 1

    Bozuk denemeyi kur

    Bunu broken.yaml olarak kaydet ve uygula (kubectl apply -f broken.yaml -n demo). Arıza bilinçlidir: uygulama /etc/app/config.yaml ister ama birim ConfigMapi /etc/wrong altına bağlar. Podun CrashLoopBackOffa girdiğini izle, artan yeniden başlatma sayısını kaydet. Sıfırlama: kubectl delete -f broken.yaml -n demo. Denek: apiVersion apps/v1 Deployment web-broken, bir replika, busybox:1.36, komut sh -c cat /etc/app/config.yaml && sleep 3600, config-vol birimi /etc/wrong altında ConfigMap app-configten (anahtar config.yaml: mode=prod). Beklenen hata: cat: /etc/app/config.yaml: No such file or directory.

  2. Adım 2

    Sahiplik zincirini izle

    Poddan ReplicaSete giden sahiplik kaydını, oradan Deploymenta oku. Olay metnini ve son kayıt satırlarını alıntıla; neden sınıfını adlandır: imaj çekiliyor, komut başlıyor, gereken dosya yok.

  3. Adım 3

    Manifesti düzelt ve kararlılığı kanıtla

    broken.yaml dosyasını fixed.yaml olarak kopyala, mountPath yolunu /etc/app yap, dosyadan yeniden uygula (canlı düzenlemeyle değil); yeni podun iki dakika sıfır yeniden başlatmayla çalıştığını göster (kubectl get pods -n demo -w). Doğrulama: kubectl exec -n demo deploy/web-broken -- cat /etc/app/config.yaml çıktısı mode=prod verir. Bozuk ve düzeltilmiş manifesleri teslim çifti olarak sakla.

Çalıştığını nasıl doğrularsın

  • Poddan ReplicaSete ve Deploymenta sahiplik zinciri alıntılanmış
  • Neden sınıfı yeniden başlatmadan, olay artı kayıt kanıtıyla adlandırılmış
  • Düzeltilmiş pod gözlem penceresinde sıfır yeniden başlatmayla çalışıyor
  • Bozuk ve düzeltilmiş manifesler teslim çifti olarak saklanmış