研究可执行模块的时候,发现很多自带的模块已经很完善,可以帮助我们完成日常工作了,这里写入自己的记录操作:
1、使用salt.clien调用接口操作举例:
1
2
3
4
5
|
>>>
import
salt.client
>>> client
=
salt.client.LocalClient()
>>> ret
=
client.cmd(
'*'
,
'test.ping'
)
>>> ret
{
'monitor'
:
True
}
|
我们看到调用了LocalClient()这个函数之后,等于我们执行的命令 salt '*' test.ping.运用这个接口我们可以灵活的再调用模块开发时候使用
2、status模块
刚发现这个模块,原来想做系统监控时候用Mine调用,现在发现这个模块也是蛮适合的,可以监控,cpu、内存、硬盘、网络,等一些我们日常信息:可以查看模块源码:/usr/lib/python2.6/site-packages/salt/modules/status.py。
源码片段,下面是我们可以操作的函数。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
def
all_status():
... ... ...
return
{
'cpuinfo'
: cpuinfo(),
'cpustats'
: cpustats(),
'diskstats'
: diskstats(),
'diskusage'
: diskusage(),
'loadavg'
: loadavg(),
'meminfo'
: meminfo(),
'netdev'
: netdev(),
'netstats'
: netstats(),
'uptime'
: uptime(),
'vmstats'
: vmstats(),
'w'
: w()}
|
使用方法:
1
2
3
|
[root@mail python]
# salt '*' status.uptime
monitor:
11
:
40
:
50
up
23
days,
23
:
24
,
1
user, load average:
0.00
,
0.00
,
0.00
|
api接口调用方法:
1
2
|
>>> client.cmd(
'*'
,
'status.uptime'
)
{
'monitor'
:
' 11:41:52 up 23 days, 23:25, 1 user, load average: 0.00, 0.00, 0.00'
}
|
3、system
1
2
3
4
5
6
|
system模块主要是用来做日常操作计算机维护记录,源码也在上面的位置下:
system.halt
#停止正在运行的系统
system.init
3
#切换到字符界面,5是图形界面
system.poweroff
system.reboot
system.shutdown
|
操作方法:不演示:
4、systemd
系统管理模块,这个也是一个非常有用的功能,我们可以用来检测我们的服务是否已经启动,源码自己查看:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
service.available sshd
#查看服务是否可用
service.disable <service name>
#设置开机启动的服务
service.enable <service name>
service.disabled <service name>
#查看服务是不是开机启动
service.enabled <service name>
service.get_disabled
#返回所有关闭的服务
service.get_enabled
#返回所有开启的服务
service.get_all
#返回所有服务
service.
reload
<service name>
#重新载入指定的服务
service.restart <service name>
#重启服务
service.start <service name>
service.stop <service name>
service.status <service name>
service.force_reload <service name>
#强制载入指定的服务
|
使用方法:
1
2
3
|
[root@mail python]
# salt '*' service.available sshdmonitor: True
api调用:
>>> client.cmd(
'*'
,
'service.available'
,[
'sshd'
]){
'monitor'
:
True
}
|
本文转自 小罗ge11 51CTO博客,原文链接:http://blog.51cto.com/xiaoluoge/1615905,如需转载请自行联系原作者