SaltStack – 将 Cron 与盐一起使用
SaltStack – 将 Cron 与盐一起使用
Salt 可以与Cron应用程序一起使用。一起使用这两个应用程序提供了自动化 Salt 的绝佳机会。虽然 Salt 提供了远程执行命令的选项,但 Cron 使其能够以预先安排或自动的方式运行。让我们在本章中学习如何一起使用 Cron 和 Salt。
什么是克朗?
Cron 是 Linux 环境中非常有用的应用程序。它允许预设命令或脚本以在特定日期和时间运行。它还允许定期运行应用程序,例如每天、每周或每个月的第一天。
Cron 在系统启动时启动并检查/etc/crontab文件以获取配置详细信息。/etc/crontab 将每个应用程序及其时间表放在单独的一行中,如下所示。
15 * * * * root echo "This command runs at 15 minutes past every hour" 15 10 * * * root echo "This command is run daily at 10:15 am"
每行有以下七个入口点,以空格分隔,如下所示 –
-
分钟– 一小时的分钟,介于“0”和“59”之间。
-
小时– 小时,以 24 小时制指定。
-
day_of_month – 月份中的第几天,介于 1 到 31 之间。例如,10th 每个月是 10。
-
月– 指定的月份并以数字(0-12)或月份的名称(例如五月)指定。
-
day_of_week – 星期几以数字(0-7)或一天的名称(例如太阳)指定。
-
user – 命令运行的用户帐户。
-
cmd – 实际命令及其参数。
在这里,如果没有指定任何内容,则替换为 *。
盐调用者(salt-call)
Salt 提供了一个 CLI(命令行界面),salt-call在本地 minion 系统本身而不是使用 salt 命令从主服务器运行模块。salt call CLI 支持 salt 命令支持的所有选项,但在本地运行。
Salt Caller 最初旨在支持调试,但现在,它可以用作独立应用程序。
salt-call test.ping
在 cron 中使用 salt-call
salt-call CLI 可用于使用 Cron 调度 salt 操作。例如,要每天在午夜检查 minion 的状态,我们可以使用 salt-call 和选项 – state.apply ,如下所示。
/etc/crontab
PATH = /bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/opt/bin 0 0 * * * salt-call state.apply
这里,
-
该state.apply功能将检查盐配置文件仆从并检查仆从定义的所有动作是否被正确配置。
-
设置路径是一个很好的做法,因为有时系统路径中可能没有 salt 命令。
下一章我们将学习Remote Execution,它是Salt的一个核心概念。