Задание Kubernetes cron выполняется на 1 минуту раньше

У меня есть кластер kubernetes, который установлен в часовом поясе "EST", если я вижу описание задания, которое, скажем, выполнено в "вс, 2 февраля 2020 г., 19:01:09 -0500", и мое выражение cron говорит расписание: "1 0 * * *" " то есть каждый день в 12:01 минут, как я вижу ниже. Задание также началось в то же время, но в часовом поясе EST.

Parallelism:              1
Completions:              1
Start Time:               Sun, 02 Feb 2020 19:01:09 -0500
Completed At:             Sun, 02 Feb 2020 19:01:24 -0500
Duration:                 15s
Active Deadline Seconds:  30s
Pods Statuses:            0 Running / 1 Succeeded / 0 Failed

Но когда я вижу журналы Pod, то есть показывающие, что он запускался за 1 минуту до расписания

 2020-02-02 23:59:51,154 INFO TestMetrics - Daily Job : TestMetrics  Daily Job Script Started - V1.0.0

Я хочу пояснения ниже?

  1. Всегда ли POD работает в часовом поясе UTC? если часовой пояс главного и рабочего узла настроен как EST
  2. Почему задание было выполнено на 1 минуту раньше запланированного?

Версия для Linux:

3.10.0-514.el7.x86_64

Версия Kubectl

Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.1", GitCommit:"eec55b9ba98609a46fee712359c7b5b365bdd920", GitTreeState:"clean", BuildDate:"2018-12-13T10:39:04Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.12", GitCommit:"a8b52209ee172232b6db7a6e0ce2adc77458829f", GitTreeState:"clean", BuildDate:"2019-10-15T12:04:30Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"linux/amd64"}

person Pandit Biradar    schedule 03.02.2020    source источник


Ответы (2)


  1. Всегда ли POD работает в часовом поясе UTC? если часовой пояс главного и рабочего узла настроен как EST

Все времена CronJob schedule: основаны на часовом поясе мастера, на котором запускается задание. Более подробную информацию можно найти в официальной документации.

  1. Почему задание было выполнено на 1 минуту раньше запланированного?

Выражение cron, которое вы нам показали, неверно. Должен быть:

  • 0 1 12 ? * * *, если задание должно запускаться через 1 минуту после полудня, или

  • 0 1 0 ? * * * если задание должно запускаться через 1 минуту после полуночи

Я надеюсь, что это помогает.

person Wytrzymały Wiktor    schedule 04.02.2020
comment
Спасибо за комментарий, проблема в том, что POD всегда работает с часовым поясом UTC, а не с часовым поясом главного узла, я поднял проблему с github для того же github.com/kubernetes/website/issues/19003 - person Pandit Biradar; 20.02.2020

Документ Kubernetes обновлен для этого https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/

person Pandit Biradar    schedule 15.03.2020