Black Friday · 27 Kasım 2026

Seçili sertifikalarda %90'a varan indirim.

Çok değerli bir kariyer hedefi için tek seferlik fırsat. Sınırlı sayıda kupon, önce bekleme listesine.

Ücretsiz ders · CKAD Hazırlık Programı · Modül 4: Gözlemlenebilirlik ve bakım

Kullanımdan Kalkan API Sürümlerinden Göçmek

APIler takvime göre eskir, daha sert takvime göre kalkar. Erken göçmek sakin yeniden yazımdır; kaldırma anında göçmek olaydır. Bu ders dönüşümü mekanik yapar.

10 dk okuma

Kazanımlar

  • Bildirimlerdeki eski apiVersion değerlerini kümeden önce bulmak
  • Tanımı alan alan yerine geçen sürüme çevirmek
  • Çevrilen nesnenin uygulamada aynı davrandığını doğrulamak
  • Göçü ertelersen kaldırma anında neyin kırılacağını söylemek

Neden önemli

Her Kubernetes küçük sürümü API sürümlerini emekli eder ve kümeler sonunda eskileri düpedüz reddeder. Eski rehberlerden kopya bildirimler artık sunulmayan sürümleri taşır ve arıza en kötü anda düz ret olarak gelir: yükseltmede, geri yüklemede veya saat işleyen sınav görevinde.

Kavramlar

Eskime uyarır, kaldırma reddeder: API sunucusu eski sürümlerde uyarı basar ama sunmaya devam eder; sonraki sürümler tümden kaldırır. kubectl apply --dry-run=server gerçek kümene karşı uyarıları yüzeye çıkarır. Sürüm notları küçük sürüm başına kaldırmaları listeler; sınav ünlüleri bilmeni bekler (Job ve CronJoblar için batch v1, autoscaling v2, PodDisruptionBudget için policy v1), gerisini şema okuyarak çevirirsin.

Dönüşüm mekaniktir: apiVersion değiştir, kubectl explain ile yeni sürümde yeniden adlandırılmış veya yapılandırılmış alanları uyarla, dry-run yap, farkı gör, uygula. Depolama taşıması (kümenin saklanan nesneleri yeniden yazması) yükseltmelerde ayrı olur, yöneticilerin işidir; bildirimlerin sunulan sürümü konuşması yeter.

Uygulamalı örnek

Emekli batch sürümü konuşan eski CronJob, sakince çevrilir:

# bul
grep -rn "batch/v1beta1" manifests/     # şüpheli
# yerine geçen şekli kümenin kendisinden oku
kubectl explain cronjob.spec --api-version=batch/v1 | head -30
# çevir: apiVersion batch/v1, jobTemplate şekilde aynı,
# zamanlama dokunulmaz, sonra yeni dosyayı doğrula
kubectl apply --dry-run=server -f cronjob.yaml
kubectl diff -f cronjob.yaml || true
kubectl apply -f cronjob.yaml
kubectl get cronjob nightly-report -o yaml | grep apiVersion

Kümenin kendi explain çıktısı göç rehberidir: yeni sürümde var olan alanlar yasaldır, olmayanlar yeniden yazım listesidir.

Sınav notları

Sunum uyarıları stderr ve denetim loglarında belirir, uygulama arızası olarak değil: sessizlik onay değildir. Farklı kümeler farklı sürümler sunar; aynı bildirim bir kümede göçer diğerinde kırılır: hep hedefe karşı doğrula. Ve CRDler yerleşiklerdışı bağımsız sürümlenir: onlar için Kubernetes sürüm notlarına değil işleticinin belgelerine bak.

Mini kontrol

4 soruluk öz kontrol. Yanıtların cihazında kalır, saklanmaz ve gönderilmez. Yalnızca geçen skor (ör. 4 soruda 3) kaydedilir ve yalnızca ders ilerlemesinin kilidini açmak için: bir dersin tamamlanmış sayılması için en az 3 doğru gerekir. Hiçbir sertifika değerlendirmesine sayılmaz.

Ders geri bildirimi

Henüz yayında geri bildirim yok.

Geri bildirim yazmak için giriş yap ve dersi tamamla.

Kaynaklar

Alıştırma

Kurgusal bildirim setinde eski bir apiVersion bul, alan alan sunulan sürüme çevir ve uygulamadan önce davranış koruyan olduğunu kanıtlayan dry-run artı diff çıktısını göster.

Geçme kriterleri

Eski sürüm yerine geçeniyle adlandırılmış; çevrilen bildirim dry-run ile geçerli; diff yalnız sürüm düzeyi değişiklikleri gösterir, davranış farkı yoktur.

İlerlemeni kaydetmek için giriş yapÜcretsiz hesap: yalnızca ders ilerlemen ve quiz sonuçların saklanır.