SaltStack远程执行

时间:2023-03-08 22:40:58
SaltStack远程执行

  上一篇:SaltStack概述及安装

  master也需要安装一个minion

  启动salt-master

systemctl start salt-master

  配置文件在目录/etc/salt下

  pki目录是在启动了产生的

SaltStack远程执行

  修改master上面的minion配置文件/etc/salt/minion

master: 192.168.56.11

  启动minion

systemctl start salt-minion

  其他主机也同样修改配置启动

  在文件夹/etc/salt下面有个文件minion_id内容是minion启动的时候使用主机名(主机名确定了就不要修改了,如果修改了需要停止minion以后,删除这个文件和pki文件夹然后重启minion)

  在该文件夹下面会生成以下

SaltStack远程执行

  pub是公钥,pem是私钥

  启动的时候会把自己的公钥发给master(需关闭防火墙和selinux)

  在master的目录/etc/salt可以看到,对比minion下的的公钥内容是一样的

SaltStack远程执行

SaltStack远程执行

SaltStack远程执行

  认证

  可以看到还没有允许的key

SaltStack远程执行

  接受公钥

salt-key -a SaltStack-master
salt-key -a linux-node2.example.com

  同意以后在minion下面可以看到master发过来的公钥

SaltStack远程执行

  在master下面公钥换了一个文件夹

SaltStack远程执行

  PS:master和minion之间通过aes加密通信(高级加密标准)

  

  远程执行命令,检查minion与master通信是否正常,返回True代表正常,‘*’是匹配所有目标(生产最后不要使用直接使用minion的ID即可)

salt '*' test.ping

SaltStack远程执行

  PS:这里的ping不同于命令行的ping,命令行的ping是执行了ICMP协议

  

  执行命令查看负载

salt '*' cmd.run 'uptime'

SaltStack远程执行

  执行命令查看硬盘使用情况

salt '*' cmd.run 'df -h'

SaltStack远程执行

  PS:使用cmd.run可以执行所有命令

  

  查看minion的端口,可以看到没有minion使用的端口

SaltStack远程执行

  查看master的端口有4505和4506端口

SaltStack远程执行

  master和minion通信使用zeromq消息队列通信(传输层的消息队列)

  使用的minion连接到master的4505端口

SaltStack远程执行

  通信是并行的

SaltStack远程执行

  消息返回使用4506端口

  zeromq官方网站:http://zeromq.org/

  PS:SaltStack不仅仅可以使用zeromq通信,还支持TCP协议的通信。

  

  下一篇:SaltStack配置管理