一、saltstack简介

(1) saltstack是一个配置管理系统,能够维护预定义状态的远程节点。
(2) saltstack是一个分布式远程执行系统,用来在远程节点上执行命令和查询数据。
(3) saltstack是运维人员提高工作效率、规范业务配置与操作的利器。

Salt的核心功能:

使命令发送到远程系统是并行的而不是串行的
使用安全加密的协议
使用最小最快的网络载荷
提供简单的编程接口

Salt同样引入了更加细致化的领域控制系统来远程执行,使得系统成为目标不止可以通过主机名,还可以通过系统属性

saltstack通信机制:

(1) SaltStack 采用 C/S模式,minion与master之间通过ZeroMQ消息队列通信,默认监听4505端口。

saltstack高可用架构 saltstack安装部署_saltstack简介

(2) Salt Master运行的第二个网络服务就是ZeroMQ REP系统,默认监听4506端口。

saltstack高可用架构 saltstack安装部署_saltstack简介_02

二、saltstack安装与配置

环境: redhat7.3

(1)salt的安装存在与多依赖性,提前下好所需的安装包,或配置官方yum仓库
设置官方YUM仓库。

##我这里采用搭建本地仓库,安装包获取路径:(根据自己系统及版本)
https://repo.saltstack.com/yum/redhat/7.3/x86_64/2019.2/

下载的安装包如下:(因为后面还需要做别的实验,我这里下载的比较多,你可以只下salt-master和salt-minion,安装是根据依赖性选择性下载安装) 将下在的安装包打成仓库,这样安装时比较方便,自动解决依赖性。

saltstack高可用架构 saltstack安装部署_saltstack安装部署_03

(2)master端:

yum install -y salt-master		#安装master端
systemctl enable salt-master	#设置master自启动(不需要配置,直接开启即可)
systemctl start salt-master		#启动master服务

(3)minion端:

yum install -y salt-minion	#安装minion端
vim /etc/salt/minion
	master: 172.25.60.1		#设置master主机的ip
systemctl enable salt-minion
systemctl start salt-minion

saltstack高可用架构 saltstack安装部署_python_04


(4)master与minion建立连接

master开启后,minion端开启时,根据配置文件中的master连接自己的master。master端需要确认连接。

salt-key -L		#列出所有公钥
salt-key -A		#接受所有挂起的密钥

saltstack高可用架构 saltstack安装部署_安装包_05


master端测试与minion端的连接:

salt '*' test.ping

saltstack高可用架构 saltstack安装部署_安装包_06

yum install lsof
lsof -i :4505

saltstack高可用架构 saltstack安装部署_安装包_07

ps -ax

saltstack高可用架构 saltstack安装部署_安装包_08


上面查看的信息不够详细,可以安装python-setproctitle,ps -ax查看到详细信息

##安装:python-setproctitle
yum install python-setproctitle
systemctl restart salt-master.service 
ps -ax

saltstack高可用架构 saltstack安装部署_python_09


到此saltstack就安装部署好了,直接控制master端就可以在minion端部署服务了!