📜  SaltStack-将Cron与Salt结合使用(1)

📅  最后修改于: 2023-12-03 15:19:54.853000             🧑  作者: Mango

SaltStack - 将Cron与Salt结合使用

介绍

在SaltStack配置管理工具中,Cron可以被使用来安排执行一个或多个命令的定期任务。通过结合Cron和SaltStack,您可以通过SaltStack管理设备,同时也能够定期执行您想要的命令。

步骤
  1. 确保SaltStack Master和Minion之间的连接已建立,以便管理现有设备。
  2. 编写命令或bash脚本以执行您的任务。 在命令或脚本中包括确保相应的环境变量可用并且命令可在Minion上运行的适当命令路径。
#!/bin/bash
source /etc/profile
source ~/.bash_profile
/usr/local/bin/command arg1 arg2
  1. 在SaltStack Master上创建一个名为cron.sls的文件,用于描述要定期执行的Salt模块。
crontab:
  cron.present:
    - name: 'my-cron-job'
    - user: 'root'
    - hour: '0'
    - minute: '0'
    - daymonth: '*'
    - month: '*'
    - dayweek: '*'
    - cmd: '/bin/bash /root/scripts/my-cron-task.sh'
  1. 在文件/etc/salt/master中添加一个Cron作业的定位目录。 请确保在添加此目录时包含原觉察的行末符。
file_roots:
  base:
    - /srv/salt
    - /srv/cron
  1. 在Minion上运行salt-call state.sls cron以安装Cron作业。您还可以通过运行salt 'minion' state.sls cron,将修改应用于其他Minion,其中'minion'是Minion的名称。
总结

通过将Cron与SaltStack结合使用,您可以通过SaltStack管理和执行命令,并且可以使用Cron定期运行这些命令。 请确保在编写脚本和定期执行时使用正确的环境变量,并且在将任务提交给Salt Master之前使用正确的命令路径进行测试。