暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Zabbix监控数据库每天的备份文件

IT敢客 2018-08-20
1309

       最近,应领导的新要求,需要每天做个数据库备份的巡检,无非是登陆服务器,然后上去看看备份的文件是不是最新的,之前的老备份是不是删除了等等。事情是蛮简单的,但是过程却是枯燥的。于是我这边就想着能不能利用 zabbix 做这样的一个监控出来!

       好了,就动手开始做了。原先的情况介绍一下,我们的许多数据库备份都是放在不同服务器的固定目录下,然后最新的备份都是有当天日期的,并且会删除之前的备份,这都是定时任务设置好的,不用处理!我只要监控到两点:1、备份文件最新;2、之前的老备份已删除!

一、针对(备份文件最新)

1、配置 zabbix-agent       

1.1 首先登陆 zabbix-agent 的服务器,也就是需要被监控的备份服务器,进入 zabbix-agent 目录下,我这边是/etc/zabbix/,新建一个 scripts 目录,这个目录就放置以后监控所用的写脚本文件,进入 script 目录,新建一个 files.sh,内容如下:最后别忘记赋一个执行权限

  1. #!/bin/bash

  2. cd $1

  3. find ./ -type f |xargs echo

  1. chmod +x files.sh

1.2 然后进入../zabbix_agentd.d 目录,新建一个 userparameter_files.conf 文件,内容如下:

  1. UserParameter=files[*],/etc/zabbix/scripts/files.sh $1

  2. Timeout=30

1.3 之后重启 zabbix-agent 服务

  1. service zabbix-agent restart

2、配置 zabbix 监控项

2.1 登录 zabbix 的 web 控制台,创建一个 Template

2.2 新建一个 Files Exists 的 Template

2.3 在刚刚的 Template 下新建一个 Item

2.4 在这台主机上加上刚刚配置的 Template

2.5 观察是否有最新的记录

以上就可以看见一个最新的记录值存在。也就是备份最近为今天的最新文件!这里本来想做一个图形记录,可发现 zabbix 对字符串不支持做图片记录。于是我又想了下面的方式记录图形!

二、针对(之前的老备份已删除)

1、配置 zabbix-agent

针对老的备份文件是否删除其实只要判断备份目录下文件数量是否一致保持某个数量就行了。

1.1 同之前,新建一个 count_files.sh 文件,内如如下,最后赋权

  1. #!/bin/bash

  2. cd $1

  3. find ./ -type f -name '*.tar' -print| wc -l

  1. chmod +x count_files.sh

1.2 同之前,在 zabbix_agentd.d 目录下新建一个 userparameter_count_files.conf 文件,内容如下:

  1. UserParameter=count_files[*],/etc/zabbix/scripts/count_files.sh $1

  2. Timeout=30

1.3 之后重启 zabbix-agent 服务

  1. service zabbix-agent restart

2、配置 zabbix 监控项

2.1 同之前,登录 zabbix 的 web 控制台,创建一个 Template

2.2 同之前,在刚刚的 Template 下新建一个 Item

2.3 同之前,在这台主机上加上刚刚配置的 Template2.5 创建一个监控的图形 graph

2.4 最后观察是否有最新的数据图形生成!

三、配置一个 screen 来监控所有的备份服务器

3.1 配置所有的被监控服务器的脚本并重启 zabbix-agent

3.2 创建一个 screen,并添加所有的 grap

以上就全部完成了两个监控。如果你有自信,基于备份策略会自动删除过期的备份,基本上只要看备份文件的数量你就知道备份文件是否正常了!当然这里主要还是因为 zabbix 对于字符串之类的监控不太好处理!后面再想想有什么好办法吧,现在的监控也可以满足要求了,不用每天登陆好几天服务器一个个的查看!


文章转载自IT敢客,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论