Короче говоря: вы можете не видеть все созданные модули, потому что период расписания в cronjob слишком короткий.
Как описано в документации :
Неисправные блоки, связанные с заданием, воссоздаются контроллером задания с экспоненциальной задержкой отката (10 с, 20 с,40-е годы…) ограничено шестью минутами.Счетчик отсрочки сбрасывается, если перед следующей проверкой состояния задания не появилось новых неисправных модулей.
Если новое задание запланировано до того, как контроллер задания сможет воссоздать модуль (учитывая задержкупосле предыдущего сбоя) контроллер заданий снова начинает считать с одного.
Я воспроизвел вашу проблему в GKE, используя следующую команду: .yaml
:
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: hellocron
spec:
schedule: "*/3 * * * *" #Runs every 3 minutes
jobTemplate:
spec:
template:
spec:
containers:
- name: hellocron
image: busybox
args:
- /bin/cat
- /etc/os
restartPolicy: Never
backoffLimit: 6
suspend: false
Это задание не будет выполнено, поскольку файл /etc/os
нене существует.
А вот вывод kubectl describe
для одного из заданий:
Name: hellocron-1551194280
Namespace: default
Selector: controller-uid=b81cdfb8-39d9-11e9-9eb7-42010a9c00d0
Labels: controller-uid=b81cdfb8-39d9-11e9-9eb7-42010a9c00d0
job-name=hellocron-1551194280
Annotations: <none>
Controlled By: CronJob/hellocron
Parallelism: 1
Completions: 1
Start Time: Tue, 26 Feb 2019 16:18:07 +0100
Pods Statuses: 0 Running / 0 Succeeded / 6 Failed
Pod Template:
Labels: controller-uid=b81cdfb8-39d9-11e9-9eb7-42010a9c00d0
job-name=hellocron-1551194280
Containers:
hellocron:
Image: busybox
Port: <none>
Host Port: <none>
Args:
/bin/cat
/etc/os
Environment: <none>
Mounts: <none>
Volumes: <none>
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal SuccessfulCreate 26m job-controller Created pod: hellocron-1551194280-4lf6h
Normal SuccessfulCreate 26m job-controller Created pod: hellocron-1551194280-85khk
Normal SuccessfulCreate 26m job-controller Created pod: hellocron-1551194280-wrktb
Normal SuccessfulCreate 26m job-controller Created pod: hellocron-1551194280-6942s
Normal SuccessfulCreate 25m job-controller Created pod: hellocron-1551194280-662zv
Normal SuccessfulCreate 22m job-controller Created pod: hellocron-1551194280-6c6rh
Warning BackoffLimitExceeded 17m job-controller Job has reached the specified backoff limit
Обратите внимание на задержку между созданием модулей hellocron-1551194280-662zv
и hellocron-1551194280-6c6rh
.