saltstack - 二次开发(三)
二次开发入门
saltstack 提供了二次开发,能够进行自定义命令,或自定义参数,已方便更加符合我们自身业务的使用。
一,自定义 grains 参数
1,进去 /srv/salt/base 目录
2,创建 _grains 目录
mkdir _grains
cd /srv/salt/base/_grains
3,创建 my_grains.py
#!/usr/bin/python
def my_grains():
grains = { 'test_name': 'andy', 'test_add': 'shanghai'}
return grains
4,下发该 py 脚本到 minion 主机上
salt '*' saltutil.sync_grains
命令执行后,脚本下发到 minion 主机的 /var/cache/salt/minion/extmods/grains 目录下。
5, 查看是否已经生效
salt '*' grains.item test_name test_add

二,自定义 salt 的命令
1,进入 /srv/salt/base 目录
2,创建 一个 _modules 目录
mkdir _modules
cd _modules
3,创建一个 my_disk.py的python 脚本
#!/usr/bin/python
def list():
cmd = 'df -h'
ret = __salt__['cmd.run'](cmd)
return ret
4,下发该 py 脚本到 minion 主机上
salt '*' saltutil.sync_modules
5, 查看是否已经生效
salt '*' my_disk.list


浙公网安备 33010602011771号