多数据业务平台统一维护管理系统.doc_第1页
多数据业务平台统一维护管理系统.doc_第2页
多数据业务平台统一维护管理系统.doc_第3页
多数据业务平台统一维护管理系统.doc_第4页
多数据业务平台统一维护管理系统.doc_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

多数据业务平台统一维护管理系统的研究与实现摘 要随着中国移动数据业务的蓬勃发展,提供数据业务应用的各类系统的数量和种类也在不断地攀升,众多的业务系统增加了日常维护的复杂度,也给维护人员的工作带来了新的挑战。本报告针对中国移动现网各类数据业务系统维护现状进行了分析,阐述了多数据业务平台统一维护管理的必要性,提出了多数据业务平台统一维护管理系统的功能需求, 并对各系统日常监控的内容和通信接口进行了研究和梳理,详细剖析了实现多数据业务系统各指标采集的技术手段, 在此基础上描述了多数据业务平台统一维护管理系统的整体架构和各模块功能,阐述了如何实现各业务系统不同监控指标的统一配置,统一调度,集中告警和统一报表生成, 从而达到多数据业务平台的统一全面自动化维护。目录目录2引言3第一章 数据业务系统维护概述4第一节 数据业务系统简介4第二节 数据业务系统维护现状和统一维护的必要性6第三节 多数据业务平台统一维护系统功能需求7第二章 多数据业务平台监控分析9第一节 监控指标分类描述9第二节 现网设备采集通信接口汇总10第三章 多数据业务统一维护系统的实现13第一节 系统监控开发包14第二节 采集模块15第三节 密码管理模块25第四节 实时告警模块25第五节 存储模块26第六节 报表模块28第七节 配置模块29第八节 监控处理模块34第四章 统一管理平台的现网部署34第一节 硬件部署34第二节 软件部署35第三节 网络部署36第四节 现网监控指标的部署37第五节 软件系统测试39第六节 试运行结果40第五章 项目总结43第一节 预期目标评估43第二节 项目成果带来的效益44引言 系统日常维护的目的在于通过实时监控现网各主机系统以及网络设备的运行状况从而及时发现潜在问题并快速作出响应。系统监控的自动化也随着现网数据业务系统的增多而变得愈加重要。上海移动的数据业务系统仅钦州机房就有400多台主机服务器和网络设备。它们因业务的不同所实现的功能也各不相同,需要监控的内容也各种各样,主要包括系统硬件运行状态指标、系统软件运行状态指标、业务运行容量和质量指标等三类。为全面保障各数据业务系统可靠、稳定、高效地运行,提高日维的工作质量和工作效率,需要对监控任务实现集中化、自动化管理和维护,以协助日维工作人员完成繁杂的日维工作,做到有问题及时发现,防患于未然。本报告将着重阐述如何实现多数据业务平台统一维护系统,以满足现网多数据业务日常维护的需求。文章内容安排如下:第一章主要回顾了现网数据业务系统的维护现状,阐述了对各数据业务平台实施统一维护管理的必要性和迫切性,并根据业务系统维护日常要求提出了实现多数据业务平台统一维护管理系统的功能需求。第二章对现网所需要的各监控指标进行分类描述,并梳理了现网数据业务系统的各类维护通信接口。第三章提出了多数据业务平台统一维护管理系统的设计框架,然后依次对系统监控开发包,采集模块,密码管理模块,实时告警模块,存储模块,报表模块,配置模块和监控处理模块的功能和部分实现进行了详细描述。第四章阐述了该维护管理系统的硬件、软件和网络部署,以及对现网各数据业务系统监控指标的实施方案,并介绍了系统测试和试运行状况。第五章总结了该创新项目创新成果和取得的收益。第一章 数据业务系统维护概述第一节 数据业务系统简介上海移动数据业务机房目前有钦州机房,浦东idc机房,怒江idc机房,金桥机房,它们承担上海所有数据业务和部分全网数据业务的业务服务。其中大多数的数据现网业务的业务系统都部署在钦州机房,包括adc管理平台、手机网游、wappush、misc管理平台、彩铃门户、集团总机门户、彩话门户、www门户、个人数据门户、企信通、行业网关m模块、ip电话系统、农信通、城管通、小区短信、lbs、闪信、亲子通、天网、信令采集系统、电子商务、流媒体手机电视和视频监控等20多种业务,共有400多台主机和网络设备。众多的业务系统总结下来存在以下特点。、功能各不相同。不同的业务为提供不同的服务实现了不同的功能,这就使得业务系统的各主机和网络设备在功能各有差异。大致可分为数据库服务器,文件服务器,web服务器,应用服务器,负载均衡服务器,防火墙服务器,路由设备,交换设备等。、服务器硬件设备类型差异。不同的业务是由不同厂商提供的,这就决定了硬件设备的多样性。目前硬件设备的厂商有3com,b16,bigip,cisco,compaq,dell,emc,hp,ibm,juniper,netapp,netscreen,redware,raritan,sdk,sun,uu,中兴,华为,大华,安氏,思科,港湾,绿盟,融天科技等30多家厂商。、软件类型的差异。不同业务应用是由不同软件开发商提供的,各系统运行的操作系统类型和版本,第三方软件类型和版本,以及业务应用软件使得软件千差万别。如操作系统有windows,aix,hp-unix,sunos,suselinux,redhatlinux。数据库软件有:oracle,mysql,sqlserver等。web服务器软件有iis,apache,weblogic等。软硬件的差异决定了日常维护工作的繁杂性,也给日常维护人员带来了挑战。为确保各主机和网络设备稳定、安全、高效的运行,日常维护工作就需要对现网系统进行全方位的监控,通过定时采集各个系统的性能和功能指标,实现对异常问题早发现,早分析,早排除,从而防患于未然。第二节 数据业务系统维护现状和统一维护的必要性通过对目前数据业务系统维护状况的调查,总结起来有以下几个特点。1、日维监控工具分散且不统一。目前一些业务如misc,小区短信,企信通,天网等系统的监控工具是由业务开发商提供的,只针对单个业务使用,风格各异,且不具有通用性,无法用于其它系统维护使用。另有一些业务的监控工具是由业务负责人自己编写,各自负责运行和维护。分散各异的监控工具之间的协同工作能力较差,使得日常维值人员难以达到同时兼顾,影响维护效率。2、系统安全埋有隐患。部分业务频繁地手工登录访问系统主机查看系统和业务的运行状况,既耗费人力又难以做到安全防护而且易产生误操作从而影响现网业务的正常运行。另外,有些对主机远程访问密码使用明文保存和分散管理的方式,安全性和维护性不高。3、监控指标不全面。各业务主机系统和网络设备既需要有共同的监控指标如硬件运行状态指标cpu利用率、内存空间使用率、磁盘空间利用率和磁盘读写繁忙率等,也需要有根据不同设备和业务的差异而不同的软件运行状态指标和业务运行状态指标。所有指标数据均正常才能确保整个业务的稳定,可靠运行。而目前大多数业务系统对于很多关键性指标均没有达到实时自动化监控,无法做到防患于未然。4、监控指标数据存储分散或无存储。由于监控工具的分散使得监控采集数据各自存放,既增加了软硬件的开销,又难以进行系统和业务的横向指标比较。另外,部分自己开发的简易的监控工具没有存储功能,难以生成数据报表和统计报表进行分析。5、告警系统欠主动。大部分业务仅能将告警汇报在各自的业务维护系统内,需要管理员定期去提取、查看, 可能会导致问题发现不及时。、业务报表数据手工填写和生成。业务报表需日维人员登录到各系统上采集业务指标后,手工填写到报表中,重复性的手工操作既花费了时间,实时性和准确性也无法充分保证。7、监控指标扩展性较弱。对现有的厂商提供的各业务监控工具,如有业务功能扩展或欲新增监控指标,需向厂商提出新的需求,并委托厂商开发,然后进行软件升级,从而增加了时间延迟、费用开销和升级风险。第三节 多数据业务平台统一维护系统功能需求基于以上分析,传统的系统维护方式已经无法满足日益增加的数据业务系统日常维护的要求,我们需要建立一个能够支持多数据业务的统一维护管理系统,来协助日维人员完成繁杂的日常监控任务,从而提高工作效率和工作质量。该系统需要实现以下功能:1、 实现各种数据业务系统下各种监控指标的数据提取,屏蔽各种监控方式的差异,实现采集手段的集中配置,采集任务的统一调度和采集结果的集中化实时展示。2、 支持监控方式的通用性,提取监控方式的共同点,便于将此监控方式快速应用到同类型的其他业务、系统和指标的监控。3、 支持监控方式的可扩展。便于新的采集接口和采集内容的快速开发和部署。4、 实现实时告警和告警方式的多样化,支持基本声音颜色告警,支持扩展的email,sms告警,支持企信通平台的实时短信下发。5、 支持告警方式的可定制功能,可以根据需求快速开发和部署,同时支持短信内容和下发对象的自定义功能。6、 支持监控指标数据的统一存储和备份,实现数据汇聚,便于进行统计分析和报表生成。7、 支持业务指标报表的自动化生成。8、 系统自身用户界面友好,部署成本应相对较低,且易于维护和升级。9、 系统设计有前瞻性,能有效应对后续移动数据业务的增长。第二章 多数据业务平台监控分析集中监控是实现统一维护的关键内容,也是集中告警,统一存储和统一报表的功能实现的前提条件。本章将对现网监控指标和通信接口进行梳理。第一节 监控指标分类描述 现网数据业务指标依据业务功能和软硬件的不同而各种各样,既有通用的监控指标也有业务相关的独有的监控指标。归纳起来分为以下三类。1、 系统硬件运行状态指标。系统硬件运行状态指标是指各主机、网络设备的硬件资源的使用情况,包括cpu利用率,内存空间利用率,磁盘利用率,磁盘读写繁忙率和网络带宽利用率等。它们是系统稳定和高效运行的基础,也是最基本的监控指标。当然,根据设备功能的不同对不同的性能监控指标有所侧重,如对于应用服务器,cpu利用率和内存利用率的监控比较重要,它们直接决定了应用程序的运行效率,也会反映业务服务的质量。而对于存储服务器,磁盘利用率和io读写繁忙率的监控就更重要。系统运行性能指标也会依据操作系统和设备类型的不同而表现为不同的指标数据。详细内容见附件一:系统硬件运行状态指标。2、 系统软件运行状态指标。这类指标主要指业务正常运行在功能和性能上的要求,会因业务的不同而各有差异,包括网络连通性,url 连通性和有效性,服务运行状态,进程运行实例数,进程运行状态,应用程序运行状态和数据库运行状态等等。通过检查这些指标可以判断各软件在功能和性能上是否正常运行。具体指标详细内容见附件二:系统软件运行状态指标。3、 业务运行容量和质量指标。业务容量和质量指标是评估业务运行情况和运行能力的重要手段,也是部门和中心kpi考核指标,主要分为业务运行成功率和业务并发处理能力两大类。这类指标会因业务的不同而各不相同。具体内容见附件三:日报表业务指标。第二节 现网设备采集通信接口汇总各业务主机从安全性和可维护性上考虑提供了不同的外部访问服务接口,日维人员通过这些服务远程访问现网设备和业务功能。归纳起来有以下几种。1、 远程登录(telnet ,ssh)服务。远程登录服务是现网所有主机操作系统(sun solaris,hp unix,windows:telnet,suselinux,redhatlinux,aix)和网络设备操作系统(ciscoios,huaweivrp)默认支持的服务类型,用户可以通过网络远程登录到远程ip网络计算机上,并以本地虚拟终端方式在远程设备上执行操作。其中,ssh服务实现了网络传输数据的压缩和加密。既能防止网络传输过程中传输内容被截获,也能提高传输效率,它完全实现了telnet的功能。现网一些主机和网络设备开放了远程登录端口,便于系统维护的日维人员通过网管网络对主机,网络设备的运行状态做日常检查和错误诊断等日常维护工作。2、 文件传输(ftp,sftp)服务。文件传输服务也是所有现网主机操作系统默认支持的服务类型。用户通过虚拟终端连接到远程计算机上,实现将文件从远程计算机上拷到本地计算机或把本地计算机的文件推送到远程计算机去的功能。sftp服务是采用加密方式来传输数据的,比ftp在传输方式上更安全。通过文件传输服务,日维人员在需要日志、报表传输时可以方便的通过网管网络实现对各种类型文件的获取。3、 超文本链接(http,https)服务。http服务通过服务器端开放web服务侦听端口提供web应用,客户端只需通过标准web浏览器,就可以访问业务web服务器提供的网站。在日常维护工作中,日维人员通过在本地部署如ie,firefox,netscape等web浏览器,就可以方便地进行www网站的有效性测试,日常报表数据、业务运行状态和日志查询等操作。4、 简单网络管理(snmp)服务。snmp服务提供了一种从网络主机设备和网络设备中提取和收集设备管理信息(mib)的方法。mib来自各厂家为产品定义的被管理对象名的集合,包括设备性能特性、数据吞吐量、通信超载和错误等与设备相关的数据指标。snmp服务功能包括管理站和代理两部分,它们分别部署在同一个或两个不同的网络设备上。snmp提供了两种管理信息的获取方式:提取(snmp get),指的是由管理站发起要求获得管理信息的请求,代理则根据请求中的mib标识从当前设备上提取对应的mib值,将结果返回给管理站;收集(snmp trap),指的是代理上设置相应mib信息的告警规则,当出现告警,代理将主动向管理站发送或在网络上广播trap包来报告意外情况。目前,所有的主流操作系统都支持snmp服务。系统维护的日维人员通过在本地部署snmp管理站,来查看远程网络设备的运行状态。5、 网络控制报文(icmp)协议。用于在ip主机、路由器之间传递控制消息。控制消息包括网络是否连通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。所有的主机系统和网络设备默认都支持此协议。日维人员通常使用ping程序和transrouter程序来测试网络连通性和主机可到达性。6、 数据库服务器网络侦听服务。数据库服务器网络侦听服务用于侦听数据库客户端到数据库服务器的连接请求,提供通过网络远程访问数据库的服务。所有的主流数据库(oracle,sql server,sysbase,mysql)都支持这种网络接入服务。通过在服务器端开启网络侦听服务,将客户端部署到本地网管主机,日维人员可以实现数据库的远程接入和数据访问。第三章 多数据业务统一维护系统的实现统一维护系统设计采用分层次的模块化结构,基于windows和linux操作系统为开发平台,以系统监控开发包和oracle数据库作为承载模块进行实现。总体框架如下图所示:图表 1 多数据业务平台统一维护系统框架图如图所示,为实现系统功能, 在系统监控开发包和oracle数据库等形成的软件承载基础上,设计了配置模块,密码管理模块,采集模块,监控处理模块, 存储模块, 告警模块和报表模块, 并通过各模块之间的消息传递,方法调用和网络端口通信来完成对各监控指标的配置,调度,告警, 存储和统计等功能。下面就对各模块功能作详细描述。第一节 系统监控开发包系统监控开发包是由ks-soft公司基于dephi集成开发环境推出的基础开发包, 通常运行在windows系列操作系统平台之上,主要适用于主机监控软件的二次开发。它提供了标准化展示界面及统一调度功能, 支持代理方式的数据采集,代理可以运行在windows,aix,linux,unix操作系统上。在采集方式上,它支持通用的snmp采集方式可用于远程mib库信息的提取;也具备odbc开放式调用接口, 为实现数据库统一访问提供了可能;而提供代理和非代理方式下的开放的外部可执行程序调用接口, 则为用户的个性化监控需求的采集实现提供了支持。我们通过编写多重可执行脚本和程序可以实现所有现网业务系统监控指标的采集需求,如果有新的业务指标需要新的采集方法,只要添加新编写的vb脚本、可执行程序或shell脚本,经过独立测试后就可以集成到现有采集功能列表,灵活实现业务指标采集功能的扩展,节省了二次开发的费用,节约了维护成本。另外,为了增强代码的通用性,我们还采用程序模块参数化的思想,使得同一程序通过接收不同参数实现多指标采集的代码共享。在告警方式上,通过开放的外部可执行程序的调用,我们也可以根据需求实现任意方式的告警通知。总之,该开发包为我们在其上进行二次开发,实现多数据业务平台的统一维护管理系统提供了较好的支持。第二节 采集模块采集模块负责与远程主机和网络设备进行通信执行定时数据采集功能。通过提取采集方式,读取参数输入来选择调用不同的应用程序实现代理或无代理方式下的采集数据的提取,同时接收采集数据。采集方式根据采集端口共分为两种:一、 客户机/代理/服务器模式。这种方式通过在被监控的主机端部署代理软件,提供了采集端(客户端)和被采集端(服务器)通信的统一的tcp端口,从而不依靠其它通信端口和服务就能够实现本地网管主机的到远程网络设备的访问。消息流程图如下所示:图表 2 客户机/代理/服务器消息流程、 建立连接阶段。运行在服务器主机系统上的代理,开放tcp侦听端口并始终保持侦听状态;客户机通过socket发起建立连接请求,其中包括代理所在的主机名和端口信息,代理侦听器接收到连接请求,查找预先配置的主机名列表,如果是合法主机,则返回连接成功。、 认证阶段。客户机收到连接响应后立即发送用户名和密码认证请求给代理程序,代理进行密码校验成功后将生成通信文件描述符,客户端返回认证成功。代理主进程创建通信子进程,通信子进程根据通信文件描述符将与客户端进行通信。主进程关闭通信文件描述符继续侦听端口上的连接请求,这种方式将避免了多个请求连接阻塞,实现了并发访问。、 内容请求执行阶段。客户端发送命令请求并等待代理执行返回,代理通信子进程在接收到命令请求后,直接转发给服务器执行请求,服务器在解析并执行命令请求后将结果返回给代理通信子进程,后者将结果通过转发给客户机。、 连接断开阶段。客户机收到执行结果后将断开socket连接,代理在收到请求后则退出通信子进程。客户机和代理随即释放系统资源,返回连接前状态。代理方式的优点在于,客户机和服务器之间可以减少互操作次数,降低网络流量;另外,通过开放统一端口,限制客户机源地址和密码认证来实现安全的数据访问。这种访问方式的缺点是需要在远程网络主机上额外部署软件程序并占用主机资源。由以上消息流程可以看出,代理实现通信连接和转发功能,而和请求内容和返回结果无关。这样,客户机即可根据实际需求自由定制请求内容,只要请求能被服务器应用程序解释执行,同时,对服务器端返回的结果,客户机程序同样能够解释即可。对于这种采集方式,在实现手段上按服务器端的操作系统类型分为两类。、 采用shell脚本方式提取采集指标数据(适用于linux,unix,aix操作系统)。shell是所有非windows操作系统以外的主流操作系统都支持的解释型的编程语言。它既是命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入系统命令,文件操作命令,以及各种应用程序命令;作为程序设计语言,它仍然支持交互式命令的解释执行,并定义了各种变量和参数,提供了许多在高级语言中才具有的控制结构,包括循环和分支。当手工提取这类操作系统的指标数据时,可通过输入一个或多个shell交互命令的方式实现。一般来说,只要shell命令能够做到的,我们都能通过shell脚本,实现该类操作系统的任何指标的采集逻辑。下图是对shell概念的描述图。图表 3shell概念描述图、 采用vbs脚本方式提取采集指标数据(适用于windows系列操作系统)。vbs 是一种windows脚本,visual basic的一个抽象子集,解释执行器宿主host是windows操作系统内置的。vbs源代码文件无需编译就可以直接执行,便于调试和更新,使各种各样的任务自动化,能极大地提高工作效率。它最强大的地方就是提供了对indows通用com对象的支持。只要找到包含有所需要的功能的模块文件,并在脚本中规范的引用,就可以实现特定的功能。目前业界提供了众多的com对象包括操作系统build-in的组件可供调用,能够实现windows操作系统上任意指标的数据采集。下图是vbs的概念描述图以及本地采集方式下的com组件的支持。图表 4vbs 概念描述图采集接口com对象服务器操作系统命令方式scripting.shellwindows文本文件scripting.filesystemobject,scripting.filewindowsexcel文件excel.applicationwindows图表 5com组件列表二、 通过通用远程通信服务端口实现远程监控。这种方式是在本地运行可执行程序来模拟完整的手工远程访问操作,消息流程如下图所示。它无需在远程网络设备上安装额外的代理程序,从而不占用因此产生的软硬件资源消耗。但对于难以提取的复杂的监控指标需要进行多次交互,增加了网络流量。我们可以尽量多的将多个操作放在一条命令里执行,也可以将它们编写成可执行文件保存在远程主机,在本地发送指令触发可执行文件远程运行,通过这些方式来减少因频繁交互而产生的网络带宽的消耗。图表 6 通用网络通信服务交互消息流程、 建立连接。服务器打开远程网络通信服务,如ssh,telnet,http,snmp,icmp,数据库网络服务等服务。此时服务对应的侦听端口将被开启,负责接收客户端的请求。客户机发送连接请求给服务端的主机名和端口号,服务器将返回连接成功响应。、 认证阶段。认证阶段的行为依据不同服务而有不同的表现。shh,telnet服务的认证是在成功连接后通过用户名、密码的方式进行认证;http服务本身无需认证,对web应用的访问权限依赖web应用程序是否提供认证功能而定;icmp服务则无需认证过程;snmp的认证是通过指定服务器端community完成的;数据库网络服务是通过数据库实例名、用户名和密码进行认证的。、 执行阶段。登录完成后客户机可以通过发送命令和消息请求方式完成和服务器操作的交互,并对命令执行和消息返回结果进行分析和处理,根据实际需要可能进行多次交互最终实现远程操作目的。、 客户端在获得处理结果后将主动断开此次连接,双方系统释放此次操作所占资源,并返回连接前状态。根据以上消息流程,依赖各类远程通讯端口,我们通过采用以下不同的技术手段,可以实现任意消息和命令的发送来获得服务器端的各项指标的提取:、数据库方式。通过odbc技术实现对数据库的集中访问。微软开发了开放数据互联(odbc)中间件,它屏蔽了不同数据库软件的差异,提供统一的数据库访问接口。用户在客户端上安装数据库odbc驱动程序,然后创建数据源,即可对不同数据库服务器进行远程访问,再通过编写不同的sql语句,就能完成不同实例下的各库指标的统一接口提取。odbc实现参考模型如下图所示:图表 7 odbc实现参考模型、 命令提取方式。这种方式通常通过远程登录服务ssh,telnet执行服务器可执行命令完成的,com组件weonlydo.wodsshcom.1提供了对象供vbs调用实现远程登录,命令发送,命令接收,退出登录等一系列的步骤,可以完成任何命令形式的数据采集功能。、 文件方式。这种方式一部分是通过向服务器发送命令的方式实现的,但对于复杂的文件格式和数据的提取,我们是通过将文件ftp到客户端,然后执行文件读取操作实现的。ftp可以通过window提供的内置的com组件wscript.shell来实现。、 web方式。这种方式是通过客户端打开浏览器,进行web应用访问实现指标数据的提取,对于这种方式,windows提供了内置的com组件internetexplorer.application实现网页打开和关闭操作;对象document则实现对网页任意内容的提取。、 wql方式。是windows管理技术(wmi)查询语言,wmi提供访问、配置、管理和监视几乎所有的windows资源的功能,包括驱动器,文件系统,进程,服务,共享,注册表,网络模块,事件日志,用户等对象。通过编写wmi查询语言(wql)语句完成对windows资源对象的状态的提取。windows提供了内置的com对象winmgmt:服务器名实现对远程wmi服务的接入。、 snmp方式。cisco网络设备提供对外开放的指标mib oid列表,通过在服务器上开启snmp服务并定义身份验证字段community字段值,客户端提供服务器主机名,community值和miboid就可以实现对应指标的提取。从以上采集实现方式可以看出,不同的主机和网络设备可以根据实际情况的需要采取不同的方式,详细采集命令和采集实现方式见附件一:系统硬件运行状态指标.xls,附件二:系统软件运行状态指标.xls,附件三:日报表业务指标.xls。第三节 密码管理模块 vbs脚本在实现远程登陆方式采集时都需要远程主机的主机名或ip地址,用户名和密码信息。这种情况下密码就需通过明文方式多处存放,为了提高操作的安全性,通过密码管理功能模块将密码加密后统一存储到数据库表中供采集模块的可执行程序调用。同时,我们开发了动态链接库prjencryptiondb.dll提供了prjencryptiondb.clsencryptiondb对象供各vb脚本和可执行程序调用来获取主机名或ip地址和用户名对应的访问密码, 从而达到了一处保存,多处使用的安全的密码管理功能。该功能模块加密算法采用了支持反解密的二进制异或算法,用于在采集模块程序提取后的远程登录操作。第四节 实时告警模块此模块负责超过阀值的监控任务采集数据的异常告警。当采集模块执行返回后,如返回数值满足告警阀值,此模块将被触发执行,告警流程如下所示。图表 8 告警处理流程告警模块选择加载预定义的告警方式程序,接收输入参数并作相应处理,创建发送通信对象,设置发送内容和发送接受对象,发送告警信息并返回发送状态,最后析构通信对象。为有效保证实时告警,根据系统网络部署的需求,我们还实现了通过数据业务的企信通平台实时下发异常告警功能,它是通过vbs调用企信通提供的外部开发接口对象empp.emptcl完成的。输入参数为:接收者,告警指标名称,告警时间,采集结果,采集结果状态等信息。下图为通过企信通平台实现的告警下发短信样式。 图表 9 下发短信样式第五节 存储模块此模块提供了系统数据的集中存储功能,便于该平台配置数据和采集数据的统一存储和备份。对定时采集的数据可以选择忽略,文件存储,数据库存储三种存储方式。对存储内容可以选择所有调度均存储,状态改变时存储和告警时存储等多种方式,其中对于数据量较小和不经常变化的信息,通常采用文件存储的方式,主要存放在文件系统内。包括,指标任务列表:用于对各指标配置数据的存储。采集方法列表:用于记录已支持的各种采集方式信息。告警方式列表:用于记录已支持的不同的告警方式。日志文件:用于记录该平台运行状态信息。对于经常变化和数据量比较大的信息,我们将它们同于存储到oracle数据库。包括:采集数据列表:用于实时记录各指标的采集数据信息。密码存储列表:用于记录远程访问的主机登陆密码信息。其它各模块可以通过上述列表对相应数据进行读写操作。各列表存储内容和关系结构图如图所示。图表 10 存储列表关系结构图 所有采集到信息都可通过系统监控开发包所提供的开放式采集指标数据存储接口加以存储,当然,考虑到系统软、硬件运行状态指标的采集间隔比较短(10分钟),采集数据比较大;业务日报表指标采集周期相对来讲较长(天),为便于不同类型数据的统计分析和报表生成,通过编写存储过程将这两类数据分别存放到oracle数据库的2张数据表中。考虑到每天会有大量的采集数据入库,我们定义了linux定时任务,对采集数据列表中的采集记录进行每天旧数据定时清理,确保数据库数据表空间被循环利用。旧数据清理策略为,对设备性能和业务运行功能数据在数据库中只保留1个月的记录,而对于日报表指标采集数据设置保留1年的记录。另外,为了防止所有数据的丢失,我们对所有的数据列表进行备份,将windows文件系统和linux oracle数据库系统接入了钦州统一存储备份平台。在windows数据库服务器上安装了veritaswindows客户端,备份策略为所有的文件列表每天下午18:00进行文件备份。在linux上安装了veritas linux客户端和oracle备份代理软件,备份策略为每天下午18:00整执行数据库日增备,每周五下午22:00整执行数据库周全备。第六节 报表模块 报表模块实现定时从数据库中提取最新指标数据,并生成业务报表的功能。业务报表包括质量考核指标、用户数、系统流量、设备性能等指标类型共100多个指标数据。考虑到指标数据的可配置和可扩展性,该模块在设计上采用了将报表程序与报表内容分离的设计思路,通过配置文件将数据库中指标数据与报表模板中的数据单元一一对应起来,供报表程序读取并执行。该配置文件是xml文件格式,具有很强的结构性,方便更新和维护。该模块结构如图所示。图表 11 报表模块结构图报表程序被定时任务触发器触发执行,后者首先读取配置文件信息,遍历指标项形成指标列表,然后通过数据库接口调用提取对应的指标采集数据,根据配置文件指定的指标项所在报表模板中的行和列,将采集数据写入指标列表的指定位置,然后加载报表模板,生成业务报表.并将运行过程中产生的数据和运行结果做为日志保存在日志文件中供查询和分析使用。第七节 配置模块配置模块化是提高通用性,高可用性和可维护性的重要手段之一,也是提高系统扩展性的必要条件, 下面对各配置模块功能进行描述。一、 采集方法配置模块。该模块提供一组可供选择的个性化的可执行程序和通用采集方式的集合,并根据业务特性配置相应的采集方法。1)对于有代理方式的外部程序调用,所支持的脚本或可执行程序的代码需要根据操作系统类型(版本)和监控指标类型进行分类。结合现网监控的现状和需求,对有代理的方式,目前支持如下指标的采集功能:图表 12 有代理方式下的外部程序列表可执行程序支持参数化程序调用以增强代码的通用型,使得同类型的操作系统可以重用代码。如下图是内存利用率的参数配置。图表 13 有代理方式下的外部程序memoryusage输入参数2) 对于无代理模式的外部程序调用,通过编写vbs脚本按通信接口、操作系统和监控指标类型的进行分类, 来实现采集方法的配置。对无代理模式,目前支持如下采集方法:图表 14 无代理方式下的外部程序列表无代理方式的输入参数比代理方式下的外部程序增加了远程访问的主机名或ip地址和用户名,如下图所示:图表 15 无代理方式下的外部程序memoryusage输入参数3)snmp通用采集方式, 通常适用于cisco网络设备,该模块提供可视化参数配置,指定ip地址或网络设备名和mib oid就可以实现ciscoioscpu,freemem,ifbandusage等指标的采集。4)odbc方式。所有数据库指标的采集均可以通过这种方式。提供的可配置参数为数据源名称、登录用户名、密码以及sql查询语句。目前根据现网需求,支持的数据库指标分为两类:数据库性能监控指标和需要从数据库中提取的业务日报表指标。监控内容请参考附件二:系统软件运行状态指标和附件三:日报表指标。二、 密码配置模块。该模块提供了对监控主机的远程接入密码加密存储的添加、删除和修改功能的可视化界面,所有远程接入的密码信息将被加密保存在数据库中。输入接口包括ip地址或主机名或用户名,密码。界面如下图所示:图表 16 密码管理界面三、 任务调度配置模块。此模块用于指标任务采集时间的配置,分为两类:一类是以采集间隔作为调度点,采集粒度支持小时,分和秒,可任意根据需要进行设置, 适合性能指标和业务功能指标的实时监控;另一类是以固定时间作为调度点,可每天,每周,每月的固定时间执行一次采集任务,适合日报表数据指标的采集。四、 告警阀值配置模块。此模块用于设置告警产生的条件,通常结合以下两种方式:、 条件方式:该方式通过关系表达式(大于,小于,大于等于,小于等于,不等于,等于)和正则表达式(包含,不包含)供不同监控指标选择;、 数值方式:一般为告警阀值。 在维护人员通过该模块设置了告警条件和告警阀值之后,监控处理模块会将采集来的数据与设置的告警条件/阀值比较,如匹配,系统则发出告警。五、 告警方式配置模块。该模块提供了多种告警方式的选择。对实时监控的业务指标, 支持短信告警,email告警,声音告警,颜色报警,弹出窗口式告警等多种告警方式以满足不同告警需求,其中颜色告警是默认必须的告警方式,红色表示超过阀值,黄色表示未知错误,白色表示正常。系统监控开发包针对告警方式提供了可扩展的外部调用接口,用户可通过编写可执行程序可以选择实现各种方式的告警。第八节 监控处理模块该模块为监控模块,告警模块和存储模块之间的桥梁。它通过读取任务配置信息,生成实时任务调度表,并根据调度时间间隔依次触发采集模块执行采集任务,接收采集结果进行主界面展示和告警阀值比对,当出现告警阀值越界情况,此模块将触发告警模块执行告警信息通知, 另外,还调用数据库接口将采集数据实时写入统一存储数据库中。第四章 统一管理平台的现网部署第一节 硬件部署此管理平台需2台服务器,一台为部署统一维护管理软件的应用服务器,另一台为部署oralce的数据库服务器。1、 应用服务器,最小配置如下。l cpu:1ghzl mem:512mhzl disk space:40 mb 对此服务器的硬件配置因监控指标任务的数量级别而不同,目前现网监控指标约有800个监控任务,所需的硬件配置如下:l cpu:3g hzxeonl mem:1gbl disk:10gb2、 数据库服务器。l cpu:2*2.8ghzxeonl mem:2gbl disk:146.8gb第二节 软件部署1、应用服务器l 操作系统:windows 2003 sp2,microsoft提供 l internet explorer ,microsoft提供l office2003 excel,microsoft提供l 系统监控开发包, ks-soft提供l oracle/sysbase/mysql等数据库的odbc客户端驱动,oracle,sysbase,mysql提供。l 多数据业务平台统一维护管理系统软件,开发实现。l veritas备份软件windows客户端,symantec提供。2、数据库服务器。l 操作系统:redhat linux, redhat提供。l oracle企业版服务器软件包,oracle提供。l veritas备份软件linux客户端,symantec提供。l oracle备份代理,oracle提供。第三节 网络部署图表 17 网络拓扑图黄色标识两台新增的服务器,说明如下:1、 将应用服务器和数据库服务器接入“内网网管接入交换机”,不建立和cmnet的路由,确保了采集信息私密性和传输的安全性。2、 由于所有业务主机都需与内网网管网络连通,对现网业务系统主机的指标采集无需额外配置路由,就可以将采集请求通过网管交换机,钦州内网路由器转发到钦州网管交换机,然后发送到业务系统内部网络。3、 将数据库服务器和应用服务器配置在统一网段,确保了两台服务器之间数据传输的高效性和可靠性。第四节 现网监控指标的部署为了便于管理和维护,将现网监控指标任务按业务名称和指标类型分层次展示。目前所有业务都已经纳入了统一维护平台,总共800多个监控任务,如下图所示。指标类型为:网络连通性,cpu利用率,内存利用率,磁盘利用率,服务运行状态,数据库状态,业务质量指标等等。图表 18 现网监控指标展示界面不同的指标配置了不同的采集方式,为减少调用程序代码进程和线程并发量,可以通过设置质数采集间隔和避免整数间隔方式来降低各监控任务的采集耦合度。经过一段时间的调试,目前,应用服务器系统的最大并发量为80个,最大cpu利用率为50,平均cpu利用率为10。数据库服务器采集数据列表1(性能指标)写入速率大约为103409条/天,采集数据列表1(业务容量和质量指标)写入速率大约为20条/天。表空间利用率保持在40%左右。系统运行稳定。第五节 软件系统测试多数据业务平台统一维护系统项目实现完成后,为确保上线后的稳定性和可靠性,我们依照业务系统维护的流程对该系统每个功能模块进行了分阶段功能测试和负载运行测试,并及时更正了测试中发现的问题。1、功能测试:1) 数据采集阶段。我们以遍历所有采集方式的功能测试为主导思想,选择了具有代表性的监控指标做为测试对象, 测试结果达到预期目标,各采集任务被定时触发并按照预先配置的采集方式接入到远程被监控主机和网络设备,执行结果能立即返回,并及时呈现在主界面。另外,我们还将本系统的应用服务器和数据库服务器纳入了监控范围, 经过一段时间的测试,发现应用服务器cpu,内存以及数据库服务器表空间等性能指标数据最高值达到了预期目标,数据变化无明显波动,系统运行稳定可靠。2) 告警功能。对采集指标设置较低的告警阀值,以期告警程序被触发执行。测试结果达到了预期目标,告警消息被按照预先配置了方式进行了告警提醒和内容下发,提醒及时率为100。3) 存储功能。经过测试,所有的采集数据都被实时按字段写入数据库中,无漏写错写现象。表空间利用率稳定在70左右。4) 报表功能。报表程序被定时触发,平均报表生成时间为8秒。报表文件按日期时间正确生成,报表数据准确无误,可以立即上报上级部门。2、负载运行测试:目前上海移动数据中心有800多个数据业务系统指标任务需要监控,通过增加采集频率来模拟增加监控量,我们测试了在2倍正常负荷情况下的系统运行状况,经修改测试中发现的问题,目前结果一切正常,有效应对后续移动数据业务的增长。第六节 试运行结果目前,该系统已经运行大约2个月的时间,通过试运行期间的调试和改进,目前系统运行状态良好,并成功发现多起业务系统潜在问题, 以下列举部分例证:1、adc业务数据库服务器表空间利用率越界告警。在试运行期间, 我们曾通过统一维护管理系统将该adc业务的数据库表空间利用率告警阀值设置为90,将采集间隔设置为31分钟。2009年2月16日,维值人员收到实时告警短信后, 发现当时统一维护管理系统的展示界面上也出现了该监控指标的红色告警,立即手工查看了adc业务数据库表空间,确认其可用空间已经超过了警戒阀值,并且还在呈不断的减小趋势。维值人员及时通知业务主管,业务主管在分析原因后随即删除了部分旧数据,确保了后续业务新数据能成功写入,避免了因此而产生的不必要的损失。2、流媒体报表主机文件系统空间利用率告警。流媒体报表主机将每天的流媒体下载,点播等日志信息记录在文件系统上用于报表数据的生成,这样每天都有新增的文件占用文件系统空间。我们把主机文件系统纳入了统一维护管理系统的监控范畴,并实现了对主机系统单个文件系统逻辑盘空间利用率的监控,将存储日志信息的逻辑盘最小阀值设置为200m,采集间隔设置为11分钟,自动告警方式设置为企信通短信下发方式。当采集指标低于200m空间,监控展示界面将此监控指标显示为红色;同时,业务主管接收到了告警短信通知,通过查看系统磁盘空间后发现随着流媒体用户下载和直播数的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论