安装服务端和客户端
服务端(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'
服务端(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'
本文转自cloves 51CTO博客,原文链接:http://blog.51cto.com/yeqing/1943033