SaltStack – 架构
SaltStack – 架构
SaltStack 的架构旨在与任意数量的服务器一起工作,从本地网络系统到跨不同数据中心的其他部署。架构是一个简单的服务器/客户端模型,将所需的功能内置到一组守护进程中。
请看下图。它展示了 SaltStack 架构的不同组件。
-
SaltMaster – SaltMaster 是主守护进程。SaltMaster 用于向 Salt slaves 发送命令和配置。一个master可以管理多个master。
-
SaltMinions – SaltMinion 是奴隶守护进程。Salt Minion 从 SaltMaster 接收命令和配置。
-
执行– 从命令行针对一个或多个 Minion执行的模块和 Adhoc 命令。它执行实时监控。
-
公式– 公式是预先编写的盐状态。它们与 Salt States 本身一样开放,可用于安装包、配置和启动服务、设置用户或权限以及许多其他常见任务等任务。
-
Grains – Grains 是一个界面,提供特定于 Minion 的信息。通过grains界面可用的信息是静态的。当 Salt Minion 启动时,Grains 会被加载。这意味着谷物中的信息是不变的。因此,grains 信息可能与正在运行的内核或操作系统有关。它不区分大小写。
-
Pillar – 支柱是一个接口,用于生成和存储特定于特定 minion 的高度敏感数据,例如加密密钥和密码。它将数据存储在键/值对中,并且数据的管理方式与 Salt State Tree 类似。
-
Top File – 将 Salt 状态和支柱数据与 Salt Minion 匹配。
-
Runners – 它是位于 SaltMaster 内部的一个模块,执行诸如作业状态、连接状态、从外部 API 读取数据、查询连接的 salt minion 等任务。
-
Returners – 将数据从 Salt Minion 返回到另一个系统。
-
Reactor – 它负责在您的 SaltStack 环境中发生事件时触发反应。
-
SaltCloud – Salt Cloud 提供了一个强大的界面来与云主机交互。
-
SaltSSH – 在不使用 Salt Minion 的情况下在系统上通过 SSH 运行 Salt 命令。
在下一章中,我们将详细了解 SaltStack 的各种竞争对手及其功能。