介绍
这篇文章给大家分享的是有关怎么获取zabbix上所有主机的IP和主机名的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
<强> zabbix
强>
zabbix ([' z& aelig biks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix服务器与可选组件zabbix代理。
zabbix服务器可以通过SNMP, zabbix代理,平,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux、Solaris、hp - ux、AIX、免费的BSD,开放的BSD, OS X等平台上。
下面通过代码给大家介绍获取zabbix上所有主机的IP和主机名、代码如下所示:
#编码:utf - 8 #获取zabbix上所有主机的IP和主机名 import 请求 import json import csv import 时间 def get_token (): data 才能=,{ ,,,“jsonrpc":,“2.0”, ,,,“method":,“user.login" ,,,“params":, { ,,,,,“user":,用户名, ,,,,,“password":密码 ,,,}, ,,,“id": 0 ,,} r 才能=,requests.get (zaurl,,头=头,data=https://www.yisu.com/zixun/json.dumps(数据)) auth=json.loads (r.text) 返回认证(“结果”) def getHosts(令牌): data={ “jsonrpc”:“2.0”, “方法”:“host.get”, " params ": { “输出”:( “hostid”, “主机” ), “selectInterfaces”:( “interfaceid”, “知识产权” ] }, “id”:2 “身份验证”:令牌, } 请求=请求。帖子(zaurl header=头,data=json.dumps(数据) dict=json.loads (request.content) #打印(dict['结果']) 返回dict类型(“结果”) if __name__==癬_main__”: zaurl=" http://xx.xx.xx.xx/zabbix/api_jsonrpc.php " 头={"内容类型”:“application/json "} 用户名=皒x” 密码=皒x” 令牌=get_token () hostlist=getHosts(令牌) 外部=" zabbix.txt " fdata=开放(功能,“w”) 因为我在hostlist: hostid=我(“hostid”) hostip=我['主机') fdata。写(hostip +‘+ hostid +/n) fdata.close ()
感谢各位的阅读!关于“怎么获取zabbix上所有主机的IP和主机名”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!