新聞中心
服務(wù)器
這篇文章給大家分享的是有關(guān)怎么獲取zabbix上所有主機的IP和主機名的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
zabbix
zabbix([`zæbiks])是一個基于WEB界面的提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級的開源解決方案。
zabbix能監(jiān)視各種網(wǎng)絡(luò)參數(shù),保證服務(wù)器系統(tǒng)的安全運營;并提供靈活的通知機制以讓系統(tǒng)管理員快速定位/解決存在的各種問題。
zabbix由2部分構(gòu)成,zabbix server與可選組件zabbix agent。
zabbix server可以通過SNMP,zabbix agent,ping,端口監(jiān)視等方法提供對遠程服務(wù)器/網(wǎng)絡(luò)狀態(tài)的監(jiān)視,數(shù)據(jù)收集等功能,它可以運行在Linux,Solaris,HP-UX,AIX,F(xiàn)ree BSD,Open BSD,OS X等平臺上。
下面通過代碼給大家介紹獲取zabbix上所有主機的IP和主機名,代碼如下所示:
#coding:utf-8#獲取zabbix上所有主機的IP和主機名importrequestsimportjsonimportcsvimporttimedefget_token():data={"jsonrpc":"2.0","method":"user.login","params":{"user":username,"password":password},"id":0}r=requests.get(zaurl,headers=header,data=json.dumps(data))auth=json.loads(r.text)returnauth["result"]defgetHosts(token):data={"jsonrpc":"2.0","method":"host.get","params":{"output":["hostid","host"],"selectInterfaces":["interfaceid","ip"]},"id":2,"auth":token,}request=requests.post(zaurl,headers=header,data=json.dumps(data))dict=json.loads(request.content)#print(dict['result'])returndict['result']if__name__=="__main__":zaurl="http://xx.xx.xx.xx/zabbix/api_jsonrpc.php"header={"Content-Type":"application/json"}username="xx"password="xx"token=get_token()hostlist=getHosts(token)datafile="zabbix.txt"fdata=open(datafile,'w')foriinhostlist:hostid=i['hostid']hostip=i['host']fdata.write(hostip+''+hostid+'\\n')fdata.close()感謝各位的閱讀!關(guān)于“怎么獲取zabbix上所有主機的IP和主機名”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
文章題目:怎么獲取zabbix上所有主機的IP和主機名
文章出自:http://www.dlmjj.cn/article/cgsosd.html