一、什么是saltsack?
Salt,一种全新的基础设施管理方式,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯。
SaltStack是使用Python语言开发,同时提供Rest API方便二次开发以及和其它平台进行集成。
Salt底层采用动态的连接总线, 使其可以用于编配, 远程执行, 配置管理等等。
其它详细介绍:http://docs.saltstack.cn/topics/index.html
1、在学习saltsack的常用网站有:
官方网站:http://www.saltstack.com
官方文档:http://docs.saltstack.com
GitHub:https://github.com/saltstack
中国SaltStack用户组:http://www.saltstack.cn
三、saltsack的核心功能
1、使用命令发送到远程系统是并行的而不是串行的 2、使用安全加密的协议 3、使用最小最快的网络载荷 4、提供简单的编程接口
四、saltsack的通信端口和功能
master端:4504
minion端:4506
在网络传输时,我们校验源文件获得其md5sum,传输完毕后,校验其目标文件,并对比如果源文件和目标文件md5 一致的话,则表示文件传输无异常。否则说明文件在传输过程中未正确传输。
saltsack的三大功能:
(1)远程执行
(2)配置管理
(3)云管理
五、为什么要学习自动化运维工具?
1、传统运维:传统运维效率低,大多工作需要人工完成,工作繁琐,容易出错
每日重复做相同的事情,没有标准化流程,脚本过多,不方便管理
自动化运维:解决上面所有问题
常见自动化运维工具
Puppet:基于rubby开发,c/s架构,支持多平台,可管理配置文件、用户、cron任务、软件包、系统服务等。分为社区版和企业版,企业版支持图形化配置。
Saltstack:基于Python开发,c/s架构,支持多平台,比Puppet轻量,在远程执行命令时非常快捷,配置和使用比puppet容易,能实现puppet几乎所有的功能。
Ansible:更加简洁的自动化运维工具,不需要在客户端上安装客户端软件,基于Python开发的。可以实现批量操作系统配置、批量程序的部署、批量执行命令。
2、随着Linux运维的发展,我们可以发现,传统的linux运维有比较多的缺点
传统运维效率低,大多工作人工完成;
传统运维工作繁琐,很容易出错;
传统运维每日重复做相同的事情;
传统运维没有标准化的流程;
传统运维的脚本繁多,不方便管理;
3、这些缺点在公司规模较大的时候就体现得尤为明显
而自动化运维就被人们提出来,目的就是为了解决传统运维的这些问题
目前主流的自动化运维工具有3种:Puppet、Saltstack和Ansible,用的最多的还是Ansible