renshanshan 发表于 2018-8-1 08:13:04

saltstack管理二之saltstack的安装

  saltstack的安装
  简述:
  在之前应公司要求配置了zabbix监控所有的服务器,在管理zabbix,有时候需要监控agent机的某些性能时,默认的zabbix没有相应的模板去实现,因此需要自己去写相应的脚本去监控,这样的话就需要在每台agent机上都写一遍脚本,由于公司的服务器数量比较多,感觉这样一台一台的添加会很慢,而且很耗时,就研究使用saltstack实现自动化运维
  环境:
角色ip系统所属组salt server192.168.186.130centos6.4salt minion192.168.186.129centos6.4Bjwebgroupsalt minion192.168.186.128centos6.4Bjwebgroup/Bjdbgroup  安装参考:
  阅读salt官网和其他一些相关文档,参考官网和其他一些大神的文档,实现了salt的安装
  安装步骤:
  1、安装软件:
  推荐使用rpm包安装
  安装前需要安装epel源:(server端和minion端都安装)
  cd /usr/local/src/
  wget http://ftp.linux.ncsu.edu/pub/epel/6/i386/epel-release-6-8.noarch.rpm
  rpm -ivhepel-release-6-8.noarch.rpm
  server端:
  yum -y install salt-master
  minion端:
  yum -y install salt-minion
  2、文件配置:
  server端:
  vi /etc/salt/master
  将#interface: 0.0.0.0注释去掉,并修改为:interface: 192.168.186.130   (server监听的ip)
  minion端:
  vi /etc/salt/minion
  将#master: server注释去掉,并修改为:master: 192.168.186.130         (指向server)
  将#id: 注释去掉,并修改为:id: 192.168.186.129                     (id:minion的一个标识,这个值是唯一的,任意的,master就是通过这个id来管理minion)
  3、启动服务:
  server端:
  /etc/init.d/salt-master start
# netstat-tlnap | grep 450  
tcp      0      0 192.168.186.133:4505      0.0.0.0:*                   LISTEN      1808/python2.6
  
tcp      0      0 192.168.186.133:4506      0.0.0.0:*                   LISTEN      1817/python2.6
  
##salt master监听两个端口:
  
##4505:salt消息发布系统
  
##4506:salt master与minion通信的端口
  minion端:
  /etc/init.d/salt-minion start
  4、认证:
  server端:
  # salt-key
(查看有哪些minion可以认证,包括:已认证,未认证和拒绝)
  Accepted Keys:
  192.168.186.129
  Unaccepted Keys:
  Rejected Keys:
  # salt-key -y -a 192.168.186.129      (认证192.168.186.129 )
  The following keys are going to be accepted:
  Unaccepted Keys:
  192.168.186.129
  Key for minion 192.168.186.129 accepted.
  注意:-a:添加认证
  -y:不需要交互式,若不加-y参数会提示你y/n
  # salt-key -y -d 192.168.186.129      (删除某个minion的认证)
  Deleting the following keys:
  Accepted Keys:
  192.168.186.129
  Key for minion 192.168.186.129 deleted.
  # salt-key -y -A                  (-A参数认证所有的minion)
  5、测试:
  server端:
  # salt "*" test.ping                (测试所有minion)
  192.168.186.129:
  True
  注意:出现True,表示正常连接
  *表示所有的minion,且*一定要用引号引起来
  # salt 192.168.186.129 test.ping   (只测试129)
  192.168.186.129:
  True
  到此salt的安装就搞定了,是不是非常简单!!!
  分组:
  若minion的数量比较多,我们可以对minion进行分组,相同功能的minion分为一个组,然后在server端对某个组进行管理
  server端:
  vi /etc/salt/master
  找到#nodegroups:
  添加:
  nodegroups:
  BJwebgroup: '192.168.186.128'
  BJdbgroup: 'L@192.168.186.128,192.168.186.129'
  注意:若有多个minion一个组,要用逗号隔开,且在前面加L@
  每个组都要用引号引起来
  /etc/init.d/salt-master restart                      (重启下服务)
  对分组进行测试:
  server端:
  # salt -N BJwebgroup test.ping      (只对BJwebgroup这一个组进行管理)
  192.168.186.128:
  True
  注意:对组进行操作,要用-N参数
  附加:
  以后添加一台新minion机的步骤:
  这里仅供我自己参考,方便以后使用,读者可以略过
  新机器:(minion)
  cd /usr/local/src/
  wget http://ftp.linux.ncsu.edu/pub/epel/6/i386/epel-release-6-8.noarch.rpm
  rpm -ivhepel-release-6-8.noarch.rpm
  yum -y install salt-minion
  vi /etc/salt/minion
  将#master: server注释去掉,并修改为:master: 192.168.186.xxx         (指向server)
  将#id: 注释去掉,并修改为:id: 192.168.186.xxx
  将#loop_interval: 60注释去掉,并修改为:loop_interval: 3153600000    (minion主动向master进行数据同步的时间间隔,这里设置时间间隔为100年,即永远不要自动同步)
  /etc/init.d/salt-minion start
  server端:
  salt-key
  salt-key -y -a 192.168.186.xxx
  salt 192.168.186.xxx test.ping
页: [1]
查看完整版本: saltstack管理二之saltstack的安装