Saltstack_使用指南09_远程执行-编写执行模块
1. 主机规划
salt 版本
- [root@salt100 ~]# salt --version
- salt 2018.3. (Oxygen)
- [root@salt100 ~]# salt-minion --version
- salt-minion 2018.3. (Oxygen)
编写执行模块文档
- https://docs.saltstack.com/en/latest/ref/modules/index.html # 文档上的稍有些复杂
注意事项
修改了master或者minion的配置文件,那么必须重启对应的服务。
2. 自编写模块注意事项
- 模块编写:
- 、存放位置:/srv/salt/_modules # 注意位置
- 、命名:文件名就是模块名 例如:my_disk.py
- 、刷新 salt '*' saltutil.sync_modules
3. 案例
在 salt 的 master 机器上编写module,并同步给所有的minion
- [root@salt100 _modules]# pwd
- /srv/salt/_modules
- [root@salt100 _modules]# cat my_disk.py # 自编写的模块信息
- #!/usr/bin/env python3
- # -*- coding:utf- -*-
- # Author:Zhang Liang
- def list():
- cmd = 'df -h'
- ret = __salt__['cmd.run'](cmd)
- return ret
- [root@salt100 _modules]# salt '*' saltutil.sync_modules # 同步module 到所有的minion端
- salt02:
- - modules.my_disk
- salt01:
- - modules.my_disk
- salt03:
- - modules.my_disk
- salt100:
- - modules.my_disk
同步模块后文件在 minion 端的位置
- [root@salt01 salt]# pwd
- /var/cache/salt
- [root@salt01 salt]# tree
- .
- └── minion
- ├── accumulator
- ├── extmods
- │ ├── grains
- │ │ ├── my_grains.py
- │ │ └── my_grains.pyc
- │ └── modules
- │ └── my_disk.py # 同步模块存在的位置
- ├── files
- │ └── base
- │ ├── _grains
- │ │ └── my_grains.py
- │ ├── _modules
- │ │ └── my_disk.py
- │ ├── top.sls
- │ └── web
- │ └── apache.sls
- ├── highstate.cache.p
- ├── module_refresh
- ├── proc
- └── sls.p
- directories, files
在 master 操作自定义的 module
- [root@salt100 _modules]# salt '*' my_disk.list
- salt01:
- Filesystem Size Used Avail Use% Mounted on
- /dev/sda3 18G .1G 16G % /
- devtmpfs 901M 901M % /dev
- tmpfs 911M 12K 911M % /dev/shm
- tmpfs 911M 9.6M 902M % /run
- tmpfs 911M 911M % /sys/fs/cgroup
- /dev/sda1 197M 113M 85M % /boot
- tmpfs 183M 183M % /run/user/
- salt100:
- Filesystem Size Used Avail Use% Mounted on
- /dev/sda3 18G .1G 16G % /
- devtmpfs 901M 901M % /dev
- tmpfs 911M 28K 911M % /dev/shm
- tmpfs 911M 9.6M 902M % /run
- tmpfs 911M 911M % /sys/fs/cgroup
- /dev/sda1 197M 113M 85M % /boot
- tmpfs 183M 183M % /run/user/
- salt03:
- Filesystem Size Used Avail Use% Mounted on
- /dev/sda3 18G .0G 16G % /
- devtmpfs 901M 901M % /dev
- tmpfs 911M 12K 911M % /dev/shm
- tmpfs 911M 9.5M 902M % /run
- tmpfs 911M 911M % /sys/fs/cgroup
- /dev/sda1 197M 113M 85M % /boot
- salt02:
- Filesystem Size Used Avail Use% Mounted on
- /dev/sda3 18G .0G 16G % /
- devtmpfs 901M 901M % /dev
- tmpfs 911M 12K 911M % /dev/shm
- tmpfs 911M 9.6M 902M % /run
- tmpfs 911M 911M % /sys/fs/cgroup
- /dev/sda1 197M 113M 85M % /boot
- tmpfs 183M 183M % /run/user/
Saltstack_使用指南09_远程执行-编写执行模块的更多相关文章
- Saltstack_使用指南07_远程执行-执行模块
1. 主机规划 远程执行教程文档 https://docs.saltstack.com/en/latest/topics/tutorials/modules.html 所有模块文档 https://d ...
- Saltstack_使用指南02_远程执行-验证
1. 主机规划 2. Master与哪些minion通信 2.1. Master与哪些minion正常通信 [root@salt100 ~]# salt '*' test.ping salt100: ...
- Saltstack_使用指南08_远程执行-返回程序
1. 主机规划 salt 版本 [root@salt100 ~]# salt --version salt (Oxygen) [root@salt100 ~]# salt-minion --versi ...
- Saltstack_使用指南06_远程执行-指定目标
1. 主机规划 Targeting Minions文档 https://docs.saltstack.com/en/latest/contents.html 另请参见:自动化运维神器之saltstac ...
- Python 实现远程服务器批量执行命令
paramiko 远程控制介绍 Python paramiko是一个相当好用的远程登录模块,采用ssh协议,可以实现linux服务器的ssh远程登录.首先来看一个简单的例子 import parami ...
- 【shell--批量远程MySQL,执行命令】-【工作总结】
昨天下班前,老板给了一批LOG数据库IP地址,需要统计LOG表里Message字段top 10的结果,并输出到一个excel文件里.抽查看了下,有两种格式的以当天日期结尾的表名.由于数量太多,时间紧迫 ...
- WordPress wp-includes/functions.php脚本远程任意代码执行漏洞
漏洞名称: WordPress wp-includes/functions.php脚本远程任意代码执行漏洞 CNNVD编号: CNNVD-201309-166 发布时间: 2013-09-13 更新时 ...
- Struts 2最新0day破坏性漏洞(远程任意代码执行)等的重现方法
Struts 2的远程任意代码执行和重定向漏洞,是这两天互联网上最重大的安全事件,据说国内互联网企业中,很多电商纷纷中招,应该已经有大规模的用户隐私泄露.这里我们简单总结下怎样在自己机子上重现这些漏洞 ...
- 判断ssh远程命令是否执行结束
注:这是一个没什么鸟用的功能.不过也算是一种拓展. 通常在那些"一键化部署"的shell脚本中,可能需要使用ssh执行远程命令来实现一些简单的自动化,这些远程命令可能需要执行一段时 ...
随机推荐
- HotStuff共识协议详解
1. 前言 HotStuff提出了一个三阶段投票的BFT类共识协议,该协议实现了safety.liveness.responsiveness特性.通过在投票过程中引入门限签名实现了O(n)的消息验证复 ...
- UILabel(label控件)的详细使用及特殊效果
转自:http://blog.sina.com.cn/s/blog_af73e7a70101ahlm.html UILabel *label = [[UILabelalloc] initWithFra ...
- HDU3247 Resource Archiver (AC自动机+spfa+状压DP)
Great! Your new software is almost finished! The only thing left to do is archiving all your n resou ...
- BZOJ 3033 太鼓达人(DFS+欧拉回路)
Description 七夕祭上,Vani牵着cl的手,在明亮的灯光和欢乐的气氛中愉快地穿行.这时,在前面忽然出现了一台太鼓达人机台,而在机台前坐着的是刚刚被精英队伍成员XLk.Poet_shy和ly ...
- Coderfocers-616c
You are given a rectangular field of n × m cells. Each cell is either empty or impassable (contains ...
- HDU1885 Key Task
The Czech Technical University is rather old — you already know that it celebrates 300 years of its ...
- Koa - 中间件(理解中间件、实现一个验证token中间件)
前言 Koa 应用程序是一个包含一组中间件函数的对象,它是按照类似堆栈的方式组织和执行的. 当一个中间件调用 next() 则该函数暂停并将控制传递给定义的下一个中间件.当在下游没有更多的中间件执行后 ...
- Selenium之显式、隐式等待
selenium自动化页面元素存在异常发生的原因有以下几点: ① 页面加载时间过慢,需要查找的元素程序已经完成,但是页面还未加载成功.此时可以加载页面等待时间. ② 查找的元素没有在当前的iframe ...
- 插入排序 C&&C++
(blog主要用于展示算法流程) 插入排序算法:通过对未排序的数据逐个插入合适的位置而完成排序工作 流程: (1)先对数组前两个数据进行从小到大排序 (2)将第三个数据与前两个数据比较,将 ...
- 基于RT-Thread的开源飞控StarryPilot
背景描述 近年来无人机应用市场日趋火热,无人机开始被应用在多个领域之中,比如航拍,植保,运输,安防等.随着应用场景的增加,对于无人机的大脑一飞控,的性能和功能要求也变得越来越高.国内具有一大批优质的无 ...