从配置管理数据库检索配置记录的制作方法

文档序号:7943525阅读:188来源:国知局
专利名称:从配置管理数据库检索配置记录的制作方法
技术领域
本发明涉及信息技术(IT)系统,并且更具体地,涉及用于基于事件消息从配置管理数据库(CMDB)检索(retrieve)描述配置项(Cl)的配置记录(CR)的方法和装置。
背景技术
向多个客户提供多种服务的大且复杂的IT管理环境可以创建不可管理的数量的实体。配置管理数据库包含表示广阔范围的逻辑和物理实体及其复杂的关系的数据对象 (配置记录)。配置管理数据库是与信息系统的所有组件(配置项)有关的信息的储存库。尽管类似于配置管理数据库的储存库已经由IT部门使用了很多年,但是术语配置管理数据库源于ITIL (信息技术基础设施库)。在ITIL背景下,配置管理数据库表示IT环境的重要组件的经授权的(authorized)配置。配置管理数据库的关键目标是帮助组织理解这些组件之间的关系以及跟踪其配置。配置管理数据库是ITIL框架的配置管理过程的基本组件。 信息技术基础设施库(ITIL)是对于信息技术(IT)服务管理的指南的集合。ITIL由给出关于提供出众的IT-服务以及关于支持它们所需的过程和设施的指引的一系列出版物构成。 ITIL指南被认为是对于IT服务的最佳实践指南。最佳实践是被认为在提供特定成果方面比任何其他技术、方法、活动或过程更有效的技术、方法、活动或过程。配置管理数据库的典型实现方式可以包含多于800个抽象对象类,它们之间具有可以按开放的方式扩展的暗含的以及明确的关系。正常地,配置管理数据库是由其他系统访问的储存库,所述其他系统例如提供与例如配置项的故障有关的消息的事故管理系统。因为事故管理系统经常使用与配置管理数据库所使用的不同的识别方案,因此难以基于来自消息的信息来识别配置记录。但是,存储在配置管理数据库中的信息可能对于修复消息所指代的故障是至关重要的。因此,希望仅基于来自消息的信息而获得关于存储在配置管理数据库中的并受故障影响的配置项的进一步信息,尽管该消息使用与配置管理数据库的属性名称不兼容的标识符。通常信息系统使用人为产生的关键字(key)(代理关键字)来识别对象。这些关键字容易用于数据库内部的关系,但是在外部用处很小。外部系统使用其他的人造产物 (artifact)来唯一地识别对象(通常称为“自然关键字”)。但是有时外部系统不具有建立这样的自然关键字所需的所有信息或者不知道如何建立它。因此,本发明解决的问题是识别配置管理数据库中的对象而无需了解其识别方法
/方案。

发明内容
根据本发明的一个方面,提供了一种从与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录的方法,配置记录具有属性和分配的属性值,该IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统来管理。该方法包括提供包括未识别的属性值和识别的主机值的集合的消息,从该配置管理数据库检索包含识别的主机值的一个或多个配置记录,以及依据未识别的属性值和检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。根据另一方面,提供了一种计算机系统,用于从与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录,配置记录具有属性和分配的属性值,该IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统来管理。该计算机系统被编程为 提供包括未识别的属性值和识别的主机值的集合的消息,从该配置管理数据库检索包含识别的主机值的一个或多个配置记录,以及依据未识别的属性值和检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。根据又一方面,提供了一种计算机程序产品,其采取在其上存储了程序代码的机器可读介质的形式或者包括程序代码的表示的传播信号的形式。该程序代码被布置为当在计算机系统上执行时,实施从与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录的方法,配置记录具有属性和分配的属性值,该IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统来管理。该方法包括提供包括未识别的属性值和识别的主机值的集合的消息,从该配置管理数据库检索包含识别的主机值的一个或多个配置记录,以及依据未识别的属性值和检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。根据以下各实施例的详细描述及其附图,其他特征是所公开的方法和产品所固有的,或者对本领域技术人员而言将变得显而易见。


现在将通过例子并参考附图描述本发明的实施例,附图中
图1示出根据本发明的实施例的包括具有用于基于事件消息检索配置记录的映射器的操作管理服务器的IT基础设施;
图2示意性例示根据本发明的实施例的企业中的配置项;
图3示出根据本发明的实施例的来自事故管理系统的警告消息、配置管理数据库中的配置记录以及指示该消息和该记录之间的匹配的数量的得分值;
图如例示根据本发明的实施例的来自配置管理数据库的六个配置记录; 图4b例示根据本发明的实施例的来自事故管理系统的将被映射到图如的配置记录上的五个事件消息;
图5例示根据本发明的实施例的用于寻找具有某个属性值的配置记录的索引结构; 图6示出根据本发明的实施例的基于距离量度的改进的记分函数; 图7是例示根据本发明的实施例的从配置管理数据库检索配置记录的流程图;以及图8是操作管理站的一个实施例的图示表示。附图和对附图的描述是本发明的实施例的但不是本发明本身的。
具体实施例方式图1示出由操作管理服务器2管理的IT基础设施,操作管理服务器2包括用于基于来自与IT基础设施中的事件有关的消息的信息来从配置管理数据库5检索配置记录的映射器12。但是,在进行图1的描述之前,将讨论各实施例的一些项目。
一些实施例涉及从与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录的方法,配置记录具有属性和分配的属性值,IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统管理。该方法包括提供包括未识别的属性值和识别的主机值的集合的消息;在配置管理数据库中检索包含识别的主机值的一个或多个配置记录, 以及依据未识别的属性值和所检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。在一方面,“IT基础设施”是用于互连计算机(主机)和用户的物理硬件。基础设施包括传输介质,所述传输介质包括电话线、电缆电视线以及卫星和天线,并且基础设施还包括路由器、交换机、转发器和控制传输路径的其他设备。另一方面,IT基础设施还包括用于发送、接收和管理传输的信号的软件。IT基础设施通常包括操作管理系统,其是具有管理IT基础设施的组件的特定软件的服务器,使得所述组件可以用于在其上运行应用程序。 该操作管理系统提供有关IT基础设施的单独组件的状态以及IT基础设施整体的状态的信息。在一些实施例中,操作管理系统使用管理协议、通常是SNMP (简单网络管理协议)来获得来自所管理的主机和其他所管理的设备的信息。SNMP以所管理的主机上的变量的形式显露管理数据,所述变量描述系统配置。然后可以由操作管理系统询问(以及有时设置)这些变量。在计算机联网中,“网络主机”或“主机”是连接到IT网络的计算机。网络主机可以主控信息以及客户端和/或服务器软件。每个因特网主机具有唯一的IP地址,包括主机地址部分。主机地址由计算机管理员手动分配或者通过动态主机配置协议(DHCP)在启动时自动分配。每个主机是网络节点(即网络设备),但是不是每个节点都是主机。例如,诸如调制解调器和网络交换机的网络节点不被分配主机地址,并且不被认为是主机。但是,在此文档中,具有IP地址的互连设备也被认为是主机。诸如网络打印机和硬件路由器的设备被分配了 IP主机地址,但是因为它们不是通用计算机,它们在文献中有时不被认为是主机。但是,在此文档的背景下,这些设备也被认为是主机。在一些实施例中,主机是虚拟主机。虚拟主控(hosting)是诸如web服务器的服务器用于在相同的计算机上、有时在相同的IP地址上主控多于一个域名的方法。存在实现虚拟主控的两种基本方法基于名称的,以及基于IP地址或IP的。基于名称的虚拟主机对相同的web服务器IP地址使用多个主机名称。例如,服务器可以接收对于两个域www. sitel. com和mm. site2. com的请求,两者解析到相同的IP地址。在基于IP的虚拟主控中,每个站点(DNS主机名称或者起相同作用的一组DNS主机名称)指向唯一的IP地址。web服务器被配置有多个物理网络接口,在相同的物理接口上有虚拟网络接口 或者在一个接口上有多个IP地址。web服务器可以使用标准API获得TCP连接意图去往的地址,并使用此来确定要供应哪个网站。在此过程中不涉及客户端,并且因此(不像基于名称的虚拟主控那样), 没有兼容性问题。在一些实施例中,(网络)服务被认为是按配置的形式在配置管理数据库中管理的配置项。服务不一定运行在一个主机上。在此情况下,服务在其上运行的虚拟主机将是有帮助的。在其他实施例中,可以包括虚构(dummy)主机,如果没有主机与配置项相关联,则使用该虚构主机。而且在这些情况下,检查来自消息的主机值是否被包含在配置记录中。但是在此情况下,这是虚构主机值。
服务是联网的计算环境的基础。通常网络服务被安装在一个或多个服务器上以向客户端计算机提供共享的资源。网络服务被配置在企业LAN上以确保安全性和用户友好的操作。它们帮助LAN流畅高效地运行。企业LAN使用诸如DNS (域名系统)的网络服务以向IP和MAC地址给出名称(相比于记住像“201. 201. 201. 0. 18”的数字,人们更会记得像 "bluesky. myorg. com"的名称),并使用DHCP以确保网络上的每一个具有有效IP地址。

DHCP通过使对网络上的节点的IP分配自动化而减轻了管理负担。向网络添加或从网络移除节点不引起关于IP地址检索的问题;DHCP服务自动地处理它。认证服务器是另一网络服务,它们允许每个用户具有其自己的帐户,并且他们关于该帐户所做的每件事都被记录在其用户名之下。这意味着不仅用户对他们在网络上所做的任何事负责任,而且这增加了安全性,因为任何想要访问LAN的人必须具有注册的用户名和密码。确实,进行网络管理而没有用户帐户来跟踪用户活动(违法的或其他)或者没有 DHCP来自动进行对节点的IP分配、或者没有DNS来简化IP地址访问将是麻烦的。实现这几个网络服务使得对网络的复杂和耗时的管理自动化,并且因此对网络管理员减少了停机时间。常见的网络服务包括认证服务、目录服务、动态主机配置协议(DHCP)、DNS、电子邮件、打印和网络文件系统。但是,术语“服务”还可以在通常用在商业竞争中的“IT服务”的更抽象的意义上进行理解。IT服务是满足某种商业要求的设施或过程,其对于IT基础设施具有某种依赖性。这些IT服务通常由多层的技术、例如网络、操作系统、系统硬件、数据库和任务关键应用构成。IT服务监视从端到端的角度(通过并包括每个技术组件)持续地评估所有级别的 IT服务的可用性和性能。“所管理的主机”是其操作系统和应用由操作管理系统监视和更新的主机。配置管理是负责维持关于交付IT服务所需的配置项的信息(包括其关系)的过程。 配置管理的主要目标是在需要它时以及在需要它的地方通过向所有IT服务管理过程提供准确的数据来支援IT服务的交付。配置管理在配置项的整个寿命期中管理关于配置项的信息。配置项是为了交付IT 服务需要管理的任何组件。在一些实施例中,配置项是主机、盘驱动器、监视器、键盘、打印设备、鼠标、扫描仪、过程、服务、电子邮件服务器、雇员、建筑物或手册(manual)。关于每个配置项的信息被存储在配置管理数据库内的配置记录中。配置记录是包含以被分配给属性的属性值为形式的关于配置项的详细信息的数据集。换句话说,配置记录是对作为物理(路由器、盘驱动器等)或逻辑实体(过程、软件等)的配置项的文本描述。每个配置记录记录单个配置项的寿命期。配置记录被存储在配置管理数据库中。“配置管理数据库”是用于在被分配有配置记录的配置项的整个寿命期中管理配置记录的数据库。配置管理数据库存储配置项的属性及其分配的值以及配置项之间的关系。配置管理数据库通过配置管理维持,并由所有IT服务管理过程使用。“识别的属性值”是其语义已知的属性值,而未识别的属性值是其语义未知的属性值。换句话说,“未识别的属性值”仅仅是字符串,但是其含义对于操作管理系统而言完全未知或者其语义在操作管理系统内是已知的但是关于远程配置管理数据库中的配置记录的属性是未知的。这可能例如因为配置管理数据库使用与来自消息的属性名称不同的属性名称而发生,使得尽管它们意思相同,但是由于不同的命名,操作管理系统不能映射它们。换句话说,事故管理系统的识别方案不同于配置管理数据库的识别方案。术语“识别的主机值”表示关于主机的任何信息,特别是诸如“bluesky. myorg. com”的名称或者识别主机的数字或者任何其他标识符。操作管理系统知道这是主机的名称并且不是例如任何其他配置项、比如盘驱动器、路由器等的名称。在这些实施例中,识别的主机值是所谓的“必要的属性(must-attribute)”。这意味着消息的主机值必需与配置记录的主机值相同以便被认为是潜在目标的配置记录。在此使用的术语“检索”具有从储存器/数据库定位并读取数据的意思。其既不一定要指代在监视器上显示数据,也不一定要指代传输数据。应该提及,按照定义,术语“匹配”仅用于未识别的属性值和来自配置数据库的属性值之间的对应性,但不是针对主机值的对应性,因为主机值是“必要的属性”。在本发明的一些实施例中,识别的主机值与未识别的属性值形成对比,因为未识别的属性值是“可以的属性(can-attribute)”,这意味着在各属性之中进行搜索以找到匹配,但是为了选择配置记录不一定必须找到匹配。可以的属性之间越匹配,配置记录与来自消息的属性值、即与消息本身匹配的越好。这意味着很可能所选的配置记录与该消息涉及的、例如受故障影响的配置项有关。在配置记录中提供的另外的信息可以帮助操作者修复该故障。本发明的一些实施例涉及用于解决远程对象识别的问题的服务和过程。本发明的实施例用于转换来自 (操作中的)操作管理系统的消息信息,使得可以询问(来自配置管理数据库的)描述消息所涉及的配置项的配置记录。因为配置管理数据库和操作管理系统具有完全不同的识别配置项的方式,因此这不是微不足道的。在本发明的一些实施例中,模糊(fuzzy)关键字信息被转换成远程数据源(在此 配置管理数据库)的代理关键字,使得可以容易地检索配置记录。(词“模糊”在此不以“模糊逻辑”的特定意义使用,而是以“含糊不清”的更一般的意义使用)。此外,本发明的一些实施例能够将检索的配置记录排列等级,并且由此指示配置记录满足给定的关键字信息的程度。在一些实施例中,配置管理数据库中的配置记录的属性值与由来自事故管理系统 (其是操作管理系统的一部分)的引入消息提供的属性值相比较。当例如事故管理系统提供在IT基础设施的配置项之一中已经发生故障的消息时,经常希望自动得到关于受影响的配置项的更详细的信息。原则上,这样的详细信息在系统的配置管理数据库中是可获得的,但是问题是消息的数据结构与存储关于配置项的信息的配置记录的数据结构的不兼容。通常,根据实体-关系数据模型组织配置管理数据库,根据该实体-关系数据模型,实体具有属性的集合,该属性被分配了属性值,并且各实体通过定义的关系而连接。因为事故管理系统和配置管理数据库具有完全不同的描述相同配置项的方式(例如对于相同的配置项,它们使用不同的属性名),所以必须提供映射功能性以能够从配置管理数据库中检索与在该消息中涉及的配置项对应的配置记录。在一些实施例中,配置管理数据库中的配置记录的所有属性值与引入消息提供的所有属性值相比较。因为这是相当耗时的操作,所以在其他实施例中,预先提供了特殊的索引结构(预处理)以迅速选择包含来自该消息的特定属性值的配置记录。在一些实施例中,该特殊的索引结构是哈希表,其得到属性值作为输入,并输出具有该属性值的配置记录的集合。在计算机科学中,哈希表或哈希图是将关键字与值、在此是属性值相关联的数据结构。其高效支持的主要操作是查找给定关键字(在此是属性值),寻找包含该属性值的对应配置记录。其通过使用哈希函数将关键字变换成哈希值(即被用作阵列中的索引以定位各值应该在的期望位置的数字)而工作。通常通过求模(modulo)将该数字转换成索引,或者有时在阵列尺寸是2的幂的情况下使用位屏蔽。在其他实施例中,提供记分函数,其将所有配置记录排列等级,并且由此指示它们匹配给定消息的程度。在一些实施例中,事故管理系统(例如监视系统)是操作管理服务器的一部分,并且包括位于主机设备上并向操作管理系统发送关于主机及其配置项的状态的信息的代理。 代理经由诸如SNMP (简单网络管理协议)的管理协议与操作管理系统通信。在一些实施例中,通过排列(permute)未识别的属性值并将每个排列与检索的配置记录的属性值相比较来确定检索的配置记录与消息之间的匹配的数量,并且匹配的数量与具有最多一致性的排列有关。抽象地说,例如,消息的未识别的属性值是{A,C, D},并且检索的配置记录之一的属性值是{A,B, C},以下排列是
a)A-A, B-C, C-D => 1 个匹配
b)A-A, B-D, C-C =>2 个匹配
c)A-C, B-A, C-D =>0 个匹配
d)A-C, B-D, C-A =>0 个匹配
e)A-D, B-A, C-C => 1 个匹配
f)A-D, B-C, C-A=>0 个匹配。对于此配置记录,匹配的数量是2,因为在情况b)中,A和C可能已经匹配。对其他检索的配置记录(=具有相同主机值的配置记录)执行相同的过程。最终,返回具有最高得分值的配置记录。在一些实施例中,操作管理系统包括以下子系统的一个或多个事故管理系统、服务水平管理系统、资产管理系统和发现系统,其中指示事件的消息可能与任意子系统相关并且与该系统的状态有关。在一些实施例中,从消息中提取未识别的属性值和识别的主机值。这可以通过例如基于正则表达式的串匹配过程来进行。在一些实施例中,得分值指示匹配的数量。在其他实施例中,更专门化的配置记录获得更高的得分值,并且对于该专门化的度量是在配置管理数据库中的包含层级内配置记录距其母体的距离。配置管理数据库中的包含层级表示哪些配置项逻辑地包含于另一配置项中。在一些实施例中,通过将匹配的数量和距母项的距离的十分之一(高达0.9的最大值)相加来获得得分值。这意味着,距母记录的十或更多的距离仅对得分值贡献0. 9的值。如果没有找到匹配,一些实施例涉及后退方案(fallback-solution)。在这些情况下,返回主机的配置记录。以下将在图4b和图6中说明后退方案。在其他实施例中,使用哈希表选择配置记录。在一些实施例中,代理运行在主机上以向操作管理系统提供关于主机的状态的信息。在其他实施例中,配置管理数据库和配置项符合ITIL。信息技术基础设施库 (ITIL)是用于管理信息技术(IT)基础设施、开发和操作的概念和技术的集合。ITIL以一系列书籍出版,其每个覆盖IT管理主题。ITIL给出了对许多重要的IT实践的详细描述,所述IT实践具有可以被调整用于任何IT组织的全面的检查表、任务和过程。具有用于执行所述的方法的程序代码的计算机程序产品的一些实施例包括能够存储或编码程序代码的任何机器可读介质。术语“机器可读介质”因而应该被理解为包括例如固态存储器和可移除以及不可移除的光学和磁存储介质。在其他实施例中,计算机程序产品采取包括程序代码的表示的传播信号的形式,这正日益变为分发软件的常用方式。信号例如被携带在例如经过铜质电缆或通过空气传输的电磁波上,或者被携带在通过光纤传输的光波上。程序代码可以是机器代码或可以被转换成机器代码的另一代码,比如多用途编程语言的源代码,所述编程语言例如c、c++、Java、C#等。计算机系统的实施例可以是商业上可获得的编程有程序代码的通用计算机。图1 具有配置管理数据库的所管理的IT基础设施。现在返回图1,例示了一种IT基础设施,其包括七个主机设备(1. 1-1. 7)、操作管理服务器2以及配置管理数据库5,该配置管理数据库5包含配置记录(CR) 6,该配置记录6描述IT基础设施的配置项。主机设备1通过诸如路由器、交换机、集线器等的互连设备(4. 1-4. 4)互连,以提供IT网络。(在此例子中,互连设备4不被认为是主机,但是在其他例子中,它们可以被认为是主机,尤其是如果它们具有IP地址。)操作管理服务器2也是 IT网络的一部分并且管理主机设备1。为此,提供发现应用11,其从驻留于主机1上的代理 (3. 1-3. 7)获取信息。发现应用11和代理3经由SNMP (简单网络管理协议)通信。简单网络管理协议形成网际协议组的一部分,并在网络管理系统中用来针对为管理关注提供充足根据的条件监视网络附连设备。其由用于网络管理的标准的集合组成,包括应用层协议、数据库方案和数据对象集合。SNMP以所管理的系统上的变量的形式显露管理数据,所述变量描述系统配置。然后可以通过管理应用来询问(以及有时设置)这些变量。操作管理服务器2还包括诸如事故管理系统7的一些管理子系统/应用。事故是以下的任意事件其不是服务的标准操作的一部分,并导致或可能导致该服务的中断或该服务的质量的降低。所述的ITIL目标是以对商业或用户的最小可能影响、以成本合算的代价尽可能快地恢复正常操作。事故管理系统7的第一目标是尽可能快地恢复正常服务操作并使对商业操作的影响最小化,由此确保服务质量和可用性的最佳可能水平被维持。在此将“正常服务操作”定义为在服务水平协定(SLA)内的服务操作。此外,提供了服务水平管理系统8,其监视对服务水平协定的符合性。服务水平协定是两方之间正式协商的协定。其是存在于消费者及其服务提供者之间、或各服务提供者之间的合同。其记录关于服务、优先级、职责、保证等等——统称为服务水平——的共同理解。例如,其可以指定可用性、适用性、性能、操作或像是账单以及甚至在违反服务水平协定的情况下的处罚的其他服务属性的水平。来自服务水平管理系统8的消息可能涉及这样的事件服务水平协定很可能被违反,除非不再次使任何特定主机开始操作。最后,提供了资产管理系统9。IT资产管理是为了维持商业服务要求、总成本、预算可预测性以及合同和规章符合性之间的最佳平衡的目的而在其整个寿命期内管理财务、合同和IT资产的使用的学科。传统的资产管理活动包括存货、软件许可、销售商、采购、租赁、担保、成本会计、退休和处置的管理。事故管理系统7、服务水平管理系统8以及资产管理系统9全部依赖于由发现应用11传递的数据,发现应用11例如能够基于来自驻留于所管理的主机1上的管理信息库的信息导出——至少部分地导出一IT网络的拓扑。这四个典型的管理系统还连接到映射器12,映射器12提供检索配置管理数据库中的与所提供的消息很好地匹配的配置记录6 (即包含关于受消息涉及的事件影响的配置项的数据的配置记录6)的功能性。图2 配置管理数据库内的配置记录的树结构。图2示意性例示根据本发明的一个实施例的企业中的配置项。因为企业想要管理的配置项的数量可能极大并复杂,所以仅示出了整个结构的选萃。配置项“企业”包括两个 “数据中心”,其每个由几个网络构成。IT网络包括主机设备和互连设备。主机设备又包含软件组件、硬件组件和过程。在该例子中,软件组件是操作系统、应用、比如字处理程序。硬件组件是盘驱动器、监视器、打印设备等。该例示示出了与企业有关的配置管理数据库所特有的树结构。图3 计算配置记录的得分值和警告消息。图3在其上部分示出来自检测到Apache服务器(配置项)不再响应的事故管理系统7的警告消息20。现在有用的是得到关于Apache服务器的进一步消息以能够补救该问题。图3的下部分中的配置记录21涉及此服务器并且可以由配置项ID "782937957" 识别。但是,基于来自代理的信息产生消息的事故管理系统7不知道该配置项ID,并且因此该ID没有用。尽管该消息具有被分配给各属性的属性值,但是配置管理数据库5不能解释它们,因为警告消息20的属性采取与配置管理数据库5的配置记录的格式不同的格式。例如,警告消息20的属性“服务器类型”与配置记录的“服务器软件”表示的含义相同。但是, 因为使用了不同的属性名称,事故管理服务器2不能在配置管理数据库5中找到与不再响应的服务器(配置项)有关的配置记录。不过,有可能通过进一步将属性值“服务器类型”和 “主机”相比较来识别配置记录。如果假设每个主机仅可能存在一个Apache实例,这将已经唯一地识别Apache服务器的配置记录。否则,另外的端口信息将足够用于询问相关的配置记录。但是,需要定义必需匹配的所谓的“必要的属性”。本发明基于认识到在配置管理数据库的情况下,“主机”是这种必要的属性,因为可能存在配置项的多个实例但是每个主机仅一个实例。这是IT网络特有的,使得对于IT网络的必要的属性而言主机是理想属性。因此,映射器12已知的警告消息的仅有属性是主机值“httpserverOl. hp. com”。映射器12能够识别该属性值。在配置管理数据库5中,映射器12搜索包含相同主机值的所有配置记录。 映射器12找到例如配置记录21,因为其具有相同的主机值“httpserverOl. hp. com”。然后映射器12将警告消息20的未识别的属性值与配置记录21的属性值相比较。这可以通过排列警告消息20的所有未识别的属性值并将每个排列与配置记录21的属性值相比较而进行,或者更高效地,通过特殊的索引结构来进行。由此,可以确定警告消息20的“端口 =80” 与配置记录21的“端口 =80”相匹配。在此情况下,属性名称恰好相同,但这不是必需的,因为映射过程独立于属性名称而工作。在警告消息20的“服务器类型=Apache"和配置记录21的“服务器软件=Apache”之间找到另一匹配,因为两者具有相同的属性值“Apache”。因此认为服务器软件和服务器类型是表示相同含义的两个属性,即具有相同的语义。但是哪些属性相互匹配不重要。在此例子中,已经找到两个匹配。因此,配置项21得到得分值2。 现在,检查全部具有主机值“httpserverOl.hp. com”的另外的配置项,并对其每个计算得分值。总共地,这产生定义了配置记录匹配于给定的属性值集合的程度的记分函数。在该例子中,该函数简单地是与特定配置记录相匹配的属性值的数量。属性匹配越多就越好。具有最高得分的配置记录将被选取为目标配置记录。得分值指示配置记录与给定的属性值集合匹配的程度。尽管此方法不总是保证正确的匹配,但是其以很高的概率匹配配置记录。图4 配置记录和事件消息之间的匹配。在一方面,图如例示每个具有不同属性的六个不同的配置记录(#1到#6)。配置记录#1到#5具有“bluesky. myorg. com"作为主机值(主机名称),并且配置记录#6具有 “(空)”作为主机值。这些主机值由映射器12通过属性“被主控在(hosted on)”而被如此识别。另一方面,图4b例示将被映射到图如的配置记录的五个不同的事件消息(1-5)。 在此例子中,通过得分值1奖励每个匹配。首先,从事件消息中提取属性值(关键词)。属性值是与事件有关的关键词。第一消息的属性值是{Network,DHCPD, bluesky. myorg. com},由此“bluesky. myorg. com”是主机值(必要的属性),并且因此是识别的属性值。在此例子中,通过字符“_” 识别主机值,因为主机值总是跟在这些字符之后。因此可以通过正则表达式提取主机值。属性值“Network (网络)”和“DHCPD”是未识别的属性值,因为映射器12并不先验地知道在配置管理数据库5的配置记录6中是否存在对应的属性,以及如果存在,其名称是什么。第一事件消息将被映射到配置记录#4或#5。这两个配置记录得到得分值1,因为配置记录M 具有一个匹配(“Network”),并且配置记录#5也具有一个匹配(“DHCPD”)。第二事件消息包含属性值{Oracle,Database (数据库),OpenView, bluesky. myorg. com}。在配置管理数据库5中,检索包含主机值“bluesky. myorg. com”的所有配置记录6,这是针对配置记录#1到#5的情况。对于所有这些配置记录6,确定匹配的数量。计分函数确定配置记录#1的得分值为0,因为(除了主机值之外)没有属性值相匹配。对于配置记录#2,确定得分值为2。对配置记录#3计算出得分值为1,因为仅属性值“Openview” 相匹配。配置记录#4得到得分值0。配置记录#5也得到得分值0。最后,第二事件消息被映射到配置记录#2。第三事件消息包含属性值{Oracle, Database, OpenView, Tablespace, bluesky. myorg. com}。当与配置记录1相比较时,找到0个匹配,而当将各属性值与配置记录#2的属性值相比较时,找到两个匹配。与配置记录#3的比较也得到两个匹配,而与配置记录#4、#5、和#6的比较得到0个匹配。记分函数的进一步改进允许解决配置记录#2和配置记录#3之间的冲突(相同的匹配数量)。第四事件消息包含属性值{SomeStrangeftOcess (某奇怪过程)}。关于配置记录 #1-#5的任意一个不能找到匹配。如果没有针对配置记录的真正良好的匹配,则选择相关的配置记录作为后退项仍是可以的。在此例子中,已经定义了与配置记录有关的主机被返回作为目标配置记录。正常地,使消息与主机有关比与任何无关更好。
第五事件消息包含属性值{TimeAndLabor,HR},而(空)被认为是主机值。具有此主机值的仅有配置记录是配置记录#6,使得第五事件消息被映射到配置记录#6。不需要确定匹配,因为已经确定了仅有的一个配置记录。因此,映射器12试图根据可用信息(=消息的属性值)得出结论,配置管理数据库中的哪个配置记录可能最符合。在其之后的基本思想是将消息的属性值与配置记录的属性值相比较。图5:索引结构。图5涉及帮助高效地寻找匹配的索引结构30。对于每个属性值,包含对应的属性值的配置管理数据库5的所有配置记录6被列出。当接收到消息时,提取属性值,并且索引结构用于寻找对应的配置记录。查看图4b的第二事件消息,属性值“bluesky. myorg. com” (必要的属性)和“OpenVieWOracledb”都指向配置记录#2,从而该配置记录获得得分值 4 (对于主机值的2,对于“OpenView”的1以及对于“Oracledb”的1),这是比对于其余的配置记录更高的得分值。因此,配置记录#2被返回作为与图4b的第二事件消息最佳匹配的配置记录。图6:改进的记分函数。图6涉及改进的记分函数,其解决具有相同匹配数量的配置记录。对图4b的第一事件消息以及图如的配置记录#3的检查表明获得得分值2,因为两者具有相同的主机值 "bluesky. myorg. com”。添加进一步的得分值1,因为配置记录#3是主机的记录。通过添加值1,获得上述后退方案。如果在所检索的(即主机值相同的)所有配置记录中,没有进一步的属性相匹配,则所有都具有得分值2。因此,添加值1,从而主机的配置记录得到得分值 3,并因此被返回作为最佳匹配的配置记录。将配置记录#4与第一事件消息相比较导致主机值的得分值2加上对于“Network”属性值的2。此外,根据包含关系的主机和“Network” 之间的距离被计入考虑。在此例子中,距离是1,从而0. 1的距离值被添加到得分值4,这导致总得分值4. 1。关于距主机的距离为2的配置记录#5,0. 2被添加到得分值4,从而配置记录#5的总得分值是4. 2。该改进的记分函数使得能够在具有相同的匹配数量的配置记录之间进行区分,因为更远离主机记录的配置记录接收更高的得分值。但是,存在对距离值的限制,因为添加的最大距离值是0. 9。如果主机记录和要被记分的配置记录之间的距离是例如12,则尽管可能预期要添加值1.2,但向得分值添加距离值0.9。图7 例示配置记录的检索的流程图。图7是例示在配置管理数据库5中检索配置记录6的流程图。在30,提供包括与事件有关的未识别的属性值和识别的主机值的集合的消息。在31,从消息中提取未识别的属性值和识别的主机值。在32,在配置管理数据库中检索与识别的主机有关的一个或多个配置记录。在33,对于每个检索的配置记录,进行搜索以寻找未识别的属性值和检索的配置记录的属性值之间的匹配。在34,基于匹配的数量确定检索的配置记录的得分值。在35, 返回具有最高得分值的配置记录作为目标记录。图8 计算机系统的图示表示。图8是提供包括映射器12的操作管理服务器2的功能性并因此被表示为“操作管理计算机系统2”的计算机系统的图示表示。在操作管理计算机系统2内,可以执行用于使该计算机系统进行在此所讨论的任意方法的指令集49。该操作管理计算机系统包括处理器40、主存储器41和网络接口设备42,它们经由总线43相互通信。可选地,其还可以包括静态存储器44和盘驱动器单元45。视频显示器46、字母数字输入设备47和光标控制设备48 可以形成操作管理用户接口。网络接口设备42将操作管理计算机系统2连接到驻留于所管理的IT基础设施的主机上的代理3。体现在此所述的任一或所有方法的指令集49 (即软件)完全或至少部分地驻留于机器可读介质、例如主存储器41和/或处理器40之中或之上。软件49驻留于其上的机器可读介质还可以是作为盘驱动器单元45的一部分的数据载体50 (例如不可移除磁硬盘或光或磁可移除盘)。软件49还可以通过网络接口设备42经由因特网和IT网络作为传播的信号51而发送或接收。因此,上述本发明的实施例允许将消息映射到配置管理数据库中的配置记录,即使二者使用不兼容的识别方案或者当消息中仅存在可以用于查找配置管理数据库中的数据的很少的信息时。换句话说,可以获得消息信息到配置记录的精确映射(在至少90%的情况下),而无需关于配置管理数据库的详细知识,尤其是无需关于其逻辑结构的知识。本发明允许以最小的变化将要实施的系统集成到现有系统。本说明书中所提到的所有出版物和现有系统通过参考合并于此。尽管在此已经描述了根据本发明的教导而构造的某些方法和产品,但是本专利的覆盖范围不限于此。相反,本专利覆盖字面上或者在等同原则之下公平地落在所附权利要求的范围内的本发明的教导的所有实施例。
权利要求
1.一种在与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录的方法,配置记录具有属性和分配的属性值,该IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统来管理,该方法包括提供包括未识别的属性值和识别的主机值的集合的消息,从该配置管理数据库中检索包含识别的主机值的一个或多个配置记录,以及依据未识别的属性值和检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。
2.如权利要求1的方法,其中操作管理系统包括以下子系统的一个或多个事故管理系统、服务水平管理系统、资产管理系统和发现系统,并且其中指示事件的消息可能与任一子系统有关并与该系统的状态相关。
3.如权利要求1的方法,还包括基于匹配的数量确定检索的配置记录的得分值。
4.如权利要求1的方法,还包括从该消息提取未识别的属性值和识别的主机值。
5.如权利要求1的方法,其中通过排列未识别的属性值并将每个排列与检索的配置记录的属性值相比较来确定检索的配置记录和消息之间的匹配的数量,并且匹配的数量与具有最多一致性的排列相关。
6.如权利要求3的方法,其中得分值指示匹配的数量。
7.如权利要求3的方法,其中更专门化的配置记录获得更高的得分值,并且对于专门化的度量是在配置管理数据库中的包含层级内配置记录距其母记录的距离。
8.如权利要求3的方法,其中通过将匹配的数量和到母记录的距离的十分之一相加获得得分值,该距离的十分之一高达0. 9的最大值。
9.如权利要求3的方法,其中如果没有找到匹配,则返回主机的配置记录。
10.如权利要求1的方法,其中配置项是主机、盘驱动器、监视器、键盘、打印设备、鼠标、扫描仪、过程、服务、电子邮件服务器、雇员、建筑物或手册。
11.如权利要求1的方法,其中使用哈希表选择配置记录。
12.如权利要求1的方法,其中代理运行在主机上以向操作管理系统提供关于主机的状态的信息。
13.一种计算机系统,用于从与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录,配置记录具有属性和分配的属性值,该IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统来管理,该计算机系统被编程为提供包括未识别的属性值和识别的主机值的集合的消息,从该配置管理数据库中检索包含识别的主机值的一个或多个配置记录,以及依据未识别的属性值和检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。
14.一种计算机程序产品,其采取在其上存储程序代码的机器可读介质的形式或者包括程序代码的表示的传播信号的形式,其中该程序代码被布置为当在计算机系统上执行时,实施从与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录的方法,配置记录具有属性和分配的属性值,该IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统来管理,该方法包括提供包括未识别的属性值和识别的主机值的集合的消息, 从该配置管理数据库中检索包含识别的主机值的一个或多个配置记录,以及依据未识别的属性值和检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。
15.如权利要求14的计算机程序产品,其中该操作管理系统包括以下子系统的一个或多个事故管理系统、服务水平管理系统、资产管理系统和发现系统,并且其中指示事件的消息可能与任一子系统有关并与该系统的状态相关。
16.如权利要求14的计算机程序产品,该方法还包括基于匹配的数量确定检索的配置记录的得分值。
17.如权利要求14的计算机程序产品,该方法还包括从该消息提取未识别的属性值和识别的主机值。
18.如权利要求16的计算机程序产品,其中通过排列未识别的属性值并将每个排列与检索的配置记录的属性值相比较来确定检索的配置记录和消息之间的匹配的数量,并且匹配的数量与具有最多一致性的排列相关。
19.如权利要求16的计算机程序产品,其中得分值指示匹配的数量。
20.如权利要求16的计算机程序产品,其中更专门化的配置记录获得更高的得分值, 并且对于专门化的度量是在配置管理数据库中的包含层级内配置记录距其母记录的距离。
21.如权利要求16的计算机程序产品,其中通过将匹配的数量和到母记录的距离的十分之一相加获得得分值,该距离的十分之一高达0. 9的最大值。
22.如权利要求16的计算机程序产品,其中如果没有找到匹配,则返回主机的配置记录。
23.如权利要求14的计算机程序产品,其中配置项是主机、盘驱动器、监视器、键盘、 打印设备、鼠标、扫描仪、过程、服务、电子邮件服务器、雇员、建筑物或手册。
24.如权利要求14的计算机程序产品,其中使用哈希表选择配置记录。
25.如权利要求14的计算机程序产品,其中代理运行在主机上以向操作管理系统提供关于主机的状态的信息。
全文摘要
提供了从与包括主机设备的IT基础设施有关的配置管理数据库中检索配置记录的方法,配置记录具有属性和分配的属性值,该IT基础设施由提供指示IT基础设施中的事件的消息的操作管理系统来管理。该方法包括提供包括未识别的属性值和识别的主机值的集合的消息,从该配置管理数据库中检索包含识别的主机值的一个或多个配置记录,以及依据未识别的属性值和检索的配置记录的属性值之间的匹配的数量,从该一个或多个检索的配置记录中选择配置记录。
文档编号H04L12/24GK102246460SQ200880132346
公开日2011年11月16日 申请日期2008年10月15日 优先权日2008年10月15日
发明者施梅尔普丰 J. 申请人:惠普开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1