SaltStack - 架构

SaltStack的体系结构旨在与任意数量的服务器协同工作,从本地网络系统到跨不同数据中心的其他部署.架构是一个简单的服务器/客户机模型,其中所需的功能内置于一组守护程序中.

请看下图.它显示了SaltStack架构的不同组件.

Salt disk.usage

  • SaltMaster :  SaltMaster是主守护进程. SaltMaster用于向Salt从站发送命令和配置.一个主人可以管理多个主人.

  • SaltMinions :  SaltMinion是奴隶守护进程. Salt Minion从SaltMaster接收命令和配置.

  • 执行 : 模块和Adhoc命令从命令行对一个或多个小兵执行.它执行实时监控.

  • 公式 : 配方是预先写好的盐国.它们与Salt States本身一样开放,可用于安装软件包,配置和启动服务,设置用户或权限以及许多其他常见任务等任务.

  • 谷物 :  Grains是一个提供特定于minion的信息的接口.通过grain界面提供的信息是静态的.盐奴才开始时谷物被加载.这意味着谷物中的信息是不变的.因此,谷物信息可能与运行的内核或操作系统有关.它不区分大小写.

  • Pillar : 支柱是生成和存储特定于特定小部件的高度敏感数据的接口,例如加密密钥和密码.它将数据存储在键/值对中,并以与盐状态树类似的方式管理数据.

  • 顶级文件 : 将盐状态和支柱数据与Salt minions匹配.

  • 跑步者 : 它是一个位于SaltMaster内部的模块,可执行诸如作业状态,连接状态,从外部API读取数据,查询连接的盐类等等任务.

  • 回归者 : 从Salt minions返回到另一个系统的数据.

  • Reactor : 它负责在SaltStack环境中发生事件时触发反应.

  • SaltCloud :  Salt Cloud提供了一个强大的界面来与云主机进行交互.

  • SaltSSH : 在不使用Salt minion的系统上通过SSH运行Salt命令.

在下一章中,我们将详细了解各种竞争对手SaltStack及其功能.