利用zabbix读取modbus数据

1. 到https://share.zabbix.com/scada-iot-energy-home-automation-industrial-monitoring/modbus-loadable-module下载模板,并按照https://github.com/v-zhuravlev/libzbxmodbus指引,安装libzbxmodbus模块;注意指定enable-zabbix参数时,即使是zabbix3.2以上版本,也都指定为3.2;

2. 关键步骤:装载libzbxmodbus模块,按作者所说,此模块可装在zabbix的服务器端或agent端,经测试,安装在SERVER端后,使用简单检查取数据失败,故考虑安装在agent端。在这里要弄清一个概念,首先libzbxmodbus模块支持MODBUS的两种方式读取数据:串口(RTU)和网络(TCP),为方便起见我们采用TCP方式;其次这里我们通过TCP“读取”设备信息,往往并不是真正地读取设备,而大多是读取它的“网关”,这些网关通常是通过RS485与传感器相连,并负责将485信号与TCP信号互转;但是,大多数网关也只是个单纯的转换设备,zabbix server将其视为一台终端,但它本身并不能安装zabbix agent程序,甚至也不支持snmp协议(虽然在网上看到意大利出产一款支持zabbix的modbus转换器,但国内还没有看到有卖),故这时要再安排一台PC机或使用zabbix 服务器本身的agent再来充做这些网关的“agent”。

3. 装载:装载的过程很简单:在agentd.conf中添加“LoadModulePath = /etc/zabbix/lib”与“LoadModule = libzbxmodbus.so”,再重启agent就可以了;

4. 模拟传感器:找一台WINDOWS机器(要关闭防火墙或设置进出站规则),安装modbus slave模拟器,具体过程不赘述,安装完成后启动程序,配置为TCP方式,并设置几个寄存器的值为自动递增;


5. 在zabbix server上测试,./zabbix_get -s 192.168.53.188 -k’modbus_read[192.168.54.113,1,1,3]’


6. 到web页面添加监控项,键值为“modbus_read[192.168.54.113,1,1,3]”,类型为“zabbix agnt”或者“Zabbix Agent (active)”,返回值根据具体情况为数字或文本型


7. 关于一次取多项返回值的办法,请参考github上相关页面说明。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Zabbix简介 Zabbix官方网站Zabbix中文文档 本文系统环境是CentOS7x86_64, Zabbi...
    Zhang21阅读 8,381评论 0 37
  • 目前我的playbook只允许centos或redhat 6系列系统来安装zabbix客户端,并且客户端的版本是2...
    SkTj阅读 1,700评论 0 3
  • zabbix是什么在此就不多作介绍了,可以参考之前的文章零代码如何打造自己的实时监控预警系统,这篇主要介绍安装及注...
    欢醉阅读 1,622评论 0 2
  • zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。 ...
    Chris_Zheng阅读 3,990评论 0 15
  • 西安道北往事最后的回眸和最后的江湖 作者:胡建银 道北,顾名思义,铁道以北。按理来说,这不是什么稀罕的词语,世界上...
    f2dcc5df1b5e阅读 1,392评论 0 0

友情链接更多精彩内容