数据库监控体系建设(一),数据库监控体系建设
这篇文章先总结一下数据库监控体系建设那些事儿,下一篇文章描述具体的详细部署过程
1. 背景
作为核心IT业务模块,数据库的重要性毋庸置疑,数据库的稳定运行直接关系到应用系统的可用、稳定、高效性。因此,为确保数据库稳定、高效的运行,我们需要面临如下两个挑战
1. 数据库运行过程中的危险因子,怎么及时发现?
2. 数据库发生故障或因某些原因导致处于不正常工作状态时,怎样及时发现?
为了解决上述的两个难点,必须建立数据库监控体系,7*24实时监控数据库的运行状态,在数据库即将出现问题或已经出现问题时,通过立即触发事件来及时预警,使运维人员能够及时予以处理,确保数据库稳定、高效的正常运行
2. 数据库监控架构
解释说明
(1) 生产库代表对外提供服务的线上数据库,即需要进行监控的数据库
(2) 监控数据采集数据库,集中抽取每一个生产库的监控数据并保存(通过调度任务定时完成),并且将达到预警阀值的监控数据,经过加工处理后发送至“告警推送服务器”
(3) 告警推送服务器,接受来自“监控数据采集数据库”的预警数据,通过邮件发送程序,将预警信息以邮件形式及时发送给运维人员
3. 数据库监控种类及属性
当前数据库监控体系中部署的监控种类以及其它一些属性如下表格
|
序号 |
监控种类 |
监控频率 |
备注 |
|
1 |
Oracle数据库UNDO表空间使用率告警 |
10分钟 |
监控undo表空间使用情况 |
|
2 |
Oracle数据库TEMP表空间使用率告警 |
10分钟 |
监控temp表空间使用情况 |
|
3 |
Oracle数据库序列使用率告警 |
每天上午9点 |
监控序列使用清理 |
|
4 |
Oracle数据库连接数异常告警 |
10分钟 |
监控数据库连接数情况 |
|
5 |
Oracle数据库表空间使用率告警 |
20分钟 |
监控数据库表空间使用情况 |
|
6 |
Oracle数据库会话undo使用量告警 |
5分钟 |
监控会话undo使用情况 |
|
7 |
Oracle数据库用户密码过期告警 |
每天上午9点 |
监控用户密码过期情况 |
|
8 |
Oracle数据库PGA使用率告警 |
10分钟 |
监控数据库PGA使用情况 |
|
9 |
Oracle数据库锁异常告警 |
5分钟 |
监控数据库内锁资源争用情况 |
|
10 |
Oracle数据库共享池使用告警 |
10分钟 |
监控数据库共享池使用情况 |
|
11 |
Oracle数据库活动连接数告警 |
2分钟 |
监控数据库两分钟类活动连接情况 |
|
12 |
Oracle数据库索引异常告警 |
30分钟 |
监控数据库索引状态情况 |
|
13 |
Oracle数据库性能告警 |
1分钟 |
监控数据库性能情况 |
|
14 |
Oracle数据库通断告警 |
1分钟 |
监控数据库可用性情况 |
|
15 |
Oracle日志监控告警 |
10分钟 |
监控数据库运行日志情况 |
备注
由于表格篇幅所限,一些其它属性将在后续体现,例如每一监控种类的阀值等等属性
4. 数据库监控体系特点
凡事不可能完美,数据库监控体系也一样,目前搭建完成的数据库监控体系架构,受专业和能力受限,存在如下不足
1. 及时性,无法以语音形式将告警信息通知运维人员(电话方式),目前只能以邮件形式发送告警信息,因此肯定告警信息肯定存在延迟发现,特别是晚上时间段;
2. 健壮性,数据库监控体系架构中的“生产库”和“监控数据采集数据库”都已部署通断告警,但是“告警邮件推送服务器”(数据库)由于暂时没有完成自监控,在出现问题时,会导致整个监控体系奔溃而不能及时发现(当前只能每天早上9点和6点发送一条监控运行状态邮件来自检)
3. 专业性,由于编程能力有限,数据库监控体系完成后,肯定存在很多bug和未知缺陷,没有经过长期的运行和考验,无法进一步完善
4. 全面性,当前仅部署了15个种类的监控(根据经验实施),由于系统具体特殊性,肯定存在监控盲点,需要后续运行过程中才能一步一步完善
当前已经搭建完成的数据库监控体系架构特点如下
1. 告警信息通过邮件发送和接收(139邮箱),进一步通过手机短信接收邮件通知和内容
2. 每一个监控种类都是通过一个单独的程序包完成,任何一个监控种类出现异常时(调整或出现bug),不影响其它监控种类的正常运行
3. 每一个生产库的监控数据采集都是通过一个“监控数据库配置表”控制,可以通过修改flag字段来控制对应生产库的监控数据采集与否,进一步控制该生产库告警与否
4. 每一个监控种类的数据采集都是通过一个“监控种类配置表”控制,可以通过修改flag字段来控制对应生产库的相应监控种类的监控数据采集与否
5. 通过“监控阀值配置表”可以实现对于同一类别监控,可以根据系统的重要级别,设置不同的监控阀值。即每一个监控种类可以通过修改监控阀值字段,个性化设置监控类别的监控阀值,从而使不同数据库的相同监控种类的可以设置不同告警阀值(为后续系统等级重要性设置不同阀值)
6. 通过“告警发送配置表”可以实现采集监控数据(用于分析),但是不发送告警信息的目的
7. 所有的监控数据都通过“监控数据采集数据库”统一采集、加工处理,最后发送至“告警推送服务器”,其中监控数据保存最近半个月,用于分析和查看
5. 数据库监控体系建设步骤
数据库监控体系建设步骤简单归纳为如下表格
|
步骤 |
内容 |
|
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 |
后续扫尾工作,定时清理监控数据,创建索引等 |
备注:这篇文章介绍的监控体系建设方案只适合中小规模环境,对于那种及时性、稳定要求高的环境,由于监控及时性等需求无法满足,肯定不适合本文介绍的方法。而且这篇文章仅仅提供一个监控体系的参考方案,仅供大家参考!
一、序言
(一)编制依据。《中华人民共和国突发事件应对法》、《××市人民政府突发公共事件总体应急预案》以及有关法律法规。
(二)规划范围。按照突发事件的预防与应急准备、监测与预警、应急处置与救援、事后恢复重建等应急管理的主要环节的不同要求,统一规划“十二五”期间全市事故灾难突发事件应急体系建设的总体布局、主要任务和重点项目。
(三)规划定位。按照“分类管理、分级负责、条块结合、属地为主”的要求,突出以人为本,在不改变现有部门职责分工和分类管理格局的基础上,以相关专项规划为支撑,提出全市事故灾难应急体系建设的方向、目标和任务,充分利用和整合应急信息、队伍、装备、物资等现有存量资源,加强应急体系薄弱环节和重点项目建设,提高预防和处置突发事件的综合能力。
本规划的目标是为实施事故灾难类应急预案提供支撑基础,保障应急预案的执行。
二、应急体系现状
(一)现有工作基础。市政府安办高度重视事故灾难突发事件应急管理工作,认真贯彻国务院、省政府和德阳市政府关于加强应急管理工作的各项决策部署,全面加强应急预案体系、应急体制、机制和法制建设,全市应对事故灾难突发事件的综合能力明显增强。一是应急预案体系基本健全。二是应急体制、机制、法制建设得到加强。市政府安办成立了××市事故灾难突发事件应急领导小组,组建了市政府应急管理办公室,在履行值守应急、信息汇总和综合协调等方面发挥了积极作用。三是突发事件应对能力建设得到加强。组建了防汛抗旱、抗震救灾、危化品处置、消防、市政、环保、卫生等专业应急救援队伍。抗洪抢险、消防特勤、医疗救治等应急物资储备具有一定基础。应急管理进社区、进乡村、进学校、进企业等基层基础工作得到进一步加强。
(二)薄弱环节。
1.应急管理体制和机制不完善。乡镇政府应急管理机构不够完善,职责不够明确。政府应急管理机构与各专项应急指挥机构的关系尚待进一步理顺,职能划分有待进一步明确。部门之间、乡镇之间、条块之间以及预防与处置之间的衔接不够紧密;多方协同处置突发事件时,人员、信息、资源等难以快速集成;突发事件应急处置与日常应急管理存在脱节现象,应急管理能力有待提高、经验尚需积累,急需建立规范、协调、有序的长效机制。企事业单位专兼职救助队伍和志愿者队伍等社会力量参与突发事件预防和处置机制尚不健全。
2.监测预警和信息指挥系统建设滞后。各类事故灾难突发事件风险隐患底数不清,部分领域监测点密度不够,监测手段相对落后,综合预警和科学决策能力急需加强。应急信息指挥系统之间建设技术标准不统一,尚未实现信息共享。现场处置中存在通信障碍,信息获取能力较差。
3.应急保障能力需要提高。各类专业应急队伍和装备不足,大型和特种装备缺乏;快速拉动和协同能力较差,现场处置能力尤其是第一时间的生命搜救能力亟待增强。现有应急物资缺乏统筹管理,紧急生产、采购、征收、征用、调拨和配送机制不完善;存储设施不足,布局不尽合理,储备方式单一,物资数量偏少,品种不全,一些关键性物资的储备处于空白。储备物资更新、替补、补偿制度不健全。紧急运输综合协调、保障机制亟待建立和完善;应急物资保障能力需进一步提高。
4.宣传教育工作需要加强。应急科普宣传教育相对滞后,社会公众危机意识不强,自救互救能力较低,亟待加强应急知识和法律法规宣传教育,建立公共沟通机制。
(三)面临的形势。
全市经济和社会各项事业快速发展与安全生产的矛盾日益突出,安全生产形势依然严峻。工矿商贸企业安全生产基础薄弱,存在较多隐患。交通事故起数与死亡人数绝对数量仍然偏大。社会防控火灾能力较低,火灾事故仍处在多发的高风险时期。引发重特大突发环境事件的......余下全文>>
性能参数:CPU\内存\IO;
网络参数:通过连接探针,得到数据库是否连接异常;
锁的情况
进程占用情况
并发数情况.
等等