
【摘要】民生银行自动化巡检体系建设主要分为自动化巡检报告和一键巡检两个重要组成部分,本文详细介绍了其中的自动化巡检报告体系,希望能为广大同行提供参考。
1.背景与挑战
随着我行业务数字化、互联网化的不断发展以及分布式技术的全面落地,行内数据库体量迅速攀升,数据库的运维难度陡然剧增,运维成本不断增大,现有的运维体系难以维系,对数据库运维巡检工作提出了巨大的挑战。
2.应对方案
互联网的发展、信息安全性提高等因素导致的数据库体量膨胀,不仅是数据库运维工作的挑战,更是运维手段变革的机遇。庞大的数据库数量导致运维人员分身乏术,人力成本的上升也导致无限扩大运维团队的不现实性,一个全面智能、高效快捷的运维工具成了应对目前挑战的最优解。立足于生产实际情况,结合现有的DBPaaS数据库统一管理平台运维平台的巡检工具被提上了研究日程。一个真正满足运维巡检需求的工具,应该具备以下的特性:
扩展性:完美支持DB2、ORACLE、MYSQL等传统商用数据库,还支持横向拓展,在未来能够简单、快速地支持更多的开源、国产数据库,不需要在特定数据库查询工具间频繁切换。
兼容性:工具需要兼容支持数据库的各个主流版本,在数据库技术不断发展演进过程中,数据库版本迭代迅速,缺陷层出不穷,且各版本之间差异明显,新的工具需要能够分辨数据库版本,执行不同命令进行巡检。
全面性:对数据库进行全面、彻底的检查,在数据库核心关键检查指标的基础上,对不同数据库的特殊架构和特性,进行针对性巡检。
易用性:工具的目标是将运维人员从繁重、重复的运维巡检工作中解放出来,不是让运维人员重新投入其他的重复工作中,易用性是必然的要求。
在运维难度不断增加、人力成本不断上升的今天,一个巡检结果准确、巡检指标全面、巡检操作智能的巡检工具是必然的运维方向。立足于我行多年运维经验基础之上,充分研讨和精细雕琢之后,决定完成自动化巡检体系建设。自动化巡检体系建设主要分为自动化巡检报告和一键巡检两个重要组成部分,并与DBPaaS数据库统一管理平台有机结合,致力于将运维人员的工作回归运维本质,向运维智能化、自动化方向迈进。
3.自动化巡检报告
智能巡检报告是针对运维人员具体巡检内容总结提炼出的一套适合于评估数据库实际运行状况的报告。该报告完美支持了传统的DB2/Oracle/MySQL等商用数据库,并在国产化数据库上踏上了征程,目前已经完成了对openGuass的支持。同时为了适应不同维度的运维巡检需求,制定出多层次巡检体系,适用于不同的运维场景。在触发方式上,也分为手动触发和自动触发两种,满足不同情境下的运维巡检需求。
多层次巡检体系
DBPaaS数据库统一管理平台结合我行多年数据库运维巡检经验,归纳出丰富全面、完善细致的巡检指标,智能完成数据库的巡检任务。针对不同运维需求,提供三种巡检类型,相互关联,构成一套从宏观到局部、自上而下的运维巡检系统。第一层巡检是批量巡检类报表,依靠批量和快速的特性,迅速完成生产环境所有数据库巡检,并筛选出存在严重性能问题的库,为详细巡检指明方向。第二层巡检是详细巡检类报表,针对单库进行全面巡检,定位问题原因。第三层巡检是关键指标巡检,针对性极强,是在第二层巡检中明确问题后进行的问题根因分析巡检。三层巡检相互配合、逻辑互补,共同组建起了完整的巡检运维体系,将巡检消耗降到最低。以下是三种巡检的具体介绍:
批量巡检类:该类型巡检报告适用于数据库体量大的特定场景下,批量对所有数据库的核心指标进行统计和排序,快速定位出性能最差的部分数据库,方便进行针对性处理。批量巡检类报告分为三种:问题报表、巡检汇总报表、汇总报表。
问题报表:发现问题是整个运维工作的驱动,所以问题报表是运维的源头,必须依靠一份问题报表来全面了解当前的问题情况,按照轻重缓急进行运维处理。报表样例如下:

汇总报表:汇总报表是整个环境运行情况的简单巡检,主要针对性能、容量指标,可以对整个环境有一个整体的把握,明确之后运维工作的方向,对存在严重性能问题、容量严重不足的库进行紧急维护。
巡检汇总报表:汇总报表指标比较简单,内容单一,仅仅适合于快速掌握性能容量信息,一份内容详尽的巡检汇总报表应运而生。巡检汇总报表在汇总报表的基础上,结合完全掌握生产环境所有库整体信息的必要需求,对原有指标进行大维度扩充和完善,准确、全面地概括了整个生产环境的数据库运行情况,并对实际情况进行分析,总结出各个维度TOP N数据库。报表中的主要内容如下:

详细巡检类:当运维人员需要详细检查某些库健康状况时,整体环境巡检已经不能满足实际的运维巡检需要,这时就需要详细巡检类的报表针对单个库的各个维度深入分析。详细巡检类报表包括巡检报表等报表。
巡检报表:巡检报表是最贴近原始数据库巡检需求的报表,对单个数据库库进行深入巡检。该报表巡检项是我行多年巡检经验的总结,浓缩了运维人员的运维思想精华,最终完成对数据库全方面的健康巡检。本报表实现从工作负载、性能,到容量、备份等多维度、深层次的全面巡检。具体指标如下:


关键指标类:上述的巡检都是以数据库为维度进行巡检,但在实际生产巡检中,有时需要对数据库的某一项关键指标进行深度检查或重点分析,这就需要关键指标巡检报表。关键指标巡检报表包含慢SQL报表、ORACLE专属ASH报表等相关报表。这里重点介绍慢SQL报表:
慢SQL报表:SQL执行速度是衡量数据库的关键指标之一,但SQL慢并不代表数据库性能差,很有可能是由于业务SQL没有走索引或者多层嵌套等导致SQL执行时间过长。慢SQL报表可以将执行次数过多,执行时间过长的SQL筛选出来,进行针对性分析和处理。
巡检策略高度定制
在实际的运维场景中,不仅需要实时巡检,更多的是周期性的巡检任务。按照数据库级别和重要性,每天或每周都需要对生产环境上的库进行例行巡检,高度定制巡检是必要的需求。为此,DBPaas中提供了“实时+定时”巡检方案,而且定时巡检功能齐全,具有操作简单,入手容易等特点,已经广泛使用在运维工作中。
下图是定时运维设置界面,从图中可以看出,定时巡检可以随意指定巡检时间,任意设置起止日期,按需选择所有支持的报表类型和数据库类型。更重要的是可以智能识别相关数据库的运维A岗、B岗,不需要为设置巡检结果收件人而苦恼。


记录追踪及报告存储
在智能巡检报表体系中,每份巡检报表都有详细的生成记录和发送记录,做到每一份报表的来源和去向都有据可查,防止数据库信息外泄。所有发送的报表都会在服务器中进行备份存储,即使本地文件误删也可迅速找回,还原当时数据库情形,便于追踪数据库问题。

上图是发送记录界面,每份报表生成都会有相应的生成记录,在记录的右侧,有本地下载和邮件发送功能,不但可以查看当时的报表,更可以发到指定邮箱中,实现远程巡检以及远程协助。
4.小结
随着智能巡检报表的不断完善和大力推广,我行运维效率显著提升,运维成本有效压缩。据统计,自报表体系投入使用以来,累计为数千数据库生成报表6万余份,发送邮件13万余封,帮助运维人员减少大量巡检时间,成效显著。
原题:民生银行数据库自动化巡检报告体系介绍 觉得本文有用,请转发或点击“在看”,让更多同行看到
资料/文章推荐:
点击阅读原文关注社区 “智能化运维”技术主题 ,将会不断更新优质资料、文章,您也可以前往提出疑难问题,与同行切磋交流。地址:http://www.talkwithtrend.com/Topic/125353
长按二维码关注公众号

*本公众号所发布内容仅代表作者观点,不代表社区立场






