我有一个设置 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"
谢谢你:)
模块,以下链接中列出的参数没有列出cron
参数的部分。CRON_TZ
某些 Linux 发行版可以 将 TimeZone 与 cron tab 一起使用,对于基于 Red Hat 的发行版,根据 我在哪里可以设置 crontab 将使用的环境变量?,情况可能并非如此。这可能就是为什么没有这样的参数或选项的原因。
关于如何解决此限制有什么建议吗?
也许随后在第二个任务中使用其他模块配置它,例如
lineinfile
。