Saltstack 批量部署工具
   
  关于Saltstack是什么东西?有什么作用?我们在这里就不做介绍了,如果有不懂的同学们可以去网络搜索下;了解相关的技术信息。

本次们的主机分部为:
    1、Master:192.168.30.131
    2、Slave-1:192.168.30.132
    3、Slave-2:192.168.30.133

首先,在安装Saltstack之前,我们先来初始我们使用的CentOS环境,及安装所需的基础软件:

 以下操作在三台主机上都要操作:
1、安装编译工具gcc、gcc-c++;
    # yum -y install gcc-c++ 
    # yum -y install epel-release  

安装Master服务器端:
    # yum -y install salt-master
 修改配置文件:
    a、修改Master的监听地址:即服务器本身地址
    # sed -i "s/#interface:.*$/interface: 192.168.30.131/g" /etc/salt/master
    # grep -Ev "^$|^#" /etc/salt/master
 interface: 192.168.30.131
    
    b、修改Auto_accept 为True:自动验证,否则就使用salt-key去做手动验证
    # sed -i "s/#auto_accept:.*$/auto_accept: True/g" /etc/salt/master
    # grep -Ev "^$|^#" /etc/salt/master

interface: 192.168.30.131

auto_accept: True

 安装两台客户瑞:这里以slave-1做范例
    # yum -y install salt-minion 
 修改配置文件:
    # sed -i "s/#master:.*$/master: 192.168.30.131/g" /etc/salt/minion                 # Master :地址
    # sed -i "s/#id:.*$/id: Slave-1/g" /etc/salt/minion                                               # id :客户端标示,这里使用主机名做为标示
    # sed -i "/#loop_interval: 60/a schedule:\n    highstate:\n        function:state.highstate\n        seconds:30" /etc/salt/minion
    ( # 这个参数:客户瑞每隔30s去服务器同步资源,时间可以随便DIY,格式为:mintus:hours;跟客户端手动执行 salt-call state.highstate 命令 效果一样)

    # grep -Ev "^$|^#"  /etc/salt/minion
master: 192.168.30.131
id: Slave-1

schedule:

   highstate:

     function:state.highstate

     seconds:30
 

 
启动服务:
    a、/etc/init.d/salt-master start                # Master 服务启动:日志默认地址:/var/log/salt/master
    b、/etc/init.d/salt-minion start                # Slave    服务启动:日志默认地址:/var/log/salt-minion 

   查看Master服务器监听端口:
    # 
netstat -an |grep 4505
tcp        0      0 192.168.30.131:4505         0.0.0.0:*                   LISTEN

tcp        0      0 192.168.30.131:4505         192.168.30.133:59243        ESTABLISHED 

tcp        0      0 192.168.30.131:4505         192.168.30.132:33308        ESTABLISHED


 
查看Slave客户端监听端口:
    # netstat -an|grep 4505
tcp        0      0 192.168.30.132:33308        192.168.30.131:4505         ESTABLISHED

  去服务器上验证下证书是否已经过来:
    # salt-key -L

Accepted Keys:

Slave-1

Slave-2

Denied Keys:

Unaccepted Keys:

Rejected Keys:

到此Saltstack的部署就已经完成了;如果有多台,只需要在客户端上安装及配置就可以了! 
注:如果发现运行salt-key -L后没有任何主机信息,请检查iptables的设置。