SaltStack远程执行
上一篇:SaltStack概述及安装
master也需要安装一个minion
启动salt-master
systemctl start salt-master
配置文件在目录/etc/salt下
pki目录是在启动了产生的
修改master上面的minion配置文件/etc/salt/minion
master: 192.168.56.11
启动minion
systemctl start salt-minion
其他主机也同样修改配置启动
在文件夹/etc/salt下面有个文件minion_id内容是minion启动的时候使用主机名(主机名确定了就不要修改了,如果修改了需要停止minion以后,删除这个文件和pki文件夹然后重启minion)
在该文件夹下面会生成以下
pub是公钥,pem是私钥
启动的时候会把自己的公钥发给master(需关闭防火墙和selinux)
在master的目录/etc/salt可以看到,对比minion下的的公钥内容是一样的
认证
可以看到还没有允许的key
接受公钥
salt-key -a SaltStack-master salt-key -a linux-node2.example.com
同意以后在minion下面可以看到master发过来的公钥
在master下面公钥换了一个文件夹
PS:master和minion之间通过aes加密通信(高级加密标准)
远程执行命令,检查minion与master通信是否正常,返回True代表正常,‘*’是匹配所有目标(生产最后不要使用直接使用minion的ID即可)
salt '*' test.ping
PS:这里的ping不同于命令行的ping,命令行的ping是执行了ICMP协议
执行命令查看负载
salt '*' cmd.run 'uptime'
执行命令查看硬盘使用情况
salt '*' cmd.run 'df -h'
PS:使用cmd.run可以执行所有命令
查看minion的端口,可以看到没有minion使用的端口
查看master的端口有4505和4506端口
master和minion通信使用zeromq消息队列通信(传输层的消息队列)
使用的minion连接到master的4505端口
通信是并行的
消息返回使用4506端口
zeromq官方网站:http://zeromq.org/
PS:SaltStack不仅仅可以使用zeromq通信,还支持TCP协议的通信。
下一篇:SaltStack配置管理