温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SaltStack-job管理

发布时间:2020-07-04 03:35:41 来源:网络 阅读:1193 作者:wx325 栏目:数据库

一、salt执行结果默认返回给master端

1、job cache

存放位置

# Directory to store job and cache data: # This directory may contain sensitive data and should be protected accordingly. # #cachedir: /var/cache/salt/master # Set the number of hours to keep old job information in the job cache: #keep_jobs: 24 # The number of seconds to wait when the client is requesting information # about running jobs. #gather_job_timeout: 10

2、将cache存入数据库

(1)安装数据库连接模块

安装连接mysql的模块MySQL-python yum install -y MySQL-python

(2)配置数据库连接

在master上配置连接

直接在master的配置文件后面追加内容 vim /etc/salt/master master_job_cache: mysql mysql.host: '192.168.56.11' mysql.user: 'salt' mysql.pass: '123456' mysql.db: 'salt' mysql.port: 3306

(3)重启salt-master

systemctl restart master

(4)验证是否写入数据库

执行如下命令 [root@linux-node1 /srv/salt/prod/bbs]# salt '*' cmd.run 'whoami' linux-node2.example.com:     root linux-node1.example.com:     root
登录数据库 mysql -h 192.168.56.11 -usalt -p123456 MariaDB [(none)]> use salt; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A *************************** 9. row ***************************        fun: cmd.run        jid: 20161109091010973295     return: "root"         id: linux-node2.example.com    success: 1   full_ret: {"fun_args": ["whoami"], "jid": "20161109091010973295", "return": "root", "retcode": 0, "success": true, "cmd": "_return", "_stamp": "2016-11-09T01:10:11.064745", "fun": "cmd.run", "id": "linux-node2.example.com"} alter_time: 2016-11-09 09:10:11 *************************** 10. row ***************************        fun: cmd.run        jid: 20161109091010973295     return: "root"         id: linux-node1.example.com    success: 1   full_ret: {"fun_args": ["whoami"], "jid": "20161109091010973295", "return": "root", "retcode": 0, "success": true, "cmd": "_return", "_stamp": "2016-11-09T01:10:11.146238", "fun": "cmd.run", "id": "linux-node1.example.com"} alter_time: 2016-11-09 09:10:11 10 rows in set (0.00 sec)

3、job查看

先执行一个命令,比如

salt '*' cmd.run 'ping www.baidu.com'

在执行job查看命令

[root@linux-node1 ~]# salt '*' saltutil.running linux-node2.example.com:     |_       ----------       arg:           - ping www.baidu.com       fun:           cmd.run       jid:           20161109091517283293       pid:           6049       ret:       tgt:           *       tgt_type:           glob       user:           root linux-node1.example.com:     |_       ----------       arg:           - ping www.baidu.com       fun:           cmd.run       jid:           20161109091517283293       pid:           6269       ret:       tgt:           *       tgt_type:           glob       user:           root

停止job,可以使用如下方法

[root@linux-node1 ~]# salt '*' saltutil.kill_job 20161109091517283293 linux-node2.example.com:     Signal 9 sent to job 20161109091517283293 at pid 6049 linux-node1.example.com:     Signal 9 sent to job 20161109091517283293 at pid 6269 [root@linux-node1 ~]# salt '*' saltutil.running linux-node2.example.com: linux-node1.example.com:

4、master端cache

存放位置

[root@linux-node1 /var/cache/salt/master]# ls file_lists  jobs  minions  proc  queues  roots  syndics  tokens [root@linux-node1 /var/cache/salt/master]# pwd /var/cache/salt/master [root@linux-node1 /var/cache/salt/master]# tree . ├── file_lists │   └── roots │       ├── base.p │       └── prod.p ├── jobs │   ├── 6c │   │   └── 9f646ec75df0bd0ec29760ef0dee7a │   │       ├── jid │   │       └── linux-node1.example.com │   │           └── return.p │   ├── 90 │   │   └── d3646e58dd82e103973eb889af96d1 │   │       └── jid │   ├── d4 │   │   └── 74a5b7f1ebf41c84c714d2ad8fda85 │   │       ├── jid │   │       └── linux-node1.example.com │   │           └── return.p │   └── e3 │       └── d2ffbc8e72a923205126c07c9e1e55 │           ├── jid │           └── linux-node1.example.com │               └── return.p

二、jobs管理组件

一个方便管理jobs的系统:runners.jobs

列出job cache中的job [root@linux-node1 /var/cache/salt/master]# salt-run jobs.list_jobs [WARNING ] /usr/lib/python2.7/site-packages/salt/grains/core.py:1493: DeprecationWarning: The "osmajorrelease" will be a type of an integer. 20161109090923312794:     ----------     Arguments:         - whoami     Function:         cmd.run     StartTime:         2016, Nov 09 09:09:23.312794     Target:         *     Target-type:         glob     User:         root

查看某个job的返回

[root@linux-node1 ~]# salt-run jobs.lookup_jid 20161109093137760714 linux-node1.example.com:     PING www.a.shifen.com (119.75.218.70) 56(84) bytes of data.     64 bytes from 119.75.218.70: icmp_seq=1 ttl=128 time=9.78 ms     64 bytes from 119.75.218.70: icmp_seq=2 ttl=128 time=4.65 ms     64 bytes from 119.75.218.70: icmp_seq=3 ttl=128 time=8.26 ms          --- www.a.shifen.com ping statistics ---     3 packets transmitted, 3 received, 0% packet loss, time 2010ms     rtt min/avg/max/mdev = 4.657/7.569/9.786/2.150 ms

可以使用salt-run查看当前up和down的minion

[root@linux-node1 ~]# salt-run manage.status down: up:     - linux-node1.example.com     - linux-node2.example.com


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI