首页/云/Kubernetes 速查/CronJob 时区设置 spec.timeZone

CronJob 时区设置 spec.timeZone

较新版本支持为 CronJob 指定 IANA 时区(如 Asia/Shanghai),不再依赖控制面节点时区,跨时区调度更可控。

Kubernetes 速查云更新于 2026-10-12

配置

配置
spec:
  schedule: "0 9 * * 1-5"
  timeZone: "Asia/Shanghai"    # 工作日 09:00(上海时间)

验证

验证
kubectl get cronjob backup -o jsonpath='{.spec.timeZone}'
kubectl describe cronjob backup | grep -i -A2 schedule
kubectl get events -A | grep -i cronjob | tail -10
不设 timeZone 时使用 kube-controller-manager 的本地时区(常见为 UTC),部署前核对现有集群行为。

易错点

  • 旧版本集群遇到 timeZone 字段会校验失败(unknown field),升级后再用
  • 夏令时地区(如 America/New_York)的跳变时点属于已知复杂场景,验证后再上生产

数据来源与参考

  • Kubernetes 官方文档 · CronJob(Time zones)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌