我想在我的本地时区(GMT+7)中调度kubernetes cron作业,目前,当我在k8s中调度cron作业时,我需要在UTC中调度,但我想在本地时区(如Kubernetes文件中指定的那样)计划,我需要在kubernetes管理器中更改时区,如下所示
所有CronJob时间表:时间是基于库贝控制器经理的时区. 如果您的控制飞机在Pods或裸容器中运行kube控制器管理器,则kube控制器管理器容器的时区设置确定cron作业控制器使用的时区。
但是我找不到一种为kube控制器管理器设置时区的方法,我在- /etc/kubernetes/manifests/kube-controller-manager.yaml中找到了控制器管理器清单文件,但是找不到改变它的时区的方法或文档。
发布于 2021-08-31 19:25:05
spec:
schedule: "CRON_TZ=America/New_York */5 * * * *"spec:
schedule: "CRON_TZ=Etc/UTC */5 * * * *"通过“意外实现”,时区支持被添加到kubernetes cron调度程序中。
版本1.22(下一个版本)
注: v1.22应于2021年10月/11月年底前发布。
发布于 2020-11-07 00:09:15
它使用系统时区,不管它是什么。现在,几乎所有的服务器映像都默认为UTC,但是运行date +"%Z %z"来检查。还请记住,如果您在容器中运行kcm,那么真正重要的是容器中的本地时间,而不是主机OS。您将如何更改它取决于您的操作系统,通常它要么是系统中的东西,要么是从/etc/localtime到右tzdata文件的符号链接。
我不建议这么做。
发布于 2022-09-29 03:39:38
现在,如果使用Kubernetes版本1.25可以使用字段timeZone为CronJob指定时区。
spec:
timeZone: "Asia/Bangkok"
schedule: "0 17 * * *"但是,如果Kubernetes版本< 1.25和>= 1.21,则可以按照schedule字段修复时区。
spec:
schedule: "CRON_TZ=Asia/Bangkok 0 17 * * *"正式文件:https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#time-zones
TimeZone列表:list.html
https://stackoverflow.com/questions/64721870
复制相似问题