自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表、Hosts_groups表、Interface表
自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表、Hosts_groups表、Interface表
说在前面:
- 数据库中的表的名称都是复数,比如存放Host信息的表的名字是Hosts等。
- 数据库操作有风险,一旦出问题会造成Zabbix crash。需要谨慎操作。
- 普通的查询可以在备库上进行。两边数据是实时同步的。
概述:
- Zabbix数据库共有108个表,表的名称都是复数的。
- 针对Zabbix中的每一个资源,都有一张表与其对应,比如hosts表,items表等。
- 每一张表中都有一个id字段,如hosts表中的hostid,items中的itemid等。而资源之间的关联关系是通过外键来完成的。
- 资源之间的关联关系是通过外键来完成的。比如host和item的关联关系,就是在items表中使用hostid与hosts表中的资源进行关联。
1. Hosts表
“host”就是一台被监控的对象。
Hosts表结构如下:

- Hostid:唯一标识Host在Zabbix及数据库中的id。不同表之间的关联也要用id。
- Proxy_hostid:若启用“proxy-server”架构,才会出现被监控机器的proxy_hostid。
- Host:被监控机器的名字。
- Dns:DNS的名称。
- Useip:是否用ip监控。
- Port:监控的端口。
- Status:机器目前的状态。“0”为正常监控,“1”为disable。
- disable_util,error,available,errors_from(ipmi_disable_util,ipmi_error…和 snmp_disable_until…都是此类):这几个都是Zabbix Poller会去修改的值。我看了下poller.c的代码,当poller在第一次取不到值(根据值的类型不同会更新相应的列,Item类型为snmp就会更新snmp_XXX,默认为“zabbix”类型)的时候,会等15秒(CONFIG_UNREACHABLE_DELAY)来重试,并且日志会显示“first network error”,如果15秒后依然取不到值,zabbix会在数据库更新这个host取不到值的信息,即这几列。并且日志里显示“another network error”。
- Lastacess:表示proxy最后一次工作的时间。这里的“工作”指Zabbix Server收到Proxy数据。
- Ipmi*、snmp*、jmx*为使用这三种监控方式时的监控记录。
- maintenanceid,maintenance_*:这是Zabbix另一个机制Maintaince有关,用于使Host 置于维护状态而不会报警。
简单针对Host的操作:
更新机器的proxy。找到proxy的hostid,更新对用host的proxy_hostid:
select hostid from hosts where host='ProxyA' and ip='0.0.0.0'; -- get hostid: 1234
update hosts set proxy_hostid=1234 where host='Host_To_Update_Proxy';
得到更新的Host状态(enable/disable)如下:
update hosts set status='0' where host='Host_To_Enable';
update hosts set status='1' where host='Host_To_Disable';
2.Hosts_groups 表
hosts_groups保存了host(主机)与host groups(主机组)的关联关系。
这部分信息可以在我们自己做一些批量查询,例如查询关联到某个主机组的所有设备的IP 、存活状态等,进一步去查询该批量设备的load、IO、mem等统计信息。

3.Interface表
Interface表用于存储每一个host的接口信息,此表与hosts表分离,方便了用户修改信息与管理。

自学Zabbix之路15.1 Zabbix数据库表结构简单解析-Hosts表、Hosts_groups表、Interface表的更多相关文章
- 15.5 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表
点击返回:自学Zabbix之路 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表 1. Actions表 actions表记录了当触发器触发时,需要采用的动作. 2.Aler ...
- 自学Zabbix之路15.2 Zabbix数据库表结构简单解析-Items表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.2 Zabbix数据库表结构简单解析-Items表 Items表记录了i ...
- 自学Zabbix之路15.3 Zabbix数据库表结构简单解析-Triggers表、Applications表、 Mapplings表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.3 Zabbix数据库表结构简单解析-Triggers表.Applica ...
- 自学Zabbix之路15.4 Zabbix数据库表结构简单解析-Expressions表、Media表、 Events表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.4 Zabbix数据库表结构简单解析-Expressions表.Medi ...
- 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表 1. Actions表 ...
- 自学Python之路-Python并发编程+数据库+前端
自学Python之路-Python并发编程+数据库+前端 自学Python之路[第一回]:1.11.2 1.3
- activiti数据库表结构全貌解析
http://www.jianshu.com/p/e6971e8a8dad 下面本人介绍一些activiti这款开源流程设计引擎的数据库表结构,首先阐述:我们刚开始接触或者使用一个新的东西(技术)时我 ...
- Oracle数据库的表结构 简单表的建立
- 25 Zabbix系统数据表结构介绍
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 25 Zabbix系统数据表结构介绍 自学Zabbix之路15.1 Zabbix数据库表结构简单解 ...
随机推荐
- 解决 在Android开发上使用KSOAP2上传大图片到服务器经常报错的问题
原文首发我的主力博客 http://anforen.com/wp/2017/04/android_ksoap2_unexpected_type_position_end_document_null_j ...
- nginx 安装问题
yum -y install xxx pcre-devel openssl-devel zlib-devel 这个三个包需要 有时候,我们需要单独安装nginx,来处理大量的下载请求.单独在 ...
- JVM规范系列:总结
我们花了几天的时间来阅读<Java虚拟机规范>,了解要实现一个虚拟机应该包括什么内容.通过这么一次阅读,我们大致了解了虚拟机规范的内容. 第1章.对Java虚拟机进行了一些简单的介绍. 第 ...
- CentOS上yum方式安装配置LNMP
实验环境 一台最小化安装的CentOS 7.3虚拟机 安装软件包 yum install -y epel-* yum install -y nginx mariadb-server php php-m ...
- CentOS安装noVNC,以Web方式交付VNC远程连接
什么是noVNC noVNC 是一个 HTML5 VNC 客户端,采用 HTML 5 WebSockets, Canvas 和 JavaScript 实现,noVNC 被普遍用在各大云计算.虚拟机控制 ...
- slurmdbd.conf系统初始配置
# Archive info ArchiveJobs=yes ArchiveDir=/usr/local/globle/softs/slurm/16.05.3/archive/ ArchiveStep ...
- Tomcat通过Redis实现session共享的完整部署记录
对于生产环境有了一定规模的tomcat集群业务来说,要实现session会话共享,比较稳妥的方式就是使用数据库持久化session.为什么要持久化session(共享session)呢?因为在客户端每 ...
- Nginx支持WebSocket反向代理-学习小结
WebSocket是目前比较成熟的技术了,WebSocket协议为创建客户端和服务器端需要实时双向通讯的webapp提供了一个选择.其为HTML5的一部分,WebSocket相较于原来开发这类app的 ...
- 《Linux及安全》课程实践二
编译生成新内核 一.实践原理 Linux模块是一些可以作为独立程序来编译的函数和数据类型的集合.之所以提供模块机制,是因为Linux本身是一个单内核.单内核由于所有内容都集成在一起,效率很高,但可扩展 ...
- ros-安装
1.安装了ubuntu for ros. 运行评论下边那条命令: 2.rtabamp 3.准备安装机器人导航仿真系统:https://blog.csdn.net/wangchao7281/articl ...