- 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 - 编排
一般来说,**编排**是系统自动协调和安排的过程。编排运行器用于在 SaltStack 中执行编排。
编排运行器
编排运行器提供了**OverState**(旧系统)的所有功能。它最初被称为**state.sls**运行器。此编排运行器用于将 Salt 状态系统泛化到 Salt master 上下文。
**state.sls**和**state.highstate**函数在每个 Salt minion 上执行,但**state.orchestrate**运行器在 master 上执行。**state.orchestrate**运行器允许您完全以状态方式管理整个基础设施。让我们了解如何完成一个简单的执行过程。
简单执行
编排运行器命令与**state.sls**函数相同,但您可以使用“salt-run”而不是salt来执行它。
假设您有一个位于** /srv/salt/orch/samples.sls**的**sample.sls**文件。在该文件中添加以下代码。
sample.sls
install_nginx:
salt.state:
- tgt: 'web*'
- sls:
- nginx
以下命令用于在 master 上运行,它将应用该文件中定义的状态。
salt-run state.orchestrate orch.sample
它将产生以下**输出** -
saltmaster.local_master: ---------- ID: install_nginx Function: salt.state Result: True Comment: States ran successfully. Started: 11:54:56.308078 Duration: 63.401 ms Changes: Summary for saltmaster.local_master ------------ Succeeded: 1 Failed: 0 ------------ Total states run: 1 Total run time: 63.401 ms root@saltmaster:/home/vagrant#
这里,根据当前版本,运行器函数已重命名为**state.orchestrate**。这将有助于避免与state.sls执行函数混淆,但必须使用先前版本的**state.sls**。
执行函数
要执行函数,您应该使用**salt.function**。考虑一个位于** /srv/salt/orch/data.sls**的文件**data.sls**。现在,在该文件中添加以下更改。
data.sls
cmd.run:
salt.function:
- tgt: '*'
- arg:
- rm -rf /tmp/data
以下命令用于执行 Salt 函数。
root@saltmaster:/home/vagrant# salt-run state.orchestrate orch.data
它将产生以下**输出** -
saltmaster.local_master:
----------
ID: cmd.run
Function: salt.function
Result: True
Comment: Function ran successfully. Function cmd.run ran on minion1, minion2.
Started: 12:14:54.791635
Duration: 234.615 ms
Changes:
minion1:
minion2:
Summary for saltmaster.local_master
------------
Succeeded: 1 (changed = 1)
Failed: 0
------------
Total states run: 1
Total run time: 234.615 ms
广告