- SaltStack 教程
- SaltStack - 首页
- SaltStack - 概述
- SaltStack - 架构
- SaltStack - 竞争对手
- SaltStack - 安装
- 创建简单的环境
- SaltStack - 访问控制系统
- SaltStack - 作业管理
- SaltStack - Salt 文件服务器
- SaltStack - 将 Git 作为文件服务器
- 使用 MinionFS 作为文件服务器
- SaltStack - 使用 Cron 与 Salt
- SaltStack - 远程执行
- 配置管理
- SaltStack - 日志记录
- SaltStack - 通过 SSH 使用 Salt
- Salt 用于云基础设施
- SaltStack - Salt 代理 Minion
- SaltStack - 事件系统
- SaltStack - 编排
- SaltStack - Salt 包管理器
- SaltStack - Python API
- SaltStack - 工作示例
- SaltStack 有用资源
- SaltStack - 快速指南
- SaltStack - 有用资源
- SaltStack - 讨论
SaltStack - 使用 Cron 与 Salt
Salt 可以与Cron应用程序一起使用。将这两个应用程序结合使用,为 Salt 自动化提供了极好的机会。虽然 Salt 提供了远程执行命令的选项,但 Cron 使其能够以预定的或自动的方式运行。在本章中,让我们学习如何将 Cron 和 Salt 结合使用。
什么是 Cron?
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 小时制指定。
每月日期 - 月份中的日期,介于 1 和 31 之间。例如,每月的 10 日为 10。
月份 - 指定的月份,以数字 (0-12) 或月份名称 (例如 May) 指定。
每周日期 - 星期几,以数字 (0-7) 或星期几名称 (例如 Sun) 指定。
用户 - 命令在其下运行的用户帐户。
cmd - 实际命令及其参数。
此处,* 替换为未分配任何内容的情况。
Salt Caller (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 函数将检查 minion 的 salt 配置文件,并检查为 minion 定义的所有操作是否已正确配置。
设置路径是一种良好的实践,因为有时 salt 命令可能在系统路径中不可用。
在下一章中,我们将学习远程执行,这是 Salt 的核心概念。