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腳本得出的主機名可能需要根據實際情況改下,這個腳本只是合適我這。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章