我已经安装了Zabbix 4.0用于远程监控Linux服务器。我的初步理解是Zabbix-agent监控服务器并将数据发送到Mysql数据库进行存储。Zabbix前端从Mysql数据库中检索数据,并显示上述指标(以图形形式),如附件图像所示。
现在,我不想直接从网络界面查看,而是想从像CPU使用率/负载
、内存使用率
、硬盘使用情况
和流量进出
这样的指标中构建ML模型。我检查了Mysql数据库中所有表
的所有列
,试图检索上述指标。然而,我没有找到任何存储这些指标的列或表。我的第二个理解是Zabbix前端通过Mysql数据库表中存储的列间接构建这些图形上的指标。
- 我想知道我的两种理解是否正确。
- 如果我的两种理解都是正确的,我想知道如何从存储在Mysql数据库中的数据中提取
CPU使用率/负载
、内存使用率
、硬盘使用情况
和流量进出
这样的指标来构建ML模型。 - 如果我的理解是错误的,我应该如何收集这些指标。
任何能帮助我的细节或文档都是值得赞赏的。
回答:
Zabbix数据存储在Mysql数据库的多个表中(历史和趋势,按数据类型区分)。历史与趋势的区别在这里有描述这里。
我强烈建议不要直接使用mysql,因为其复杂性和兼容性问题。最好的做法是通过API(history.get
和 trend.get
)来提取数据,并将其输入到您的ML中。
Zabbix本身支持预测触发,但我还没有实施它。