ansible创建工作cronjobs

mal*_*roy 10 cron ansible

我想在数据挖掘的同时在各种服务器上设置cronjobs.我也已经按照Ansible和crontabs中的步骤进行操作,但到目前为止还没有任何效果.无论我做什么,我收到错误信息:

ERROR: cron is not a legal parameter at this level in an Ansible Playbook
Run Code Online (Sandbox Code Playgroud)

我有:Ansible 1.8.1

由于某些未知原因,我的模块位于: /usr/lib/python2.6/site-packages/ansible/modules/

我想知道我必须遵循哪些精确步骤让Ansible在crontab文件中安装新的cronjob.

  1. 一个剧本如何精确地安装cronjob?
  2. 启动此剧本的命令行是什么?

我问这个奇怪的问题,因为cron的文档不够,而且示例不起作用.也许我的安装也是错误的,我想用cron的一个工作示例来测试.

Ali*_*man 17

我在./roles/cron/tasks/main.yml文件中得到(非常类似):

- name: Creates weekly backup cronjob
  cron: minute="20" hour="5" weekday="sun"
        name="Backup mysql tables (weekly schedule)"
        cron_file="mysqlbackup-WeeklyBackups"
        user="root"
        job="/usr/local/bin/mysqlbackup.WeeklyBackups.sh"
  tags:
    - mysql
    - cronjobs
Run Code Online (Sandbox Code Playgroud)

'job'中列出的shell脚本是在main.yml文件中稍早创建的.

此任务将在/etc/cron.d/mysqlbackup-WeeklyBackups中创建一个文件:

#Ansible: Backup mysql tables (weekly schedule)
20 5 * * sun root /usr/local/bin/mysqlbackup.WeeklyBackups.sh
Run Code Online (Sandbox Code Playgroud)

  • `crontabs -l`只能查找'/ var/spool/cron/crontabs/{username}'. (4认同)

小智 5

---
- hosts: servers
  tasks:
   - name: "Cronjob Entry"
     cron:
      name: "### recording mixing/compressing/ftping scripts"
      minute: 0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57
      hour: "*"
      day: "*"
      month: "*"
      weekday: "*"
      job: /usr/share/astguiclient/AST_CRON_audio_1_move_mix.pl
Run Code Online (Sandbox Code Playgroud)

我也低于输出。

#Ansible: ### recording mixing/compressing/ftping scripts
0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /usr/share/astguiclient/AST_CRON_audio_1_move_mix.pl
Run Code Online (Sandbox Code Playgroud)

  • 顺便说一句,您可以简单地将 */3 用于分钟部分。 (4认同)