阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

使用Zabbix监控位于两台不同的机器上的文件是否一致

229次阅读
没有评论

共计 2111 个字符,预计需要花费 6 分钟才能阅读完成。

生产上有一需求,要把某个文件同步到另一台备机上,备机启动程序的时候需要引用这个文件,以便能够实现 failover。文件同步的方法这里不言,这里主要讨论怎么通过 zabbix 平台实现对两个位于不同机器上的文件是否一致进行监控,若出现不一致的情况立即告警,需要人为干预。

在网上也搜索了好多帖子,差不多都使用了脚本来实现,感觉都不适合自己。于是曲曲折折走了一段弯路,最开始打算用 Python 脚本实现的,脚本都准备好了也测试过了。后来看到了 calculate item 这种方式,只是单纯的通过 zabbix 就能实现了,所以何乐而不为呢,于是就用这种方案了。现在把最后方案整理一下,与大家分享一下。

一、首先创建合适的基础监控项

我一开始就考虑着使用 vfs.file.md5sum 和 vfs.file.cksum 这两个 item 来实现。后来操作起来发现 vfs.file.cksum 比较适合,因为 vfs.file.cksum 的返回值是一串数字,便于下一步计算。

使用 Zabbix 监控位于两台不同的机器上的文件是否一致

1. 首先在源主机上创建一个 item(注意这里面的 Key 和 Type of information 参数设置)

使用 Zabbix 监控位于两台不同的机器上的文件是否一致

2. 备机上同样的方法创建一个 item(这里不贴图了)

二、使用 item 类型中的 Calculated 来实现两个监控项之间的比较

用 calculate 可以对 item 进行计算,计算方式主要靠一系列的表达式组成。计算后的结果存放在数据库中,也就是说历史数据、趋势数据都会存在数据库中。这就意味着可以对 calculate item 监控项进行告警配置。详细介绍请点击链接

 https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/calculated

Key 在每个 HOST 中都是唯一的,不能重复。其表达式如下:

func(<key>|<hostname:key>,<parameter1>,<parameter2>,…)

各个参数的含义如下图所示:

使用 Zabbix 监控位于两台不同的机器上的文件是否一致

现在在备机上创建一个 calculate item 监控项,来比较两个文件是否一致。通过前者的 cksum 值与后者 sksum 作差运算

使用 Zabbix 监控位于两台不同的机器上的文件是否一致

注:如果操作完成后中出现下面提示的错误,需要检查一下 Type of information 设置:

使用 Zabbix 监控位于两台不同的机器上的文件是否一致

这里解释一下出现这个问题的原因:当前者 cksum 值比后面大的时候正常显示,而当前值比后面小的时候就会出现上面这种结果,究其原因也就是类型不同其能包含的值也不同。

下面详细介绍一下 item 参数中的 Type of information

Numeric(unsigned):64 位无符号的整数

Numeric(float): 浮点数类型(从 zabbix2.2 开始,接收的值大小可以支持如 1e+70、1e-70.)

Character:字符(字符串)类型数据限制为 255B

Log:日志文件,必须使用的 Key 为 log[]和 logrt[]

Text: 文本 (text) 不限制大小

三、创建触发器,测试结果

在备机上创建一个触发器,当结果不为 0 时产生告警

使用 Zabbix 监控位于两台不同的机器上的文件是否一致

手动操作一下让两个文件不一样时能立刻产生告警:

使用 Zabbix 监控位于两台不同的机器上的文件是否一致

目的达成!

更多 Zabbix 相关教程集合

在 Ubuntu 16.04 服务器上安装 Zabbix 3.2  http://www.linuxidc.com/Linux/2017-07/145519.htm 

CentOS 7 LNMP 环境搭建 Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140134.htm 

Ubuntu 16.04 安装部署监控系统 Zabbix2.4  http://www.linuxidc.com/Linux/2017-03/141436.htm 

Zabbix 监控安装部署及警报配置  http://www.linuxidc.com/Linux/2017-03/141611.htm 

Zabbix 触发器表达式详解 http://www.linuxidc.com/Linux/2017-03/141921.htm 

Ubuntu 16.04 下安装部署 Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140395.htm 

CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm 

CentOS 7 下 Zabbix 3.0 安装详解 http://www.linuxidc.com/Linux/2017-03/141716.htm 

CentOS 7.4 安装 Zabbix 3.4  http://www.linuxidc.com/Linux/2017-09/147202.htm

64 位 CentOS 6.2 下安装 Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm 

ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-11/148741.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2111字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中