数据库监控体系建设(一)

这篇文章先总结一下数据库监控体系建设那些事儿,下一篇文章描述具体的详细部署过程

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


后续扫尾工作,定时清理监控数据,创建索引等

备注:这篇文章介绍的监控体系建设方案只适合中小规模环境,对于那种及时性、稳定要求高的环境,由于监控及时性等需求无法满足,肯定不适合本文介绍的方法。而且这篇文章仅仅提供一个监控体系的参考方案,仅供大家参考!

数据库监控体系建设(一),布布扣,bubuko.com

时间: 2024-08-27 10:54:02

数据库监控体系建设(一)的相关文章

[运维] 第七篇:数据中心监控体系建设方法论

无论是传统数据中心,还是云时代的数据中心,运维监控都是运维工作的重点,而且运维监控是一个整体,你必须尽可能监控的全面和深入,你的监控数据才会更有价值,例如你想监控业务应用,可是如果没有基础监控数据(OS.数据库.中间件.网络等),你觉得你的监控会到位吗?那么如何建设一个全面和深入的监控体系呢?        首先看监控体系的规划:              再看监控体系的梳理:           监控体系的落地思路:            监控体系建设的持续改进:           监控是一

如何建立起一套有效的APP监控体系

概论: 移动APP有着自己独特的运行环境和使用场景,相比后端服务,移动APP质量同样需要做到可视.可控.移动APP是近几年刚刚出现的新产品形态,如何保障 移动APP质量是一个新的挑战和话题.今天,我们重点介绍APP端问题如何发现.如何定位.如何止损,以及如何建立起一套有效的监控体系,为APP稳定应用保驾护航.分为"端问题概述.端质量监控方案.端监控能力建设"三个章节. 1端问题概述 app客户端产品上线前,会经过全面而且严谨的测试再发布到应用商店.但,发布后产品质量如何,以往更多地依赖

中小企业监控体系构建实战(转载)

中小企业监控体系构建实战 高效运维 | 2015-10-28 07:26 编辑 高浩淼(整理) 作者介绍 赵舜东 江湖人称赵班长,曾在武警某部负责指挥自动化的架构和运维工作,2008年退役后一直从事互联网运维工作.曾带团队负责国内某食品电商的运维工作,即将出版的<saltstack入门与实践>作者之一. 主题简介 我们今天的话题是<中小企业监控体系构建实战>,前期分享了<中小企业自动化部署实战>还没有看到的朋友可以先阅读下,这样也能明白为何要定位中小企业.监控这个话题实

民生银行十五年的数据体系建设,深入解读阿拉丁大数据生态圈、人人BI 是如何养成的?(转载)

早在今年的上半年我应邀参加了由 Smartbi 主办的一个小型数据分析交流活动,在活动现场第一次了解到了民生银行的阿拉丁项目.由于时间关系,嘉宾现场分享的内容非常有限.凭着多年对行业研究和对解决方案的嗅觉与敏感性,意识到这个阿拉丁项目的完整性和独特性超出了以往我所接触过的所有 BI 领域的项目案例,很值得再次深入的探讨.学习与研究.对于很多公司在建设自身的 BI 或者大数据平台体系上,这个项目案例有很好的参考与借鉴意义.(另外一个我个人比较推崇的大数据建设的案例是美的的大数据平台建设案例.) 在

质量保障&amp;&amp;质量体系建设

一.质量保障 先引用一段 百度百科 上对软件质量保障的解释:软件质量保障是建立一套有计划,系统的方法,来向管理层保证拟定出的标准.步骤.实践和方法能够正确地被项目所采用.软件质量保证的目的是使软件过程对于管理人员来说是可见的.它通过对软件产品和活动进行评审和审计来验证软件是合乎标准的.软件质量保障人员在项目开始时就一起参与建立计划.标准和过程.这些将使软件项目满足机构方针的要求. 从我个人对软件质量保障的理解来说,软件质量保障不能只从测试(QA)的角度来看待问题,需要把自己抽离出来从更高的角度(

Windows 10的TPM模块到底是不是美国全球监控体系的奠基石?

http://bbs.pediy.com/showthread.php?t=202638 http://www.zhihu.com/topic/19671262/newest 2015年3月18日,微软宣布与腾讯.360等国内几家知名互联网企业达成战略合 作,可通过其旗下产品直接将现在的盗版或正版XP.Win7.Win8.x等系统一键升级到最新的正版Win10,2015年7月29日就将发布并开启下 载该操作系统的桌面正式版本.实际上,升级后的Win10操作系统采用的可信计算模块(Trusted 

监控 体系

## 监控的必要性 > 在一个IT环境中会存在各种各样的设备,比如:硬件设备,软件设备,系统环境,运行服务.那么在这么复杂的环境下,尤其是大公司里成千上万的服务器我们如何去管理和维护呢?如何能保证公司资源的正常运转?我们通过什么手段去及时掌握基础环境和业务应用的可用性?如何获取到各组件的运行状态(如:CPU使用率,内存的使用率,硬盘的使用率,服务是否运行正常,端口是否存在,带宽流量以及网站访问的状态码),公司业务扩展需要增加服务器又该如何操作呢?等等这些问题都需要有一个系统的工具来帮助我们实现-

数据可视化发挥流程的价值——江汽物流数据监控平台建设经验

一年的时间,江汽物流沉淀出一套流程可视化的经验.这里拿出来一同探讨. 关于江汽物流 安徽江汽物流有限公司成立于2013年,主营业务整车物流(采购物流.生产物流.销售物流),车辆管理和维修,客运.出租车及汽车租赁等业务.我们以整车业务.物流业务"两业联动"模式保障物流规划能力.物流运作能力.物流操作能力"三大能力"体系建设,控制两项指标"搞物流及时率""低货物质损率",最终提升客户满意度.目前获得荣誉有国家4A级综合型物流企业和

监控体系

监控体系概述 所有上线的服务都需要监控,甚至命令 硬件监控: 机房巡检 远程控制卡,服务器开关机,命令等 ibmi可以监控,温度,传感器等一些数据 yum install OpenIPMI ipmitool /etc/init.d/ipmi start losmod |grep ipmi ipmitool sensor 传感器的数据 缺点,无法获取硬盘状态 MegaCli工具查看磁盘阵列状态 系统监控: cpu cpu使用情况 分为用户态,内核态,上下文切换 用户态60-65%,空闲5%,为正常