风起漂泊 发表于 2018-1-3 22:22:39

saltstack自动化运维工具搭建个人笔记

  至于为什么选择saltstack,因为Puppet、Chef基于Ruby开发,而ansible、saltstack基于python开发,便于后期二次,良好的可移植性。
  又,ansible基于SSH协议传输数据,Saltstack使用消息队列zeroMQ传输数据,MQ通讯和SSH通讯速度相差明显,考虑到速度方面,排除ansible,最终选择Saltstack。
  不过两者相比之下Ansible的安全性倒是最好,适合金融行业。
  1.本次实验环境
  

# python -V  
Python 2.6.6
  


IP
角色
系统
192.168.1.110
master
redhat6.5
192.168.1.111
minion
redhat6.5  2.SALTSTACK安装
  server端安装
  

#导入EPEL YUM源  

  

  saltstack官方yum源。
  cat > /etc/yum.repos.d/saltstack.repo << EOF

  name=SaltStack repo for RHEL/CentOS \$releasever
  baseurl=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest
  enabled=1
  gpgcheck=1
  gpgkey=https://repo.saltstack.com/yum/redhat/\$releasever/\$basearch/latest/SALTSTACK-GPG-KEY.pub
  EOF
  更新yum缓存执行如下命令
  yum clean all && yum makecache
  

#服务器master的安装  yum -y install salt-master
  

  

chkconfig salt-master on  
service salt
-master start  

  

  

  minion端安装
  

yum -y install salt-minion  

  

chkconfig salt-minion on  
service salt-minion start
  

  3.配置文件修改
  

####master端# vim /etc/salt/master
  

  15 interface: 0.0.0.0#修改地15行
  

  303 auto_accept: True#自动接受客户端发送过来的key,
  

  

####minion端  

  
#vim /etc/salt/minion
  
master: 192.168.1.110#你的master服务器地址
  
id: minion   #你的主机名
  

  分别启动服务端和客户端的salt服务
  

# /etc/init.d/salt-master start  
Starting salt-master daemon:                               [确定]
  

  

# /etc/init.d/salt-minion start  
Starting salt-minion daemon:                               [确定]
  

  

# netstat -an|grep 4505  
tcp      0      0 0.0.0.0:4505                0.0.0.0:*                   LISTEN
  
tcp      0      0 192.168.1.110:4505          192.168.1.111:38926         ESTABLISHED
  
tcp      0      0 192.168.1.110:4505          192.168.1.111:38892         ESTABLISHED
  
# netstat -an|grep 4506
  
tcp      0      0 0.0.0.0:4506                0.0.0.0:*                   LISTEN
  

  ## 查看当前的salt key信息
https://images2017.cnblogs.com/blog/1136490/201709/1136490-20170903160307780-1902419450.png
  ## 测试被控主机的连通性
https://images2017.cnblogs.com/blog/1136490/201709/1136490-20170903160343655-1961860717.png
  ## 根据被控主机的grains信息进行匹配过滤
https://images2017.cnblogs.com/blog/1136490/201709/1136490-20170903160437062-1273496910.png
  远程代码执行测试
https://images2017.cnblogs.com/blog/1136490/201709/1136490-20170903160515640-742567202.png
  

#查看所有客户端up/down状态# salt-run manage.status
  
down:
  
up:
  - minion
  

  cmd模块(实现远程的命令行调用执行)
https://images2017.cnblogs.com/blog/1136490/201709/1136490-20170903160920624-448110516.png
  service 服务模块(被控主机程序包服务管理)
https://images2017.cnblogs.com/blog/1136490/201709/1136490-20170903161023983-2076960147.png
  network模块(返回被控主机网络信息)
https://images2017.cnblogs.com/blog/1136490/201709/1136490-20170903161118562-666199649.png
页: [1]
查看完整版本: saltstack自动化运维工具搭建个人笔记