数据库监控体系建设(一)
时间:2022-03-10 17:56
这篇文章先总结一下数据库监控体系建设那些事儿,下一篇文章描述具体的详细部署过程
1. 背景
作为核心IT业务模块,数据库的重要性毋庸置疑,数据库的稳定运行直接关系到应用系统的可用、稳定、高效性。因此,为确保数据库稳定、高效的运行,我们需要面临如下两个挑战
1. 数据库运行过程中的危险因子,怎么及时发现?
2. 数据库发生故障或因某些原因导致处于不正常工作状态时,怎样及时发现?
为了解决上述的两个难点,必须建立数据库监控体系,7*24实时监控数据库的运行状态,在数据库即将出现问题或已经出现问题时,通过立即触发事件来及时预警,使运维人员能够及时予以处理,确保数据库稳定、高效的正常运行
2. 数据库监控架构
解释说明
(1) 生产库代表对外提供服务的线上数据库,即需要进行监控的数据库
(2) 监控数据采集数据库,集中抽取每一个生产库的监控数据并保存(通过调度任务定时完成),并且将达到预警阀值的监控数据,经过加工处理后发送至“告警推送服务器”
(3) 告警推送服务器,接受来自“监控数据采集数据库”的预警数据,通过邮件发送程序,将预警信息以邮件形式及时发送给运维人员
3. 数据库监控种类及属性
当前数据库监控体系中部署的监控种类以及其它一些属性如下表格
1 |
确定需要部署的监控种类 |
2 |
在“监控数据采集数据库”上配置所有待监控的数据库的TNS |
3 |
确认配置的TNS准确性 |
4 |
在所有待监控的数据库上创建监控用户 |
5 |
在所有待监控的数据库上创建监控查询视图 |
6 |
随即选取一个待监控的数据库登录,检查“步骤四”创建的视图的有效性 |
7 |
在“监控数据采集数据库”上创建数据采集用户,同时创建指向所有待监控数据库的database link,并验证有效性 |
8 |
在“监控数据采集数据库”上创建数据采集表,针对每一个监控类别创建一个数据采集表 |
9 |
在“监控数据采集数据库”上创建几张重要监控相关的配置表 |
10 |
给上一步创建的各类配置表添加基本数据 |
11 |
建立与告警发送服务器的通道,以数据库方式建立通道联系 |
12 |
建立所有监控数据采集程序和告警数据发送程序 |
13 |
建立定时调度任务,定时采集监控数据和发送告警信息 |
14 |
建立邮件发送程序,在“邮件发送服务器”上完成邮件发送程序的部署 |
15 |
建立“监控采集数据库”的通断监控,防止由于监控采集数据库出现异常而导致整个告警体系崩溃的自检 |
16 |
监控“告警发送数据库服务器“情况,这里只部署为每天早上9点和晚上6点发出一次运行正常的邮件信息 |
17 |
数据库alert日志监控部署,由于alert日志监控特殊性,单独部署 |
18 |
后续扫尾工作,定时清理监控数据,创建索引等 |
备注:这篇文章介绍的监控体系建设方案只适合中小规模环境,对于那种及时性、稳定要求高的环境,由于监控及时性等需求无法满足,肯定不适合本文介绍的方法。而且这篇文章仅仅提供一个监控体系的参考方案,仅供大家参考!
数据库监控体系建设(一),布布扣,bubuko.com