saltstack简单说明
一个配置管理系统,能够维护预定义状态远程节点(比如,确保指定的报被安装,指定的服务在运行)
一个分布式远程执行系统,用来在远程节点(可以是单个节点,也可以是任意规则挑出来的节点)上执行命令和查询数据。
开发其他目的是为远程执行提供最好的解决方案,并使远程执行变得更好,更快,更简单。
salt 是一个基础平台管理工具
salt是一个配置管理系统,能够维护预定义转台的远程节点
salt是一个分布式远程执行系统,用来在远程节点上执行命令和查询数据
SaltStack 常用网站:
官方网站:http://www.saltstack.com
官方文档:http://docs.saltstack.com
GitHub:https://github.com/saltstack
中国SaltStack⽤户组:http://www.saltstack.cn
SaltStack有三种运行方式
Local
Master/Minion
Salt SSH
SaltStack的传统运行模式为Master/Minion(C/S架构),需要在被管理的节点上安装Minion,同时SaltStack也支持SSH的方式无需安装Agent,通过SSH实现管理。
salt的核心功能
1、使命令发送到远程系统是并行的而不是串行的。
2、使用安全加密的协议
3、使用最小最快的网络载荷
4、提供简单的编程接口
5、salt同样引入了更加细致化的领域控制系统来远程执行,使得系统称为目标不止可以通过主机名,还可以通过系统属性。
Builds on proven technology(基于成熟的技术)
salt运用大量的技术和技巧,网络层使用卓越的‘zeroMQ’
网络类库构建,所以salt的守护端包含了可行的和透明的AMQ代理,salt使用公钥和master守护端认证,然后使用更快的AES_。
负载通信加密;身份认证和加密对Salt是不可或缺的。Salt通过`msgpack`_建立通信,使得速度更快并且网络流量少。
Python客户端接口
为了允许简单的扩展,Salt执行程序可以写为纯Python模块。数据从Salt执行过程中收集到可以发送回master服务端,或者发送到任何
任意程序。Salt可以从一个简单的Python
API调用,或者从命令行被调用,所以Salt可以用来执行一次性命令,也可以作为一个更大的应用程序的一个组成部分。
快速,灵活,易扩展
结果是能够在1台或多台目标机器上快速执行命令的系统。Salt运行快速,安装简单,高度可定制;
Salt用相同的远程执行架构满足管理不同数量服务器的需求。
Salt基础设施可以集成最好的远程执行工具,增强了Salt的能力及用途,得到功能丰富实用可以适用于任何网络的系统
SaltStack三大功能
1、远程执行
2、配置管理(状态,不可以回滚,需要谨慎操作)
3、云管理
SaltStack目前在业内的用户案例:
LinkedIn部署了约28,000的SaltStack
Wikipedia部署了约8,000 SaltStack用于代码更新,
Rackspace大约一半的服务使用SaltStack
Hulu.com也采用了SaltStack。
国内目前各大公司也在研究和使用SaltStack。
同时,你可以通过搜索引擎获取Saltstack与Puppet、Chef、Ansible等工具的对比。