一. salt简介
SaltStack 是一种基于 C/S 架构的服务器基础架构集中化管理平台,管理端称为 Master,客户端称为 Minion。SaltStack 具备配置管理、远程执行、监控等功能,一般可以理解为是简化版的 Puppet 和加强版的 Func。SaltStack 本身是基于 Python 语言开发实现,结合了轻量级的消息队列软件 ZeroMQ 与 Python 第三方模块(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack 和 PyYAML 等)构建。
通过部署 SaltStack 环境,运维人员可以在成千上万台服务器上做到批量执行命令,根据不同的业务特性进行配置集中化管理、分发文件、采集系统数据及软件包的安装与管理等。
二.salt部署的基本架构:
salt基本架构中的角色:
master:中心控制系统
minion:被管理的客户端
syndic:位于主master与minion 之间的服务端:
第一种架构:master-----minion
这种架构中master和所有minion直连,minion接收来自于master的指令,完成命令的执行或者配置管理
第二种架构:master----->sydnic----->minion
这种架构通过syndic对minion进行设置。不受任何master控制,并且可以进行多级拓展。
第三种架构:minion
这种架构不受任何master控制,通过本地运行即可完成。