您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 服务器远程监控的设计与实现
服务器远程监控的设计与实现在分析地质录井公司现有服务器分布和生产软件应用现状的基础上,得出对服务器进行远程监控的必要性。结合录井生产过程中用到的软件系统,提出了针对网络监控、生产软件运行、服务器状态、系统安全、监控信息管理等方面的服务器远程监控设计方素。对软件系统的设计和实现方面的重要技术进行了描述,并对其应用效果进行了评述。一地质录井公司软件应用现状自从现场录井数据实现实时远程传输以来,录井数据的采集、传输、存储、管理、发布、资料处理等一系列相关配套的生产应用软件逐渐发展起来,软件的技术支持覆盖范围也逐渐变深变广。近年来,公司在国内外其它地区配备了近十台服务器为甲方提供数据接收、存储、管理、迁移、发布、查询等服务。这些服务器处于无人值守状态,因此有必要充分利用信息技术对远程服务器进行有效管理,监控服务器上运行的诸多生产相关的应用软件和数据库,实时的发现并解决问题,加强对外服务故障的响应效率,减低维护人员的维护难度。二软件系统的功能模块设计结合录井生产过程中用到的软件系统,我们针对不同的被监控生产软件,考虑了服务器的远程操作和方便性的因素,设计了不同的监控方案。2.1应用软件的监控(1)操作系统错误捕捉主要针对数据同步软件,因为数据量巨大和网络状况以及软件自身设计方面的一些原因会弹出错误窗口,导致数据同步中断。系统自身要对整个Windows错误进行捕捉,例如:C++RuntimeLibrary、VistualStudioDebug、Err等;采用的是实时监测操作系统的注册窗口。根据所有窗口的运行状态来进行判断而找到错误并进行捕捉。通过捕捉到的错误窗口,得到其进程PID号,然后再对错误窗口进行处理,通常情况下只需要结束此窗体的进程即可。(2)系统服务监控主要针对地质资料接收软件等以服务的形式运行的软件。首先通过WMI枚举所有系统的服务及其运行状态。并匹配用户所指定的系统服务,然后通过匹配检测出当前服务是否运行,如果服务没有运行可以通过网络将服务重新启动。(3)应用程序监测主要针对录井仪资料接收软件等,对此类应用程序进行监控,随时了解其运行状态。首先通过FSO(文件系统对象)判断所需要监测的应用程序是否存在,然后通过Win32API枚举进程检测当前应用程序是否存在,如果不存在可以使用远程命令来把应用程序启动起来。2.2服务器的监控(1)系统进程监控由于远程服务器正常情况下不会有人为因素对服务器的干扰,因此服务器的进程是固定不变的。通过Win32API把系统目前运行的进程全部枚举出来后,并与用户所设定的安全进程进行匹配,如果不在用户指定的安全进程范围内,则视为不安全进程或可疑进程,系统会自动将其进程结束,在枚举具体进程时,需要与FSO相结合使用,而得到进程所对应的应用程序的相关信息。(2)远程数据库监测及操作对于所有外部服务器上安装的数据库系统,实时检测连接数据库,查看数据库是否连接正常;通过WMI枚举系统服务,检测数据库服务是否运行正常。管理端同时可以对注册服务器所监测的所有MSSQL数据库进行简单操作,包括数据库视图和表等基本信息的显示;数据表、字段的显示和增删改等操作。(3)服务器信息实时扫描对用户所需要监测的信息进行实时扫描,例如:CPU和内存使用状况、安装软件及系统补丁检测等。并把相关信息存人本地和发送给服务器管理端。终端可以对操作系统本身的一些基本信息进行监测,例如:软件、硬件、基本信息、开放端口、网络状况等。(4)服务器的简单控制直接在服务器管理端就可以对终端系统信息进行查看和操作,当终端接收到管理端的命令后进行解析,然后在终端进行处理。并把处理的结果返回给管理端。包括:服务器重启、关机、软件系统重启、关闭、系统进程的结束、系统服务的启动及停止、文件系统的查阅、高级命令操作窗等。2.3报警模块设计监测到服务器有异常数据后,设置监控端服务器的声音报警,然后通过发送邮件和手机短信的方式实时地把异常数据发送给指定用户邮箱和手机上。三软件系统实现系统实现包括3个部分:服务器终端监测系统、服务器管理操作平台、报警数据Web应用平台。服务器操作管理端能够对服务器终端进行控制操作,同时。服务器监测终端可以对自身服务器的运行状况、安全状态、应用系统运行状况、数据库运行状况、CPU和内存的使用状况等进行实时监控并实时与服务器操作管理平台进行通讯。将监测到的数据进行实时显示,当出现不良运行状况时服务器操作管理端将进行报警,并对错误进行记录。当无人值守时,可将一些工作交给服务器操作管理端来自动进行处理,服务器终端操作管理端将会对服务器终端监测系统发送命令,可对终端服务器进行自动调整。3.1服务器终端监测系统服务器终端监测系统运行在远程需要被监测的服务器上面,是Client/server架构的Client端,主要是收集所监控服务器的信息,并把服务器端所需要的信息发送过去。终端监测系统启动后,首先从软件安装目录下读取系统配置文件和参数配置文件,读入配置信息,然后进行网络判断。如果在网络不正常的情况下就加载本地存储的数据结构;如果网络状态正常,那么就从数据库里面读取数据,再把本地文件与数据库文件对比并进行更新,以备下次网络不通的情况下能够正确配置运行。终端接收到服务器端的命令,并把执行的结果返回到服务器端,例如:关机,重启、得到当前服务器的相关信息、控制进程及服务等。3.2服务器管理操作平台服务器管理操作平台作为client/Server软件架构的Server端,运行在服务器上,接收终端传送的异常数据,报警并存储到数据库服务器上。软件启动后,首先从软件安装目录下读取系统配置文件,读入配置信息,然后显示主界面,等待远程终端发送数据。用户可以选择界面上的菜单按钮进行相应的操作。接收程序接收到异常数据后,首先写入内存数据队列中,然后对内存中的数据进行解包分类,判断是报警数据还是消息数据。初步分类后再进行二次分类,判断是哪台服务器的报警信息、报警类型、报警时间、报警内容等,通过分类过后的数据写入数据库并且在界面上进行显示和声图并茂报警。由于记录的数据不是很简练,那么就需要把数据进行处理后再通过邮件和短信发送给用户,使用户一看即明白。消息数据经系统二次分类后显示到界面上就是用户发送命令后得到所需要的内容。3.3web应用平台通过此网站的建设,用户只需要登录IE浏览器就可以对系统进行历史数据多条件组合查询、数据分类检索、web服务器异常监测、服务器报警内容查阅。四应用效果分析服务器远程监控系统的实现解决了录井信息对外服务过程中的问题即当服务器应用系统及数据库出现问题时,管理人员不知道,不能及时对问题进行解决。有了这套系统,管理员可以很方便地对服务器运行的软件进行维护。并可以监测服务器的当前运行状态,不需要登陆远程服务器就可以对服务器或对应用系统进行简单地操作。从而保证了服务器的正常运行。我们在一台拥有互联网和油田局域网IP地址的双网卡服务器上安装了服务器管理端操作平台并部署了Web查询网站,在其余服务器上安装了终端监控软件,对网络链接、系统常规进程、生产应用程序、录井实时发布服务进行监控。截取运行过程中两个月期间监控到的应用软件运行故障情况如表1所示:点击图片查看大图由此可见,该软件系统在应用过程中取得了良好的效果。在安装有监控软件的服务器上,可实时监控服务器及其上所安装应用软件的运行状况,减低了服务器管理人员每天巡视服务器的工作量,缩减了因网络不畅和生产软件出现故障后的响应时间,提高了服务质量。五结束语下一步将继续关注软件运行的稳定性以及功能上的进一优化。对查询网站界面进一步进行美化和优化,以更好地满足管理人员的查询。同时,加强对服务器管理人员的培训,逐步扩大推广应用的范围。
本文标题:服务器远程监控的设计与实现
链接地址:https://www.777doc.com/doc-2375878 .html