用于地理映射的对资源确认和排序的方法与装置的制作方法

文档序号:6398350阅读:173来源:国知局
专利名称:用于地理映射的对资源确认和排序的方法与装置的制作方法
技术领域
本发明一般涉及计算机资源的管理。本发明尤其涉及物理上分散的资源池(resource pool)的资源的配置和可访问性。
背景技术
服务于诸如某一大公司的销售制造业务的企业运营的现代计算机系统,不能容忍长期的不可用性。传统上,灾难恢复一直集中在非意料之中的停机时间,例如由于停电、自然灾害、网站灾难、系统硬件或软件错误、应用程序故障和故意的破坏行为。通常,非意料之中的停机时间会导致计算机资源的不可用性,因此可以把来自远程恢复网点的备份系统用于恢复操作,业务中断可能达数小时,甚至几天。
现代电子商务要求连续的系统可用性和免受预定停机时间的影响。在一个系统(例如一个服务器)的预定的停机或断电期间,有意使用户(例如客户机)不能用系统。这些预定的停机时间引起了系统操作的混乱,而且也难以适应。预定的停机时间/断电的例子包括新操作系统安装和应用软件的发布;系统硬件的升级、添加、去除、以及维护;系统备份;网站维护;以及程序的应用的临时调整(PTF)。一个具有“连续可用性”的系统被定义为一个不具有预定或非预定的断电的系统。
一种用于改进和加强系统可用性的方法利用了一个群集系统。一个群集为一组计算机系统结点,这一组计算机系统结点位于一个单一网点或分布于多个网点,它们全都协同运作并相互合作,以提供一个单一的、统一的计算能力。群集系统为计算机系统,例如数据库服务器或应用服务器,提供了故障恢复(failover)和切换能力。如果发生系统停机或网点丢失,则可以把提供在一个群集主服务器系统上的功能切换(或故障恢复)到一个或多个包含资源的一个当前拷贝(复制品)的指定的备份系统。对于非预定的停机,故障恢复可以是自动的。至于预定的停机,作为预定停机过程的一部分,可以自动地或手工地启动一个切换。
一个作为群集的一个子集,并且拥有一些成员的群集资源组通常把这些成员之一定义为该群集资源组的主成员。主成员是该组的主访问点,并寄宿了该组当前所使用的资源。把这一组内的被适当加以配置以能够承担主成员的功能的其它成员,即使其资源被适当加以配置以承担主成员的功能的结点,称为备份成员。在一个例子中,备份成员寄宿了冗余的资源。在另一个例子中,一个备份成员可以拥有对通常由主成员所寄宿的主资源的访问权。如果主成员发生故障,则一个备份成员承担主成员的角色。当一个备份成员承担主成员的角色时,它或者接管先前主成员的资源,或者把其冗余的资源改变成主资源。
如果故障恢复或切换,可以作为服务器操作系统的一部分并运行在所有的系统上的群集资源服务(CRS),提供一个从主系统到备份系统的切换。这切换导致对最终用户或运行在一个服务器系统上的应用程序的最小影响。把数据请求自动地重新路由到备份(即新主)系统。群集资源服务还提供把系统自动重新引入或重新加入群集,并恢复重新加入的系统的操作能力的装置。
用于进一步提高和增强系统可用性的另一种方法,涉及地理上分散的计算系统和计算机资源,例如数据存储单元。在这样一个地理上分散的计算系统中,不同的地理网点拥有一个或多个能够控制或寄宿也位于该网点的计算机资源的计算机子系统,即结点。把具有计算系统结点和资源的多个地理位置中的每一个称为一个“网点”。通常,把包含一个地理上分散的计算系统的某些部分的多个网点与一个支持所有网点和位于这些网点的计算机结点之间的数据交换的数据通信系统互相连接。一个为地理上分散的计算机系统的一部分的特定的计算结点,通常拥有对同处于该结点的资源,例如数据存储设备、打印机、以及其它共享的外部设备的直接访问权。这些系统通常维护着包含主资源的一个复本,诸如数据存储单元的冗余的资源。如果需要的话,通常可以把这些冗余的资源快速地配置成主资源。地理上分散的计算系统通过把资源映射数据从主网点传递到其它网点来维持冗余的资源。在一个组中维持冗余的资源,避免了该组的操作的单点故障。
能够把数据存储在与一个或多个服务器系统相连的磁盘池(disk pool)中。一个磁盘池为一组磁盘单元,例如一个磁盘单元的一个立柜,以及一个独立磁盘的冗余阵列(RAID)。通过把含有该磁盘池的磁盘单元的硬件实体的所有权从主系统切换到一个备份系统,把一个磁盘池从主系统切换到该备份系统。然而,必须把磁盘池中的磁盘单元物理上位于正确的硬件实体(例如,一个主和备份系统可以访问的立柜)中,而且必须遵守许多配置和硬件布局规则。当为磁盘池选择磁盘单元时,以及当为访问该磁盘池选择主和备份系统时,用户必须遵守这些配置和硬件布局规则。否则,当试图进行切换时或当发生故障恢复时,磁盘池可能不可用于主系统与/或备份系统。当改变硬件配置时,用户也必须遵守这些规则。用户有责任了解和遵守这些配置和硬件布局规则,以正确地配置磁盘单元和群集系统。然而,由于配置和硬件布局规则的复杂性,用户可能不得不进入一个试验和错误的状态,当出现切换时,导致不可用的磁盘单元。
在向一个服务器系统分配资源,例如磁盘池,的过程中,地理上分布式的计算系统引入了一个附加条件。通常,可以把诸如磁盘池这样的资源分配给位于同一物理网点的计算机系统。例如,位于一个网点的计算机系统通常不能寄宿位于另一个网点的磁盘池。传统的计算机资源组一般情况下要求把所有的结点和资源并置,以致在该计算机资源组中的所有结点都可以拥有对分配给该计算机资源组的所有资源的访问权。因而限制了计算机资源组的灵活性。
因此,需要这样一种系统和方法当配置一个磁盘池时,能够确保一组磁盘(即一个磁盘池,也叫做ASP)对于同一网点的一个系统是可访问的。而且,具有这样一种需求,要求保证选择有效的磁盘单元用于一个磁盘池中的配置。

发明内容
通常,本发明的实施例,例如,为了增强整个计算系统组的可用性,提供了用于维持处于地理上分散的位置的冗余资源的计算系统组的系统与方法,。在每一个网点维持的诸如磁盘池中的磁盘单元的资源,能够在一个网点的一个主系统和一个或多个备份系统之间加以切换。把每一个独立的地理位置叫做一个“网点”。在一个群集中,能够对主系统、任何一个或多个备份系统、位于一个给定网点的一个或多个资源进行配置,以在该网点提供改进的可用性。把一个群集定义为一组位于一个网点的或在多个网点之间分布的系统或结点,其中多个结点作为一个单一的系统一起运作。把群集中的每一个计算机系统称为一个群集结点。计算系统组中的每一个网点能够拥有一个或多个计算系统或结点,而且示范性实施例的操作允许一个网点仅用一个结点操作。能够把计算系统组中的每一个网点配置成一个包含用于当前操作的主资源的生产网点,或配置成一个包含映射位于生产网点的主资源的冗余资源的映射网点。本发明的示范性实施例有利于对一个网点处的资源进行正确的确认和排序,以供该网点处的一个群集或计算机结点所使用。提供了一组接口,用于在一个网点的群集创建、添加、改变、以及删除结点。
在一个实施例中,提供了一种机制,用于为一个指定的磁盘也确认和排序位于同一网点中的一个或多个磁盘单元。在另一个实施例中,为一个在其被配置成用于访问磁盘池的一个主结点或备份结点之前的结点提供一种机制,用于为一个结点确认在磁盘池中的磁盘单元的可访问性。在又一个实施例中,提供了一种机制,用于当该网点处的多个结点的群集开始准备激活位于该网点的主系统和备份系统之间的切换时,确认在一个可切换磁盘池中的磁盘单元。
简而言之,根据本发明,提供一种用于管理一个系统中的资源的系统、方法、以及信号承载介质,包括配置至少一个供一个系统所使用的资源。该系统是与一个包含该资源的一个网点相关联的。该方法还包括为一个资源池确认至少一个资源的可用性。所述确认包括确定系统对资源的可访问性,并验证资源是位于该网点。该方法还包括根据确认(也可以包括排序)为资源池选择至少一个资源的至少一个。仅检查同一个网点的系统,以确保它们拥有对该网点的资源的访问权,而且系统不要求对在其它网点的资源的访问。
在本发明的另一个方面,一个系统拥有一个与一个网点相关联的主系统,以及一个连接于主系统的资源池。该系统还拥有一个处理器,其被配置用于为资源池确认至少一个资源的可用性,并且为资源池选择至少一个有效的资源。至少部分地基于位于该网点的至少一个资源来确认可用性。
从以下对本发明的优选实施例的更具体的描述,本发明前述的及其它特性和优点将会变得十分明显,如附图中所说明的。


在这一说明的结论处的权利要求中特别地指出和清楚地要求了被视为本发明的主题内容。从以下结合附图的详细描述,本发明的上述内容及其它特性和优点将会变得十分明显。另外,参考号的最左侧的数字标识的附图是参考号第一次在其中出现的附图。
图1是说明了本发明的一个示范性实施例的整个系统体系结构的一个计算系统组。
图2是根据本发明的一个示范性实施例,描述了图1中所示的组的一个组成员的一个框图。
图3是一个根据本发明的一个示范性实施例,选择一或多个DASD的用于一个ASP的处理流程图。
图4是根据本发明的一个示范性实施例的软件类以及每一个软件类的职责的示范性设计。
图5是一个根据本发明的一个示范性实施例,用于一个示范性有效性检查器的一个有效性检查器的面向对象的设计。
图6是一个根据本发明的一个示范性实施例,对所选择的ASP处理流程图进行确认和排序的示范性非配置DASD。
图7是一个根据本发明的一个示范性实施例的用于对群集操作的IASP的可切换性进行检查的软件对象的示范性集合。
图8是一个根据本发明的一个示范性实施例,用于图1的网点的结点和资源配置。
图9是根据本发明的一个示范性实施例的一个初始配置处理流程图。
具体实施例方式
计算系统组现在更详细地参照附图,其中,相同的数字表示贯穿各个视图的相同部分。图1中给出了说明本发明的一个示范性实施例的整个系统体系结构的一个计算系统组100。示范性计算系统组100示出了两个网点,网点A102和网点B104。本发明的实施例可使用任何数目的网点计算系统组进行操作,从1个到多到有实效的无论多少个。把在这一实例中所使用的网点定义为对位于该网点物理位置中的资源拥有访问权的计算机结点组。例如网点A 102中的结点,即结点A 110和结点B 108,拥有对资源池A 130,即资源A 116、资源B 118和资源Z 120中的资源的访问权。相类似网点B 104中的结点,即结点C 112和结点D 114拥有对资源池B 132,即资源C 121、资源D 122和资源Y 124中的资源的访问权。除了这些可以被在相关联的结点处的多个结点访问的这些资源外,网点A 102还包括仅可以被处于该网点的结点A 110访问的资源的资源池E 140。在这一实例中,资源池E 140不能被结点B 108或位于网点B 104的结点访问。可以被位于该网点的多个结点访问的资源池能够被配置成可切换的资源池,以致于可以把寄宿了该资源的操作的结点切换到同一网点处的其它结点。
这一示范性实施例中的每一个网点都拥有一定数量的结点、把网点A 102示出为具有一个结点A 110和一个结点B 108。经由一个支持同一个网点中的一部分结点与不同网点中的一部分的结点之间的数据通信的数据通信网络106连接这些结点。
在这一实例中,去除了网点地理上的互相关系,并通过一个网点内的通信系统126使所述网点相互连接。网点内的通信系统126连接包含在每一网点中的通常较高速的数据通信网络106。本发明的这一示范性实施例利用了一个高速连接。本发明的各实施例利用了各种网点内的通信系统126,例如传统的WAN体系结构、陆上通信线、陆地和卫星无线链路和其它通信技术。本发明的实施例还与任何数目的具有类似互连的网点一起运作,以形成网点的所有结点之间的一个连续的通信网络。本发明的实施例还包括物理上互相接近的,但拥有不访问同一资源池中的资源的计算机结点的“网点”。物理上接近的网点能够共享一个单一的数据通信网络106,并且不包括一个独立的网点间的通信系统126。
包含在资源池中的资源,例如资源池A 130和资源池B 132包括由组内一个结点控制的数据存储设备、打印机和其它外部设备。在计算系统组100中,把一个结点或一个成员规定为该组的主成员。主组成员寄宿了该计算组的主资源,并作为访问点和寄宿了该组所管理的资源。
图8中说明了根据本发明的一个示范性实施例的网点A 102的一个结点和资源配置800。网点A 102的示范性结点和资源配置800包括结点A 110、结点B 108、作为磁盘单元的一个第一立柜的资源池A 130、以及作为磁盘单元的一个第二立柜的资源池E 140。可以利用结点A 110或结点B 108中的操作系统执行群集管理操作。作为选项,结点和资源配置800也可以包括一个群集管理计算机系统820,其可专门用于执行对结点和资源配置800的与配置、改变、维护和其它任务相关的操作。可以通过一个网络把群集管理计算机系统820连接到结点和资源配置800的其它部件,并且还可以包括一个计算机系统,例如以下图2中所描述的计算机系统200。
这一示范性实施例中的资源池A 130和资源池E 140,每一个均包括多个磁盘单元,例如多个直接访问存储磁盘(DASD)。这一示范性实施例的资源池A 130包括DASD 11 802、DASD 12 804、DASD 13 806以及DASD 14 808,可以建议把它们一起定义成一个独立辅助存储池(IASP)。资源池E 140包括DASD 21 810和DASD 22 812,可以建议把它们一起定义成一个独立辅助存储池(ASP)。把资源池A 130连接于结点A 110和结点B 108,从而可由结点A 110和结点B 108加以访问。把资源E仅连接于结点A 110,从而仅可以由结点A 110加以访问。在这一示范性实施例中,把结点A 110配置成资源池A 130的主结点,把结点B 108配置成网点A 102处的资源池A 130的备份结点(即当由于预定的或非预定的停机结点A 110变成不可用时,结点B 108变成资源池A 130的新的主结点)。
计算机结点和组成员图2中说明了一个描述根据本发明的一个实施例中的组100的一个组成员200的框图,在这一示范性实施例中,组成员200为一个一个计算机系统。这一示范性实施例的组成员200为一个IBM eServer iSeries服务器系统。任何适当配置的处理系统类似地能够为本发明的实施例所使用。计算机系统200拥有一个连接于主存204、海量存储器接口206、终端接口208以及网络接口210的处理器202。这些系统部件由系统总线212加以互连。海量存储器接口206用于把海量存储设备,例如DASD设备214,连接到计算机系统200。DASD设备的一个特定的类型为软盘驱动器,可以把其用于向软盘216存储数据和从软盘216读取数据。
主存204包含应用程序220、对象222、数据226、以及一个操作系统图象228。尽管将说明作为当前驻留在主存204中,但显然,不要求应用程序220、对象222、数据226以及操作系统228在所有时刻,甚至在同一时刻全部驻留在主存204中。计算机系统200利用了传统的虚拟寻址机制,以允许程序表现为好象它们拥有对一个大的、单一的存储实体的访问权,此处将所述存储实体称为计算机系统存储器,而不是拥有对多个、较小的存储实体的访问权,例如这样的存储实体为主存204和DASD设备214。
注意此处使用的术语“计算机系统存储器”,一般指计算机系统200的整个虚拟存储器。
操作系统228是一个合适的多任务操作系统,例如IBM OS/400操作系统。本发明的实施例能够使用任何其它合适的操作系统。操作系统228包括一个DASD管理用户接口程序230、一个DASD存储管理程序232、以及一个组用户接口程序234。本发明的实施例利用了允许操作系统228各部件的指令在计算机200中的任何处理器上执行诸如一个面向对象的框架机制的体系结构。
尽管仅说明了一个用于计算机200的CPU 202,但也可以同等有效地使用具有多个CPU的计算机系统。本发明的实施例并入了多个接口,每一个接口均包括独立的、全编程的微处理器,用于从CPU 202卸载处理。终端接口208用于把一个或多个终端218直接连接到计算机系统200。这些终端218,可以为非智能的或全编程的工作站,用于允许系统管理员和用户与计算机系统200进行通信。
网络接口210用于把其它计算机系统或群集资源组成员,例如站A 240和站B 240,连接于计算机系统200。本发明可与任何包括现代模拟与/或数字技术的数据通信连接一起运作,或经由一个未来网络机制运作。
尽管在一个功能齐全的计算机系统范围里描述了本发明的示范性实施例,但这一领域的熟练技术人员将会理解,这些实施例也能够作为一种程序产品通过软盘,例如软盘216、CD-ROM、或其它形式的可记录介质,或通过任何类型的电子传输机制进行分配。
本发明的实施例包括一个操作系统228,所述操作系统228包括一个DASD管理用户接口程序230,该接口程序执行与配置、操作以及其它管理功能相关的功能,其中包括用于为一个辅助存储池(ASP)选择一个或多个DASD的功能。把一个ASP定义为一组磁盘单元。一个独立的辅助存储池(IASP)为独立于一个系统的一组磁盘单元。如果磁盘单元是可切换的,并遵循配置和布局规则,则可以在系统之间切换IASP。DASD管理用户接口程序230能够与DASD存储管理(DSM)程序232进行通信,DASD存储管理程序232是对管理磁盘单元提供了内部支持的操作系统228的一个部件。
处理流和示范性软件设计图3中说明了根据本发明的一个示范性实施例,为一个ASP选择一个或多个DASD的处理流程图300。在这一示范性实施例中,可以把方法300理解为说明了DASD管理用户接口程序230的一部分,这一部分与涉及为一个连接于一个位于一个网点的结点的ASP选择一个或多个DASD相关。方法300开始于步骤310,并在步骤320等待用户选择为其配置的一个或多个DASD的一个ASP。用户可以选择一个现存的ASP,也可以选择一个新的ASP。在一个实施例中,可以并行地选择和处理多个DASD和ASP。一旦用户已经输入ASP选择,则在步骤330调用一个有效性检查器,以在该结点的网点提供所有非配置DASD的有效性和排序结果。以下描述一个示范性有效性检查器的详细情况。在步骤340,把有效性检查器的结果显示给用户,这些结果包括为所选择的ASP的每一个非配置DASD的有效性和排序。
在一个实施例中,有效性检查器检查以下的规则,以确定当为磁盘池选择磁盘单元时的有效性。应该理解,以下的规则是示范性的,也可以遵循其它系统的其它组的规则。第一个规则是确定和确保所选择的DASD全都与包含执行方法300的结点的网点相关联,并全都位于包含执行方法300的结点的网点处。另一个规则是,在可独立切换的不同磁盘池中的磁盘单元不能处于同一可切换实体中。例如独立可切换磁盘池不能拥有位于同一立柜中的磁盘单元。又一个规则是,不准备被切换的磁盘单元,不能处于一个包含用于将被切换的磁盘池的磁盘单元的可切换硬件实体中。例如,与某一系统(例如系统ASP、资源池E 140的ASP 32)同驻的磁盘单元不能处于与一个可切换磁盘池(例如资源池A 130的IASP 33)中的磁盘单元相同的立柜中。还有一条规则规定,将在特定系统之间被切换的一个可切换磁盘池中的磁盘单元必须处于这些具体系统可以访问的硬件实体中。例如旨在被切换到一个备份系统的磁盘单元,不能处于该备份系统不能访问的一个立柜中。再一条规则是,在同一磁盘池中的磁盘单元必须处于同一电源域(即一起通电/断电)中的硬件实体之下。其它的规则,例如关于系统限制的规则,也可以用于确定对DASD选择的有效性。
在一个实施例中,按所排序的顺序,显示网点处的有效的DASD。有效性检查器的输出可以为下列之一完美的、有效的、警报的和无效的。输出“完美的”,表示对于所规定的DASD所选择的DASD为最佳DASD。输出“有效的”表示该DASD不具有最佳排序,但可以把该DASD放入ASP中。输出“警报的”表示对于所规定的DASD,该DASD可能是无效的或有问题的。输出“无效的”表示不允许把该DASD放入所规定的DASD。可以从一个LdValidityForAsp对象(即以下所讨论的LdValidityForAsp对象502)得到关于所选择的DASD和其它非配置DASD的排序的细节。
在一个实施例中,把下列因素用于对有效的DASD选择进行排序。第一,最好是把一个磁盘池的磁盘单元保持在同一可切换硬件实体下。第二,最好主与/或备份系统拥有对可切换硬件实体(即没有其它实体处于其间)的直接访问权。第三,最好一个磁盘池的磁盘单元包含在一个可切换硬件实体中(即可切换硬件实体不包含一个以上的IASP)。应该理解,以上的因素是示范性的,也可以利用其它系统的其它组的因素。
在另一个实施例中,除有效的DASD外,也可以显示无效的DASD。然而,这一示范性实施例的方法300不允许用户为所选择的ASP选择要配置的无效的DASD。在另一个实施例中,以一个或多个原因显示每个无效的DASD,因为无效的DASD对所选择的ASP是不适当的选择。例如,除了可切换性原因外,无效的DASD所以无效的原因可能是因为容量、保护、或其它系统规则违章。用户可以根据无效原因把无效的DASD改变成有效的DASD(例如,通过把DASD物理地移动到一个适当的位置)。
在步骤350,方法300等待用户按为ASP的排序顺序选择一个或多个有效的非配置DASD。在步骤360,方法300把DASD选择传送到一个DSM沙箱,DSM沙箱是一个用于容纳DASD存储管理程序234的参数的对象。如这一技术领域中人们所熟悉的,为该ASP(或IASP)所选择的有效的DASD的配置,可以在步骤370完成,然后在步骤380结束方法300。
在一个实施例中,可以使用面向对象的程序设计实现方法300。图4中说明了根据本发明的一个示范性实施例的软件类和每一软件类的职责的一个示范性设计400。以下参照图5和7更详细地描述这些类的相关的对象和方法。示范性设计400的软件类包括一个DASD Management(DM)类405、一个LdValidityForAsp类410、一个ToyAsp类415、一个ToyLd类420、一个HdwSwitchingCapabilities类430、一个SwitchableEntity类435、一个CRGM(群集资源组管理)类440以及一个CRG(群集资源组)类445。
DASD Management类405为配置IASP提供了一个用户接口。在一个实施例中,DASD Management类405通过创建一个LdValidityForAsp对象和一个LdAdder沙箱对象,实现了一个IASP配置,然后查询沙箱中的每一个对象(此处将其称为“ToyLd”)。LdValidityForAsp(即为ASP的逻辑DASD有效性)类410把关于非配置DASD的有效性和排序的结果保持在LdValidityForAsp对象中。
LdAdder(即逻辑DASD加法器)类425为选择提供了所建议的DASD和ASP。直观地,LdAdder类425包含一个代表所选择的ASP的ToyAsp(即ToyASP)类415和一个代表非配置DASD的ToyLd(即ToyLogical DASD)类420。
HdwSwitchingCapabilities(即硬件切换能力)类430提供了用于确定其中物理地定位了DASD的立柜的可切换性的函数/方法。在一个实施例中,HdwSwitchingCapabilities类430提供了一个isParentSwitchable方法,并支持SwitchableEntity类435。所述isParentSwitchable方法确定包含磁盘单元的实体是否为可切换的。
SwitchableEntity类435提供了用于估价可切换性的函数/方法,包括一个isResourceSwitchable函数、一个isResourceAccessible函数、以及一个evaluateEntities函数。所述isResourceSwitchable函数确定是否在一个群集资源组(CRG)中定义了IASP。所述isResourceAccessible函数确定在一个CRG恢复域(即在包含该资源的网点的主和备份系统)中的结点是否可以访问该资源。所述evaluateEntities函数确定实体是否处于相同的CRG中。
CRGM(即群集资源组管理)类440包括用于创建、添加、改变、删除、以及其它与群集资源组管理有关的操作的函数/支持。CRG(即群集资源组)类445控制资源(例如IASP)的切换与故障恢复,并提供了用于配置CRG中的结点和资源的用户接口。在一个实施例,CRG类445的操作的实现,包括利用提供在SwitchableEntity类435中的功能查询。
图5中说明了根据本发明的一个示范性实施例的用于操作在一个结点上的示范性有效性检查器330的有效性检查器的面向对象的设计500。图6中说明了根据本发明的一个示范性实施例的、用于操作在一个结点上的、一个所选择的ASP的一个示范性非配置DASD有效性和排序处理流程图600。可以把处理流程图600理解为在步骤330的有效性检查器的一个实现。
方法600开始于步骤620,并前进到步骤605以创建一个LdValidityForAsp对象502和一个LdAdder沙箱510。所述LdValidityForAsp对象502保存可切换性结果,可切换性结果包括对位于包含这一结点的网点的非配置DASD的有效性和排序。所述LdAdder沙箱510保存所建议的ASP对象545(例如ToyAsp 32 545和ToyAsp 33 545,当对它们进行配置时,分别相应于结点和资源配置800的资源池E 140和资源池A 130)以及硬件DASD的软件等价对象(例如ToyLd 505,一个对于每一DASD的ToyLd,包括DASD 11 802、DASD 12 804、DASD 13 806、DASD 14 808、DASD 21 810以及DASD 22 812,如图中所示)。
在步骤610,方法600查询其配置在所规定的ASP的LdAdder沙箱510中的每一ToyLd 505(即每一非配置DASD)。查询是由DASD管理515通过在每一ToyLd对象505上的validToBelnAsp函数520调用的。在步骤615,ToyLd 505接下来查询其对应的HdwSwitchingCapabilities对象525,HdwSwitchingCapabilities对象525提供了物理上包含对应于ToyLd 505的DASD的硬件实体(例如父实体)的切换能力。通过一个isParentSwitchable函数530提供硬件实体的切换能力。
然后,在步骤620,方法600查询SwitchabilityEntity对象535,以确定资源(即包含对应于所处理的ToyLd的DASD的磁盘池)是否为可切换的。所述SwitchabilityEntity对象535查询CRG对象540,以确定是否在一个CRG中定义了资源(例如ToyLd 33)。例如,对于ToyLd DASD 11,SwitchablityEntity对象535确定在CRG中是否把资源ToyLd 33定义为一个可以切换的IASP(例如资源550)。
接下来,在步骤625,如果资源是可切换的(即如果资源是CRG中所定义的一个IASP),则该方法继续在步骤630和635进行更多的查询。在步骤630,方法600进行查询,以确定CRG恢复域555(即位于包含该资源的网点的主和备份系统)中的结点是否可以访问该资源,并且在步骤635,方法600估计是否在同一CRG中定义了这些实体(例如资源和结点系统)。例如,位于与一个资源不同的网点的结点,不需要访问该资源。然后,在步骤640,把非配置DASD的可切换性结果返回到LdValidityForAsp对象502。回过头来参照步骤625,如果资源是不可切换的,那么方法600前进到步骤640,并把非配置DASD的可切换性结果返回到LdValidityForAsp对象502。然后,在步骤650,结束方法600。
在另一个实施例中,计算机系统200的操作系统228也包括一个用于群集一个群集中的两个或两个以上的计算机系统的群集用户接口程序234。还可以调用有效性检查器执行群集用户接口程序234的某些操作。图7中说明了根据本发明的一个实施例的用于针对群集操作检查IASP的可切换的性的软件对象的一个示范性集合。总体上讲,在以下的每一个实施例中,CRGM对象710调用SwitchableEntity对象720中的一或多个函数,SwitchableEntity对象720通过CRG对象730确认该群集操作。
在一个实施例中,当把一个结点添加到CRG的恢复域中时,CRGM检查所建议的新结点是否拥有对一个或多个IASP中的DASD的访问权。CRGMadd_node_to_recovery_domain函数712调用isResourceAccessible函数722,并且传送包括所建议的新结点和一或多个现存IASP的参数。isResourceAccessible函数722检查资源对象732中的IASP和RecoveryDomain对象734中的结点,并确定所建议的新结点是否拥有对该结点所属的网点处的IASP的访问权。如果所建议的新结点可以访问IASP中的DASD,那么允许用户完成CRGM操作。如果所建议的新结点不拥有对IASP中的DASD的访问权,则把一条警告显示给配置该所建议的新结点的用户。
在另一个实施例中,当把一个IASP添加到CRG时,CRGM检查所规定的恢复域中的所有结点是否拥有对被添加的IASP中的DASD的访问权,CRGM add_iasp函数714调用isResourceAccessible函数722,且传送包括所建议的新IASP和在所规定的恢复域中的现存结点的参数。所述isResourceAccessible函数722检查资源对象732中的IASP和RecoveryDomain对象734中的结点,并确定在该资源的网点处的所规定的恢复域中的所有结点是否拥有对所添加的IASP中的DASD的访问权。如果拥有访问权,那么允许用户完成CRGM操作。如果没有访问权,则把一条警告显示给配置该所建议的新IASP的用户。
当把一个IASP添加到CRG时,CRGM还可以检查是否任何其它CRG具有相同的包含该IASP的可切换实体(例如可切换立柜)。CRGM add_iasp函数714用getEntities函数724,为所建议的新IASP检索一个或多个可交切实体。然后,CRGM搜寻其它现存的CRG,以确定任何其它CRG是否具有相同的可切换实体。如果没有其它CRG拥有相同的可切换实体,则允许用户完成CRGM操作。如果另一个CRG具有相同的可切换实体,则把一个警报显示给向该CRG添加所建议的IASP的用户。
在另一个实施例中,当启动IASP的CRG(即启动群集)时,CRGM确认IASP的可切换性。这一额外的确认用于检测由于硬件重定位(例如电缆和磁盘单元的移动)所引发的潜在的可切换性错误。这一额外的确认还可以检测因不适当的DASD配置(例如当用户配置一个DASD时、群集未被激活、而用户忽视配置警报)所引发的错误。CRGM start_clustering函数716调用isResourceAccessible函数722,并传送包括资源对象732中的一个或多个现存IASP的参数。所述isResourceAccessible函数722检查资源对象732中的IASP和RecoveryDomain对象734中的结点,并确定该恢复域中的同一网点处的所有结点是否拥有对该IASP中的DASD的访问权。如果拥有访问权,那么允许用户完成CRGM start_clustering函数。如果没有访问权,则把一条警告显示给试图进行这一群集操作的用户。
把本发明的这些实施例并入分散在两个或多个地理位置之间的计算系统组100。可以把那些组成整个计算系统组100的结点以任何组合分布在多个地理位置之间。如在此描述的,可以在群集资源组中配置那些其中已置入了两个或两个以上的结点的地理位置或网点,并作为包括位于那些网点的资源的恢复域的一部分加以操作。或者,一个网点只能有一个控制该网点的资源的结点。这可以降低开销,因为不要求每一个网点有多个结点,而维持了整个计算系统组的可用性,因为该网点处一个结点发生故障能够在另一个网点的一个结点实现故障恢复。具有一个单一计算机系统结点的网点的另一个优点是,该网点不要求可切换的硬件。
图9说明了根据本发明的一个示范性实施例的一个示范性初始配置处理流程900。所述示范性初始配置处理流程900适合仅拥有一个结点的网点配置,虽然拥有多个结点的网点确保有较高的可用性配置。示范性初始配置处理流程900开始于步骤902,并前进到步骤904,确定当前网点是否拥有一个以上的结点。如果这一网点确实拥有一个以上的结点,则在步骤908,对于位于这一网点的资源,通过以恢复域配置该网点处的结点而使处理继续。如果这一网点仅拥有一个结点,则在步骤906,通过配置寄宿这一网点处资源的那一结点而使处理继续。在配置了这一网点处的那一结点之后,在步骤910,通过把该网点处的结点作为计算系统组100的成员加以操作而使处理继续。
无限制软件和硬件实例可以把本发明的实施例作为和一个计算机系统一起使用的程序产品加以实现,例如图1中所示的和此处所描述的群集计算环境。这一程序产品的一个或多个程序定义了这些实施例的功能(包括此处所描述的方法),并且可以包含于各种各样的信号承载介质。所说明的信号承载介质包括,但不局限于(i)永久性存储在非可写存储介质(例如,一个计算机中的只读存储器设备,例如CD-ROM驱动器可读的CD-ROM盘)的信息;(ii)存储在可写存储介质(例如,软盘驱动器中的软盘或硬盘驱动器)上的可改变的信息;(iii)由通信介质,例如,通过计算机或电话网络,包括无线通信,向计算机传送的信息。后面的实施例特别包括从Internet和其它网络所下载的信息。当执行指导本发明的功能的计算机可读的指令时,这样的信号承载介质代表了本发明的实施例。
通常,用于执行本发明的实施例的例程,无论是作为操作系统的一部分,还是作为一个专门的应用程序、部件、程序、模块、对象、或指令序列加以实现,此处都可将其称为“程序”。通常,计算机程序由许多指令组成,本机计算机将这些指令翻译成一种机器可读的格式,从而成可执行的指令。另外,程序由变量和数据结构组成,变量和数据结构可驻留于程序的本地区中,也可在存储器中或存储设备上发现。另外,对此处所描述的各种程序可以根据应用程序所标识,这些应用程序是在本发明的某一特定实施例所实现的。然而,应该理解所遵循的任何特定的程序命名法,仅仅是为了便于描述。因此,本发明不局限于仅按任何由这样的命名法所标识与/或所意指的特定应用程序加以使用。
还应该清楚地认识到通常给出不计其数的方式,其中可以把计算机程序组织成例程、过程、方法、模块、对象以及各种不同的方式、其中可以在驻留于典型计算机的各种软件层(例如操作系统、程序库、API、应用程序、小应用程序等)之间对程序功能加以分配。应该认识到,本发明不局限于此处所描述的特定的组织、分配方式、或程序功能。
还可以以硬件、软件、或硬件与软件的组合,实现本发明。可以按一种集中化的方式在一个计算机系统中,或按其中把不同的部件分散在多个互连的计算机系统之间的分布式方式,实现根据本发明的优选实施例的系统。适合于执行此处所描述的方法的任何种类型的计算机系统或其它装置均是合适的。硬件与软件的典型的组合可以是一个具有一个计算机程序的通用目的计算机系统,当加载并执行该计算机该程序时,该计算机程序可控制计算机系统,因此它能够执行此处所描述的方法。
每一种计算机系统,此外可包括一个或多个计算机,以及至少一个允许计算机读取数据、指令、消息或消息分组、以及来自信号承载介质的其它信号承载信息的信号承载介质。信号承载介质可以包括非易失存储器,例如ROM、闪存、磁盘驱动存储器、CD-ROM、以及其它永久性存储器。另外,例如,计算机介质还可以包括易失存储器,例如RAM、缓冲器、超高速缓冲存储器、以及网络电路。而且,信号承载介质也可以包括瞬态介质中的信号承载信息,例如一条网络链路与/或一个网络接口,包括允许计算机读取这样的信号承载信息的有线网络或无线网络。
尽管本发明的特定实施例已经被公开,本领域的技术人员会理解在不违反本发明的精神和范围的情况下,可对特定实施例进行修改。因此发明的范围不局限于特定的实施例。而且附加的权利要求旨在适用于本发明范围的任何和所有的应用、修改和实施例。
权利要求
1.一种方法,用于管理一个结点中的资源,该方法包括配置至少一个为一个结点所使用的资源,其中该结点与一个包含该资源的网点相关联;为一个资源池确认至少一个资源的可用性,其中,所述确认包括确定该结点对资源的可访问性,并且验证资源是被置于该网点;以及基于所述确认为该资源池选择至少一个资源的至少一个。
2.如权利要求1所述的方法,其中,至少一个资源包括至少一个磁盘单元,该方法还包括把一个资源池配置成一个可切换的资源池。
3.如权利要求1所述的方法,其中,结点是位于网点的一个单一的结点,该结点作为地理上分散的计算系统组的一部分进行操作。
4.如权利要求1所述的方法,其中,至少一个资源包括至少一个磁盘单元,该方法还包括为该资源池排序每一磁盘单元的可用性;以及根据可用性排序,为资源池选择至少一个有效的磁盘单元。
5.如权利要求4所述的方法,还包括向用户提供解释每一磁盘单元的有效性和排序的至少一个原因。
6.如权利要求1所述的方法,其中,结点为一个群集资源组的一部分。
7.如权利要求6所述的方法,其中,该群集资源组包括一个主结点和至少一个备份结点。
8,如权利要求6所述的方法,还包括当把一个结点添加到一个群集资源组恢复域时,确认资源池中的资源的可访问性,其中确认包括确定该结点是与一个包含资源池的网点相关联的。
9.如权利要求6所述的方法,还包括当把一个可切换资源池添加到该群集资源组时,由位于该网点的群集资源组恢复域中的每一结点验证该可切换资源池中的每一资源的可访问性。
10.如权利要求9所述的方法,还包括验证包含该可切换资源池的一个可切换实体不包括在另一个群集资源组中。
11.如权利要求6所述的方法,还包括当启动群集时,确认该可切换资源池的可切换性。
12.一种信号承载介质,包括一个程序,当由一个处理器加以执行时,该程序执行用于管理一个结点中资源的操作,这些操作包括配置至少一个由一个结点所使用的资源,其中该结点与一个包含该资源的网点相关联;为一个资源池确认至少一个资源的可用性,其中,确认包括由该结点确定资源的可访问性,并且验证资源是位于该网点;以及基于所述确认,为该资源池选择至少一个资源的至少一个。
13.如权利要求12所述的信号承载介质,其中,所述步骤还包括把该资源池配置成一个可切换磁盘池。
14.如权利要求12所述的信号承载介质,其中,该结点是位于该网点的一个单一的结点,该结点作为地理上分散的计算系统组的一部分进行操作。
15.如权利要求12所述的信号承载介质,其中,所述步骤还包括为该资源池排序每一个资源;以及根据排序结果,为该资源池选择至少一个有效的资源。
16.如权利要求15所述的信号承载介质,其中,所述步骤还包括向用户提供解释每个资源的有效性和排序的至少一个原因。
17.如权利要求12所述的信号承载介质,其中,该结点为一个群集资源组的一部分。
18.如权利要求17所述的信号承载介质,其中,所述步骤还包括当把一个结点添加到群集资源组恢复域时,确认该资源池中的资源的可访问性。
19.如权利要求17所述的信号承载介质,其中,所述步骤还包括当把一个可切换资源池添加到该群集资源组时,由在群集资源组恢复域的每一结点验证该可切换资源池每一资源的可访问性。
20.如权利要求17所述的信号承载介质,其中,所述步骤还包括验证包含该可切换资源池的一个可切换实体不包括在另一个群集资源组中。
21.如权利要求17所述的信号承载介质,其中,所述步骤还包括当启动群集时,确认该可切换资源池的可切换性。
22.一个系统,包括一个与一个网点相关联的主结点;一个与该主结点相连接的资源池;以及一个处理器,其配置旨在为该资源池确认至少一个资源的可用性,并且为该资源池选择至少一个有效的资源,其中,至少部分地基于位于该网点的一个资源确认可用性。
23.如权利要求22所述的系统,其中,还把该处理器配置成为该资源池排序每一个资源,以及根据排序,为该资源池选择至少一个有效的的资源。
24.如权利要求23所述的系统,其中,还把该处理器配置成可向用户提供解释每个资源的有效性和排序的至少一个原因。
25.如权利要求22所述的系统,其中,把该资源池配置成一个可切换的资源池。
26.如权利要求25所述的系统,还包括至少一个连接到该可切换的资源池的备份结点。
27.如权利要求25所述的系统,其中,还把该处理器配置成当把一个结点添加到该群集资源组恢复域时,可确认该可切换资源池中的资源的可访问性。
28.如权利要求25所述的系统,其中,还把该处理器配置成当把该可切换资源池添加到该群集资源组时,由在该群集资源组恢复域中的每个结点验证该可切换资源池中的每个资源的可访问性。
29.如权利要求25所述的系统,其中,还把该处理器配置成可验证包含该可切换资源池的可切换实体不包括在另一个群集资源组中。
30.如权利要求25所述的系统,其中,还把该处理器配置成当启动群集时,可确认该可切换资源池的可切换性。
全文摘要
本发明涉及用于在一个单一的网点的一个主系统和一个或多个备份系统之间可被切换的资源的确认与排序的方法与装置。本发明的一个实施例提供了一种用于确保一个系统对一个或多个磁盘单元的可访问性的方法,所述方法包括为系统配置一个磁盘池;为该资源池确认一个或多个磁盘单元的可用性;验证这些磁盘单元处于与该系统相同的网点中,并为该磁盘池选择一个或多个有效的磁盘单元。所述方法还包括为该磁盘池排序每个磁盘单元,以及基于排序为该磁盘池选择一个或多个有效的磁盘单元。
文档编号G06F9/46GK1581086SQ20041003355
公开日2005年2月16日 申请日期2004年4月6日 优先权日2003年7月31日
发明者迈克尔·J·麦克德莫特, 阿马蒂·S·皮尔森, 基斯万托·撒伊布 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1