扩展 Salt 基础架构Last Updated February 5, 2025
安装并集成
Automation Config
服务后,还需要在计划使用 Automation Config
进行管理的任何节点上安装、运行和注册 Salt 工作节点服务。可以通过以下两种方法将 Salt 工作节点服务部署到节点:使用 VMware Aria Automation
云模板或通过安全 Shell (SSH) 安装服务。Salt 及其与 Automation Config 的关系
Automation Config
的关系Automation Config
在 Salt 上运行,Salt 是一个基于 Python 的开源远程执行框架,用于:- 配置管理
- 自动化
- 置备
- 编排
Salt 是
Automation Config
核心功能的底层技术。Automation Config
增强并扩展了 Salt,提供了其他功能和特性,改进了易用性。Salt 使用控制器-客户端模型,在此模型中,控制器向客户端发出命令,而客户端执行命令。在 Salt 生态系统中,控制器是运行 Salt 主节点服务的服务器。它向一个或多个 Salt 工作节点发出命令,这些工作节点是运行 Salt 工作节点服务并在该特定主节点中注册的节点。
还可以将 Salt 描述为发布者-订阅者模型。主节点发布需要执行的作业,而工作节点订阅这些作业。当特定作业应用于工作节点时,该工作节点将执行该作业。在工作节点完成作业执行后,会将作业返回数据发送回主节点。
工作节点是运行 salt-minion 服务的节点。该服务侦听 Salt 主节点发出的命令并执行请求的任务。可以从
VMware Aria Automation
云模板部署工作节点。必须先在要管理的所有节点上安装 Salt 工作节点服务,然后才能开始使用
Automation Config
进行配置管理。此外,还必须通过向 Automation Config
发送并接受密钥来注册工作节点。开始前
- 安装和配置Automation Config并将其与VMware Aria Automation集成。
- 由Automation Config管理的节点必须能够访问 Salt 主节点,并且必须与Automation Config集成点和 Salt 主节点位于同一网络。
- 部署到专用网络的vSphere计算机必须能够启动与Automation Config集成和 Salt 主节点的连接。
通过 SSH 安装 Salt 工作节点服务
使用 SSH 安装 Salt 工作节点服务的过程取决于在这些节点上运行的操作系统。
- 有关在 RedHat Linux 或 CentOS 上安装 Salt 工作节点服务的信息,请参见Required Automation Config dependencies。
- 对于其他操作系统,请参见 http://repo.saltstack.com/。
安装 Salt 工作节点服务后,请执行以下操作:
- 在/etc/salt/minion.d目录中创建master.conf文件,配置每个工作节点以与主节点通信。在此文件中,提供主节点的 IP 地址。例如:master: 192.0.2.1
- 启动工作节点服务:sudo systemctl enable salt-minionsudo systemctl start salt-minion
- 对其余的所有节点重复上述步骤。
配置这些工作节点文件以指向 Salt 主节点后,在
Automation Config
服务的“工作节点密钥”工作区中接受工作节点密钥。使用 VMware Aria Automation 云模板安装 Salt 工作节点服务
VMware Aria Automation
云模板安装 Salt 工作节点服务要使用云模板部署 Salt 工作节点服务,您必须能够访问并熟练使用 cloud-init (Linux) 或 Cloudbase-init (Windows)。要将 Salt 工作节点添加到为
Automation Config
集成配置的 Salt 主节点,云模板中的虚拟机必须支持 cloud-init (Linux) 或 Cloudbase-init (Windows)。 以下部分介绍了如何使用云模板部署 Salt 工作节点服务。
将工作节点添加到为 VMware Aria Automation 配置的 Salt 主节点
VMware Aria Automation
配置的 Salt 主节点安装
Automation Config
时,将指定 Salt 主节点 IP 地址。从 VMware Aria Automation
云模板部署工作节点时,将使用该主节点 IP 地址作为 masterAddress
属性。 需要在
VMware Aria Automation
云模板或部署中通过使用 cloud-init 或 Cloudbase-init 脚本安装和部署工作节点。此外,还可以使用表示使用这些格式之一的云配置脚本的映像映射。要将 Salt 工作节点添加到与 VMware Aria Automation
Automation Config
集成关联的 Salt 主节点,目标虚拟机必须支持 cloud-init (Linux) 或 Cloudbase-init (Windows)。VMware Aria Automation
云配置脚本支持这两种格式。可以在云模板中配置具有
minionId
值和 cloudConfig
值的计算机资源,并引用属性组 SaltStackConfiguration
。在 VMware Aria Suite Lifecycle
中安装和配置 Automation Config
服务时会创建 SaltStackConfiguration
属性组。它包含 masterAddress
和 masterFingerprint
属性。minionId
值必须与为云模板代码 cloudConfig
部分中的计算机 /salt/minion_id
指定的值相匹配。 下面显示了基于 Windows 和基于 Linux 的
VMware Aria Automation
云模板代码示例。请注意,可以使用以下任一方法指定云配置脚本:- 从云模板代码调用的VMware Aria Automation映像
- 从云模板代码调用的云配置脚本
- 直接添加到云模板代码的云配置脚本内容
注意:部署包含 Salt 工作节点的云模板时,如果部署在
Automation Assembler
中不可见,则可以使用 Automation Service Broker
服务显示部署。 示例 - 基于 Linux 的部署和 cloud-init
为支持 cloud-init 的基于 Linux 的计算机部署工作节点的云模板配置示例如下所示:
示例 - 基于 Windows 的部署和 Cloudbase-init
为支持 Cloudbase-init 的基于 Windows 的计算机部署工作节点的云模板配置示例如下所示:
如何配置 PowerShell 命令
您可以在云模板的
cloudConfig
部分中配置 PowerShell 命令。 启用 PowerShell 命令之前,请从 Salt 存储库网站下载 Salt 工作节点软件包。然后完成下列步骤:
- 在 Windows 虚拟机中安装 Salt 工作节点服务。
- 更新工作节点配置中的 Salt 主节点主机名值。
- 更新工作节点配置中的 Salt 主节点指纹值。
- 将minion_id设置为将用于接受 Salt 主节点上工作节点的虚拟机资源名称。
- 重新启动最小值。
有关部署 Salt 工作节点的更多信息
有关使用集成
Automation Config
从 VMware Aria Automation
云模板部署 Salt 工作节点的替代方法,请参见 Assembly 和 ABX 密钥(以及如何使用它们安装 Automation Config 工作节点代理)。有关在通常情况下定义和部署
Automation Assembler
模板的相关信息,尤其是熟悉 Config 但不熟悉 Aria Automation 的情况下,请参见设计 Assembler 部署。