如何在ansible cron中设置时区?

问题描述 投票:0回答:1

我有一个设置 cron 作业的 Ansible 文件。由于项目的结构,我们不使用 cron.conf 文件。我们需要每天在特定时间为 AWS 中的不同 ec2 实例运行作业两次。然而,当时钟向前和向后移动时,就会引起问题。我想确保 cron 作业可以在时钟发生变化时进行,而无需重新配置 cron 作业。 我知道 CRON_TZ 变量,但是如果没有 cron.conf 文件,我不确定可以在哪里插入该变量。该项目使用 Ansible Cron 模块,以下链接中列出的参数未列出 CRON_TZ 参数部分(https://docs.ansible.com/ansible/latest/collections/ansible/builtin/cron_module。 html)。关于如何解决此限制有什么建议吗?

为 CRON 作业设置的 Yaml 任务:

- name: Set-up cron jobs
  cron:
    name: "{{ item.name }}"
    user: "{{ item.username }}"
    minute: "{{ item.time.split(' ')[0] }}"
    hour: "{{ item.time.split(' ')[1] }}"
    day: "{{ item.time.split(' ')[2] }}"
    month: "{{ item.time.split(' ')[3] }}"
    weekday: "{{ item.time.split(' ')[4] }}"
    job: "{{ item.job }}"
    state: "{{ item.state }}"
  with_items: "{{jobs}}"
  notify: "restart cron"

谢谢你:)

amazon-web-services automation ansible cron cron-task
1个回答
0
投票

该项目使用Ansible

cron
模块,以下链接中列出的参数没有列出
CRON_TZ
参数的部分。

某些 Linux 发行版可以 将 TimeZone 与 cron tab 一起使用,对于基于 Red Hat 的发行版,根据 我在哪里可以设置 crontab 将使用的环境变量?,情况可能并非如此。这可能就是为什么没有这样的参数或选项的原因。

关于如何解决此限制有什么建议吗?

也许随后在第二个任务中使用其他模块配置它,例如

lineinfile

© www.soinside.com 2019 - 2024. All rights reserved.