Ansible 批量100台服务器添加 Crontab
Ansible
是使用 Python 开发的自动化运维工具。它可以配置管理,部署软件并编排更高级的任务,例如持续部署或零停机滚动升级。Ansible 可以用来管理 crontab。Crontab
是一个用于在 Unix 和 Unix-like 操作系统上执行定期任务的工具,它允许用户在预定的时间间隔内自动运行命令或脚本。Crontab 是 Cron Table 的缩写,Cron 是一个用于定时执行任务的守护进程。为什么需要用 Ansible 管理 crontab
crontab -e
手动对 cron 任务进行管理,通常的任务就是备份与同步。但是随着要管理的机器和需要定义的脚本内容越来越复杂,手工编辑 crontab 就无法维护了。安装 Ansible
sudo apt install ansible
创建 crontab 条目
--- - name: Manage crontab hosts: your_target_hosts tasks: - name: Add crontab entry cron: name: "rsync backup" minute: "0" hour: "2" job: "/path/to/your/backup_script.sh"
your_target_hosts
是你要管理 crontab 的目标主机的列表。name
字段是 crontab 条目的名称,minute
和 hour
字段是定时任务的执行时间,job
字段是要执行的脚本或命令。crontab.yml
),然后运行以下命令来执行 playbook:修改和删除 crontab 条目
cron
模块的 state
参数。以下是一个示例 playbook 文件,演示如何修改和删除 crontab 条目:--- - name: Manage crontab hosts: your_target_hosts tasks: - name: Modify crontab entry cron: name: "My cron job" minute: "30" hour: "3" job: "/path/to/your/updated_script.sh" state: present - name: Remove crontab entry cron: name: "My cron job" state: absent
state: present
表示修改 crontab 条目,state: absent
表示删除 crontab 条目。保存以上内容到一个 YAML 文件,然后运行 ansible-playbook
命令来执行 playbook。微信赞赏
支付宝赞赏
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。