用于集中式系统最小化和强化管理的体系结构和方法 【技术领域】
本发明总体上涉及计算机系统领域,更具体地,本发明涉及一种用于实现集中式系统最小化和强化管理的体系结构和方法。
背景技术
如何确保计算机系统不受到非授权访问是如今系统管理员所面临的最迫切的问题之一。一种减少系统要害的方式是最小化服务器上的软件数量。服务器上越少的软件组件意味着待检测和填补的安全漏洞越少。很多系统渗透便是通过利用操作系统自身的安全漏洞来实现的。因而,服务器上的系统最小化和协议最小化可以通过减少要害的绝对数目来极大地改善整体系统安全性。通过减少对于必须使用合法系统功能的那些人来说可用的开放端口的数目,进一步改善了整体系统安全性。
对于具有多个服务器在运行的复杂网络系统来说,每个服务器均需要使用系统最小化和协议最小化过程,以便使整个网络系统是安全的。当服务器的数目增加时,使其最小化的工作量也增加。
图1说明了用于网络系统最小化的现有解决方案。对于包括多个服务器的计算机网络来说,如图1所示,每个服务器具有其自己的系统最小化工具和用户接口。为了实现系统最小化工作,网络管理员不得不登录到每个服务器并且使用其系统最小化工具和用户接口来使得该服务器最小化,诸如启用/禁用该服务器上的一个或多个服务和协议。
尽管现有解决方案在每个服务器上都提供了管理工具和接口,然而,它需要网络管理员登录到各个服务器上来逐一进行系统最小化工作。在大型协作中,服务器的数目可能非常巨大,因而工作量将非常大。另外,由于每个服务器上的最小化工作取决于其它服务器上的工作,因此不具备集中式可跟踪性。也就是说,其没有为管理员提供一种良好的方式来获得每个服务器的当前状态,并且也没有任何简易的方法来了解和管理在最小化之后对整个网络系统的影响。
【发明内容】
本发明的目的是提供一种用于网络系统最小化的解决方案,其能够使上述过程成为集中式可管理过程,从而使得网络系统管理员能够使用统一接口在一个点实现整个系统最小化和协议最小化。
在本发明的一个方面中,提供了一种用于为包括多个服务器的网络实现集中式系统最小化和强化管理的体系结构。该体系结构包括:中央管理器,其适于接收用于系统最小化的命令,根据所述命令为所述多个服务器中的一个或多个服务器获得预定义服务器状态,并且分别向所述一个或多个服务器发送所述预定义服务器状态;以及分别驻留于所述多个服务器上的多个代理,每个代理适于响应于所述命令,获得其服务器的当前服务和协议状态,以及改变所述当前服务和协议状态,以便满足从所述中央管理器所接收的预定义服务器状态。
在本发明的另一方面中,提供了一种用于为包括多个服务器的网络实现集中式系统最小化和强化管理的方法。该方法包括:由中央管理器接收用于系统最小化的命令;根据所述命令,由所述中央管理器为所述多个服务器中的一个或多个服务器获得预定义服务器状态;从所述中央管理器向驻留于所述一个或多个服务器上的相应代理分别发送所述预定义服务器状态;响应于所述命令,由每个代理获得其服务器的当前服务和协议状态;以及通过所述每个代理来改变所述当前服务和协议状态,以便满足所述预定义服务器状态。
【附图说明】
在所附的权利要求中阐述了被认为是本发明的特性的新颖性特征。当结合附图阅读时,通过参照下面对具体实施方式的详细描述,将最好地理解本发明本身及其进一步目的和优点,在附图中:
图1表示了现有技术中已知的用于网络系统最小化的常规体系结构;
图2表示了根据本发明实施例的集中式系统最小化和强化管理体系结构;
图3是示出了根据本发明实施例的预定义服务器状态的配置的示意性流程图;
图4是示出了根据本发明实施例的按需审核的示意性流程图;以及
图5是示出了根据本发明实施例地自动审核的示意性流程图。
【具体实施方式】
图1示意性地示出了现有技术中已知的用于网络系统最小化的常规体系结构,已经结合本发明的背景技术对其进行了讨论。现在将详细参考本发明的优选实施例。
贯穿本说明书所谈及的“一个实施例”、“实施例”或类似的语言意味着在本发明的至少一个实施例中包括了结合实施例所描述的特定特征、结构或特性。因而,贯穿本说明书所出现的短语“在一个实施例中”、“在实施例中”以及类似的语言可以但不一定都指的是相同的实施例。
图2示意性地示出了根据本发明实施例的集中式系统最小化和强化管理体系结构200。体系结构200构建于包括多个服务器1......N的网络210的基础之上。如上所述,为了使得网络系统管理员能够使用统一接口在一个点实现整个系统最小化,即,使网络系统最小化成为集中式可管理的过程,本发明的解决方案将使用中央点来管理网络210中所有服务器的系统最小化。该中央点可以分别向每个服务器上的相应代理发送命令消息,并且各个代理将根据该命令消息来完成实际的系统最小化工作。这些代理可以将特定的日志信息发送回给中央点。然后,中央点可以在某地保存该信息用于进一步的审阅和分析。因此,体系结构200可以包括:中央管理器202、分别驻留于多个服务器上的多个代理204、管理接口206,以及数据库208,如图2所示。在不背离本发明的情况下,出于其它目的,除了以上元件或者代替以上元件,在体系结构200中还可以存在其它的元件。
中央管理器202可以从管理接口206或代理204接收和解译命令消息,并且根据命令消息,例如通过访问数据库208来读/写信息。中央管理器202可以向代理204发送用于最小化的信息,诸如预定义服务器状态(将在下文对其进行详细描述)。另外,中央管理器202可以将从管理接口206所接收到的命令消息发送到代理204,并且从代理204获得诸如日志和记录这样的信息。在一个实施例中,中央管理器202是运行在多个服务器1......N中的一个服务器(诸如图2中所示的中央服务器)上的系统最小化管理进程。优选地,中央管理器202是多线程(或多进程)程序,从而使得其能够同时进行多个工作。
代理204可以接收和解译来自中央管理器202的命令消息,根据该命令消息获得其服务器的当前状态(诸如服务和协议状态),并且将当前状态发送回给中央管理器202。此外,代理204可以根据从中央管理器202所接收到的命令消息来禁用/启用服务器上特定的服务和协议,并且通过将当前服务和协议状态与预定义状态进行比较,以及然后当在它们之间存在差异的情况下将当前状态变成预定义状态,从而审核其服务器的当前服务和协议状态。在一个实施例中,代理204是在应由管理员来管理的各个服务器上活动的系统最小化代理进程。在该情况下,“管理”意味着系统最小化和强化。
管理接口206有可能是GUI程序,其可以运行或可以不运行在中央管理器202的同一服务器上。管理员212可以登录到执行管理接口206的服务器上来进行一些关于网络系统最小化的工作,例如,获得网络中每个服务器的当前服务和协议状态,请求启用/禁用一个或多个服务器上的一个或多个服务和协议,配置用于最小化工作的操作参数,请求各个代理根据预定义状态来审核其服务器的当前状态,等等。操作参数可以包括:为最小化工作预定义的期望服务器状态,以及为代理204所设置的自动审核周期。可以将预定义状态用于所有服务器,或者仅用于特定的服务器。在一个实施例中,管理接口206在作为整个系统的OA&M平台的服务器上活动,从而使得管理员212能够轻易地访问它。此外,建议管理接口206仅与中央管理器202相接。
数据库208可以存储最小化工作所需的信息,例如,用于多个服务器的预定义状态,以及来自代理204的诸如日志和记录这样的任何其它类型的信息。预定义状态描述了当实现网络系统最小化时对于多个服务器的期望服务器状态(例如,服务和协议状态)。在一个实施例中,预定义状态包括:由网络运营商所提供的缺省的全局状态、由系统管理员所配置的全局预定义状态,以及由系统管理员所配置的针对特定服务器的预定义状态。相应地,数据库208中将存在一些种类的数据表,以便维护上述预定义状态。在一个实施例中给出了以下种类的数据表。
第一类表格是如以下所示出的服务器表格,其存储了关于服务器ID和FLAG(标记)的信息。服务器ID是服务器的唯一身份,并且相应的FLAG指示该服务器是否具有其自己的预定义状态表格。例如,如果FLAG=是,则该服务器具有其自己的预定义状态表格。否则,它没有其自己的预定义状态表格。
服务器表格
服务器ID FLAG
第二类表格是全局预定义状态表格,其存储了为多个服务器预定义的各种服务和协议的当前和缺省的全局状态的信息。举例来说,这类表格可以包括全局预定义服务状态表格(如下所示),其存储了关于以下的信息:服务ID、服务名称、缺省的预定义状态,以及当前的预定义状态。该表格中没有存储关于服务器ID的信息,这是因为全局预定义状态可应用于所有服务器。服务ID是服务的唯一身份。服务名称是服务的名称(例如,“IP转发”)。缺省的预定义状态是给定服务被网络运营商所建议的状态。当前的预定义状态是管理员就当前最小化工作而言为给定服务所配置的状态。此外,这类表格还可以包括全局预定义协议状态表格,其具有与全局预定义服务状态表格类似的结构。
全局预定义服务状态表格
服务ID 服务名称 缺省的预定义状态 当前的预定义状态
第三类表格是用于给定服务器的预定义状态表格,其存储了为一些特定服务器预定义的各种服务和协议的当前状态的信息。类似于全局预定义状态表格,用于给定服务器的预定义状态表格可以包括用于这些服务器的预定义服务状态表格和预定义协议状态表格。举例来说,用于给定服务器的预定义服务状态表格(如下所示)存储了以下信息:服务器ID、服务ID、服务名称,以及当前的预定义状态。当前的预定义状态是管理员针对给定服务器上的特定服务所配置的预定义状态。
用于给定服务器的预定义服务状态表格
服务器ID 服务ID 服务名称 当前的预定义状态
此外,数据库208中还可以存在其它的操作表格,用于维护为集中式系统最小化所配置的或执行最小化工作所得到的其它参数和信息。下面将参照图3详细描述对预定义服务器状态的配置。
图3是根据本发明的实施例说明了对预定义服务器状态的配置的示意性流程图。根据最小化工作的要求,管理员(诸如管理员212)可以为一个或多个服务器配置各种预定义状态。对于使用本发明的体系结构的用户来说,第一建议步骤是:配置可应用于多个服务器中的所有服务器的全局预定义状态。参照图3,当管理员212登录到运行管理接口206的服务器时,在步骤301,管理接口206接收对于显示当前的全局预定义状态的请求。在步骤302,管理接口206向中央管理器202发送“获得当前的全局预定义状态”命令。在步骤303中,中央管理器202例如通过从数据库208中进行读取而获得当前的全局预定义状态,并且然后在步骤304中将其发送回给管理接口206。如果数据库208中不存在全局预定义状态,则读取由网络运营商所提供的缺省的全局状态,并将其发送给管理接口206。在步骤305中,管理接口206向管理员212显示所接收到的信息。然后在步骤306中,管理员212在接口上为一些服务或协议改变全局预定义状态,并提交所述改变。在步骤307中,管理接口206向中央管理器202发送“改变全局预定义状态”命令以及全局预定义状态的新值,并且然后在步骤308中,中央管理器202将新的全局预定义状态保存到数据库208中。
文中所描述的示意性流程图通常作为逻辑流程图来阐述。如此,图示的顺序以及标记的步骤表示的是所给出的方法的一个实施例。可以构想出在功能、逻辑或效果上等效于所说明的方法的一个或多个步骤或其部分的其它步骤和方法。另外,提供了所采用的格式和符号来解释该方法的逻辑步骤,并且可以理解这些格式和符号并不对该方法的范围进行限制。尽管在流程图中可以采用各种箭头类型和线条类型,然而要理解到它们并不对相应方法的范围进行限制。实际上,可以使用一些箭头或其它连接符来仅仅指示该方法的逻辑流程。例如,箭头可以指示在所述方法的枚举步骤之间未指定的持续时间的等待或监控周期。另外,其中特定方法发生的顺序可以严格遵守或不必严格遵守所示出的相应步骤的顺序。
在正常情形下,管理员并不需要为同类服务器配置特殊的预定义状态。然而,人们有时候需要特殊的策略用于一些特定的服务器。再次参照图3,管理员212在想要为特定服务器配置特殊的预定义状态时登录到运行管理接口206的服务器。类似地,在步骤301中,管理员212使用管理接口206来请求为一些特定服务器显示当前的预定义状态。在步骤302中,管理接口206向中央管理器202发送“为特定服务器获得当前的预定义状态”命令以及所述特定服务器的ID,这有别于对全局预定义状态的配置。在步骤303中,中央管理器202例如通过从数据库208中进行读取而为所述特定服务器获得当前的预定义状态,并且然后在步骤304中将其发送回给管理接口206。如果数据库208中没有用于这些服务器的预定义状态,则将读取全局服务器状态,并将其发送给管理接口206。在步骤305中,管理接口206向管理员212显示所接收到的信息。然后在步骤306中,管理员212在接口上针对所述特定服务器改变一些服务或协议的预定义状态,并提交所述改变。在步骤307中,管理接口206将“为特定服务器改变预定义状态”命令和预定义状态的新值与这些服务器的ID一起发送给中央管理器202,并且然后在步骤308中,中央管理器202将用于这些特定服务器的新的预定义状态保存到数据库208中。另外,中央管理器202可以在数据库208中做出以下记号:所述特定服务器具有它们自己的预定义状态。
利用用于服务器的预定义状态,管理员可以通过在统一的管理接口206上的特定操作(例如,借助于审核命令来请求启用/禁用一个或多个服务器上的一个或多个服务和协议),以集中式方式实现系统最小化。图4是说明了根据本发明实施例的按需审核的示意性流程图。参照图4示出了管理员对整个系统进行审核工作的场景。首先,管理员212登录到运行管理接口206的服务器。在步骤401中,管理员212请求在管理接口206上进行整个系统的审核工作。在步骤402中,管理接口206向中央管理器202发送“审核”命令。然后在步骤403中,中央管理器202例如通过从数据库208中进行读取而获得用于每个服务器的预定义状态。如果不存在用于服务器的特殊预定义状态,则将读取全局预定义状态。在步骤404中,中央管理器202向每个服务器上的相应代理204分别发送“审核”命令以及预定义状态。步骤403和步骤404也可以通过“多线程”机制而同时发生。在接收到“审核”命令时,代理204在步骤405中扫描其服务器的当前状态(包括服务和协议状态),并且在步骤406中,将其与中央管理器202所发送的对应的预定义状态进行比较。如果它们之间存在差异,则代理204将根据预定义状态改变服务器的状态。在步骤407中,代理204向中央管理器202发送执行的结果。举例来说,代理204在完成审核工作时向中央管理器202发送“完成审核”信息。如果在审核工作期间发生错误,则代理204仅向中央管理器202发送“未能审核”信息。然后在步骤408中,中央管理器202将结果发送回给管理接口206。要注意,通过良好的多线程设计和实施方式,管理员212可以以实时方式查看每个服务器的结果。
在一些特定的环境下,管理员可能要求对一些特定服务器进行特殊操作。在该情况下,将对所述特定服务器执行上述审核过程。再次参照图4,管理员212登录到运行管理接口206的服务器。在步骤401中,管理员212请求在管理接口206上对特定服务器进行审核,其中,可以从管理接口206选择需要审核的服务器。在步骤402中,管理接口206将“审核”命令与所述特定服务器的ID的列表一起发送给中央管理器202。然后在步骤403,中央管理器202例如通过从数据库208中进行读取而为以上列表中的每个服务器获得预定义状态。如果不存在用于这些服务器的特殊预定义状态,则将读取全局预定义状态。在步骤404中,中央管理器202向以上列表中的每个服务器上的相应代理204分别发送“审核”命令以及预定义状态。类似地,步骤403和步骤404也可以通过“多线程”机制而同时发生。在接收到“审核”命令时,代理204在步骤405中扫描其服务器的当前状态(包括服务和协议状态),并且在步骤406中,将其与中央管理器202所发送的对应的预定义状态进行比较。如果它们之间存在差异,则代理204将根据预定义状态来改变服务器的状态。在步骤407中,代理204向中央管理器202发送执行的结果。举例来说,代理204在完成审核工作时向中央管理器202发送“完成审核”信息。如果在审核工作期间发生错误,则代理204仅向中央管理器202发送“未能审核”信息。然后在步骤408中,中央管理器202将结果发送回给管理接口206。类似于对所有服务器的按需审核的情形,通过良好的多线程设计和实施方式,管理员212可以以实时方式查看每个服务器的结果。
在一个实施例中,管理员212例如在发布审核命令之前可以请求获得他或她感兴趣的服务器的当前状态,从而使得管理员212可以实时跟踪这些服务器的状态,并且确定是否有必要为这些服务器重新配置当前的预定义状态。管理员212登录到运行管理接口206的服务器,并且通过管理接口206向中央管理器202发送“查询状态”命令以及感兴趣的服务器的ID的列表。中央管理器202然后向所述感兴趣的服务器上的相应代理204分别发送这样的“查询状态”命令。响应于该命令,代理204得到其服务器的当前状态,并将该当前状态发送回给中央管理器202。中央管理器202然后将所接收到的信息发送给管理接口206。管理接口206向管理员212显示所述感兴趣的服务器的当前状态。
对于本发明的体系结构,除了上述按需审核之外,还可以实现周期性的自动审核,以便使得整个系统总是保持预定义状态。这需要分别在每个服务器上的相应代理204处设置自动审核周期。在一个实施例中,管理员212登录到运行管理接口206的服务器上并设置自动审核周期。管理接口206发送“改变自动审核周期”命令以及审核周期的新值给中央管理器202。然后,中央管理器202将该命令消息分别转发给每个服务器上的相应代理204。响应于接收到以上命令和值,代理204根据新的自动周期来改变其内部计时器。要注意,如果管理员212没有配置审核周期,则将在缺省的审核周期(其可以被硬编码到代理204中)到期时执行自动审核。
图5是说明了根据本发明实施例的自动审核的示意性流程图。在步骤501,当自动审核计时器超时时,代理204向中央管理器202发送“获得预定义状态”命令。然后在步骤502中,中央管理器202例如通过从数据库208中进行读取而为所请求的服务器获得预定义状态。如果不存在用于该服务器的预定义状态,则将读取全局预定义状态。在步骤503中,将用于该服务器的预定义状态从中央管理器202发送到相应的代理204。在步骤504中,代理204扫描其服务器的当前服务和协议状态,并且在步骤505中将其与预定义状态进行比较。如果它们之间存在差异,则代理204将根据预定义状态来改变该服务器的状态。在步骤506中,将从代理204向中央管理器202发送审核结果,并且中央管理器202将在特定的地方(例如数据库208)中记录该结果。
根据以上描述可以看出,本发明的集中式机制极大地减少了用于最小化大型网络中每个服务器上运行的服务和协议的工作量,因为其并不需要网络管理员登录到这些服务器上来逐一地进行系统最小化工作。该解决方案也使得管理工作是跟踪的,这可以帮助网络管理员分析和了解在最小化之后对系统的影响。此外,由于本发明的解决方案可以极大地节省大型协作的管理工作量,因此,其还可应用于可以采用集中式操作的任何其它的环境。所描述的本发明的特征、结构或特性可以在一个或多个实施例中以任何适当的方式来组合。
出于说明和描述的目的已经给出了对本发明的特定实施例的前述描述。它们并不旨在穷尽或将本发明的限制成所公开的确切形式,并且鉴于以上教导显然很多修改和变化是可行的。选择和描述实施例是为了最好地解释本发明的原理及其实践应用,从而使得本领域的技术人员能够最好地利用本发明,并且具有各种修改的各种实施例适合预期的特定使用。本发明的范围旨在通过所附的权利要求及其等同物来限定。