SaltStack管理工具允许管理员对多个操作系统创建一个一致的管理系统。SaltStack与特定的命令结合使用可以在一个或多个下属执行。实现这一点,此时Salt Master可以发出命令。除了运行远程命令,SaltStack允许管理员使用“grain”。grain可以在SaltStack仆从运行远程查询,因此收集仆从的状态信息并允许管理员在一个中央位置存储信息。
在linux (centos7)下安装saltstack
http://www.cloudkb.net/saltstack-installation-on-centos-7/
1.yum install vim安装vim编辑功能
2.vim /etc/salt/minion 编辑minion
Master和id(前面加2空格),
master: 192.168.1.217(ip前面有个空格)
id: gulili(gulili前面有个空格)
改自己PC名字(按i切到可delete)
- service salt-minion restart (salt '*' test.ping如果哪台PC掉线了,可输此命令)
- tail -f -n -100 /var/log/salt/minion 查看日志
5.命令:
Master端
1)salt-key -L 查看master所控的机器
2)salt ‘*’ test.ping 测试主机和被控PC的连通性
3)salt-run manage.status 查看所有minion状态
4)salt-key -L ##查看所有minion-key
5)salt-key -a <key-name> ##接受某个minion-key
6)salt-key -d <key-name> ##删除某个minion-key
7)salt-key -A ##接受所有的minion-key
8)salt-key -D ##删除所有的minion-key
9)salt-cp 分发文件到minion上,不支持目录分发,通常在master运行
salt-cp '*' testfile.html /tmp
salt-cp 'test*' index.html /tmp/a.html
10)salt-cp '*' /etc/salt/testfile.html /etc/salt/testfile.html
【从master下发文件到各minion (不支持目录)】
(*所有的PC, /etc/salt/testfile.html要拷贝的文件路径, /etc/salt/testfile.html拷贝到PC上去的指定的文件路径)拷贝2.5MB以上的文件就会超时报错
11)salt-master ##前台运行master
12)salt-master -d ##后台运行master
13)salt-master -l debug ##debug输出,查看是否有error
12)salt '*' cmd.run "uptime" # 查询主机运行了多长时间
13)salt '*' cmd.run "service httpd restart" # 批量重启服务
14)salt '*' cmd.run "ab -n 10 -c 2 http://www.google.com/" # 让多台机器一起,使用Apache Bench进行压力测试
Minion端
1)salt-call test.ping ##自己执行test.ping命令
2)salt-call cmd.run 'ifconfig' ##自己执行cmd.run函数
3)salt-minion ##前台运行
4)salt-minion -d ##后台运行
5)salt-minion -l debug ##前台debug输出
问题:
1.当PC(minion端)连过其他的master,再自己当master,到 ls /etc/salt/pki/minion/下把minion_master.pub公钥重命名,再service salt-minion restart 【在etc/salt/pki/minion/下再生成一个minion_master.pub新公钥】
salt-key -d master-xu salt-key -A
http://www.68idc.cn/help/server/linux/20141105126036.html