- Saltstack远程执行
语法例:salt ‘*‘ cmd.run ‘w‘
- 命令:salt
- 目标:‘*‘
- 模块:cmd.run,自带150+模块,也可以自己写模块
- 返回:执行后结果返回,Returnners组件
1、指定目标(targeting)
官网文档:https://docs.saltstack.com/en/latest/topics/targeting/index.html
两种定位方法:一种和minion ID有关,一种和monion ID无关
1)minion ID有关的方法
指定具体的minion ID
salt ‘linux-node2.example.com‘ test.ping
通配符
salt ‘*‘ test.ping salt ‘linux-node2*‘ test.ping salt ‘linux-node[1|2].example.com‘ test.ping salt ‘linux-node[1-2].example.com‘ test.ping salt ‘linux-node[!2].example.com‘ test.ping salt ‘linux-node?.example.com‘ test.ping
列表
salt -L ‘linux-node1.example.com,linux-node2.example.com‘ test.ping
正则表达式
salt -E ‘linux-(node1|node2)*‘ test.ping salt -E ‘linux-(node1|node2).example.com‘ test.ping
备注: 所有匹配目标的方式,都可以用到top file里面来指定目标。
minion ID设置方案:IP地址、根据业务来进行设置
例: redis-node1-redis04-idc04-h5web.example.com redis-node1 # redis第一个节点 redis04 # 集群 idc04 # 机房 h5web # 业务线
2)minion ID无关的方法
IP地址、子网
salt -S 192.168.137.12 test.ping salt -S 192.168.137.0/24 test.ping
分组,需要配置master文件
vim /etc/salt/master
重启systemctl restart salt-master
salt -N web test.ping
混合匹配
官方文档 https://docs.saltstack.com/en/latest/topics/targeting/compound.html
批处理 ,可用于重启所有主机或进程场景,百分比或固定数量的一点一点重启主机或进程
官方文档 https://docs.saltstack.com/en/latest/topics/targeting/batch.html
时间: 2024-09-27 04:35:23