首页 > 代码库 > salt

salt

安装服务端和客户端
  服务端(marster)
  yum install salt-master -y
  客户端(slave)
  yum install salt-minion -y

marster
  192.168.11.17
  /etc/init.d/salt-master start
  配置文件:
    vi /etc/salt/master
    cat master|egrep -v ‘;|#|^$‘
    auto_accept:True  #设置自动接受
  日志: /var/log/salt/master
  debug模式查看: salt-master -l debug
  chkconfig salt-master on
    interface: 192.168.11.17 #服务端master的IP地址
    publish_port: 4505       #监听salt的消息发布系统端口
    ret_port: 4506           #salt客户端与服务端通信的端口

   必须保证这2个端口可以正常通信,如果开启iptables防火墙,需要添加以下2条规则:
   -A INPUT -m state --state new -m tcp -p tcp --dport4505 -j ACCEPT
   -A INPUT -m state --state new -m tcp -p tcp --dport4506 -j ACCEPT

   salt-key -AL

slave
  192.168.11.10
  /etc/init.d/salt-minion start
  配置文件: vi /etc/salt/minion  
     master: 192.168.11.17    #填写master端的IP地址
     id: clientIp             #minion客户端主机名(唯一的标识字符)
     master_port: 4506        #开启salt客户端与服务端通信的端口
  日志: /var/log/salt/minion
  debug模式查看: salt-minion -l debug
  chkconfig salt-minion on

在服务端和客户端分别改hosts
  192.168.11.17 www.master.com
  192.168.11.10 www.slave.com

常用命令
  在服务端查看客户端: salt-key list
  查看slave连接情况:
          salt-key -L
          salt-key -L A
  查看状态:/etc/init.d/salt-master status
  除配置文件都可以删除掉,然后重启服务,然后salt-key -A
  查看需要同意的KEY: salt-key
  执行同意操作-A 全部同意: salt-key -A
  查看同意情况:
  tree /etc/salt/pki/master/
  测试存活: salt ‘*‘ test.ping


注意事项: 测试阶段最好关闭防火墙和selinux

主机名要统一并且能ping通:
  cat /etc/hosts
    192.168.11.17   node1.salt-master.com
    192.168.11.10   node2.salt-slave.com

  cat /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=node1.salt-master.com

案例:
  1. 将服务端的test.php拷贝到客户端的tmp下
     salt-cp ‘*‘  text.php  /tmp
  2. 查看客户端的磁盘和网络信息
     salt ‘192.168.11.10’ cmd.run ‘df -h‘
     salt ‘*‘ cmd.run ‘ifconfig eth0‘
  3. 查看客户端存活
     salt ‘*‘ test.ping
  4. 给每个客户端/server/script目录下创建一个文件 test.txt
     vi /srv/salt/test.sh
      #!/bin/bash
      >/server/script/test.txt
    salt ‘*‘ cmd.script salt://test.sh

  5. 追加hosts(注意最好先备份一份)
    salt ‘*‘ cmd.run ‘echo "8.8.8.8 www2.baidu.com" >> /etc/hosts‘
  6. 修改hosts文件
    salt ‘*‘ cmd.run  ‘sed -i ‘s/9.9.9.9/91.91.91.91/g‘ /etc/hosts‘
    或者 salt ‘node2.salt-slave.com‘ cmd.run  ‘sed -i ‘s/91.91.91.91/8.8.8.8/g‘ /etc/hosts‘    

本文出自 “开发与运维” 博客,谢绝转载!

salt