Özet - Job ve CronJob
- Docker & Kubernetes kursu
- İleri seviye
- Ders 30/70
- 5 dk
Job ve CronJob YAML'ı birleştirerek zamanlanmış görev yazarsın.
Özet: Job ve CronJob
Bu grupta:
- Job işi sonuna kadar çalıştırır;
restartPolicyNever/OnFailure,backoffLimitdeneme sınırıdır. activeDeadlineSecondssüreyi,ttlSecondsAfterFinishedtemizliği yönetir;kubectl wait --for=condition=completebekler.completions/parallelismçoklu ve paralel çalıştırma;Indexedmod parça başına indeks verir.- CronJob takvime göre Job oluşturur: cron biçimi,
timeZone,jobTemplate. concurrencyPolicyçakışmayı, geçmiş sınırları eski Job'ları yönetir;create job --from=cronjob/elle tetikler.
kubectl create job goc --from=cronjob/gece-yedek
kubectl wait --for=condition=complete job/goc --timeout=300sUygulama Sınırlı ve temizlenen Job
Bir Job'un spec bölümünü yaz (spec: ile başlayarak): backoffLimit: 2, activeDeadlineSeconds: 600, ttlSecondsAfterFinished: 3600; şablonda restartPolicy: OnFailure; container adı rapor, image api:1.0.
Başlangıç kodu
# buraya yazÖrnek çözüm
spec:
backoffLimit: 2
activeDeadlineSeconds: 600
ttlSecondsAfterFinished: 3600
template:
spec:
restartPolicy: OnFailure
containers:
- name: rapor
image: api:1.0Beklenen çıktı
job.batch/rapor created
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Job pod şablonunda restartPolicy: Always yazarsan ne olur?
- Job Deployment gibi çalışır
- Yok sayılır
- API sunucusu reddeder Doğru cevap
- Job hiç bitmez
Açıklama: Job'larda yalnızca Never ve OnFailure geçerlidir.
2 Takvimin saat dilimini ver.
spec:
schedule: "0 3 * * *"
____: "Europe/Istanbul"
spec:
schedule: "0 3 * * *"
timeZone: "Europe/Istanbul"
Açıklama: timeZone IANA saat dilimi adı alır.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
Job |
Bir kez, bitene kadar |
CronJob |
Takvime göre |
backoffLimit |
Deneme |
suspend |
Geçici durdur |