监控平台系统说明_第1页
监控平台系统说明_第2页
监控平台系统说明_第3页
监控平台系统说明_第4页
监控平台系统说明_第5页
已阅读5页,还剩12页未读, 继续免费阅读

付费下载

下载本文档

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

文档简介

实用文档网管平台需求分析&概要设计 目录1.平台需求分析 11.1需求的提出 21.2功能需求 41.2.1监控系统 41.2.2维护系统 61.3系统实现方式 61.4重点问题说明 71.4.1监控对象管理 71.4.2界面展示 71.4.3连接管理 71.4.4监控项值的传递和处理 81.4.5监控项值的收集 82.数据库设计 92.1监控主机配置表 92.2主机告警信息表 102.3告警信息描述表 112.4告警门槛值表 112.5监控主机权限表 122.6维护主机配置表 132.7维护用户表 142.8维护权限表 142.9操作记录表(该表记录长期保存) 153.业务流程 163.1监控系统业务流程 163.1.1监控客户端处理流程 163.1.2服务器处理流程 163.2维护系统业务流程 171.平台需求分析1.1需求的提出 目前我司在全国5个省份(广东,江苏,浙江,湖南,新疆)数10个节点部署了业务系统,各种类型的主机有数百台,并且随着业务的发展这个数字会不断增长,系统的维护和监控是一个庞大的工作,因为人力的限制,不可能对每台主机都做到细致化的维护,一些问题往往不能及时发现,影响了服务质量和对业务的支撑。 网管系统的目的就是将人工的维护操作尽量交由电脑执行,以做到高效,实时,可靠。平台由两套系统构成,监控系统和维护系统。监控系统主要是监控主机的运行情况,及时发现故障;维护主机主要是在维护主机上远程执行一些维护动作。系统部署 图一:网络结构图结构图中阴影部分为某个节点部署的业务系统网络示意图,其中要监控和维护的主要是占主机绝大部分数量的前置机、策略服务器、业务服务器和数据库服务器,这些服务器都是基于LINUX操作系统运行(目前是RedHatAS3),从部署上来说,要求符合以下要求:1.监控系统和维护系统是两套独立的系统,互不影响;2.一套监控/维护系统可对多个节点的不同类型服务器进行监控/维护;监控/维护对象取决于系统配置;3.同一台主机可最多可被多达10套系统同时监控,被5套系统同时维护;4.网管系统完全独立于业务系统,网管系统的部署不会对业务系统带来影响(如业务中断);1.2功能需求1.2.1监控系统 对主机的监控包括以下四大类监控,分别说明如下:主机资源监控◆CPU使用情况监控监控主机CPU的利用率,一台主机一般有多个CPU,要了解每个CPU的利用率以及总体的平均利用率,每间隔N秒采集一次CPU信息并动态展示在监控界面上,当CPU长期处于高负载时(即连续N个采集信息得到的利用率值都超过阀值),系统做相应的告警;◆内存使用情况监控;监控主机内存的利用率以及当前可分配使用的内存空间大小,每间隔N秒采集一次内存信息并动态展示在监控界面上,当内存长期处于高负载时(即连续N个采集信息得到的利用率值都超过阀值),系统做相应的告警;◆磁盘使用空间监控监控主机磁盘的利用率,一台主机一般有多个磁盘,要了解每个磁盘的利用率以及剩余空间大小,每间隔N分钟采集一次磁盘信息并展示在监控界面上,当某个磁盘空间的利用率超过阀值时候,系统做相应的告警;◆网卡流量监控主要监控采集网卡流量采集情况,包括流量的大小,采集到的包数,错误包的包数,每N秒采集一次,当某段时间内(连续N个采集信息)低于阀值或者丢包比例超过阀值的时候系统做相应告警;◆操作系统进程监控 监控系统中当前运行的进程数量,每N分钟采集一次并显示在界面上,当总的进程数超过阀值时,系统告警;网络监控◆网络连通情况监控 主要主机之间的网络是否联通,比如前置机是需要和策略服务器以及业务服务器互联,每N分钟采集一次,将结果显示在监控界面;如果网络不通则写入告警信息;请注意通常一台主机是需要和多台主机互通的;应用程序监控◆应用程序进程监控 主要监控系统中应用程序的进程是否存在,进程的最新启动时间,当进程不存在或者进程的启动时间距离当前时间低于允许阀值的时候进行告警; ◆应用程序日志监控主要监控应用程序日志的大小和日志的最新更新时间,N分钟采集一次,当日志太大超过阀值或者很长时间都没更新(即当前时间减去日志更新时间)时系统告警,请注意一个应用程序可能有多个日志而只对其中部分监控数据库监控数据库监控只对数据库服务器适用◆表空间使用情况监控 统计数据库表空间的利用率以及空闲的表空间大小,N分钟采集一次,当利用率太高的时候系统告警,请注意数据库一般都有多个甚至数10个表空间而只对其中部分监控;◆数据库服务名解析监控 用来监控数据库是否在正常提供服务,N分钟采集一次,如果服务名不能被解析说明数据库服务故障;◆数据库死锁情况监控 用来监控数据库有无死锁,N分钟采集一次,如果死锁则告警;◆数据库连接情况监控 监控数据库当前连接数,N分钟采集一次,当连接数超过阀值的时候系统告警; 系统需有良好的扩展性,当有新的监控项需要监控时能方便地加入;1.2.2维护系统 略。1.3系统实现方式 监控系统和维护系统均采用C/S的架构,其中客户端为.netform开发的前台界面程序,运行在WINDOWS(XP,2000)下,负责监控信息的接收和展现。服务器端为一驻留在被监控/维护主机的伺服程序,负责收集和发送监控信息。监控系统和维护系统无论在客户端还是服务器端都是互相独立的。 C-S间采用SOCKET通信,被监控/维护主机和客户端之间保持一个固定的长连接,通信格式为自定义格式。参见《监控系统客户端-服务器通信接口定义》和《监控系统客户端-服务器通信接口定义》。 从服务器端来说,监控信息的收集和发送是两个独立的程序。收集程序:定时调用不同的SH脚本,将最终结果定时输出到固定文件;发送程序:负责和客户端之间的连接管理,定时从文件里读出监控信息发送到客户端;收集程序和发送程序经常需要操作同一个文件,可采用文件锁的机制来防止冲突;1.4重点问题说明1.4.1监控对象管理 在多个省份,多个节点存在多种类型的主机,并不是所有的人都能监控所有主机,比如深圳电信的客户就不能监控广州电信的主机。为方便处理,我们不通过库表配置来实现(参见下文的主机配置表和主机权限表),最低的权限为某个用户只能维护某一个节点的某一类主机,对同一类主机不在做权限细分(比如A只能维护50%的前置,B维护另外50%的前置机)。1.4.2界面展示 因为同时在监控多太主机,而界面上某一时刻只能显示某一台被监控主机的某一个监控项情况,并且每个监控项信息都是需要间隔一段时间才有的,有的间隔时间还比较长(比如磁盘监控信息可能1,2个小时才有一次),为了保证“焦点”每次移动在界面上都能及时有信息显示,要采用以下策略:驻留程序收到登陆请求包验证用户合法后立刻返回当前所有监控信息,然后才开始做间隔传送;2.前台客户端总是保存同一监控项当前N(可配置)个数据包的缓存,当“焦点”发生移动的时候,即刻从缓存中读去信息显示在界面上;1.4.3连接管理 因为每个监控客户端和每一个后台服务器都保持一个固定的长连接,要监控的主机有多台同时也可能有多个客户端在同时监控同一台主机,也就是说监控客户端和服务器都要同时维护多个长连接,需要做好连接的管理工作,包括连接数的管理,连接状态的管理,读写方式。 考虑到长连接容易出现挂死的情况,因此通信双方都需要能及时识别出异常并及时关闭连接。通常处理如下:客户端: 发送登陆包不成功则断开连接; 接收数据失败则断开连接; 在N秒(可配置)内没收到任何监控信息断开客户断连接;服务器端: 连接数超过限制时断开连接; 在接收登陆包失败或超时时断开连接; 发送数据包失败时断开连接;1.4.4监控项值的传递和处理 为了方便处理,每个信息包中监控项只能有一种(但可以有多个)含义的监控项值,并且是整型的,客户端根据消息类型去判断该如何处理(是否告警),比如磁盘的监控,监控项的值为磁盘的利用率,其他信息如磁盘的编号,磁盘的空闲空间等都是参考项,客户端只用来做展示并不用来做判断。如果同一个监控目标有多个告警依据,则需要定义成多个监控项做多次传输。比如网卡流量的监控,当流量多低或者丢包率过高的时候都应该引起报警,不能在一个数据包里将这两个信息都打包过来做处理,正确的处理方式是将网卡的监控定义成两个独立的监控项(包括客户端的参数配置,后台的SH脚本,消息编码都不相同),各自独立处理,但是系统展示的时候是将它们展示在同一个界面上的。 1.4.5监控项值的收集 后台系统对监控系统的采集也有不同情况,需要做不同处理。情况1:执行一次指令,输出一次结果,该结果为最终结果;比如磁盘空间的监控,这是最容易处理的情况;情况2:执行多个指令,将多个指令输出汇总到一个结果里,比如网络连通情况的监控,因为一台主机可能和多台主机相连(特别是策略服务器和数10台机器相连),测试连通情况时对每台连接的主机都需要执行一个指令来判断(比如ping),但同一台主机和其他电脑的连通情况需要打包一次传递给客户端处理;情况3:执行多个指令,将多个指令的结果进行二次处理得到最终处理结果,比如网卡流量的监控,需要将在两个时间点采集两次流量,将两次的流量相减并除以2次采集的间隔时间才能得到当前网卡采集速率(近似值); 2.数据库设计以下是监控系统的库表2.1监控主机配置表Tablejk_monitor_host{ Province Varchar(15)notnull,/*省份,如guangdong表示广东省*/ Area Varchar(30)notnull,/*节点,如shenzhen表示深圳*/ HostType number(2),notnull,/*监控主机类型,0—前置机,1—策略服务器,2业务服务器*/ HostIp varchar(16)notnull,/*被监控主机的IP*/ MonitorFlag number(1), /*监控有效标志,0—该主机需要被监控,1—该主机不需要被监控*/ Port number(5)notnull,/*被监控主机的监听端口*/ UserName varchar(20)notnull,/*登陆被监控主机的用户名*/ Passwd varchar(20)notnull,/*登陆被监控主机的密码,主要用来做客户端的校验,明文即可*/ Hostinfo varchar(20),/*对该主机的说明*/ CreateTime date notnull,/*创建日期*/ ModifyTime datenotnull/*修改日期*/}对HostIp唯一索引对Province+Area索引2.2主机告警信息表记录主机告警信息,用户可配置告警信息保存的最长时间,比如只保存最近7天的告警信息*/Tablejk_monitor_info{ Province Varchar(15)notnull,/*省份,如guangdong表示广东省*/ Area Varchar(30)notnull,/*节点,如shenzhen表示深圳*/ HostType number(2),notnull,/*监控主机类型,0—前置机,1—策略服务器,2业务服务器*/ HostIp varchar(16)notnull,/*被监控主机的IP*/ InfoClass number(2)notnull,/*监控信息大类,10-主机信息,20—应用程序信息,30—数据库信息,40网络信息*/ InfoType number(5),/*信息类型,10000-10999对应具体主机告警信息,如10000可表示主机的CPU告警信息*/ Level number(1),/*告警级别,0—正常信息,1—警告,2—错误信息,用户可设置告警信息的显示级别,如果告警信息级别设置为0,则显示全部信息,如果为1则只显示警告信息和错误信息*/ InfoDetail varchar(60),/*告警显示信息*/ CreateTime datenotnull,/*告警时间*/ }对Province+Area索引;对HostIp+InfoClass+Level索引;2.3告警信息描述表该表用来描述不同类型的告警如何显示在界面上CreateTablejk_info_config{InfoClass number(2)notnull,/*监控信息大类,10-主机信息,20—应用程序信息,30—数据库信息,40网络信息,90和监控主机连接信息*/ InfoType number(5)notnull,/*信息类型,10000-10999对应具体主机告警信息,如10000可表示主机的CPU告警信息*/ Level number(1)notnull,/*告警级别,0—正常信息,1—警告,2—错误信息,用户可设置告警信息的显示级别,如果告警信息级别设置为0,则显示全部信息,如果为1则只显示警告信息和错误信息*/ InfoDetail varchar(60),/*告警显示信息*/ CreateTime datenotnull,/*创建日期*/ ModifyTime date/*修改日期*/}对InfoClass+InfoType+Level唯一索引2.4告警门槛值表CreateTablejk_parameter{InfoClass number(2)notnull,/*监控信息大类,10-主机信息,20—应用程序信息,30—数据库信息,40网络信息*/ InfoType number(5),/*信息类型,10000-10999对应具体主机告警信息,如10000可表示主机的CPU告警信息*/ InfoCount number(2),/*连续多少监控信息都符合条件的时候才告警,最大99个*/ InfoCondition number(1),/*0—小于,1等于,2—大于*/ Value1 number(8),/*告警阀值*/ Value1 number(8),/*错误阀值*/ Desc varchar(20),/*对VALUE的描述,比如“磁盘空间利用率百分比”*/ CreateTime datenotnull,/*创建日期*/ ModifyTime /*修改日期*/}对InfoClass+InfoType唯一索引;阀值是一个整形的数字,所以在处理的时候要注意,比如当磁盘空间占用超过95%的时候系统应该告警,此时磁盘的空间利用率的对应的Value1应该是95而不是0.95,驻留程序处理的时候也尽量考虑传递过来的参数是整型的95而不要用0.95.当驻留程序传递过来的值符合InfoCondition+Value2为一错误信息,当不符合InfoCondition+Value2但符合InfoCondition+Value1为一告警信息,当不符合InfoContition+Value1的时候为一正常信息,比如对某类监控InfoCondition,Value1,Value2分别设置为2,95,99。当采集的值为98的时候为一告警信息,100的时候为一错误信息(指对监控的对象出现错误,比如磁盘空间为100的时候,说明空间满了,是一个错误信息),80的时候为一正常信息。如果Infocontition,Value1,Value分别设置为1,0,0,则当采集到的值为1时为正常信息,0为错误信息,这个适合监控值只有TURE和FALSE两种情况下的监控,比如网络连接情况的监控,要么网络就是通的(1),要么网络就是不通(0)。2.5监控主机权限表CreateTablejk_monitor_operator{ Operator varchar(40)notnull,/*维护用户名*/ Province Varchar(15)notnull,/*省份,如guangdong表示广东省,如果为9999表示所有省份*/ Area Varchar(30)notnull,/*节点,如shenzhen表示深圳,为9999表示所以地区*/ HostType number(2),notnull,/*监控主机类型,0—前置机,1—策略服务器,2业务服务器,为99表示所有类型服务器*/ CreateTime varchar(40)notnull,/*创建时间*/ ModifyTime varchar(40)/*创建时间*/}对Province+Area+HostType索引;以下库表为维护系统库表2.6维护主机配置表Tablejk_maintain_host{ Province Varchar(15)notnull,/*省份,如guangdong表示广东省*/ Area Varchar(30)notnull,/*节点,如shenzhen表示深圳*/ HostType number(2),notnull,/*监控主机类型,0—前置机,1—策略服务器,2业务服务器*/ HostIp varchar(16)notnull,/*被维护主机的IP*/ MaintainFlag number(1),/*维护的有效标志,0—该主机需要被维护,1—该主机不需要被维护*/ Port number(5)notnull,/*被维护主机的监听端口*/ UserName varchar(20)notnull,/*登陆被维护主机的用户名*/ Passwd varchar(20)notnull,/*登陆被维护主机的密码,主要用来做客户端的校验,明文即可*/ Hostinfo varchar(20),/*对该主机的说明*/ CreateTime date notnull,/*创建日期*/ ModifyTime datenotnull/*修改日期*/}对HostIp唯一索引对Province+Area索引2.7维护用户表CreateTablejk_maintain_operator{ Operator varchar(40)notnull,/*维护用户名*/ Passwd varchar(40)notnull,/*密码*/ CreateTime varchar(40)notnull,/*创建时间*/ ModifyTime varchar(40)/*创建时间*/}对Operator唯一索引2.8维护权限表定义那些用户可以维护什么地区的什么主机CreateTablejk_operater{ Operator varchar(40)notnull,/*维护用户名*/ Province Varchar(15)notnull,/*省份,如guangdong表示广东省,如果为9999表示所有省份*/ Area Varchar(30)notnull,/*节点,如shenzhen表示深圳,为9999表示所以地区*/ HostType number(2),notnull,/*监控主机类型,0—前置机,1—策略服务器,2业务服务器,为99表示所有类型服务器*/ CreateTime varchar(40)notnull,/*创建时间*/ ModifyTime varchar(40)/*创建时间*/}2.9操作记录表(该表记录长期保存)CreateTablejk_operate_record{ Operator varchar(40),/*操作员*/Province Varchar(15)notnull,/*省份,如guangdong表示广东省*/ Area Varchar(30)notnull,/*节点,如shenzhen表示深圳*/ HostType number(2),notnull,/*维护主机类型,0—前置机,1—策略服务器,2业务服务器*/ HostIp varchar(16)notnull,/*被维护主机的IP*/ Command varchar(60),/*操作指令*/Memo varchar(100),/*操作记录*/

温馨提示

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

最新文档

评论

0/150

提交评论