06 Jobs CronJobs
Dieses Lab zeigt einen einmaligen Job und einen regelmäßig geplanten CronJob.
Prüfen
kubectl apply --dry-run=client -f manifests/
Ausführung
kubectl apply -f manifests/
kubectl wait --for=condition=complete job/checksum-once -n batch-lab --timeout=60s
kubectl logs -n batch-lab job/checksum-once
kubectl get cronjob,job,pod -n batch-lab
Optional kann der CronJob sofort getestet werden:
kubectl create job manual-cleanup-report \
--from=cronjob/cleanup-report \
-n batch-lab
kubectl wait --for=condition=complete job/manual-cleanup-report -n batch-lab --timeout=60s
kubectl logs -n batch-lab job/manual-cleanup-report
Lernpunkte
Jobeignet sich für einmalige, abschließbare Arbeit.CronJoberzeugt Jobs nach Zeitplan.concurrencyPolicy: Forbidverhindert überlappende Läufe.ttlSecondsAfterFinishedräumt abgeschlossene Jobs später automatisch auf.
Cleanup
kubectl delete namespace batch-lab
Quelle
Orientiert an der offiziellen Kubernetes-Dokumentation zu CronJobs: https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/