Saltstack_使用指南13_runner的job和manage与execution的saltutil 5.1. master执行5.2. 查看当前活动的jobs
时间:2022-07-26
本文章向大家介绍Saltstack_使用指南13_runner的job和manage与execution的saltutil
5.1. master执行5.2. 查看当前活动的jobs,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1. 主机规划
salt 版本
1 [root@salt100 ~]# salt --version
2 salt 2018.3.3 (Oxygen)
3 [root@salt100 ~]# salt-minion --version
4 salt-minion 2018.3.3 (Oxygen)
job 管理文档
https://docs.saltstack.com/en/latest/topics/jobs/index.html
runner modules文档
Salt runners类似于Salt execution modules,但是前者是在master端执行的,后者是在minion端执行的。
1 https://docs.saltstack.com/en/latest/ref/cli/salt-run.html
2 https://docs.saltstack.com/en/latest/ref/runners/index.html
3 https://docs.saltstack.com/en/latest/ref/runners/all/index.html
execution modules文档
1 https://docs.saltstack.com/en/latest/ref/modules/all/index.html
2 https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.saltutil.html
注意事项
修改了master或者minion的配置文件,那么必须重启对应的服务。
2. salt-run jobs常用方法
1 # 返回正在活动中的jobs信息
2 salt-run jobs.active
3 # 列出所有可检测的jobs和相关functions
4 salt-run jobs.list_jobs
5 # 根据 jid 列出指定的job
6 salt-run jobs.list_job 20190111160734604439
7 # 返回以前执行job的打印输出【回看当时job输出的信息】
8 salt-run jobs.lookup_jid 20190111170928354082
示例信息如下
1 [root@salt100 ~]# salt-run jobs.active
2 20190111170928354082:
3 ----------
4 Arguments:
5 - df -h && sleep 30
6 Function:
7 cmd.run
8 Returned:
9 Running:
10 |_
11 ----------
12 salt01:
13 2640
14 StartTime:
15 2019, Jan 11 17:09:28.354082
16 Target:
17 salt01
18 Target-type:
19 glob
20 User:
21 root
22 20190111170930696130:
23 ----------
24 Arguments:
25 - whoami && sleep 30
26 Function:
27 cmd.run
28 Returned:
29 Running:
30 |_
31 ----------
32 salt01:
33 2646
34 StartTime:
35 2019, Jan 11 17:09:30.696130
36 Target:
37 salt01
38 Target-type:
39 glob
40 User:
41 root
42 [root@salt100 ~]# salt-run jobs.lookup_jid 20190111170928354082 # 显示信息如下
43 salt01:
44 Filesystem Size Used Avail Use% Mounted on
45 /dev/sda3 18G 2.1G 16G 12% /
46 devtmpfs 901M 0 901M 0% /dev
47 tmpfs 911M 12K 911M 1% /dev/shm
48 tmpfs 911M 9.6M 902M 2% /run
49 tmpfs 911M 0 911M 0% /sys/fs/cgroup
50 /dev/sda1 197M 113M 85M 58% /boot
51 tmpfs 183M 0 183M 0% /run/user/1001
3. salt-run manage常用方法
salt的常规管理功能,比如查看哪些hosts上线或下线
1 salt-run manage.list_state
2 salt-run manage.alived
3 salt-run manage.status
4 salt-run manage.down
5 salt-run manage.up
6 salt-run manage.versions
4. saltutil模块
1 # 返回minion端正在执行salt 进程的数据
2 salt '*' saltutil.running
3 # 杀掉指定 jid【jobID】进程
4 salt '*' saltutil.kill_job 20190111180228662382
示例信息
1 [root@salt100 ~]# salt '*' saltutil.running
2 salt03:
3 salt01:
4 |_
5 ----------
6 arg:
7 - whoami && sleep 300
8 fun:
9 cmd.run
10 jid:
11 20190111175718092279
12 pid:
13 2825
14 ret:
15 tgt:
16 salt01
17 tgt_type:
18 glob
19 user:
20 root
21 salt02:
22 salt100:
23 [root@salt100 ~]# salt '*' saltutil.kill_job 20190111180228662382
24 salt03:
25 salt02:
26 salt100:
27 salt01:
28 Signal 9 sent to job 20190111180228662382 at pid 2882
5. 实战应用
5.1. master执行
1 [root@salt100 master]# salt 'salt01' cmd.run 'whoami && sleep 300' # 执行后,然后 Ctrl+C 终端
2 ^C
3 Exiting gracefully on Ctrl-c
4 This job's jid is: 20190111223139879350
5 The minions may not have all finished running and any remaining minions will return upon completion. To look up the return data for this job later, run the following command:
6
7 salt-run jobs.lookup_jid 20190111223139879350
8 [root@salt100 master]#
9 [root@salt100 master]# salt '*' cmd.run 'whoami && sleep 300' # 第二次执行
5.2. 查看当前活动的jobs
通过如下方式查看可知,虽然之前 Ctrl + C 了,但是minion端还是在执行相应的进行。
5.2.1. 方式一
1 [root@salt100 ~]# salt-run jobs.active
2 20190111223139879350:
3 ----------
4 Arguments:
5 - whoami && sleep 300
6 Function:
7 cmd.run
8 Returned:
9 Running:
10 |_
11 ----------
12 salt01:
13 3458
14 StartTime:
15 2019, Jan 11 22:31:39.879350
16 Target:
17 salt01
18 Target-type:
19 glob
20 User:
21 root
22 20190111223234549650:
23 ----------
24 Arguments:
25 - whoami && sleep 300
26 Function:
27 cmd.run
28 Returned:
29 Running:
30 |_
31 ----------
32 salt02:
33 2840
34 |_
35 ----------
36 salt03:
37 2835
38 |_
39 ----------
40 salt100:
41 40929
42 |_
43 ----------
44 salt01:
45 3500
46 StartTime:
47 2019, Jan 11 22:32:34.549650
48 Target:
49 *
50 Target-type:
51 glob
52 User:
53 root
5.2.2. 方式二
1 [root@salt100 ~]# salt '*' saltutil.running
2 salt100:
3 |_
4 ----------
5 arg:
6 - whoami && sleep 300
7 fun:
8 cmd.run
9 jid:
10 20190111223234549650
11 pid:
12 40929
13 ret:
14 tgt:
15 *
16 tgt_type:
17 glob
18 user:
19 root
20 salt02:
21 |_
22 ----------
23 arg:
24 - whoami && sleep 300
25 fun:
26 cmd.run
27 jid:
28 20190111223234549650
29 pid:
30 2840
31 ret:
32 tgt:
33 *
34 tgt_type:
35 glob
36 user:
37 root
38 salt03:
39 |_
40 ----------
41 arg:
42 - whoami && sleep 300
43 fun:
44 cmd.run
45 jid:
46 20190111223234549650
47 pid:
48 2835
49 ret:
50 tgt:
51 *
52 tgt_type:
53 glob
54 user:
55 root
56 salt01:
57 |_
58 ----------
59 arg:
60 - whoami && sleep 300
61 fun:
62 cmd.run
63 jid:
64 20190111223139879350
65 pid:
66 3458
67 ret:
68 tgt:
69 salt01
70 tgt_type:
71 glob
72 user:
73 root
74 |_
75 ----------
76 arg:
77 - whoami && sleep 300
78 fun:
79 cmd.run
80 jid:
81 20190111223234549650
82 pid:
83 3500
84 ret:
85 tgt:
86 *
87 tgt_type:
88 glob
89 user:
90 root
5.3. kill 对应的salt进程
1 [root@salt100 ~]# salt '*' saltutil.kill_job 20190111223139879350
2 salt02:
3 salt03:
4 salt100:
5 salt01:
6 Signal 9 sent to job 20190111223139879350 at pid 3458
——————END——————
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 聊聊claudb的zset command
- 腾讯云语音识别v1签名算法详解
- MySQL案例:关于JSON的一个bug
- Confluence 如何查看页面树
- 聊聊claudb的pubsub command
- Nginx证书和Tomcat证书能相互转化吗,请看这里
- 你真的理解 Webpack?请回答下列问题
- docker浅入深出3
- 绘图代码|多组学数据可视化的高端玩法
- Java单元测试——Mock技术配置
- 简单的场景分析LinearLayout 源码
- 避免栽坑之掌握Jenkins工作原理
- 如何检测JavaScript中的死循环?
- vue插槽2.6.0+
- 聊聊claudb的transaction command