编写自己的模块代码
默认路径为/srv/salt/_modules,但是更改了环境位置,现在路径是在/etc/salt/states,新增一个_modules目录

saltutil.sync_all或者saltutil.sync_modules同步:

执行所写hello3模块:

查看系统salt自带useradd模块:

1
cat  /usr/lib/python2.6/site-packages/salt/modules/useradd.py

编写一个完整的模块
作为系统管理员我们可能经常需要查出当前系统最占用内存的程序以及当前系统中最占用
CPU的程序,当然通过salt的远程执行模块cmd.run用一行命令即可完成任务,但是作为一个
会被反复使用的功能,我们把它写成一个模块会更便捷,下面动手写一个统计系统负载的模块

1
2
3
4
5
6
7
8
9
10
11
12
13
cd /srv/salt/_modules
[root@localhost _modules]# cat test1.py
#!/usr/bin/python
import time
import os
def date():
return time.time()
def foo():
cmd=['df', '-h']

return __salt__['cmd.run'](cmd,python_shell=False)
def get_osfinger():
return __grains__['osfinger']

salt ‘*’ saltutil.sync_all #同步

实战使用:salt ‘*’ test1.foo

Comments

2017-03-02