主动式服务器管理技术研究.doc

上传人:文库蛋蛋多 文档编号:2397279 上传时间:2023-02-17 格式:DOC 页数:8 大小:66.50KB
返回 下载 相关 举报
主动式服务器管理技术研究.doc_第1页
第1页 / 共8页
主动式服务器管理技术研究.doc_第2页
第2页 / 共8页
主动式服务器管理技术研究.doc_第3页
第3页 / 共8页
主动式服务器管理技术研究.doc_第4页
第4页 / 共8页
主动式服务器管理技术研究.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《主动式服务器管理技术研究.doc》由会员分享,可在线阅读,更多相关《主动式服务器管理技术研究.doc(8页珍藏版)》请在三一办公上搜索。

1、主动式服务器管理技术研究摘 要 阐述在复杂的网络环境下如何对服务器进行高效的管理,重点对基于反向连接的双向数据交换技术进行研究。关键字 集中监控 反向连接 主动告警 模块化1 引言随着信息产业的高速发展,信息化建设在各行各业中得到大面积的普及,大量的应用被开发,如单位的门户WEB、OA系统、各种业务系统等。这些应用的后台都离不开服务器。服务器是所有应用的物理基础,服务器的正常工作至关重要。所以网管的一项重要工作就是对服务器进行管理和维护。目前,在服务器管理维护方面面临一些日益突出的问题:1. 服务器的数量随应用大量增加而增加,给管理员增加的许多的工作量,管理员往往难以对所有服务器都进行有效的管

2、理。2. 管理手段落后,目前主要是人工方式对各个服务器工作状态进行观察及分析,难度大。3. 网络的安全环境严峻,黑客的攻击手法、熟练和普及程度都在直线上升,对服务器工作状态进行监控及管理也提出了更高的要求。因此,一个有效的服务器管理系统显得尤为重要,“主动式服务器管理技术”就是针对上面三个要点而推出的解决方案。2 主动式服务器管理技术所要面临及要解决的问题:2.1 网络环境的多样性。 一个行业、一个单位的信息化建设一般来说是逐步进行的,并且受到多方面因素的影响,这就造成不同服务器的硬件配置、操作系统的多样性,以及其所部署的网络环境也可能不同,有高带宽的网络也有低带宽的网络。这就要求服务器管理技

3、术能在多种硬件、多种操作系统、多种网络环境下实现高效率的管理功能,同时还要尽可能减少对主机系统资源的占用。2.2 网络安全事件时有发生,对服务器的监控提出了更高的要求。 首先,为了应对网络攻击,目前绝大部分的服务器都处于内网的安全区内,受到防火墙及其他网络安全设备的保护,服务器对外提供的端口受到严格的限制。而传统的远程监控及管理技术往往要求服务器对外提供管理接口,这将给服务器引入新的安全隐患,不符合安全策略的要求。 其次,当服务器受到攻击时,管理员对服务器进行实时有效的管理显得更为重要,保证服务器管理员能实时的获取服务器的运行状态,并同时能依据运行状态下发各种策略及控制指令。因此服务器管理技术

4、必须能在不稳定的网络环境下进行数据传输,能对错误进行检测,并且能进行数据重传。2.3 随着服务器数量的增加及时间的推移,管理系统获得的数据将越发复杂及庞大。 当管理员面对越来越多的服务器及其之上的应用的时候,用人工方式对数据进行分析处理将变得越来越不现实,难以作出准确的判断。因此服务器管理系统应该具备按照管理员事先设定的策略对数据进行分析,达到告警条件时,主动向管理员发送告警信息。3 主动式服务器管理技术的工作原理主动式服务器管理就是利用反向连接技术,在被监管服务器与管理服务器之间建立一个稳定的数据交换通道,并且对数据进行加密。管理服务器把管理员定义的各种策略通过数据交换通道下发给被监管服务器

5、,并且能根据管理员的要求把特定的策略下发给指定的服务器。被管理服务器根据管理服务器的策略,收集各种系统状态运行数据及告警信息主动上传给管理服务器,并且执行管理服务器下发的管理指令。4 主动式服务器管理系统的组织框架数据库browser数据处理模块集中管理模块数据库Agent1Agent2Agent3Agent(n)图1如图1所示,主动式管理服务器系统主要有AGENT、数据处理模块、集中管理模块、数据库组成。4.1 AGENT,也就是运行在被监管服务器上的监管程序。 该程序主要实现如下功能:与管理服务器建立通信连接、收集本机的各种工作状态信息、应用管理服务器下发的各种策略及执行各种管理指令。AG

6、ENT是通信连接的发起者,无论是管理服务器下发策略还是被管理服务器上传状态信息,都是通过AGENT端主动发起的连接进行传输。4.2 数据处理模块。 这是管理服务器的核心模块,该模块还可以细分成3个部分:向上接口、向下接口、核心处理模块。向下接口负责收集AGENG端上传的信息及下发管理服务器定义的各种策略,向上接口负责向集中管理中心提供数据,并收集管理中心的下发的配置信息。同时,该模块把获取的信息按特定的格式存储到服务器中。当外部(包括集中管理模块和AGENT)请求数据时,从数据库中获取特定的数据,并转换成特定的格式再向外传。核心处理模块主要是负责对获得的数据进行统计分析,得出结果,并对特定的数

7、据进行分发。4.3 集中管理模块。 该模块主要是负责用户接口,采用B/S模式。该模块可分成:用户接口部分、数据接口部分及内部数据库。用户接口部分用于跟用户进行交互,向用户展示各个被监管服务器的运行状态信息、告警信息、数据处理模块的统计分析信息等,同时接收用户的操作请求,把相应的配置信息传递给数据处理模块。4.4 数据库。 这里的数据库泛指所有用于存储数据的关系数据库、文件、内存块等。为了兼顾功能、性能及开发难度等问题,我们这里采取多种方式来存储数据。采用文件及数据库开发接口相对简单,数据存储量大,采用内存性能相对较高。所以,我们把经常进行读写的数据放在内存中,如各个AGENT实时上传系统状态信

8、息及告警信息写入内存,而把不经常更新且数据量大的配置信息及管理策略放入文件中。5 关键技术研究及设计。5.1 基于反向连接的双向数据交换技术. 传统的服务器监控技术是通过管理服务器向被管理服务器发起连接来进行数据交换。对于被管理服务器来讲,不管其获取管理策略还是上传状态信息,都是被动的,被动的接受管理服务器的管理策略,被动的响应管理服务器的状态信息请求。而反向连接则相反,由被管理服务器向管理服务器发起连接来进行数据交换。被管理服务器根据策略主动上传系统的运行状态信息,同样也是主动的向管理服务器获取管理策略。 监管服务器防火墙防火墙防火墙被管理服务器被管理服务器被管理服务器外网内网网络连接数据流

9、图2反向连接技术首先是解决的是网络连通性问题。由于出于安全策略的需要,目前绝大部分的应用服务器都被部署在内网中(如图2所示),外网对内网的访问受到严格的控制,一般来说,外网只能访问服务器的特定的端口。而内网对外网的访问受限很少,特别是对一些常用的应用不会加以限制,如基于HTTP的web站点的访问,因此只要适当的选择通信方式,就可以保证网络的连通性。5.1.1 通信协议。 我们采用http作为通信的基础。http协议是目前互联网上应用最为广泛的通信协议,经过长时间的发展及大量应用的实践,其具有如下优点:a.协议成熟,通信稳定可靠。b.几乎可以传输任意格式的数据,也适合大量数据的传输。c.有许多现

10、成的优秀的服务端程序及客户端库,方便实现,同时采用成熟的通信协议也能大大提高系统的稳定性。d.方便在多种硬件平台及操作系统平台上实现。 在我们的管理系统中,AGENT作为客户端,集中管理服务器作为服务端。当AGENT端按照策略需要向管理服务器端上传数据或者获取数据时,向管理端发起HTTP连接,以POST方式向管理服务器发送数据或发送请求,管理服务器通过应答来确认收到数据或向被管理服务器下发数据。5.1.2 连接方式。 基于http连接的特点及保证网络通信可靠的考虑,在管理服务器及被管理服务器之间采用http短连接方式,每次连接只进行一次数据交换,完成后立即关闭连接。这种方式有如下特点:a.维护

11、简单,由于短连接生命周期短,几乎不需要对连接进行维护,这就使系统在实现上比较简单,不必考虑如何对连接进行故障检测及修复的问题,这有助于提高系统的可靠性。b.容错性及自修复能力比较强,短连接相对于长连接来说,出现错误的概率大大降低,并且由于每次都是重新初始化连接,每个连接都是独立的,当一个连接出现问题时,仅会造成本次数据暂时不能传输,不会对其他的及以后的数据通信造成影响,不会存在错误累积的问题。对于单个连接异常引起的某项数据传输失败,可以由通信双方的其他机制进行检测,并通过重新发起连接来完成数据交换。5.1.3 加密通信。 为了保证数据在网络上安全的进行传输,并且能对通信双方进行身份验证,需要对

12、双方的通信进行加密。由于服务器管理系统可能需要管理大量的服务器,所以性能也是一个不容忽视的问题,需要在安全性及可用性方面做出权衡。在我们的技术方案中,采用了对称加密算法。首先,通信双方约定预共享密钥。其次,通信的发起端,也就是AGENT把要传输的数据内容使用预共享密钥进行加密,把加密后的内容通过POST方式传给服务端。再次,服务端使用预共享密钥对收到的内容进行解密,对解密后的内容进行数据处理后,生成应答数据,使用AGENT端相同的方式对数据进行加密,并以HTTP应答方式传给AGENT端。最后,AGENT端对收到的应答内容作解密并进行数据处理,从而完成一次完整的通信。5.1.4 数据格式。 在系

13、统中,我们采用两种数据格式,一个是plain text,也就是文本,另一个是xml。5.1.4.1 纯文本格式。 这种格式优点是信息表示方式简单,适合大批量数据传输,对通信双方来讲,解析这种格式的数据系统开销比较小。目前,管理系统中,实时心跳信息、日志信息及服务器简单的返回信息都采用这种格式。在心跳时,AGENT向服务端发送 URL参数:task=heartbeat ,服务端应答:OK、ERROR 、NEWMSG等,分别表示成功、失败、成功并表示服务端有数据要下发给AGENT。5.1.4.2 xml格式。 XML可以表示丰富的数据信息,并且有良好的扩展性,几乎可以表示任何的信息。当前也有成熟的

14、XML解析库,为开发提供很大的便利。缺点是当有大批量的数据时,对于通信方来讲,都需要比较大的系统开销。所以这种格式比较适合数据量相对比较小,但数据类型多样的通信。目前大部分的数据交互都采用这种格式。比如AGENT向管理服务器上传CPU使用率: 95服务器应答:OK (表示服务器确认收到该信息)5.1.5 双向数据交换机制。AGENT与管理服务端之间有两种通信连接,一个是心跳,另一个是数据交换(如图3)。item1item2item(n)checklist管理策略管理策略通信接口监控状态心跳模块数据交换模块监控状态控制信息agent(n)管理服务端Agent(n)item1item2item(n

15、)管理策略1管理策略监控状态监控状态控制信息checklist图35.1.5.1 心跳。 主要负责保持AGENT的在线状态以及传输简单的控制信息和配置参数。根据功能及所处的通信阶段,心跳又分为注册心跳与消息心跳。5.1.5.1.1 注册心跳。 通信双方的心跳分为两个阶段,第一阶段为注册阶段,第二阶段为消息传递阶段。注册心跳处于心跳的第一阶段,主要负责将AGENT的系统身份信息及关键的特征上传给服务端,服务端可以此为依据决定是否接管该AGENT所在的服务器,并在接管时作为注册信息进行登记。同时,服务端通过该心跳,把初始的控制信息下发给AGENT端,作为心跳第二阶段的控制参数。5.1.5.1.2

16、消息心跳。 消息心跳处于心跳的第二阶段,负责保持AGENT端的在线状态,并且接受服务端的新消息通知。5.1.5.2 数据交换。系统中,数据交换是基于事件驱动的,也就是当该模块检测到有数据需要更新或进行上传时,才进行数据的搜集、转换及传输。该系统中数据交换分成两类,一类是项目清单(checklist),另一类是各个具体的更新项目,如服务器下发的管理策略、AGENT端上传的某个状态信息等。5.1.5.2.1 项目清单(checklist)。 Checklsit用于表示各个配置项目及其当前的版本。当服务器更新了某个管理策略后,就会修改checklist中相应的某个项目的版本号,并通过消息心跳下发新消

17、息通知。AGENT端收到信息通知后,使用数据交换模块获取checklist,通过比较checklist中各个项目的版本号,获知更新的项目,并再次使用数据交换模块获取各个更新的项目。5.1.5.2.2 数据项。 这是管理服务器与被管理服务器之间主要的数据交换部分,AGENT端上传管理端要监控的数据,服务端可以此做统计分析,并发出告警。管理员也可根据实际需要,下发管理策略来维护被管理服务器的正常运行。5.2 AGENT端信息收集及策略应用通信模块管理策略监控信息策略执行程序心跳数据状态收集程序图4 为了使AGENT端保持良好的可靠性及可扩展性,采用了松耦合的模块化方式实现,各个功能模块独立运行,模

18、块之间的数据交互依靠共享内存方式,系统开销较小。对于不同的操作系统,我们根据操作系统自身提供的接口,来实现策略执行程序及状态搜集程序。如在Windows下,我们通过WMI获取系统的运行状态信息及应用管理策略。在LINUX下,我们通过PROC文件系统及其他的IO接口获取系统信息,通过脚本及相应的应用程序控制系统运行。5.3 数据处理中心数据处理技术Agent1管理策略监控信息Agent2管理策略监控信息Agent(n)管理策略监控信息AGENT通信接口数据分析处理模块管理中心通信接口管理中心AGENT待添加的隐藏文字内容1图5为了方便数据的分析处理以及提高处理效率,在数据处理中心我们给每个AGE

19、NT分配独立的存储单元,各个AGENT的管理策略、监控信息都存放在各自的存储单元内。每个存储单元由内存块、及多个配置文件组成。内存块中主要存放经常更新的数据项,如由AGENT端上传的实时状态信息及告警信息,项目清单checklist,数据分析处理模块的输出结果。文件中主要存放不经常更新并且要长期保存的信息,如管理中心下发的管理策略。5.4 管理中心用户接口数据处理中心通信接口数据库 图6管理中心主要分成三个部分:数据处理中心通信接口、用户接口及数据库。数据处理中心的通信接口,通过该接口从数据中心获取各个被管理服务器的状态信息,并且也可以通过该接口把管理员定义的管理策略下发给数据处理中心相应的数

20、据单元。该接口作为HTTP通信的CLIENT端,定时或由事件驱动向数据处理中心发起连接,完成连接后发送策略或发起请求,通过该接口的数据都为XML格式。通过该接口获得的数据经过XML解析库的解析,把内容存放到数据库中。用户接口负责跟用户进行交互,前台使用JQUERY实现,负责向用户展现数据,并给用户提供操作接口,后台使用PHP实现,负责与数据库通信,获取或输入数据,并对数据进行处理。6 总结。本文重点研究基于反向连接的主动式服务器管理技术,该技术具有网络适应性强、安全性及可靠性高的特点,能实现对分布在局域网内及广域网上各类不同操作系统服务器及其应用的安全集中监控管理,在网络上建立起一套安全可靠的应用系统监控及管理机制,为各类应用正常运行提供保障。参考文献1. 韩宇贞,陆伟锋. 基于XMLHTTP通讯传输架构的数据传输方法. 南昌水专学报,2003(4)2. 高建平,王磊,刘新星,王征,陆晓雯. 基于Web的服务器群带外集中监控系统设计与实现. 计算机与数字工程,2010(8)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号