Saltstack之自定义grains

一直以来都以为Salt的grains够用,本身也就没去定义什么东西,不过此次有个不太合适的地方,就是主机名服务器

如今定义的主机名是bjXXX-mXpXXX-XXXX.XXXXabc.com这种形式,在zabbix的配置文件里显示的也是这种FQDN的形式(自动发现agent),因此看上去很是的长,以为很不合适。但经过 salt-call grains.items看也没什么合适的,因此就决定本身写个吧。socket

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

import socketutf-8

#coding=utf-8get


def shostname():同步

    grains={}it

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

    grains['shostname']=hostnameclass

    return grainsimport


这些完成之后就须要同步到各minion端salt '*' saltutil.sync_all 及刷新各minion端salt '*' sys.reload_modules,而后就能够经过grains.items看到相关的信息了。


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

相关文章
相关标签/搜索