Saltstack之自定义grains

一直以来都觉得Salt的grains够用,自己也就没去定义什么东西,不过这次有个不太合适的地方,就是主机名

现在定义的主机名是bjXXX-mXpXXX-XXXX.XXXXabc.com这种形式,在zabbix的配置文件里显示的也是这种FQDN的形式(自动发现agent),所以看上去非常的长,觉得很不合适。但通过 salt-call grains.items看也没什么合适的,所以就决定自己写个吧。

在salt服务器/etc/salt/下创建目录_grains,编写文件shostname.py,内容如下    

import socket

#coding=utf-8


def shostname():

    grains={}

    hostname = socket.gethostbyname_ex(socket.gethostname())[1][1]

    grains['shostname']=hostname

    return grains


这些完成以后就需要同步到各minion端salt '*' saltutil.sync_all 及刷新各minion端salt '*' sys.reload_modules,然后就可以通过grains.items看到相关的信息了。


东西非常的简单,主要是方便 。至于这个py脚本得出的主机名可能需要根据实际情况改下,这个脚本只是合适我这。


本文出自 “DavideyLee” 博客,谢绝转载!

你可能感兴趣的:(Saltstack之自定义grains)