salt常用命令
salt常用命令
系统 运维 salt
master上执行
salt ‘*’ test.ping ##master上查看各minion主机网络是否可通
salt ‘hostname’ test.ping ##master上查看某台minion是否可联通
salt-run jobs.list_jobs //查看历史job
salt-run jobs.lookup_jid 20200814190730234389 //查看job执行结果
tail -f -n500 /var/log/salt/master // 查看salt 日志
tail -f -n3000 /var/log/salt/master | grep “windows_10.100” // 查看salt
–salt-master默认日志地址
log_file: /var/log/salt/master
—指定给机器同步文件
salt “Test0669.htinns.loc” –args ‘runas=fortadmin’ saltutil.sync_modules
minion上执行
salt-call 该命令通常在minion上执行,minion自己执行可执行模块,不是通过master下发job
salt-call [options] [arguments]
salt-call test.ping ##自己执行test.ping命令
salt-call cmd.run ‘ifconfig’ ##自己执行cmd.run函数
salt-call “test-001” javatomcat.get_version ##调用python
–salt minion 默闪日志地址
log_file: /var/log/salt/minion
—其它地址
log_file: file:///dev/log
log_file: file:///dev/log/LOG_DAEMON
log_file: udp://loghost:10514
tomcat是否启动,salt 内部可以看

https://www.cnblogs.com/davygeek/p/7754207.html
saltutil管理Job
salt-masterrun一个sleep的命令,请注意超时时间的设置
salt ‘*’ cmd.run ‘sleep 30’
salt ‘*’ saltutil.running ##查看正在running的job,可以拿到jid
salt ‘*’ saltutil.find_job 20191209234219896309 ## 查看jid
salt ‘*’ saltutil.signal_job 20191209234219896309 9 ## 向job发送信号
salt ‘*’ saltutil.term_job 20191209234219896309 ## 终止job
salt ‘*’ saltutil.kill_job 20191209234219896309 ## 杀掉job
https://yangjinheng.github.io/2018/01/10/Linux/SaltStack/
https://docs.saltstack.com/en/latest/ref/cli/salt-minion.html
—salt-api 登陆
curl -ki https://10.100.246.14:8000/login -H ‘Accept: application/json’ -d username=’saltapi’ -d password=’devops20201125’ -d eauth=pam
—salt-api 指定身份执行目标机器脚本
curl -k https://10.100.246.14:8000/ -H “Accept: application/x-yaml” -H “X-Auth-Token: 89c24df1583fda13e259aff032ef46852074f7ae” -d client=’local’ -d tgt=’Test0669.htinns.loc’ -d fun=’cmd.run’ -d arg=’sh /opt/app/apache-tomcat-8.5.31/bin/startup.sh’ -d arg=’runas=fortadmin’
curl -k https://10.100.246.14:8000/ -H “Accept: application/x-yaml” -H “X-Auth-Token: c347d9e0da7a115eb314d9af31698c284c948747” -d client=’local’ -d tgt=’Test0669.htinns.loc’ -d fun=’javatomcat.deploy’ -d arg=’http://admin:2cLjkTwfnfujRg7g@10.100.244.186:8081/repository/huazhu_micropaas/huazhu/devop-vm/1.0/devop-vm-1.0-8-full.jar’ -d arg=’devop-vm’ -d arg=’/opt/app/backup’ -d arg=’/opt/app/apache-tomcat-8.5.31/webapps’ -d arg= ‘8080’ -d arg=’sh /opt/app/apache-tomcat-8.5.31/bin/startup.sh’ -d kwarg=’runas=fortadmin’
curl -k https://10.100.246.14:8000/ -H “Accept: application/json” -H “X-Auth-Token: c347d9e0da7a115eb314d9af31698c284c948747” -d client=’local’ -d tgt=’Test0669.htinns.loc’ -d fun=’javatomcat.deploy’ -d kwarg={“http://admin:2cLjkTwfnfujRg7g@10.100.244.186:8081/repository/huazhu_micropaas/huazhu/devop-vm/1.0/devop-vm-1.0-8-full.jar“,”devop-vm”,”/opt/app/backup”,”/opt/app/apache-tomcat-8.5.31/webapps”,”8080”,”sh /opt/app/apache-tomcat-8.5.31/bin/startup.sh”} -d arg={“runas”: “fortadmin”}
curl -k https://10.100.246.14:8000/ -H “Content-type: application/json” -H “X-Auth-Token: c347d9e0da7a115eb314d9af31698c284c948747” -d ‘[
{
“client”: “local”,
“tgt”: “Test0669.htinns.loc”,
“fun”: “javatomcat.deploy”,
“arg”: [“http://admin:2cLjkTwfnfujRg7g@10.100.244.186:8081/repository/huazhu_micropaas/huazhu/devop-vm/1.0/devop-vm-1.0-8-full.jar“,”devop-vm”,”/opt/app/backup”,”/opt/app/apache-tomcat-8.5.31/webapps”,”8080”,”sh /opt/app/apache-tomcat-8.5.31/bin/startup.sh”],
“kwarg”: {
“runas”: “fortadmin”
}
}
]’
[
{
“client”: “local”,
“tgt”: “Test0669.htinns.loc”,
“fun”: “javatomcat.deploy”,
“arg”: [“http://admin:2cLjkTwfnfujRg7g@10.100.244.186:8081/repository/huazhu_micropaas/huazhu/devop-vm/1.0/devop-vm-1.0-8-full.jar“,”devop-vm”,”/opt/app/backup”,”/opt/app/apache-tomcat-8.5.31/webapps”,”8080”,”sh /opt/app/apache-tomcat-8.5.31/bin/startup.sh”],
“kwarg”: {
“runas”: “fortadmin”
}
}
]
linux 下发脚本目录:
cd /srv/salt/_modules
windows下发脚本目录 :
C:\salt\var\cache\salt\minion\extmods\modules
curl -k https://10.100.246.14:8000/ -H “Accept: application/json” -H “X-Auth-Token: 792c1688a23df9ed4453cec3fc00a6bf4cd24438” -d client=’local’ -d client=“local” -d tgt=“windows_10.1.249.3” -d fun=“dotnetweb.healthcheck” -d arg=”http://localhost:8085/home/get”
curl -k https://10.100.64.27 -H “Content-type: application/json” -H “X-Auth-Token: 46cd67a26cfdbe798898ff595a86e5db41e8533a” -d client=“local_async” -d tgt=“hzvm0401” -d fun=“dotnetweb.offline” -d arg=”hzapp-api” -d arg=”C:/NLBSwitch/nlb.txt”
‘{
“client”:”local_async”,
“tgt”:”hzvm0401”,
“fun”:”dotnetweb.offline”,
“arg”:[“hzapp-api”,”C:/NLBSwitch/nlb.txt”]}’

