Ücretsiz ders · CKA Hazırlık Programı · Modül 3: İş yükleri ve zamanlama
Job ve CronJobları Tamamlanana Koşturmak
Toplu iş bitmeli ve durmalı. Joblar bu sözleşmeyi tamamlanma sayıları, yeniden deneme bütçeleri ve sürelerle üstlenir; CronJoblar saati ekler. CKA açısı işletimseldir: koştuğunu kanıtla, etki alanını sınırla, geçmişi okunur tut.
10 dk okuma
Kazanımlar
- Sonlu işte Deployment yerine Job seçmek ve seçimi savunmak
- Toplu işe uygun completions, parallelism, backoffLimit ve süre ayarlamak
- Akıllı geçmiş limitli yinelenen toplu işleri zamanlamak
- Tamamlanmayı sessizlikten değil iş durumu artı pod loglarıyla kanıtlamak
Neden önemli
Taşımalar, dışa aktarımlar ve temizlikler her kümede koşar; Deployment içinde park etmek önemli tek sinyali gizler: bitti mi. Joblar tamamlanmayı API durumu olarak yüzeye çıkarır; izleme, alarm ve sınav soruları aynı gerçeği okur. Yeniden deneme bütçeleri artı süreler kötü toplu işin geceyi yakmasını engeller.
Kavramlar
Job başarı sayısı completions değerine ulaşınca tamamlanır; aynı anda en fazla parallelism pod koşar. backoffLimit Job tümden başarısız sayılmadan pod yeniden denemelerini sınırlar; activeDeadlineSeconds toplam geçen süreyi sınırlar. restartPolicy Never veya OnFailure olmalı. ttlSecondsAfterFinished biten Jobları otomatik temizler; geçmiş sonsuz birikmez.
CronJoblar aynı Job şablonunu schedule artı saat dilimine sarar. concurrencyPolicy çalışmalar çakışınca Allow, Forbid veya Replace seçer. Geçmiş sınırları saklanan Jobları bağlar; suspend: true hiçbir şeyi silmeden saati duraklatır; olay sırasında gürültülü zamanlamayı susturmanın güvenli yoludur.
Uygulamalı örnek
Paralel dışa aktarım, dört parça, aynı anda en fazla iki, iki yeniden deneme, en fazla bir saat, bir günde otomatik temizlik:
apiVersion: batch/v1
kind: Job
metadata:
name: export-2026-10-12
spec:
completions: 4
parallelism: 2
backoffLimit: 2
activeDeadlineSeconds: 3600
ttlSecondsAfterFinished: 86400
template:
spec:
restartPolicy: OnFailure
containers:
- name: export
image: exporter:1.0
command: ["sh", "-c", "export-shard $JOB_COMPLETION_INDEX"]kubectl wait --for=condition=complete job/export-2026-10-12 --timeout=600s bitene kadar bekler ve kubectl logs -l job-name=export-2026-10-12 dört parçayı birden okur. Tamamlanma artı log kanıttır; sessiz küme değil.
Sınav notları
Tamamlanmalar başarılı podları sayar, denemeleri değil: yeniden denemeler hedefi şişirmez. Tamamlanma üstü paralellik boşa bekler. Ve dizinli kip (completionMode: Indexed) her poda parça numarasını verir; gerçek yelpaze toplu işler kuyruksuz dilimini böyle adresler.
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 6 parçalı taşıma için 3erli koşan, 3 kez yeniden deneyen, 30 dakika süreli Job yaz; sonra altı parçanın da bittiğini kanıtlayan iki komutu ver, çıktıların nerede yaşadığını da söyle.
Geçme kriterleri
Completions 6, parallelism 3, backoffLimit 3, süre 1800 mevcut; kanıt wait-for-complete artı etiket seçili loglardır ve çıktı doğru okunur.