saltStack 安装部署
1、saltStack 服务架构介绍
SaltStack 是一种基于C/S架构的服务模式,在SaltStack架构中服务器端叫作Master,客户端叫作Minion,传统C/S架构为:客户端发送请求给服务器端,服务器端接收到请求并且处理完成后再返回给客户端。在SaltStack架构中不仅有传统的C/S架构服务模式,而且有消息队列中的发布与订阅(pub/sub)服务模式。这使得SaltStack应用场景更加丰富。目前在实际环境中一般使用SaltStack的C/S架构进行配置管理。
在Master和Minion端都是以守护进程的模式运行,一直监听配置文件里面定义的ret_port(接受minion请求,默认端口号:4506)和publish_port(发布消息,默认端口号:4505)的端口。当Minion运行时会自动连接到配置文件里面定义的Master地址ret_port端口进行连接认证。默认客户端请求id是socket.getfqdn()取到的值,也可以在Minion启动之前修改Minion的id值。
2.安装部署
[root@zabbix salt]# cat /etc/redhat-release
CentOS release 6.7 (Final)
安装 epel yum源
在 Master 端和 Minion 端都需要安装 epel 的 yum源
rpm -ivh http://mirrors.zju.edu.cn/epel/6/x86_64/epel-release-6-8.noarch.rpm
3.安装 Master 端
yum -y install salt-master
/etc/init.d/salt-master start
Starting salt-master daemon: [确定]
chkconfig salt-master on
SaltStack Master 端版本号 [root@SaltStack-Master ~]# salt-master --version salt-master 2015.5.10 (Lithium)
4.安装 minion 端
yum -y install salt-minion
sed -i 's/#master: salt/master: 192.168.10.10/g' /etc/salt/minion # 指定 master 的ip地址
/etc/init.d/salt-minion start
chkconfig salt-minion on
SaltStack Minion 端版本号
[root@SaltStack-Minion-node01 ~]# salt-minion --version
salt-minion 2015.5.10 (Lithium)
5.C/S认证
salt-key -L 查看当前需要接受的keys(master和minions都需要把服务开启)。
-A参数,该参数意思是接受所有认证主机的认证,也可以使用 -a id名 只认证单独的主机
如果对客户端信任,可以让master自动接受请求,在master端/etc/salt/master配置
auto_accept: True
6、命令执行
测试master和minion之间的通信是否正常
True代表正常,*代表所有主机,也可以选择单台或者按组及正则进行匹配等
命令执行使用cmd.run参数