目的: 获取zabbix中所有监控的机器主机的IP信息
方法1 使用zabbix API 接口 python 程序
方法2 直接使用数据库进行查询 导出(ip 包括monitor和not monitor的机器,还有为删除的一些残留机器ip)
这里使用方法二来介绍
mysql -uUSERNAME -pPASSWORD 登入mysql
mysql> use zabbix 选定 *** 作zabbix 库
mysql> select from interface limit 1,10; 查看接口信息的表,表中一个字段是IP地址 (hosts 表中有 host 和name 字段,但是没有接口IP 字段)
+-------------+--------+------+------+-------+----------------+-----+-------+
| interfaceid | hostid | main | type | useip | ip | dns | port |
+-------------+--------+------+------+-------+----------------+-----+-------+
| 255 | 10361 | 1 | 1 | 1 | 19216821321 | | 10050 |
| 256 | 10362 | 1 | 1 | 1 | 19216821322 | | 10050 |
| 257 | 10363 | 1 | 1 | 1 | 19216821323 | | 10050 |
| 258 | 10364 | 1 | 1 | 1 | 19216821324 | | 10050 |
| 259 | 10365 | 1 | 1 | 1 | 19216821325 | | 10050 |
| 261 | 10367 | 1 | 1 | 1 | 19216821327 | | 10050 |
| 262 | 10368 | 1 | 1 | 1 | 19216821328 | | 10050 |
| 263 | 10369 | 1 | 1 | 1 | 19216821329 | | 10050 |
| 264 | 10370 | 1 | 1 | 1 | 19216821330 | | 10050 |
| 265 | 10371 | 1 | 1 | 1 | 19216821331 | | 10050 |
+-------------+--------+------+------+-------+----------------+-----+-------+
mysql> select from interface into outfile '/tmp/zabbixip'; 已文本形式导出这个表(注意导出的路径 登入数据库用户必须,对这个路径有写的权限,/tmp权限777)
Zabbix API 的使用流程
使用 API 的基本步骤
连接 >
Zabbix通过专用的Agent或者SNMP收集相关的监控数据,然后存储到数据库里面实时在前台展示。Zabbix监控数据主要分为以下两类: 历史数据:history相关表,从history_uint表里面可以查询到设备监控项目的最大,最小和平均值,即存储监控数据的原始数
第一种方法:通过API进行数据交互,比较繁琐。
Zabbix使用Json格式的API,官方文档在这里:网页链接
使用Java通过>
第二种方法:通过数据库直接交互。速度更快。
但也需要看上面的文档。API就相当于数据库了。
这里需要的就是通过Java连接Zabbix数据库,通过视图等方式直接读取信息。
以上就是关于如何获取zabbix以监控的所有机器IP全部的内容,包括:如何获取zabbix以监控的所有机器IP、使用Python调用Zabbix API获取SESSIONID、如何通过Zabbix获取监控数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)