专利名称:一种分布式网络管理系统、网管服务器和方法
技术领域:
本发明涉及网络管理技术领域,特别涉及一种分布式网络管理系统、网 管服务器、分布式部署方法。
背景技术:
随着计算机和通讯技术的不断发展,网络管理系统需要管理的网络规模 越来越大,对系统的管理能力提出了更高的要求,目前为了应对网络规模不 断扩大的局面,网管系统逐步由单主机向分布式多主机的模式转换,通过使 用多台主机分担负载来达到提高管理规模的能力。由于由一台主机变成几台 甚至是几十台主机,分别运行在各个主机上的软件系统的安装、升级、打补 丁等部署维护工作都变得非常复杂;针对分布式网管系统,目前的部署方式是采用人工维护的方式,即由系 统管理员使用网管系统的安装介质人工在每台主机上执行安装、升级、打补丁的操作;本发明的发明人在对现有技术的研究过程中发现,现有方式对于分布式 网管系统的可维护性差。发明内容本发明实施例提供一种分布式部署方法、分布式网络管理系统以及网管 服务器,以提高系统的可维护性。为达到上述目的,本发明实施例的技术方案具体是这样实现的 一种分布式网络管理系统,包括部署服务器和至少一台网管服务器,所述网管服务器,用于从所述部署服务器获得与本机相关的部署信息,根 据所述部署信息确定待部署在当前网管服务器的子系统标识信息,以及从所述 部署服务器获得与所述子系统标识信息相应的子系统软件并保存,启动所述子系统软件;所述部署服务器,用于存储有分布式网管系统的所有子系统的子系统软件 和子系统分布部署信息。以及, 一种网管服务器,应用于分布式网络管理系统,包括 信息传输模块,用于发送获取部署信息的请求消息,并接收返回的与所述 请求消息对应的响应信息,由该响应信息得到与当前网管服务器相关的部署信 息,以及从部署服务器上获得与所述确定的待部署的子系统标识信息相应的子 系统软件并保存;进程管理模块,用于将所述信息传输模块获得的子系统软件进行启动;部署管理模块,用于调用所述信息传输模块获取部署信息,根据所述信息 传输模块获得的部署信息确定本机待部署的子系统标识信息,调用所述信息传 输模块获取相应的子系统软件,并在所述信息传输模块获得子系统软件后,调 用所述进程管理模块进行启动。以及, 一种网管服务器,应用于分布式网管系统中,在该分布式网管系 统中其他网管服务器与该网管服务器通信,该网管服务器包括子系统加载器,用于向所述传输服务模块请求获得与当前网管服务器相 关的部署信息,根据所述获得的部署信息确定待部署在当前网管服务器的子 系统标识信息,并向所述传输服务模块请求获得与所述子系统标识信息相应 的子系统软件,将所述获得的子系统软件保存并启动;传输服务模块,用于根据接收的用于获取部署信息的请求消息返回与 所述请求消息对应的响应信息,所述响应信息包含与请求方网管服务器相关 的部署信息,以及根据接收的用于获得与请求方网管服务器子系统标识信息 相应的子系统软件的请求消息,返回相应的子系统软件。以及, 一种分布式部署方法,应用于分布式网络管理系统中的至少一台网管服务器,其中各网管服务器上的子系统共同组成分布式网络管理系统,包 括-.获得与当前网管服务器相关的部署信息;根据所述获得的部署信息确定当前网管服务器待部署的子系统标识信息; 请求下载与该子系统标识信息对应的子系统软件,接收并保存返回的与该 请求对应的子系统软件; 启动所述子系统软件。由上述技术方案可见,本发明实施例中通过采用从部署服务器向下拉文 件的方式实现子系统软件的自动安装、部署、升级,从而提高分布式网管系 统的可维护性,提高了维护效率,降低分布式网管系统的维护成本。
图1为本发明实施例的一种分布式网管系统结构示意图;图2为本发明实施例的子系统分布部署信息的内容示例图;图3为本发明实施例的网管服务器的运行状态迁移示意图;图4为本发明实施例 一 的分布式网管系统结构示意图;图5为本发明实施例一的网管服务器的内部模块示意图;图6为本发明实施例二的分布式网管系统结构示意图;图7为本发明实施例二的网管服务器的内部模块示意图;图8为本发明实施例三的分布式网管系统结构示意图;图9为本发明实施例的分布式部署方法的流程方框图;图10为本发明实施例四的分布式部署方法的交互流程图;图11为本发明实施例五的升级方法的交互流程图;图12为本发明实施例六的从部署服务器获取部署信息的交互流程图;图13为本发明实施例七的从部署服务器获取部署信息的交互流程图;图14为本发明实施例八的从部署服务器获取部署信息的交互流程图;图15为本发明实施例九的釆用HTTP协议从部署服务器下载文件的交 互流程图;图16为本发明实施例十的采用非HTTP协议从部署服务器下载文件的 交互流程图;具体实施方式
为使本发明的目的、技术方案更加清楚明白,以下参照附图并举实施例, 对本发明作进 一 步详细说明。在本发明实施例中,分布式网络管理系统(简称分布式网管系统)包括 部署服务器和至少一台网管服务器(又名网管主机),其中各台网管服务器 能自动完成待部署的子系统软件的首次部署、安装,以及已部署在本机的子 系统软件的更新/升级。图1为本发明实施例中的分布式网管系统的结构示意图。如图l所示, 本发明实施例的分布式网管系统包括部署服务器200和网管服务器 101-10N,其中,部署服务器200,用于存储有该分布式网管系统的所有子系统软件,以 及该网管系统中各子系统的分布部署信息;这里的子系统分布部署信息是网 管系统中各个子系统的分布部署信息,描述了各个子系统在各个网管服务器 的分布情况,在一种实现方式下,内容示例如图2所示该子系统分布部署 信息包括子系统标识信息、网管服务器标识信息(又名设备标识信息)、子 系统版本信息三者的映射关系(这里的子系统标识信息和子系统版本信息可 以统称为子系统信息),即每条记录为每台网管服务器对应的子系统标识信 息和该子系统的版本信息,例如网管服务器1上待部署的子系统对应的是 子系统A,该子系统A的版本信息是3.2;应当理解的是这里的网管服务 器标识信息可以是对应的网管服务器的IP地址、MAC地址或主机名等;其 中,子系统分布部署信息的存储方式可以有几种, 一种是将所有网管服务器的部署信息存储在一个文件中即全量部署信息文件, 一种是将各台网管服务 器的部署信息分别存储在一个文件中,即每个部署信息文件描述一台网管服务器的部署信息;另一种还可以是将子系统分布部署信息存储在数据库中; 网管服务器101-10N上的子系统不完全相同,即所有网管服务器上的子系统共同构成了整个分布式网管系统的后台系统。图3为网管服务器的运行状态迁移示意图,下面结合图3来介绍网管服务器自动部署安装、升级和打补丁的工作原理;由于每台网管服务器的工作原理是相同的,这里以 一 台网管服务器为例进行说明初始态时,当前网管服务器的本地缓存为空,系统尚不能运行。 当前网管服务器在第一次启动时(当系统初始化时)进行本机子系统软件的首次安装,即将待部署在本机上的子系统软件从部署服务器下载到本地緩存,之后将各个子系统启动,则当前网管服务器就进入了运行态,就可以处理网管业务了。当部署服务器上的子系统软件进行了升级或者安装了补丁 ,则系统进入 了待更新态,此时当前网管服务器的本地緩存中的子系统软件与部署服务器 上的软件存在版本不一致的情况。当前网管服务器进行增量的更新,针对需 要更新的子系统软件从部署服务器上下载并更新本地緩存,然后启动各个子 系统即升级当前网管服务器本地緩存中的子系统软件,系统又恢复到了运行 态。图4为本发明实施例一的分布式网管系统的结构示意图,其中,部署服 务器400,用于存储有该分布式网管系统的所有子系统软件,以及该网管系 统中各子系统的分布部署信息,并根据网管服务器的请求消息返回相应的子 系统软件、部署信息;其中,部署服务器400包括存储模块,用于存储有该分布式网管系统 的所有子系统软件,以及该网管系统中各子系统的分布部署信息;这里的子 系统软件、子系统分布部署信息可以是以文件的形式保存到部署服务器400 的硬盘中,也可以是将子系统分布部署信息、子系统软件保存到部署服务器400的数据库中;传输服务模块4010,用于接收来自网管服务器的请求消息,并根据该 请求消息从存储模块中获取对应该请求消息的响应信息并返回;这里的响应 信息包括部署信息、子系统软件;网管服务器300-30N,用于从部署服务器400获得与本机相关的部署信 息,根据所述部署信息确定待部署在当前网管服务器的子系统标识信息,以 及从部署服务器400获得与所述子系统标识信息相应的子系统软件并保存, 启动所述子系统软件;在一种实现方式下,即用于在系统初始化时,向部署 服务器400发送用于获取部署信息的第 一请求消息,并接收返回的与第 一请 求消息对应的第一响应信息,由所述第一响应信息得到与本机相关的部署信 息,根据该部署信息确定待部署在当前网管服务器的子系统标识信息,例如 子系统A,并向部署服务器400发送用于下载与所述子系统标识信息相应的 子系统软件的第二请求消息,接收并保存返回的子系统软件,启动所述子系 统软件,从而完成了当前网管服务器的子系统软件的首次自动安装;即网管 服务器300-30N从初始态迁移到运行态;网管服务器300-30N,还用于在确定当前网管服务器已部署的子系统软 件与部署服务器上当前网管服务器关联的子系统不一致时,向部署服务器 400发送用于下载更新后的子系统文件的第三请求消息,并将返回的子系统 软件保存并重启动,从而完成了当前网管服务器的子系统软件的自动升级, 即网管服务器300-30N从待更新态迁移到运行态;图5为本发明实施例一的网管服务器的内部模块示意图,考虑到每台网 管服务器的内部模块相同,如下以图4中的网管服务器300为例进行介绍, 如图5所示,其中网管服务器300包括部署管理模块3010,用于在系统初始化时,调用信息传输模块3012获取 部署信息,根据信息传输模块3012获得的部署信息确定本机待部署的子系统标 识信息,调用信息传输模块3012获取子系统软件,并在信息传输模块3012获 得子系统软件后,调用进程管理模块3014进行启动;换句话说,部署管理模块3010是总控中心,负责当前网管服务器的子系统软件的部署、升级过程的完成; 信息传输模块3012,用于发送获取部署信息的请求消息,并接收部署 服务器400返回的与所述请求消息对应的响应信息,由该响应信息得到与当 前网管服务器相关的部署信息,以及从部署服务器400上获得与所述确定的 待部署的子系统标识信息相应的子系统软件并保存;这里的响应信息可以是 包含有当前网管服务器相关的部署信息的响应消息,也可以是全量部署信息 文件,也可以是当前网管服务器对应的部署信息文件。进程管理模块3014,用于将信息传输模块3012获得的子系统软件进行启动。网管服务器300进一步包括存储模块3016,用于存储当前网管服务 器的子系统软件;可选的,存储模块3016还可以存储之前获得的部署信息 文件,可以是硬盘的一个目录;当采用将所有网管服务器的部署信息集中存放在一个文件中,即一种实现 方式下的部署信息文件为全量部署信息文件(简称全量文件,存储在部署服务 器,部署服务器根据访问路径返回对应的文件)时,信息传输模块3012为第一 信息传输模块,用于发送携带有全量部署信息文件访问路径信息的第四请求消 息,并接收返回的与所述第四请求消息对应的全量文件,从所述全量文件中查 找得到当前网管服务器相关的部署信息;以及,用于发送携带有当前网管服务 器待部署的子系统标识信息对应的文件访问路径信息的第五请求消息,并接收 返回的与所述第五请求消息对应的子系统软件并保存。应当可以理解的是网 管服务器和部署服务器预先约定好不同文件的文件访问路径的格式,例如可 按子系统来划分存放目录,如对于子系统A,那么可以是\子系统A\*.*,就是 子系统A的所有文件的路径了 ;当采用将所有网管服务器的部署信息集中存放在一个文件中或将所有网管 服务器的部署信息存储在部署服务器的数据库中时(在这种方式下,由部署服 务器负责查找到当前网管服务器相关的部署信息并返回),信息传输模块3012 为第二信息传输模块,用于发送携带有当前网管服务器的设备标识信息的第六请求消息,并接收返回的包含有当前网管服务器相关部署信息的第六响应消息,从该响应消息中提取得到当前网管服务器相关的部署信息;以及,用于发送携带有当前网管服务器待部署的子系统标识信息对应的文件访问路径信息的第七 请求消息,并接收返回的与所述第七请求消息对应的子系统软件并保存。当采用将每个网管服务器的部署信息存放在一个独立文件中,即按各个网 管服务器存储为多个文件时(在这种方式下,部署服务器根据访问路径返回对应的文件),信息传输冲莫块3012为第三信息传输-漠块,用于发送携带有当前网 管服务器的部署信息对应的文件访问路径信息的第八请求消息,并接收返回的 与所述第八请求消息对应的部署信息文件,从所述部署信息文件中提取得到当 前网管服务器相关的部署信息;以及,用于发送携带有当前网管服务器待部署 的子系统标识信息对应的文件访问路径信息的第九请求消息,并接收返回的与 所述第九请求消息对应的子系统软件并保存。部署管理模块3010进一步用于,定时调用信息传输模块3012获取最新的 部署信息,比较本机已部署子系统和所述信息传输模块获得的部署信息中当前 网管服务器关联的子系统,在确定本机已部署子系统与所述信息传输模块获得 的部署信息中当前网管服务器关联的子系统不一致时,调用信息传输模块3012获得更新后的与当前网管服务器相关的子系统软件,并且调用进程管理模块 3014重启动更新后的子系统;信息传输模块3012,进一步用于发送获取部署信息的请求消息,并接收部 署服务器400返回的响应信息,由所述响应信息得到与当前设备相关的部署信 息,以及从部署服务器上获得与当前网管服务器相关的更新后的子系统软件;所述进程管理模块,进一步用于停止当前网管服务器上已部署的子系统, 并启动所述信息传输模块获得的更新后的子系统软件。图6是本发明实施例二的分布式网管系统结构示意图。其中,网管服务 器600 (同时担当网管服务器和部署服务器的角色),既有作为部署服务器 的功能,还有作为网管服务器的功能;如图6所示,在该分布式网管系统中 其他网管服务器501-50N与该网管服务器600通信,网管服务器600和网管服务器501-50N上的子系统不完全相同,即所有网管服务器上的子系统共同 构成了整个分布式网管系统的后台系统。图7为本发明实施例二的分布式网管系统中网管服务器600的内部模块 示意图,(网管服务器501-50N的内部模块结构如图5所示,故不再描述), 如图7所示,网管服务器600包括子系统加载器6020和传输服务模块6010, 其中子系统加载器6020,用于在当前网管服务器初始化时,向传输服务模块 6010请求获得与当前网管服务器相关的部署信息,根据所述获得的部署信息确 定待部署在当前网管服务器的子系统标识信息(子系统列表),并向所述传输服 务才莫块请求获得与所述子系统标识信息相应的子系统软件,将所述获得的子系 统软件保存并启动;传输服务模块6010,用于根据接收的用于获取部署信息的请求消息返回与 所述请求消息对应的响应信息,所述响应信息包含与请求方网管服务器相关的 部署信息,以及根据接收的用于获得与请求方网管服务器子系统标识信息相应 的子系统软件的请求消息,返回相应的子系统软件。网管服务器600进一步包括存储有该分布式网管系统中所有子系统软件, 以及子系统分布部署信息的存储模块;在一种实现方式下,传输服务模块6010为第二传输服务模块,用于接收携 带有请求方网管服务器的设备标识信息的请求消息,根据请求消息中的设备标 识信息从该存储模块中查找到与请求方相关的部署信息并返回包含部署信息的 响应信息,以及接收携带有请求方子系统标识信息对应的子系统文件访问路径 信息的请求消息,根据请求消息中的子系统文件访问路径信息从该存储^^莫块获 得对应的子系统软件并返回相应的子系统软件。在一种实现方式下,传输服务模块6010为第一传输服务模块,用于接收携 带有部署信息文件访问路径信息的请求消息,根据请求消息中的部署信息文件访问路径信息从该存储模块中获得该路径下的部署信息文件并返回,以及接收 携带有请求方子系统标识信息对应的子系统文件访问路径信息的请求消息,根据请求消息中的子系统文件访问路径信息从该存储模块中获得该路径下的子系统软件并返回相应的子系统软件。这里的部署信息文件访问路径信息包括全 量部署信息文件访问路径、当前网管服务器对应的部署信息文件的访问路径。 子系统加载器6020包括部署管理子模块6021,用于在初始化时,调用信息传输子模块6022获取 与当前设备相关的部署信息,根据信息传输子模块6022获得的部署信息确定本 机待部署的子系统标识信息,调用信息传输子模块6022获取子系统软件,并在 信息传输子模块6022获得子系统软件后,调用进程管理子模块6023进行启动;信息传输子模块6022,用于请求传输服务模块6010返回与获取部署信息 的请求对应的响应信息,由该响应信息得到与当前网管服务器相关的部署信息, 以及向传输服务模块6010请求获得与所述确定的待部署的子系统标识信息相 应的子系统软件并保存所述获得的子系统软件;当传输服务模块6010返回的响应信息为请求方部署信息文件(即仅包含请 求方的部署信息)时,信息传输子模块6022从返回的部署信息文件中提取得到 与当前网管服务器相关的部署信息;当传输服务模块6010返回的响应信息为全量部署信息文件(即包含所有网 管服务器的部署信息)时,信息传输子模块6022从返回的部署信息文件中查找 得到与当前网管服务器相关的部署信息;当传输服务模块6010返回的响应信息为包含请求方相关部署信息的响应 信息时,信息传输子模块6022从返回的响应信息中提取得到与当前网管服务器 相关的部署信息;以及,子系统加载器6020还包括进程管理子模块6023,用于将信息传 输子模块6022获得的子系统软件进行启动。进一步的,子系统加载器6020包括緩存6024,用于保存信息传输子模 块6022获得的子系统软件。图8为本发明实施例三的分布式网管系统的结构示意图,描述了一个具 体的分布式网管系统的场景,其中,网管服务器701上的子系统为拓朴服务、安全服务;网管服务器702上的子系统为故障服务;网管服务器703上的子 系统为性能管理、电路管理;网管服务器704上的子系统为业务发放。这些 子系统共同构成了整个分布式网管系统的后台系统。不同的网管服务器处理 不同的网管业务。本发明实施例还提供一种分布式部署方法,该方法应用于分布式网络管 理系统中的至少一台网管服务器自动安装子系统软件,其中所有网管服务器 上的子系统共同组成分布式网络管理系统,图9为本发明实施例的分布式部 署方法的流程方框图,即对应网管服务器从初始态迁移到运行态的过程,包 括步骤8010、获得与当前设备相关的部署信息;应当理解的是,这里获得部 署信息的触发条件可以是在系统初始化时;具体可以是发送用于获取部署信息的请求消息,并接收返回的与所述请 求消息对应的响应信息,由该响应信息得到与当前"i殳备相关的部署信息;步骤8011、根据获得的部署信息确定当前设备待部署的子系统标识信息, 例如子系统A、 B、 C、 D。其中,部署信息包括子系统标识信息、设备标识信息、与对应的子系统版 本信息三者的关联信息,这里的子系统标识信息和子系统版本信息可以统称为 子系统信息;在一种实现方式下,具体可以是冲艮据所述关联信息,确定与当前设备标 识信息对应的子系统标识信息,所述子系统标识信息为当前设备待部署的子系 统的标识信息(应当理解的是当待部署的子系统为多个时,可以将子系统标 识信息称为子系统列表)。步骤8012、请求下载与该子系统标识信息对应的子系统软件,并将返回的 与请求对应的子系统软件保存;步骤8013、启动所述子系统软件。即下载完成将各个子系统启动,当前网管服务器进入运行态,当每台网管 服务器都进入了运行态,整个网管系统就进入了运行态。为了更好的理解本发明的分布式部署方法,下面结合图IO来具体介绍本发明一种实施例的分布式部署方法的交互流程,如图10所示,包括步骤9010、网管服务器和部署服务器交互,获取与当前网管服务器相关的部署信息;这里存在多种实现方式,后面将详细介绍;步骤9011、部署服务器根据请求方的设备标识信息是否在子系统分布部署信息中来决定是否允许部署信息和子系统软件的下载;这是可选的步骤,进一步提高安全性;这里的设备标识信息,例如IP地址、主机名、MAC地址等; 步骤9012、网管服务器将返回的部署信息保存在本地;主要是方便升级子系统软件的过程中,比较本地的部署配置信息和获取的部署配置信息是否一致,即网管服务器比较获得的部署信息中的当前网管服务器关联的子系统与当前网管服务器已部署的子系统是否一致;步骤9013、网管服务器根据当前网管服务器相关的部署信息确定本机待部署的子系统标识信息(子系统列表);步骤9014、网管服务器发送携带有与该子系统标识信息对应的子系统文件访问路径信息的请求消息;步骤9015、部署服务器根据收到的请求消息中的文件访问路径信息获得该3各径下相应的子系统软件;步骤9016、部署服务器返回获得子系统软件;步骤9017、网管服务器将返回的子系统软件存在本地緩存;步骤9018 、网管服务器启动本地緩存中的子系统软件。下面结合图12 - 14分别介绍步骤9010的不同实施方式如图12所示为本发明实施例一的从部署服务器获取部署信息的交互流程图,其中部署服务器中存放有全量部署信息文件,包括步骤1310、网管服务器发送请求消息,以下载全量部署信息文件,其中该请求消息中包括该网管服务器的设备标识信息(可选的)和全量部署信息文件访问路径信息;当步骤1310中的请求消息中携带有设备标识信息时,部署服务器根据来自网管服务器的请求消息中的设备标识信息来进行安全性检查,即部署服务器根 据请求端IP是否在子系统分布部署信息中来决定是否允许部署信息文件和其它文件(例如子系统软件)的下载。步骤1311、部署服务器根据收到的请求消息中的文件访问路径信息获得该 路径下对应的全量部署信息文件;步骤1312、部署服务器返回该全量部署信息文件;步骤1313、网管服务器从获得的全量部署信息文件中,根据该网管服务器 的设备标识信息查找得到当前网管服务器相关的部署信息;如图13所示为本发明实施例二的从部署服务器获取部署信息的交互流程 图,其中部署服务器中存放有全量部署信息文件或者数据库中存储所有网管服 务器的部署信息,包括步骤1410、网管服务器发送请求消息,以下载本机相关的部署信息,该请 求消息中包括该网管服务器的设备标识信息;步骤1411、部署服务器根据该请求消息中包含的设备标识信息查找得到与 该网管服务器相关的部署信息;步骤1412、部署服务器返回包括有该网管服务器相关的部署信息的响应消自 ,&,步骤1413、网管服务器从该响应消息中获得本机相关的部署信息。 如图14所示为本发明实施例三的从部署服务器获取部署信息的交互流程 图,其中部署服务器中存储有多个部署信息文件,不同的部署信息文件分别对 应不同的网管服务器,即将每个网管服务器的部署信息存放在一个独立文件中, 包括步骤1510、网管服务器发送请求消息,以下载本机相关的部署信息文件, 其中该请求消息中包括网管服务器的设备标识信息(可选的)和部署信息文件 访问路径信息,这里的部署信息文件访问路径信息为当前网管服务器对应的部 署信息文件的访问路径信息;当步骤1510中的请求消息中携带有设备标识信息时,部署服务器根据来自网管服务器的请求消息中的设备标识信息来进行安全性检查,即部署服务器根 据请求端IP是否在子系统分布部署信息中来决定是否允许部署信息文件和其它文件(例如子系统软件)的下载。步骤1511、部署服务器根据收到的请求消息中的文件访问路径信息获得该 路径下对应的部署信息文件;步骤1512、部署服务器返回该部署信息文件;步骤1513、网管服务器从该部署信息文件中直接获得本机所有相关的部署4吕息。当网管系统需要升级或者打补丁时,管理员会在部署服务器上更新部分文 件,并修改部署信息文件中的子系统版本信息,或者,根据需要调整网管系统 的各个网管服务器上的子系统分布,这一步可以是人工完成或者由升级工具完 成,此时网管系统进入了待升级态,网管服务器上的本地緩存中的软件和部署 服务器上的软件版本不一致或者是本地i爰存中的软件和部署服务器上对应该网 管服务器所分布的软件不一致,各个网管服务器通过定时获取最新的部署配置 信息并检查本机的部署配置信息是否与获取的一致,以决定是否需要进行同步。 这就涉及到了运行态一一>待更新态一 一>运行态的过程,下面结合图11来描述 升级方法,如图ll所示,本发明实施例的升级方法包括步骤1010、网管服务器与部署服务器交互,定时获取最新的部署配置信息; 这里,获取最新的部署配置信息可以是从部署服务器下载部署信息文件; 步骤1011、网管服务器检查本机的部署配置信息是否与获取的部署配置信 息一致,当不一致时,执行步骤1012;当一致时,本次过程结束,等待下次定 时器触发;当在首次安装本机软件的过程中,网管服务器将当前获得的本机相关的部 署信息以文件保存,并且在升级过程中,采用前述实施例三的方式去获取部署 信息文件(参考图14),这里的检查本机的部署配置信息是否与获取的部署配 置信息一致可以是检查本机保存的部署信息文件是否与获取的部署信息文件一 致。步骤1012、停止本机上已经部署(安装)的所有子系统; 步骤1013、请求下载部署于本机且确定不一致的子系统软件; 步骤1014、部署服务器返回更新的子系统软件;步骤1015、网管服务器将更新的子系统软件保存在本地緩存,并启动本地 緩存中的所有子系统软件;该网管服务器再次进入运行态。下面进一步来介绍在升级过程中网管服务器从部署服务器下载文件的 过程,应当理解的是在本发明的一种实施方式下,可以采用将部署配置信 息和/或子系统软件以文件保存在部署服务器中,故获取更新后的部署配置 信息和/或子系统软件就可以理解为下载更新后的文件;如图15所示为本发明实施例的采用HTTP协议从部署服务器下载文件 的交互流程图,适用于升级过程,包括步骤lllO、网管服务器发送HTTP请求,以下载文件,其中该HTTP请求 中包括该网管服务器本地緩存中文件的文件标识信息和该文件相应的文件访问 路径信息;这里的文件,可以是部署信息文件,也可以是子系统软件所在的文件(即 子系统文件),并且上述的修改时间还可以采用MD5等校验码;这里的文件标 识信息,例如文件的最后修改时间、MD5等校验码。步骤llll、部署服务器接收到该HTTP请求,判断该请求中携带的相应文 件的文件标识信息与本机存储的相应文件的文件标识信息是否 一致,当文件标 识信息一致时,直接返回成功,不用传输相应的文件内容,结束流程;否则, 根据该请求中包含的文件访问路径信息获得相应的文件,并执行步骤1112;在一种实现方式下,判断该请求中携带的相应文件的最后修改时间与本机 存储的相应文件的修改时间是否一致,当〗务改时间一致时,直接返回成功,不 用传输相应的文件内容;否则,根据该请求中包含的文件访问路径信息获得相 应的文件,并扭J于下一步;例如当请求中携带子系统文件A的最后^^改时间,即判断子系统文件A的最后修改时间与部署服务器本机存储的子系统文件A的修改时间是否一致。步骤1112、部署服务器返回相应的文件; 步骤1113、网管服务器将收到的文件保存在本地緩存中。 因此上述的过程,会使网管服务器本地緩存的文件与部署服务器上的文件 高效的同步,而且不会下载完全一样的文件。文件更新完成,再次启动网管服 务器本机的子系统,网管服务器再次进入运行态。为了更好的理解在升级过程中网管服务器从部署服务器下载文件的过程, 下面再以采用非HTTP协议下载文件为例,例如FTP、 SFTP、 NFS等协议, 为了方便描述,本实施例中以FTP协议为例描述,如图16所示,为本发明 实施例的采用FTP协议从部署服务器下载文件的交互流程图,包括步骤1210、网管服务器发送FTP查询请求消息,以获得部署服务器上 的文件详细信息;步骤1211、部署服务器返回FTP响应消息,其中该响应消息中包括文 件标识信息,例如文件最后修改时间;步骤1213、网管服务器比较本地緩存中文件的文件标识信息与返回的 文件标识信息是否一致,当文件标识信息一致时,返回下载成功,结束流程; 否则,执行步骤1214;在一种实现方式下,网管服务器比较本地緩存中文件的最后修改时间与 返回的文件最后修改时间是否一致,当修改时间一致时,返回下载成功,结 束流程;否则,执行下一步;步骤1214、网管服务器发送FTP下载文件的请求消息,其中,该请求 消息中包含文件标识信息不一致的文件的访问路径信息;在一种实现方式下,该请求消息中包含最后修改时间不一致的文件的访 问路径信息;步骤1215、部署服务器根据该请求消息中的文件访问路径信息获取该 ^^径下的相应文件;步骤1216、部署服务器返回相应的文件;步骤1217、网管服务器将返回的文件保存在本地緩存中。 应当理解的是采用其他非HTTP协议下载文件的过程与上述过程相同。由本发明实施例可知,通过采用从部署服务器向下拉文件的方式实现子 系统软件的自动安装、部署、升级,从而提高分布式网管系统的可维护性, 提高了维护效率,降低分布式网管系统的维护成本,管理员只需要单点升级、 打补丁,各分布的网管服务器自动完成安装、部署、升级、打补丁的过程;以及,通过采用本发明实施例,避免了现有基于推模式的分布式部署方 案中将每台网管服务器给主控机开发远程控制的权限,所导致的安全性差的 问题,以及避免了现有基于推模式的分布式部署方案中要求在部署过程中各 台网管服务器的运行状态、网络连接必须是正常的,所带来的可靠性差的问 题,从而提高了分布式网管系统的安全性和可靠性。本领域普通技术人员可以理解实现上述实施例方法中安装和/或升级的 过程可以通过程序指令相关的硬件来完成,所述的程序可以存储于网管系统 或呼叫中心的可读取存储介质中,该程序在执行时执行上述方法中的对应步 骤。所述的存储介质可以如ROM/RAM、磁碟、光盘等。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范 围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均 应包含在本发明的保护范围之内。
权利要求
1. 一种分布式网络管理系统,其特征在于,包括部署服务器和至少一台网管服务器,所述网管服务器,用于从所述部署服务器获得与本机相关的部署信息,根据所述部署信息确定待部署在当前网管服务器的子系统标识信息,以及从所述部署服务器获得与所述子系统标识信息相应的子系统软件并保存,启动所述子系统软件;所述部署服务器,用于存储有分布式网管系统的所有子系统的子系统软件和子系统分布部署信息。
2. 根据权1所述的系统,其特征在于,所述网管服务器,还用于在确定当 前网管服务器已部署的子系统软件与部署服务器上当前网管服务器关联的子系 统软件不一致时,从所述部署服务器获得更新后的子系统软件并保存,重启动 所述子系统软件。
3. —种网管服务器,应用于分布式网络管理系统,其特征在于,包括 信息传输模块,用于发送获取部署信息的请求消息,并接收返回的与所述请求消息对应的响应信息,由该响应信息得到与当前网管服务器相关的部署信 息,以及从部署服务器上获得与所述确定的待部署的子系统标识信息相应的子 系统软件并保存;进程管理模块,用于将所述信息传输模块获得的子系统软件进行启动; 部署管理模块,用于调用所述信息传输模块获取部署信息,根据所述信息 传输^^莫块获得的部署信息确定本机待部署的子系统标识信息,调用所述信息传 输模块获取相应的子系统软件,并在所述信息传输模块获得子系统软件后,调 用所述进程管理模块进行启动。
4. 根据权3所述的网管服务器,其特征在于,所述部署管理模块进一步用 于,定时调用所述信息传输模块获取部署信息,在确定本机已部署子系统与所 述信息传输模块获得的部署信息中当前网管服务器关联的子系统不一致时,调 用所述信息传输模块获得更新后的与当前网管服务器相关的子系统软件,并且调用所述进程管理模块重启动子系统;所述信息传输模块,进一步用于从部署服务器上获得与本机相关的部署信 息,以及从部署服务器上获得与当前网管服务器相关的且更新后的子系统软件;所述进程管理模块,进一步用于停止当前网管服务器上已部署的子系统, 并启动所述信息传输模块获得更新后的子系统软件。
5. 根据权3所述的网管服务器,其特征在于,所述信息传输模块为第一信 息传输模块,用于发送携带有全量部署信息文件访问路径信息的第四请求消息, 并接收返回的与所述第四请求消息对应的全量文件,从所述全量文件中查找得 到当前网管服务器相关的部署信息;以及,用于发送携带有当前网管服务器待 部署的子系统标识信息对应的文件访问路径信息的第五请求消息,并接收返回 的与所述第五请求消息对应的子系统软件并保存。
6. 根据权3所述的网管服务器,其特征在于,所述信息传输模块为第二信 息传输模块,用于发送携带有当前网管服务器的设备标识信息的第六请求消息, 并接收返回的包含有当前网管服务器相关部署信息的第六响应消息,从该响应 消息中提取得到当前网管服务器相关的部署信息;以及,用于发送携带有当前 网管服务器待部署的子系统标识信息对应的文件访问路径信息的第七请求消 息,并接收返回的与所述第七请求消息对应的子系统软件并保存。
7. 根据权3所述的网管服务器,其特征在于,所述信息传输模块为第三信 息传输模块,用于发送携带有当前网管服务器的部署信息对应的文件访问路径 信息的第八请求消息,并接收返回的与所述第八请求消息对应的部署信息文件, 从所述部署信息文件中获得当前网管服务器相关的部署信息;以及,用于发送 携带有当前网管服务器待部署的子系统标识信息对应的文件访问路径信息的第 九请求消息,并接收返回的与所述第九请求消息对应的子系统软件并保存。
8. —种网管服务器,其特征在于,应用于分布式网管系统中,在该分布式 网管系统中其他网管服务器与该网管服务器通信,该网管服务器包括子系统加载器,用于向所述传输服务模块请求获得与当前网管服务器相关 的部署信息,根据所述获得的部署信息确定;f寺部署在当前网管服务器的子系统标识信息,并向所述传输服务模块请求获得与所述子系统标识信息相应的子系统软件,将所述获得的子系统软件保存并启动;传输服务模块,用于根据接收的用于获取部署信息的请求消息返回与所述 请求消息对应的响应信息,所述响应信息包含与请求方网管服务器相关的部署 信息,以及根据接收的用于获得与请求方网管服务器子系统标识信息相应的子 系统软件的请求消息,返回相应的子系统软件。
9. 根据权8所述的网管服务器,其特征在于,所述网管服务器进一步包括 存储有该分布式网管系统中所有子系统软件,以及子系统分布部署信息的存储 模块;所述传输服务模块为第一传输服务模块,用于接收携带有部署信息文件访 问路径信息的请求消息,根据该请求消息中的部署信息文件访问路径信息从该存储模块中获得对应的部署信息文件并返回,以及接收携带有请求方子系统标 识信息对应的子系统文件访问路径信息的请求消息,根据该请求消息中的子系 统文件访问路径信息从该存储冲莫块中获得对应的子系统软件并返回。
10. 才艮据权8所述的网管服务器,其特征在于,所述网管服务器进一步包 括存储有该分布式网管系统中所有子系统软件,以及子系统分布部署信息的 存储模块;所述传输服务模块为第二传输服务模块,用于接收携带有请求方设备标识 信息的请求消息,根据该请求消息中的设备标识信息从所述存储模块查找得到 与请求方相关的部署信息并返回包含该部署信息的响应信息,以及接收携带有 请求方子系统标识信息对应的子系统文件访问路径信息的请求消息,根据该请 求消息中的子系统文件访问路径信息从所述存储模块获得对应的子系统软件并 返回。
11. 根据权8所述的网管服务器,其特征在于,所述子系统加载器包括 信息传输子模块,用于请求所述传输服务模块返回与获取部署信息的请求对应的响应信息,由该响应信息得到与当前网管服务器相关的部署信息,以及 向传输服务模块请求获得与所述确定的待部署的子系统标识信息相应的子系统软件并保存所述获得的子系统软件;进程管理子模块,用于将所述信息传输子模块获得的子系统软件进行启动; 部署管理子模块,用于调用所述信息传输子模块获取与当前设备相关的部署信息,根据所述信息传输子模块获得的部署信息确定本机待部署的子系统标识信息,调用所述信息传输子模块获取子系统软件,并在所述信息传输子模块获得子系统软件后,调用所述进程管理子^f莫块进行启动。
12. —种分布式部署方法,其特征在于,应用于分布式网络管理系统中的至 少一台网管服务器,其中各网管服务器上的子系统共同组成分布式网络管理系 统,包4舌获得与当前网管服务器相关的部署信息;根据所述获得的部署信息确定当前网管服务器待部署的子系统标识信息; 请求下载与该子系统标识信息对应的子系统软件,接收并保存返回的与该 请求对应的子系统软件; 启动所述子系统软件。
13. 根据权12所述的方法,其特征在于,所述部署信息包括子系统标识信 息、设备标识信息、与对应的子系统版本信息的关联信息,所述根据所述获得的部署信息确定当前网管服务器待部署的子系统标识信 息的步骤包括根据所述关联信息,确定与当前设备标识信息对应的子系统标识信息,所 述子系统标识信息为当前网管服务器待部署的子系统标识信息。
14. 根据权12所述的方法,其特征在于,所述获得与当前网管服务器相关 的部署信息的步骤包括发送携带有全量部署信息文件访问路径信息的请求消息,接收返回的与该 请求消息对应的全量部署信息文件,并根据当前网管服务器的设备标识信息从 该全量部署信息文件中查找得到当前网管服务器相关的部署信息;或者,发送携带有当前网管服务器的设备标识信息的请求消息,接收返回 的包含有与当前网管服务器相关的部署信息的响应消息,并从该响应消息中获得当前网管服务器相关的部署信息;或者,发送携带有当前网管服务器对应的部署信息文件访问路径信息的请 求消息,接收返回的与该请求消息对应的部署信息文件,从该部署信息文件中 获得当前网管服务器相关的部署信息。
15.根据权12所述的方法,其特征在于,所述方法进一步包括定时获取最新的部署信息;确定所述获得的部署信息中的当前网管l良务器关联的子系统与当前网管服 务器已部署的子系统不一致时,停止当前网管服务器上已部署的子系统;请求下载部署于当前网管服务器且确定不一致的子系统软件,接收并保存 返回的与该"清求对应的更新后的子系统4允件;启动所述保存的子系统软件。
全文摘要
本发明实施例公开了一种分布式网络管理系统,包括部署服务器和至少一台网管服务器,所述网管服务器用于从所述部署服务器获得与本机相关的部署信息,根据所述部署信息确定待部署在当前网管服务器的子系统标识信息,以及从所述部署服务器获得与所述子系统标识信息相应的子系统软件并保存,启动所述子系统软件;所述部署服务器,用于存储有分布式网管系统的所有子系统的子系统软件和子系统分布部署信息。本发明实施例还公开了网管服务器及分布式部署方法。
文档编号H04L12/24GK101267341SQ20081006622
公开日2008年9月17日 申请日期2008年3月28日 优先权日2008年3月28日
发明者张大炜 申请人:华为技术有限公司