説明

高可用性システムのための分散型プラットフォーム管理

分散型の可用性管理(Availability Management:AM)機能について説明がなされている。コアAMの機能性はグローバルレベルにおいて提供される一方、追加的なAMの機能性はローカルレベル(例えばクラスター)において提供される。また、拡張のためのエンティティが補完的なAM機能を提供するために提供され得る。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般的に、高可用性システム(ハードウェア及びソフトウェア)に関し、より具体的には、そうした高可用性システムと関連付けられるプラットフォーム管理に関する。
【背景技術】
【0002】
高可用性(high−availability)システム(HAシステムとしても知られる)は、主にシステムが提供するサービスの可用性を向上させる目的で実現されるシステムである。可用性は、システム又はサービスが稼動(“up”)している時間の割合として表され得る。例えば、99.999%の可用性(所謂“ファイブナイン(5つの9)可用性”)のために設計されるシステムとは、ひと月に約0.44分、一年に約5.26分のみの停止時間を有するシステム又はサービスを指している。
【0003】
高可用性システムは、求められる可用性のレベルを達成するために、システムコンポーネントがエラーを起こしたときにサービスの提供に使用される冗長化ノードを備えている。例えば、特定のアプリケーションを実行しているサーバがクラッシュした場合、HAシステムは、クラッシュを検知し、他の冗長化ノード上でアプリケーションを再起動する。HAシステムにおいては、様々な冗長化モデルを使用することができる。例えば、N+1冗長化モデルでは、(プライマリノードの数に対して)余分な1つのノードが供給され、そのノードが、エラーを起こしたノードの役割を引き受けるためにオンライン化される。しかしながら、単一のHAシステムが多くのサービスを管理する状況においては、専用の1つのノードだけでは、エラーをハンドリングするために十分な冗長性を有するとは言えない。そうした状況では、例えば、1つ以上の(M個の)利用可能なスタンバイノードが含まれるN+M冗長化モデルが使用され得る。
【0004】
ファイル共有、顧客向けインターネットポータル又はデータベースなどのような重要なサービスをサポートするためにHAシステムがより当たり前のものとなるにつれ、そうしたシステムの設計のための標準的なモデル及び方法論が提供されることが望まれている。例えば、サービス可用性フォーラム(Service Availability Forum:SAF)では、移植可能で可用性の高いアプリケーションの開発のための支援をするアプリケーションインタフェースサービス(Application Interface Services:AIS)の標準化が行われた。図1の概念的なアーキテクチャスタックに示されているように、AIS10は、互いに独立したHAアプリケーション14とHAミドルウェア16との間の標準化されたインタフェースを提供することを意図して設けられている。後に説明するように、AISの一連の機能性は、それぞれオペレーティングシステム20及びハードウェアプラットフォーム22に関連付けられる。なお、AISの標準仕様についてのさらなる情報は、アプリケーションインタフェース仕様(AIS)バージョンB.02.01(www.saforum.orにて入手可能)を参照することで得ることができる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本出願の特に興味深い点は、AIS仕様の中で定義されたソフトウェアエンティティ(entity:構成要素)である可用性管理フレームワーク(Availability Management Framework:AMF)である。AIS仕様によれば、AMFは、クラスター内の冗長化資源を協調させることによるサービスの可用性を提供するための標準化された仕組みであって、1つのエラー箇所も伴わないシステムを実現することを目的としている。AMFは、特に、クラスター内のコンポーネントの状態及びそれらコンポーネントの調子(health)を判定するための一連のアプリケーションプログラムインタフェース(Application Program Interfaces:API群)を提供する。また、それらコンポーネントには、AMFに対してその状態に関する情報を問合せるための機能が提供される。AMFのAPI群を使用して開発され、AMFのシステムモデルに従ったアプリケーションは、そのサービスの可用性を管理することによる負荷をAMFに委ねることができる。従って、そうしたアプリケーションは、コンポーネントのエラー又はメンテナンスなどに関連する動的な再構成という課題を扱わなくてよい。
【0006】
上述した標準仕様において規定されているように、各AMF(ソフトウェアエンティティ)は、図2に示したような多数のクラスターノード及びコンポーネントにより構成される単一の論理的クラスターについての可用性のサポートを提供する。例えば、第1のクラスターAは、それ自身のAMF24、2つのAMFノード26及び28、並びに4つのAMFコンポーネント30〜36を含む。同様に、第2のクラスターBは、それ自身のAMF38、2つのAMFノード40及び42、並びに4つのAMFコンポーネント44〜50を含む。コンポーネント30〜36及びコンポーネント44〜50は、それぞれAMF24及び38により管理される一連のハードウェア資源及びソフトウェア資源を表す。物理的な意味においては、各コンポーネントは、HAアプリケーションのプロセスとして実現される。ノード26、28、40及び42は、それぞれ物理的なノードに対応する論理的なエンティティを表す。そして、各ノード上でAMFコンポーネントとして管理されるそれぞれのプロセスが実行されると共に、それらノードの可用性を管理するための冗長化要素が割当てられる。
【0007】
運用時には、各クラスターは、それ自体が障害区域(fault zone)として扱われ、従って、AMF A24及びAMF B38は互いに独立して動作する。いくつかのアプリケーションについては、独立したAMFソフトウェアエンティティが提供されることにより問題が生じることはない。しかしながら、例えば、1つのクラスターのノードが複数のハードウェアプラットフォームをまたがって実行されるような仮想化が導入された場合には、図2に示したAMFアーキテクチャは問題となる。例えば、1つのAMFが、監視の対象のサーバであって異なるクラスターに関連付けられた仮想的なノードを含むサーバを再起動させることを決定したとする。その場合、その仮想的なノードについて責任を持つ他のAMFは、その再起動をエラーとして検知し、(潜在的に不適切な)復旧のためのアクションを開始するかもしれない。
【0008】
従って、上述した問題点及び欠点を回避するHAアプリケーションのためのプラットフォーム管理システム及び方法が提供されることが望ましい。
【課題を解決するための手段】
【0009】
ある一例としての実施形態によれば、あるシステムは、サービスをサポートするハードウェアプラットフォームを含む。そして、可用性管理(AM)ソフトウェアエンティティが、上記サービスの可用性をサポートする。可用性管理(AM)ソフトウェアエンティティは分散配置され、第1階層レベルにおいて関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、第2階層レベルにおいて関連する第2のAM機能セットを有する第1の複数のローカルAMC(AMC)部、並びに、第3階層レベルにおいて上記サービスの可用性をサポートするために上記第1及び第2のAM機能セットを供給される第1の複数のAMCコンポーネント、を含む。
【0010】
他の一例としての実施形態によれば、あるシステムは、サービスをサポートするハードウェアプラットフォームを含む。そして、可用性管理(AM)ソフトウェアエンティティが、上記サービスの可用性をサポートする。可用性管理(AM)ソフトウェアエンティティは、関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、及び、関連する1つ以上のAM機能の第2のセットを有する第1のAM拡張部であって、上記AMC部により供給される上記第1のAM機能セットを補うプラグインソフトウェアエンティティである当該第1のAM拡張部、を含む。
【0011】
他の一例としての実施形態によれば、ある方法は、ハードウェアプラットフォームによりサービスを提供するステップと、上記サービスの可用性をサポートする可用性管理(AM)ソフトウェアエンティティを分散配置するステップと、を含む。そして、分散配置される上記AMソフトウェアエンティティは、第1階層レベルにおいて関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、第2階層レベルにおいて関連する第2のAM機能セットを有する第1の複数のローカルAMC(AMC)部、並びに、第3階層レベルにおいて上記サービスの可用性をサポートするために上記第1及び第2のAM機能セットを供給される第1の複数のAMCコンポーネント、を有する。
【0012】
さらに他の一例としての実施形態によれば、ある方法は、ハードウェアプラットフォームによりサービスを提供するステップと、可用性管理(AM)ソフトウェアエンティティにより上記サービスの可用性をサポートするステップと、を含む。そして、上記AMソフトウェアエンティティは、関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、及び、関連する1つ以上のAM機能の第2のセットを有する第1のAM拡張部であって、上記AMC部により供給される上記第1のAM機能セットを補うプラグインソフトウェアエンティティである当該第1のAM拡張部、を有する。
【図面の簡単な説明】
【0013】
本明細書の一部をなす添付図面は、1以上の実施形態を描いたものであり、その記述と共にそれら実施形態を説明するものである。
【0014】
【図1】アプリケーションインタフェースサービス(AIS)に関連付けられる概念的なアーキテクチャスタックを示している。
【図2】従来の可用性管理フレームワーク(AMF)のためのクラスターのアーキテクチャを示している。
【図3】複数のクラスターについてプラットフォーム管理を提供する一例としての仕組みを示している。
【図4】一実施形態に係る分散型のプラットフォーム管理の一例を示している。
【図5】他の実施形態に係る分散型のプラットフォーム管理の一例を示している。
【図6】一実施形態に係る分散型のプラットフォーム管理を提供するための方法の一例を表すフローチャートである。
【図7】他の実施形態に係る分散型のプラットフォーム管理を提供するための方法の一例を表すフローチャートである。
【発明を実施するための形態】
【0015】
本発明に係る一例としての実施形態について、添付図面を参照しながらこれ以降に説明する。異なる図面についての同一の符号は、同一の又は同様の要素を特定するものである。これ以降の詳細な記述は、本発明の範囲を限定するものではない。その代わりに、本発明の範囲は、添付された特許請求の範囲により定義される。
【0016】
上述したような可用性管理が対象とする範囲は、SAFにより公表されているように、固有のAMFソフトウェアエンティティを伴うそれぞれのクラスター、即ち互いに独立したクラスターを供給することに限られている。これに対し、仮想化の導入に関連付けられる課題を解決するためには、とりわけ、図3に概念的に示したような全てのシステムコンポーネントを監視するグローバルAMF52の導入が1つの解決策となり得る。しかしながら、全てのクラスターにとって全ての可能性のあるAMFの機能が必要となるわけではない。即ち、状況によって、特定のAMFクラスターによりプロセス又はハードウェアの高可用性をサポートするために、基本的な冗長性のみが提供されればよい場合もある。
【0017】
従って、そうした場合に対処するため及び他の理由のために、グローバルAMF52の代わりに、図4に例示したように、一実施形態において分散型の可用性管理の形態が提供され得る。そこでは、可用性管理エンティティ400は、分散型の機能性のための複数のレベルを含む。かかる例においては、階層内の3つのレベルが示されている。しかしながら、いわゆる当業者は、これら実施形態に係る分散型のプラットフォーム管理において、より多くのレベル又はより少ないレベルが用いられてもよいことを理解するであろう。図4の第1レベルにおいて、グローバル可用性管理コア(AMC:global Availability Management Core)402は、自ら(即ち、管理用の拡張機能(Management Extension)(AME)403を考慮することなく)第2レベルの各ローカル可用性管理コア(AMC:local Availability Management Cores)404、406及び408を含む第1の可用性管理機能セットを提供するために動作するソフトウェアエンティティである。AMC402及びAMC404、406及び408は、一体として、第3レベルのAMCコンポーネント412、414及び416に第2のあるいは基本的な可用性管理機能セットを提供する。
【0018】
AMC402により提供される第1の可用性機能(availability functions)セットは、分散型の階層内でAMCと同じレベルに位置する可用性管理の拡張機能(AME)403によって拡大されることができる。AME403は、AMC402によって提供される主要な機能(core functions)を補うように動作するプラグインである。第1の機能セット及び第3の機能セットに属し得る特有の機能の例は、後に提示される。AME403は、AMCコンポーネント412、414又は416のうちの1つ(本例ではAMCコンポーネント412)により供給される。AMCコンポーネント412、414又は416は、それぞれAME403を供給可能である。そのため、AME403により提供される第3の機能セットは、分散型プラットフォーム管理400において冗長的にサポートされる。
【0019】
上述したように、AMC402により提供される第1の可用性機能セット及びAMEにより提供される第3の可用性機能セットは、AMC402によって、分散型可用性管理エンティティ400の第2レベルに位置する、それ自身のローカル可用性管理コア(AMC)ソフトウェアエンティティ404、406及び408に供給される。第1、第2及び第3の可用性管理機能セットの組み合わせは、拡張された可用性を求める(図4に示されていない)コンポーネントの拡張された可用性管理をサポートする第4の可用性管理機能セットによって特徴付けられることができる。単一クラスター環境においては、AMCをクラスターに関連付けることができる一方、異なるAMC群を例えば異なる(仮想的な)ノード群に関連付けることもできる。後者の場合においては、AMC404、406及び408を介して供給される第4の可用性管理機能セットは、SAFにより定義されているような、コンポーネントの可用性管理のために使用され得る。また、複合クラスター環境においては、AMCをシステムプラットフォームに関連付けることができる一方、各AMCを異なる(仮想的な)クラスターノード群に関連付けることもできる。その場合、その(仮想的な)ノードとは、AMCコンポーネントである。そうした複合クラスター環境の(仮想的な)クラスター内のプロセスのための可用性管理を提供するためには、これら2つの環境を組み合わせることが求められる。
【0020】
AMCとAMCとを同じ場所に配置することにより、本発明の一例としての実施形態に従って、どういった数の階層レベル数も提供されることができる。ソフトウェアエンティティの各セットの視点からは、より下位のエンティティは、すぐ上のエンティティを自身にとってのグローバルAMCであるとみなす。AMC及びAMC(又は分散したAMC)の各セットは、1つ以上の可用性管理のための拡張機能(AME)によって拡張されてもよい。そのようなAMC及びAMCのいずれか1つのセットの中で、AMEによって提供される機能セットは、拡大するAMCによって提供される可用性管理機能セットに対して互いに排他的である。この分散型の可用性管理(AM)機能をより具体的に説明するために、次の例は、サポートされる物理的なシステムとしての分散型のプラットフォーム管理ソフトウェアエンティティを描いている。
【0021】
図5において、高可用性のためにサポートされるシステムの物理的な表現が図中左側に描かれ、そのサポートを提供するために使用される、関連する分散型AMの各部の論理的な表現が図中右側に描かれている。左側から説明を開始すると、例えばサーバシステムなどのシステム60は、本例において物理ノードA62及び物理ノードB64として示されている複数の物理ノードを含むことができる。1つの純粋に説明のための例として、物理ノードA及びBは、システム60に関連付けられるプロセッサコアであってもよい。物理ノードA62は、それぞれ関連付けられる2つの異なる実行環境(例えば、オペレーティングシステムのインスタンス)66及び68を有する。各実行環境66及び68は、それら自身のプロセス70及び72をそれぞれ管理及び実装する。物理ノードB64もまた、図の簡明さのために図示されていない同様の実行環境とプロセスのセットを有していてもよい。
【0022】
本実施形態に係るシステム60及びそのコンポーネント62〜72の可用性をサポートする分散型のAMソフトウェアエンティティは、図5の左側に論理的に描かれている。そこでは、グローバルAMC部74が、複数の仮想的なクラスターにAM機能のコアとなるセットを提供する。本例において、2つの論理的なクラスター(A及びB)が示されているが、いわゆる当業者であれば、他の実施形態として1つのグローバルAMC部74によりサポートされる3つ以上の仮想的なクラスターが含まれてもよいことを理解するであろう。グローバルAMC74により提供され得るコア機能のセットの具体的な例については、後に説明する。仮想的なクラスターAのAMC部76は、仮想的なクラスターAにおいて、グローバルAMC74と物理ノード62及び64をそれぞれ表すAMCコンポーネント82及び84との間の通信を統合する。なお、例えばクラスターAについては、(ブロック76の括弧により示されているように)、ローカルAMC76は、分散型の階層内のより下位レベルに位置するエンティティ、例えばAMCコンポーネント82及び84の視点からは、クラスターAのためのグローバルAMCとみなされ得る。同様に、それらコンポーネント82及び84は、同じ視点からは、クラスターAに属す実行環境(例えばノード62についての実行環境66)を表すローカルAMC部としてみなされ得る。
【0023】
ローカルAMC部82及び84は、AMCコンポーネント78及び80の可用性を管理する。上述したように、図4における同様の構造の観点からは、AMCコンポーネント78及び80は、本例における冗長化マネージャである後述するAME86を冗長的にサポートする。AMCコンポーネント78及び80は、システム60と関連付けられるプロセスによって実装される。図5においては、プロセス70のみが特に表されており、当該プロセスは、AMCコンポーネント78として可用性管理の目的のためのプロセスであって、クラスターAにおけるAMCエンティティ群に冗長化マネージャとしての機能性を(図5に示された時点において)提供する。
【0024】
上述したように、グローバルAMC部74は、グローバルAMC74により管理される各クラスターに供給されるAM機能セットを包含する。一実施形態によれば、このAM機能セットは、それらが割当てられる特定の物理的要素及びプロセスの可用性をサポートするために、全てのクラスターにより使用されることが予期される機能を含む。例えば、その機能セットは、(a)グローバルAMC部74により管理されるエンティティの調子を監視する機能(監視役(watch−dog)機能)、(b)依存するエンティティに対して依存される側のエンティティの状態を通知する機能(c)例えば、エンティティのインスタンス化、終了及び修復のためのエンティティの起動と停止など、グローバルAMC部74により管理されるエンティティのライフサイクルを管理する機能、(d)例えば、決定ロジックのためのプラグインを伴う形での、サービスの役割を割当てる機能、(e)例えば、アクティブ、スタンバイ及びスペアなどの様々な役割のためのやはりプラグインを伴う形での、役割を引き受ける機能、(f)例えば、共に遠隔的/代替的ロケーション及び下位レベルに対するトンネル通信のためのプラグイン機能を伴う形で、同レベル(peer)のエンティティ及び/又は下位レベル(subordinate)エンティティを相手としてAM拡張部と通信する機能、(g)グローバルAMC部74及び/又はAM拡張部を再起動する機能(例えばブートストラップシーケンスなど)、などである。なお、他の実施形態によれば、グローバルAM部74は、上に掲げた全ての機能よりも少ない機能のみを含んでもよい。
【0025】
上述したAM拡張部は、グローバルAMC部76の拡張についてのものである。例えば、図5のクラスターA及びクラスターBなどの各クラスター又は仮想的なクラスターは、そのクラスターによりサポートされる特定の物理的要素の可用性管理をサポートするために必要とされるやり方で各AMC76、88のAM機能性を拡張する固有のAM拡張部を有してもよい。例えば、図5の仮想的なクラスターAについて検討する。ここで、仮想的なクラスターAによりその可用性がサポートされるHAサービスCが、グローバルAMC部76によりサポートされるモデルよりも複雑な冗長化モデル(例えばM+N)を要求しているとする。この純粋な説明のための例において、AMCコンポーネント78は、仮想的なクラスターAのAMC部76と通信するAM拡張部86を提供することにより、本実施形態に係る分散型のAM構造内でのより複雑な冗長化モデルの管理をサポートする。仮想的なクラスターAのAMC部76は、例えば、役割の割当て及びAMCコンポーネント79及び81により表されるHAサービスXを提供するコンポーネントのライフサイクルについての決定を行うために、AM拡張部86の出力を用いることができる。AM拡張86により扱われる冗長化モデルは、全てのクラスターのAMオペレーションをサポートすることを求められてはいないため、(本例においては)グローバルAMC部74により提供される機能セットには含められておらず、その代わりにクラスターレベルで拡張又はプラグインとして局所的に供給される。
【0026】
次に、図5の仮想的なクラスターBを参照すると、仮想的なクラスターAについて上述した論理的な構造と同様の構造が示されている。ここでは、仮想的なクラスターBのローカルAMC部88は、グローバルAMC部74とAMCコンポーネント94及び96との間の通信をプラットフォーム管理レベルで統合する。本例においては、(クラスターレベルで)仮想的なクラスターBのAMC部88は、2つの仮想的なノード94及び96を含む。仮想的なノード94は、例えば、物理的な実行環境68に相当する。この仮想的なノード(あるいはローカルAMC)94は、順にAMCコンポーネント90を管理し、ローカルAMC96は、AMCコンポーネント92を管理する。これらコンポーネントは、AMCコンポーネント78及び80に関連する機能とは相違し得る特定のアプリケーション機能をカプセル化するものである。本例において、AMCコンポーネント90(及びAMCコンポーネント92)は、AME98の可用性をそれらの間の矢印で示しているようにサポートする。AMCコンポーネント90及び92は、システム60に関連する異なるプロセスを表している。例えば、AMCコンポーネント90は、ローカルAMC部88の管理下にあるプロセス72を表している。
【0027】
従って、図5の実施形態では、可用性管理機能に関連付けられた2つの異なる仮想的なクラスター(仮想的なクラスターA及び仮想的なクラスターB)が1つの物理ノード(物理ノード62)と関連付けられる例が提示されており、本実施形態に係るプラットフォーム管理が特に有益である特有のシナリオが描かれていることが理解されるであろう。もちろん、いわゆる当業者であれば、本発明は図5に描かれた物理的又は論理的構造に限定されず、その代わりに多くの代替的な実施形態に適用可能であることも理解するであろう。
【0028】
仮想的なクラスターAと比べて、本実施形態におけるAMC機能自体は、ローカルAMC部94及び96により提供されない、あるAM機能を必要とする。より具体的には、本例において、AMCは、ローカルAMC94及び96に対して相対的にグローバルAMCとしての役割を担うべき特定のローカルAMC部94及び96の選択について交渉する交渉(arbiter)機能を必要とする。この交渉機能は、グローバルAMCの提供に先立って各ローカルAMCを拡張するため、AMCコンポーネント90及び92の可用性は、各ローカルAMC部94及び96のみに基づいて、拡張なしで局所的に管理される。
【0029】
上述した内容により、一実施形態に係る分散型の階層的プラットフォームによる可用性管理システムが提供される。しかしながら、他の実施形態をより一般的な形で表現することができる。例えば、それら実施形態によれば、可用性管理(AM)ソフトウェアエンティティは、ハードウェアプラットフォームにより提供されるサービスの可用性管理をサポートする。そして、その分散配置されるAMソフトウェアエンティティは、関連する第1のAM機能セットを有する第1階層レベルにおける第1のグローバル可用性管理コア(AMC)部と、関連する第2のAM機能セットを有する第2階層レベルにおける第1の複数のローカルAMC(AMC)部と、サービスの可用性をサポートするために上記第1及び第2のAM機能セットが供給される第3の階層レベルにおける第1の複数のAMCコンポーネントと、を含む。それに加えて、ある実施形態では、AM拡張により拡大されたAM機能セットを有する1つ以上のAMエンティティの組み合わせが考慮されてもよい。例えば、そのような実施形態の表現として、サービス及びサービスの可用性を管理するための可用性管理(AM)ソフトウェアエンティティをサポートするためのハードウェアプラットフォームであって、当該AMソフトウェアエンティティには、関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部と、関連する1つ以上のAM機能の第2のセットを有する第1のAM拡張部と、が含まれ、上記第1のAM拡張部は、上記AMC部により供給される第1のAM機能セットを補うプラグインソフトウェアエンティティである。
【0030】
この後者の点では、グローバルAMC部を、複数のクラスターに供給可能な基本的なAM機能セットを有するルートノードと見ることができると共に、AM拡張部を、追加的なAM機能によりルートノードの機能性を拡大させるためのルートノードに接続される葉(leaf)ノードとみることができる。また、実施形態は、仮想的なクラスターをサポートするものに限定されず、かつグローバルAMC部74にサポートされる各クラスター又は仮想的なクラスターは、関連する固有のAM拡張を持たなくてもよい。例えば、1つのハードウェアであるエンティティに関連付けられるAMクラスター又は仮想的なクラスターの可用性のニーズは、グローバルAM部74により提供されるAM機能セットにより完全に充足され得るため、その場合にはAM拡張部は必要とされない。
【0031】
従って、一実施形態に係る可用性管理を提供するための一般的なプロセスは、図6のフローチャートにより表される。そこでは、ステップ100において、1つ以上のサービスがハードウェアプラットフォームにより提供される。これらサービスの可用性をサポートするために、可用性管理(AM)ソフトウェアエンティティは、次のように分散配置される(ステップ110)。即ち、(a)第1階層レベルにおいて、関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部を提供する(ステップ120)。(b)第2階層レベルにおいて、関連する第2のAM機能セットを有する第1の複数のローカルAMC(AMC)部を提供する(ステップ130)。(c)サービスの可用性をサポートするために上記第1及び第2のAM機能セットが供給される第3の階層レベルにおける第1の複数のAMCコンポーネントを提供する。
【0032】
他の実施形態によれば、可用性管理を提供するための一般的なプロセスは、図7のフローチャートに表された各ステップを含む。そこでは、ステップ200において、1つ以上のサービスがハードウェアプラットフォームにより提供される。これらサービスの可用性をサポートするために、可用性管理(AM)ソフトウェアエンティティは、関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部を提供する(ステップ210)。また、可用性管理(AM)ソフトウェアエンティティは、関連する1つ以上のAM機能の第2のセットを有する第1のAM拡張部を提供する(ステップ220)。ここで、上記第1のAM拡張部は、上記AMC部により供給される上記第1のAM機能セットを補うプラグインソフトウェアエンティティである。
【0033】
ここまで、図5の実施形態に関連して、AM拡張部として提供され得る複数のAM機能の例について説明した。しかしながら、いわゆる当業者であれば、AM拡張部として他のAM機能が提供されてもよいことを理解するであろう。例えば、これら実施形態に係るプラットフォーム管理システム及び方法によりサポートされるサービスインスタンス又はシステム上で実行されるアプリケーションの間の依存性を計算するような他の形態のAM拡張が提供されてもよい。より一般的には、AM拡張部は、典型的には、次のような機能を有する。即ち、(a)グローバルシステムAMC部による第1のAM拡張部のライフサイクル制御を可能とする機能、(b)グローバルAMC部と通信するための機能、(c)サービスの複数の役割の1つに応じて動作する機能、及び(d)第1のAM拡張部の機能に関連するアプリケーションプログラムインタフェース(API)を提供するための機能である。こうした実施形態によれば、AM拡張部を独立して動作し得るプロセスとして実装することができ、それによりAMCのアップグレードの必要性が最小化される。
【0034】
本発明の一例としての実施形態についてのこれまでの記述は、実例と説明とを提供しているものの、網羅的な説明を意図したものではなく、開示された通りの形態に本発明が限定されるものではない。上記内容を考慮して修正又は変形を行うことは可能であり、それらは本発明の実施によってもたらされ得る。本発明の範囲は、次の特許請求の範囲及びその均等の範囲により定義される。


【特許請求の範囲】
【請求項1】
サービスをサポートするハードウェアプラットフォームと;
前記サービスの可用性をサポートする、分散配置される可用性管理(AM)ソフトウェアエンティティであって:
第1階層レベルにおいて関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、
第2階層レベルにおいて関連する第2のAM機能セットを有する第1の複数のローカルAMC(AMC)部、
並びに、第3階層レベルにおいて前記サービスの可用性をサポートするために前記第1及び第2のAM機能セットを供給される第1の複数のAMCコンポーネント、
を含む前記AMソフトウェアエンティティと;
を有するシステム。
【請求項2】
関連する1つ以上のAM機能の第3のセットを有する第1のAM拡張部であって、前記AMC部により供給される前記第1のAM機能セットを補うプラグインソフトウェアエンティティである当該第1のAM拡張部、をさらに有する、請求項1に記載のシステム。
【請求項3】
前記第3階層レベルにおいて提供される前記第1の複数のAMCコンポーネントは、前記複数のローカルAMC部のうちの対応する1つによりそれぞれ管理され、前記第1のAM拡張部に冗長性を提供する、請求項2に記載のシステム。
【請求項4】
前記第1のAM拡張部は、前記第1階層レベルに位置し、前記第3のAM機能セットは、前記第1及び第2のAM機能セットと相互排他的である、請求項2に記載のシステム。
【請求項5】
前記第1のAM機能セットは、少なくとも:
(a)前記グローバルAMC部により管理されるエンティティの調子を監視する機能、
(b)依存するエンティティに対して依存される側のエンティティの状態を通知する機能、
(c)前記エンティティのライフサイクルを管理する機能、
(d)サービスの役割を割当てる機能、
(e)役割を引き受ける機能、
(f)前記第1のAM拡張部と通信する機能、
並びに、(g)前記グローバルAMC部及び前記第1のAM拡張部のうち少なくとも1つを再起動する機能
のうちの1つを含む、請求項1に記載のシステム。
【請求項6】
前記第3の機能セットは、少なくとも:
(a)前記システムグローバルAMC部による前記第1のAM拡張部のライフサイクル制御を可能とする機能、
(b)前記グローバルAMC部と通信する機能、
(c)複数のサービスの役割のうちの1つに応じて動作する機能、
及び、(d)前記第1のAM拡張部の機能と関連付けられるアプリケーションプログラムインタフェース(API)を提供する機能、
のうちの1つを含む、請求項2に記載のシステム。
【請求項7】
前記第1のAM拡張部と関連付けられる前記第3のAM機能セットは、前記第1のAM機能セットによりサポートされない冗長化モデルを提供する、請求項2に記載のシステム。
【請求項8】
前記第1のグローバル可用性管理コア(AMC)部、前記第1の複数のローカルAMC(AMC)部、及び前記第1の複数のAMCコンポーネントは、全て第1の仮想的なクラスターと関連付けられており、
前記システムは、さらに第2の仮想的なクラスターを有し、当該クラスターは、
前記第1階層レベルにおいて関連する第4のAM機能セットを有する第2のグローバル可用性管理コア(AMC)部、
前記第2階層レベルにおいて関連する第5のAM機能セットを有する第2の複数のローカルAMC(AMC)部、
並びに、前記第3階層レベルにおいて前記サービスの可用性をサポートするために前記第4及び第5のAM機能セットを供給される第2の複数のAMCコンポーネント、
を含む、
請求項1に記載のシステム。
【請求項9】
前記システムは、関連する1つ以上のAM機能の第6のセットを有する第2のAM拡張部、をさらに有し、
前記第3階層レベルにおいて提供される前記第2の複数のAMCコンポーネントは、前記第2の複数のローカルAMCコンポーネントのうちの対応する1つによりそれぞれ管理され、前記第2のAM拡張部を冗長的に提供する、
請求項8に記載のシステム。
【請求項10】
前記第2のAM拡張部に関連付けられる前記第6のAM機能セットは、前記第4のAM機能セットによりサポートされない役割統合機能を提供する、請求項9に記載のシステム。
【請求項11】
前記システムは、
前記第1及び第2の仮想的なクラスターと通信して当該第1及び第2の仮想的なクラスターの間で可用性管理を統合する、前記第1階層レベルよりも上位の階層レベルに配置されるシステムレベルAMC
をさらに有する、請求項8に記載のシステム。
【請求項12】
サービスをサポートするハードウェアプラットフォームと;
前記サービスの可用性をサポートする可用性管理(AM)ソフトウェアエンティティであって:
関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、
及び、関連する1つ以上のAM機能の第2のセットを有する第1のAM拡張部であって、前記AMC部により供給される前記第1のAM機能セットを補うプラグインソフトウェアエンティティである当該第1のAM拡張部、
を含む前記AMソフトウェアエンティティと;
を有するシステム。
【請求項13】
前記第1のAMC部及び前記第1のAM拡張部は、第1階層レベルに配置され、
前記システムは、
第2階層レベルにおいて関連する第3のAM機能セットを有する第1の複数のローカルAMC(AMC)部、
並びに、第3階層レベルにおいて前記サービスの可用性をサポートするために前記第1及び第3のAM機能セットを供給される第1の複数のAMCコンポーネント、
をさらに有する、請求項12に記載のシステム。
【請求項14】
前記第3階層レベルにおいて提供される前記第1の複数のAMCコンポーネントは、前記複数のローカルAMC部のうちの対応する1つによりそれぞれ管理され、前記第1のAM拡張部に冗長性を提供する、請求項13に記載のシステム。
【請求項15】
前記第2のAM機能セットは、前記第1及び第3のAM機能セットと相互排他的である、請求項13に記載のシステム。
【請求項16】
前記第1のAM機能セットは、少なくとも:
(a)前記グローバルAMC部により管理されるエンティティの調子を監視する機能、
(b)依存するエンティティに対して依存される側のエンティティの状態を通知する機能、
(c)前記エンティティのライフサイクルを管理する機能、
(d)サービスの役割を割当てる機能、
(e)役割を引き受ける機能、
(f)前記第1のAM拡張部と通信する機能、
並びに、(g)前記グローバルAMC部及び前記第1のAM拡張部のうち少なくとも1つを再起動する機能
のうちの1つを含む、請求項12に記載のシステム。
【請求項17】
前記第2の機能セットは、少なくとも:
(a)前記システムグローバルAMC部による前記第1のAM拡張部のライフサイクル制御を可能とする機能、
(b)前記グローバルAMC部と通信する機能、
(c)複数のサービスの役割のうちの1つに応じて動作する機能、
及び、(d)前記第1のAM拡張部の機能と関連付けられるアプリケーションプログラムインタフェース(API)を提供する機能、
のうちの1つを含む、請求項12に記載のシステム。
【請求項18】
前記第1のAM拡張部と関連付けられる前記第2のAM機能セットは、前記第1のAM機能セットによりサポートされない冗長化モデルを提供する、請求項12に記載のシステム。
【請求項19】
前記第1のグローバル可用性管理コア(AMC)部、前記第1の複数のローカルAMC(AMC)部、及び前記第1の複数のAMCコンポーネントは、全て第1の仮想的なクラスターと関連付けられており、
前記システムは、さらに第2の仮想的なクラスターを有し、当該クラスターは、
前記第1階層レベルにおいて関連する第4のAM機能セットを有する第2のグローバル可用性管理コア(AMC)部、
前記第2階層レベルにおいて関連する第5のAM機能セットを有する第2の複数のローカルAMC(AMC)部、
並びに、前記第3階層レベルにおいて前記サービスの可用性をサポートするために前記第4及び第5のAM機能セットを供給される第2の複数のAMCコンポーネント、
を含む、
請求項13に記載のシステム。
【請求項20】
前記システムは、関連する1つ以上のAM機能の第6のセットを有する第2のAM拡張部、をさらに有し、
前記第3階層レベルにおいて提供される前記第2の複数のAMCコンポーネントは、前記第2の複数のローカルAMC部のうちの対応する1つによりそれぞれ管理され、前記第2のAM拡張部を冗長的に提供する、
請求項19に記載のシステム。
【請求項21】
前記第2のAM拡張部に関連付けられる前記第6のAM機能セットは、前記第4のAM機能セットによりサポートされない役割統合機能を提供する、請求項20に記載のシステム。
【請求項22】
前記システムは、
前記第1及び第2の仮想的なクラスターと通信して当該第1及び第2の仮想的なクラスターの間で可用性管理を統合する、前記第1階層レベルよりも上位の階層レベルに配置されるシステムレベルAMC
をさらに有する、請求項19に記載のシステム。
【請求項23】
ハードウェアプラットフォームによりサービスを提供するステップと;
前記サービスの可用性をサポートする可用性管理(AM)ソフトウェアエンティティを分散配置するステップと;
を含む方法であって、
分散配置される前記AMソフトウェアエンティティは:
第1階層レベルにおいて関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、
第2階層レベルにおいて関連する第2のAM機能セットを有する第1の複数のローカルAMC(AMC)部、
並びに、第3階層レベルにおいて前記サービスの可用性をサポートするために前記第1及び第2のAM機能セットを供給される第1の複数のAMCコンポーネント、
を有する、
方法。
【請求項24】
関連する1つ以上のAM機能の第3のセットを有する第1のAM拡張部であって、前記AMC部により供給される前記第1のAM機能セットを補うプラグインソフトウェアエンティティである当該第1のAM拡張部を提供するステップ、
をさらに含む、請求項23に記載の方法。
【請求項25】
前記第3階層レベルにおいて提供される前記第1の複数のAMCコンポーネントは、前記複数のローカルAMC部のうちの対応する1つによりそれぞれ管理され、前記第1のAM拡張部に冗長性を提供する、請求項23に記載の方法。
【請求項26】
前記第1のAM拡張部は、前記第1階層レベルに位置し、前記第3のAM機能セットは、前記第1及び第2のAM機能セットと相互排他的である、請求項24に記載の方法。
【請求項27】
前記第1のAM機能セットは、少なくとも:
(a)前記グローバルAMC部により管理されるエンティティの調子を監視する機能、
(b)依存するエンティティに対して依存される側のエンティティの状態を通知する機能、
(c)前記エンティティのライフサイクルを管理する機能、
(d)サービスの役割を割当てる機能、
(e)役割を引き受ける機能、
(f)前記第1のAM拡張部と通信する機能、
並びに、(g)前記グローバルAMC部及び前記第1のAM拡張部のうち少なくとも1つを再起動する機能
のうちの1つを含む、請求項23に記載の方法。
【請求項28】
前記第3の機能セットは、少なくとも:
(a)前記システムグローバルAMC部による前記第1のAM拡張部のライフサイクル制御を可能とする機能、
(b)前記グローバルAMC部と通信する機能、
(c)複数のサービスの役割のうちの1つに応じて動作する機能、
及び、(d)前記第1のAM拡張部の機能と関連付けられるアプリケーションプログラムインタフェース(API)を提供する機能、
のうちの1つを含む、請求項24に記載の方法。
【請求項29】
前記第1のAM拡張部と関連付けられる前記第3のAM機能セットは、前記第1のAM機能セットによりサポートされない冗長化モデルを提供する、請求項24に記載の方法。
【請求項30】
前記第1のグローバル可用性管理コア(AMC)部、前記第1の複数のローカルAMC(AMC)部、及び前記第1の複数のAMCコンポーネントは、全て第1の仮想的なクラスターと関連付けられており、
前記方法は、さらに第2の仮想的なクラスターを提供するステップ、を含み、
当該第2の仮想的なクラスターは、
前記第1階層レベルにおいて関連する第4のAM機能セットを有する第2のグローバル可用性管理コア(AMC)部、
前記第2階層レベルにおいて関連する第5のAM機能セットを有する第2の複数のローカルAMC(AMC)部、
並びに、前記第3階層レベルにおいて前記サービスの可用性をサポートするために前記第4及び第5のAM機能セットを供給される第2の複数のAMCコンポーネント、
を有する、
請求項23に記載の方法。
【請求項31】
前記方法は、関連する1つ以上のAM機能の第6のセットを有する第2のAM拡張部を提供するステップ、さらに含み、
前記第3階層レベルにおいて提供される前記第2の複数のAMCコンポーネントは、前記第2の複数のローカルAMCコンポーネントのうちの対応する1つによりそれぞれ管理され、前記第2のAM拡張部を冗長的に提供する、
請求項30に記載の方法。
【請求項32】
前記第2のAM拡張部に関連付けられる前記第6のAM機能セットは、前記第4のAM機能セットによりサポートされない役割統合機能を提供する、請求項31に記載の方法。
【請求項33】
前記第1及び第2の仮想的なクラスターと通信して当該第1及び第2の仮想的なクラスターの間で可用性管理を統合する前記第1階層レベルよりも上位の階層レベルに配置されるシステムレベルAMCを提供するステップ、をさらに有する、請求項30に記載の方法。
【請求項34】
ハードウェアプラットフォームによりサービスを提供するステップと;
可用性管理(AM)ソフトウェアエンティティにより前記サービスの可用性をサポートするステップと;
を含む方法であって、
前記AMソフトウェアエンティティは:
関連する第1のAM機能セットを有する第1のグローバル可用性管理コア(AMC)部、
及び、関連する1つ以上のAM機能の第2のセットを有する第1のAM拡張部であって、前記AMC部により供給される前記第1のAM機能セットを補うプラグインソフトウェアエンティティである当該第1のAM拡張部、
を有する、
方法。
【請求項35】
前記第1のAMC部及び前記第1のAM拡張部は、第1階層レベルに配置され、
前記方法は、
第2階層レベルにおいて関連する第3のAM機能セットを有する第1の複数のローカルAMC(AMC)部を提供するステップと、
第3階層レベルにおいて前記サービスの可用性をサポートするために前記第1及び第2のAM機能セットを供給される第1の複数のAMCコンポーネントを提供するステップと、
をさらに含む、請求項34に記載の方法。
【請求項36】
前記第3階層レベルにおいて提供される前記第1の複数のAMCコンポーネントは、前記複数のローカルAMC部のうちの対応する1つによりそれぞれ管理され、前記第1のAM拡張部に冗長性を提供する、請求項35に記載の方法。
【請求項37】
前記第2のAM機能セットは、前記第1及び第3のAM機能セットと相互排他的である、請求項35に記載の方法。
【請求項38】
前記第1のAM機能セットは、少なくとも:
(a)前記グローバルAMC部により管理されるエンティティの調子を監視する機能、
(b)依存するエンティティに対して依存される側のエンティティの状態を通知する機能、
(c)前記エンティティのライフサイクルを管理する機能、
(d)サービスの役割を割当てる機能、
(e)役割を引き受ける機能、
(f)前記第1のAM拡張部と通信する機能、
並びに、(g)前記グローバルAMC部及び前記第1のAM拡張部のうち少なくとも1つを再起動する機能
のうちの1つを含む、請求項34に記載の方法。
【請求項39】
前記第2の機能セットは、少なくとも:
(a)前記システムグローバルAMC部による前記第1のAM拡張部のライフサイクル制御を可能とする機能、
(b)前記グローバルAMC部と通信する機能、
(c)複数のサービスの役割のうちの1つに応じて動作する機能、
及び、(d)前記第1のAM拡張部の機能と関連付けられるアプリケーションプログラムインタフェース(API)を提供する機能、
のうちの1つを含む、請求項34に記載の方法。
【請求項40】
前記第1のAM拡張部と関連付けられる前記第2のAM機能セットは、前記第1のAM機能セットによりサポートされない冗長化モデルを提供する、請求項34に記載の方法。
【請求項41】
前記第1のグローバル可用性管理コア(AMC)部、前記第1の複数のローカルAMC(AMC)部、及び前記第1の複数のAMCコンポーネントは、全て第1の仮想的なクラスターと関連付けられており、
前記方法は、第2の仮想的なクラスターを提供するステップ、をさらに含み、
前記第2の仮想的なクラスターは、
前記第1階層レベルにおいて関連する第4のAM機能セットを有する第2のグローバル可用性管理コア(AMC)部、
前記第2階層レベルにおいて関連する第5のAM機能セットを有する第2の複数のローカルAMC(AMC)部、
並びに、前記第3階層レベルにおいて前記サービスの可用性をサポートするために前記第4及び第5のAM機能セットを供給される第2の複数のAMCコンポーネント、
を含む、
請求項35に記載の方法。
【請求項42】
前記方法は、関連する1つ以上のAM機能の第6のセットを有する第2のAM拡張部を提供するステップ、をさらに含み、
前記第3階層レベルにおいて提供される前記第2の複数のAMCコンポーネントは、前記第2の複数のローカルAMC部のうちの対応する1つによりそれぞれ管理され、前記第2のAM拡張部を冗長的に提供する、
請求項41に記載の方法。
【請求項43】
前記第2のAM拡張部に関連付けられる前記第6のAM機能セットは、前記第4のAM機能セットによりサポートされない役割統合機能を提供する、請求項42に記載の方法。
【請求項44】
前記第1及び第2の仮想的なクラスターと通信して当該第1及び第2の仮想的なクラスターの間で可用性管理を統合する、前記第1階層レベルよりも上位の階層レベルに配置されるシステムレベルAMCを提供するステップ、をさらに含む、請求項41に記載の方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公表番号】特表2010−514047(P2010−514047A)
【公表日】平成22年4月30日(2010.4.30)
【国際特許分類】
【出願番号】特願2009−542353(P2009−542353)
【出願日】平成19年12月17日(2007.12.17)
【国際出願番号】PCT/IB2007/055186
【国際公開番号】WO2008/078281
【国際公開日】平成20年7月3日(2008.7.3)
【出願人】(598036300)テレフオンアクチーボラゲット エル エム エリクソン(パブル) (2,266)
【Fターム(参考)】