JP2005512190A - ネットワーク化システムにおけるリソースの高可用性をもたらす実複合オブジェクト - Google Patents

ネットワーク化システムにおけるリソースの高可用性をもたらす実複合オブジェクト Download PDF

Info

Publication number
JP2005512190A
JP2005512190A JP2003550059A JP2003550059A JP2005512190A JP 2005512190 A JP2005512190 A JP 2005512190A JP 2003550059 A JP2003550059 A JP 2003550059A JP 2003550059 A JP2003550059 A JP 2003550059A JP 2005512190 A JP2005512190 A JP 2005512190A
Authority
JP
Japan
Prior art keywords
service
members
composite resource
node
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003550059A
Other languages
English (en)
Other versions
JP2005512190A5 (ja
Inventor
ブラウアー,デービッド
コールレイン,キャロル
クライトン,ジョナサン
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2005512190A publication Critical patent/JP2005512190A/ja
Publication of JP2005512190A5 publication Critical patent/JP2005512190A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5011Pool
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/505Clust

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

複数のメンバーを含む複合リソースが確立される。上記メンバーは各々が類似のサービスを提供することができる。複合リソースにおける各々のメンバーの状態を監視する調整部が設けられる。或るコンポーネントがサービスを調整部に要求する。調整部は、サービスがこのコンポーネントへ複合リソースの特定のメンバーにより提供されるよう手配する。この特定のメンバーが活性でなくなると、このコンポーネントへのサービスの提供は自動的に複合リソース内の別のメンバーによって行なわれる。複合リソースの状態は、複合リソース内の各々のメンバーの状態から独立して維持される。

Description

参照出願
本願は、コルレイン(Colrain)他を発明者とする「高可用性フレームワークで利用される単純リソースおよび複合リソースのための高速回復イベント、仮想複合オブジェクトおよび可能化/不能化属性(“Rapid Recovery Events, Virtual Composite Objects, And Enable/Disable Attributes For Simple and Composite Resources For Use In A High
Availability Framework”)」と題された、2001年11月30日に出願の米国仮特許出願連続番号第60/334,349号および、「ネットワーク化システムにおけるリソースの高可用性をもたらす仮想複合オブジェクト(“Virtual Composite Objects for Providing High Availability of Resources on Networked Systems”)」と題された、2002年11月15日に出願の米国仮特許出願連続番号第60/426,587号(代理人事件番号第50277−1968号)の優先権の利益を主張する。上記優先権出願はここに引用により援用される。
発明の分野
この発明はネットワーク化システムのリソース管理に関する。特定的にこの発明は、ネットワーク化システムを管理するための実複合オブジェクトに関する。
発明の背景
複数のノードからなるクラスタにおいて、リソースの可用性は重要な考慮事項である。このため、クラスタ内のリソースのうちいくつかを冗長的に利用可能とすることによりクラスタの信頼性および可用性を高めている。通常、1つのノードまたはリソースが障害を起こすと、別のノードにある類似のリソースを利用できるようにするための機構が存在する。
現在のシステムではノードのリソースはスタックにされる。スタック内ではリソース間に依存性が構築される。したがって、中間の層のリソースはより低い層のリソースに対して依存性を有し、一方でアプリケーションまたはその他最上レベルのプログラムはこれより下の層のリソースに対する依存性を有することがあり得る。過去においては、障害の発生時におけるスタック内のリソース間依存性の管理が問題となっていた。
1つの解決法としては、障害が生じたノードのスタックを完全に、異なるノードにおいて復元することである。この一般的に講じられる解決法では、障害を起こしたリソースがただ1つの場合でもスタック全体を他の所で復元する。その結果、1ノードにあるリソースが障害を起こすと、障害が生じたノードに冗長のサービスを提供するシステムの能力に遅延が生じる。しばしばこの遅延は、このノードクラスタから提供されるサービスの品質および可用性が妨害されるほど長くなることがある。
過去に試みられたもう1つの解決法としては、障害が起きた際、フレームワークを用いてノード間の切換を容易にすることがあった。この種の解決法においては、クラスタ内のノード同士を相互接続するフレームワークが、障害の生じたノードのスタックを立て直す。このようなシステムでは、ノードクラスタの可用性は、フレームワークの応答性と、フ
レームワークがリソースのスタックを異なるノードで復元する能力とに依存する。
以下、添付の図面の各図を参照してこの発明を限定的でなく例示的に説明する。図中では同様の参照番号は同様の構成要素を指す。
発明の詳細な説明
ネットワーク化システムにおけるリソースの高可用性をもたらす方法および装置を記載する。以下の記載においては、この発明の完全な理解がもたらされるよう説明上多くの具体的な詳細について述べる。しかし、この発明がこれら具体的な詳細なしに実施可能であることは明らかであろう。一方で、周知の構造および装置についてはこれをブロック図の形で示すことによりこの発明を不必要に不明瞭にすることを避けている。
一般的な概観
一実施例に従うと、フレームワークにおけるリソースが、複数のメンバーを含む複合リソースを確立する。これらメンバーは各々が類似のサービスを提供することができる。フレームワークエージェントが複合リソース内の各々のメンバーの状態を監視する。或るコンポーネントがネットワークIPアドレスおよびリスナーなどのリソースを用いてサービスを要求する。ネットワークリスナーなどのリソースは、このサービスが複合リソースにおける1つ以上のメンバーによりこのコンポーネントに提供されるよう手配する。この特定のメンバーが活性でなくなると、このコンポーネントへのサービスの提供は自動的に複合リソース内の他のメンバーによって行なわれる。複合リソースの状態は、複合リソース内の各々のメンバーの状態から独立して維持される。
別の実施例に従うと、ノードクラスタにおいて、多数のメンバーを含む複合リソースを確立することにより、コンポーネントがフレームワークにおいて管理される。各々のメンバーは類似のサービスを提供するように動作可能である。1組の分散した論理がクラスタしたがってノードに常駐する。論理はフレームワークエージェントにより実行可能である。この論理は、上記複数のノードにおける1ノードが障害を起こしても引続き機能するように構成され得る。論理を利用する各々のメンバーの状態についての情報が収集される。各々のメンバーの状態からサービスについてサービスレベルが判断される。上記1組の分散した論理は、サービスが1つ以上のメンバーにより要求側のコンポーネントに提供されるよう手配し、これは、上記サービスのレベルが、サービスが利用不可能であることに対応するまで行なわれる。
一実施例では、上記分散した論理により、複合リソースにおける各々のメンバーは、このメンバーを始動させる、このメンバーを停止させるまたは複合リソースの状態を確認するための処置を実行することが可能となる。分散した論理が実行し得るその他の処置には、メンバーの可能化または不能化のうちいずれか状態に関する処置が含まれる。
別の実施例では、関心の向けられたイベントが高可用性フレームワークへ先回りして提供される。複数のコンポーネントが実行されるフレームワークでは、これらコンポーネントを定期的にポーリングすることにより関心の向けられたイベントの発生を検出する。さらに、1つ以上のコンポーネントについてモニタが確立される。或るコンポーネントが関心の向けられたイベントの発生を引起こした後、モニタは、フレームワークが第1のコンポーネントをポーリングするのを待つことなく、関心の向けられたイベントをフレームワークへ先回りして通信する。
別の実施例では、異なるノードに常駐するメンバーから複合リソースを確立することにより、コンポーネントがフレームワーク内で管理される。これらメンバーは各々が類似の
サービスを提供することができる。上記複数のノードのいずれかにあるメンバーを不能化するメッセージがフレームワークにより受取られ得る。メッセージが受取られるのに応答して、このメンバーは複合リソースのための候補としてもはや利用可能ではなくなる。メンバーが利用不可能であることは、メンバーがオフラインであることに対応し得る。
用語の説明
「複合リソース」とは、或る共通のサービスを提供する複数のメンバーからなる構成体である。サービスは或るメンバーの実行する1つ以上の機能に対応し得る。「均質」な複合リソースとは、機能または構造のいずれかに関しほぼ同一のメンバーを有する複合リソースに対応するものである。これに代えて、複合リソースは「不均質」の属性を有することもあり、ここではメンバーの機能または構造に差異が存在する。このように、複合リソースにおける各々のメンバーの提供するサービスは同一である必要はなく、また等価である必要すらない。
「メンバー」とは、ネットワーク化システムのノードにあるリソースであって、複合リソースにより定義される或る機能またはサービスを実行するために用いられ得るものである。メンバーの例としては、アプリケーション、アプリケーションのインスタンス、およびその他ノードの内部および外部の通信を可能にし容易にするためのリソースがある。
「フレームワーク」とは、ここで用いられる場合には、システム内の或るコンポーネントが障害を起こした際にこのコンポーネントの提供するサービスの受取側が経験する遅延を最小限にするためのソフトウェアまたはその他の論理を指す。フレームワークは異なる場所にある多数のノードにより共用され得るよう分散していることがある。
「実質的に等価」という表現は、1つの比較点(量、機能または結果)と別の比較点とが同一またはわずかだけ外れていることを意味する。2つのリソースの実行する機能が互いに対し90%の相関を有する場合、これらのリソースは実質的に等価であるといわれる。
本願全体を通じ、「第1」、「第2」および「第3」という用語は、事項同士を区別するための識別名として用いる。これらの用語が事項の識別名として用いられている場合、これらの用語が指しているのは時間的な順番ではない。たとえば「第1のコンポーネント」という用語は、「第2のコンポーネント」とは異なるコンポーネントであるという意味であって、必ずしも第2のコンポーネントに対し時間的に最初のコンポーネントであるという意味ではない。もう1つの例として、第1のメンバーは活性なメンバーに対応し、第2のメンバーは、1つ以上の他の活性なメンバーのための予備メンバーに対応するということがあり得る。
複合リソースを用いたサービスの提供方法
図1を参照して、ノードクラスタにおいて複合リソースを用いてサービスを提供する方法を記載する。このノードクラスタは、その他の装置およびコンポーネントを含むネットワーク化システムの一部であり得る。一実施例では、複合リソースはノードクラスタに常駐するメンバーによって形成される。ノードクラスタにおける複合リソースを含むシステムの一例を図2および図3に与える。
ステップ110にて、ノードクラスタに常駐するメンバーから複合リソースを確立する。これらメンバー同士を互いに関連付けて、各々のメンバーが類似のサービスをこのサービスを要求するコンポーネントに提供するようにできる。これらメンバーを交換可能とすることにより、類似のサービスが上記複数のメンバーのうちいずれによっても提供可能とすることができる。メンバーの構造および機能は、複合リソースの提供しているサービス
により決定される。たとえばデータベースアプリケーションサービスは、データベースアプリケーションのインスタンスであるメンバーにより形成された複合リソースを有し得る。
一実施例では、複合リソースの提供するサービスは単一のシステムのイメージを有する。その結果、サービスを提供するのに必要な複雑さが、クライアント、ユーザまたはその他サービスを要求している実体(エンティティ)から隠れる。サービスでは、ノードクラスタに冗長の部分が組み込まれていることからもたらされる利益を要求側の実体が享受することが可能である。サービスを提供するメンバーは複合リソース内の別のメンバーへと透明に切換えられ得る。これはこれらメンバーが異なるノードに常駐している場合でも該当する。
また、複合リソースにより、メンバーがサービスの機能を提供している際にこれらメンバーをより効果的に管理することができる。たとえば、複合リソースを用いて、複合リソースの各メンバーを個々にスケジューリングする必要なしにノードクラスタ内管理の計画をすることができる。したがって、1つのメンバーまたはメンバーのノードを整備のために撤去した際に、このノードから提供されるサービスは、別のノードに常駐する別のメンバーから透明かつ自動的に提供される。
さまざまな種類のサービスを提供する複合リソースが確立され得る。サービスの種類の例には、データベースサービス、機能サービス、データ依存サービス、接続前サービスが含まれる。データベースサービスとは、データベースサーバのインスタンスの実行により行なわれる機能に対応するものであり得る。機能サービスとは、データベースアプリケーションの実行の際に一まとめにされる特定の機能を指し得る。データ依存サービスとは、セッションをサービスおよびリソースへルーティングするプロセスを指す。特定のセッションが特定のリソースの利用を宣言し、データ依存サービスがこのセッションを、これがサービスを受取ることのできる場所へとルーティングすることがあり得る。接続前サービスは、障害の場合に他のサービスをサポートするアプリケーションおよびその他のリソースに対応する。
一実施例に従うと、ユーザは複合リソースの確立に必要な命令および/またはデータを入力する。複合リソースの形成はユーザの所望のサービスに基づき得る。たとえばユーザが入力するのは、サービスが受取られるべき好ましい場所に対応するインスタンスの一覧であり得る。ユーザはまた、支援のためにサービスが提供されるべき他の場所において追加のインスタンスを指定することができる。この例では、複合リソースは、サービスを提供するのに用いるコンポーネントのインスタンスによって形成され、こうして各々のインスタンスが複合リソースのメンバーとなる。
ステップ120にて、複合リソース内のメンバーの1つからサービスが要求側コンポーネントに提供される。要求側コンポーネントは、これらメンバーが常駐するノードの外部にあるクライアント端末であり得る。これに代えて、要求側コンポーネントはノードの1つに常駐してサービスを要求し実行することもできる。これに従い一実施例では、類似のリソースを提供することになるメンバーの選択は要求側コンポーネントの場所に基づき得る。この場所は、中間の層のアプリケーションまたはクライアント端末に対して透明であり得る。
ステップ130にて、サービスを提供するメンバーがサービスを提供できなくなったことが検出される。これはさまざまな状況に対応し得る。まず、このメンバーのノードの障害によってこのメンバーが障害を起こすことがあり得る。これに代わって、このメンバー自体が障害を起こし、一方でノードは依然として機能していることがあり得る。別の例と
して、ノードとメンバーとがともに整備計画のために停止されることもあり得る。
ステップ140にて、複合リソースは自分自身を再評価することにより、その状態とその各メンバーの状態とを判断する。この判断には、複合リソース内の別のメンバーがサービスを提供するために利用可能であるかどうかの判断が含まれ得る。したがって一実施例では、この判断のためには、この複合リソースを形成する少なくとも1つの他のメンバーが活性または動作していると識別されることが必要である。これに加えて、上記他のメンバーが利用可能またはその他でサービスを提供可能であるかどうかの判断が行なわれ得る。
これに代えて、ステップ140にて、サービスを提供していたメンバーが障害を起こした際に複合リソースの特定の濃度(cardinality)が満足されたかどうかについて判断することもある。1つの一般的な事例では、ノードクラスタにある1メンバーの濃度が「1」であると仮定されるが、実施例によってはより高い濃度が指定されることもある。たとえば濃度が「3」である場合があり、この場合、複合リソースが活きている(alive)と考えられるためには、この複合リソースのメンバー3つが活きていなければならない。
ステップ140にて複合リソースを形成する別のメンバーがサービスを提供可能であると判断された場合、ステップ150にて要求側コンポーネントがこのメンバーからサービスを受取る。一実施例では、1ユーザに提供されているサービスの遷移は、ユーザにとって透明な新たな場所から継続することになる。サービスが、このサービスを提供する1つ以上の他のメンバーへ移転される前に、ユーザがサービスの中断を受取ることがあり得る。これに代えて、サービスを提供するメンバーが障害を起こした際、他の活性なメンバー間でサービスを移転してユーザが連続的なサービスを受取るようにする。このような実施例では、複合リソースのメンバー同士はその性質上均質であり得る。その結果、要求側コンポーネントに提供されるサービスは中断されない。これに加え、サービスが提供されているノードにある他のコンポーネントがサービスに依存することもある。メンバー間で遷移がなされる際にこれらコンポーネントの性能が受ける影響は顕著なものではない。したがって、図1に記載したような実施例により、複合リソースのメンバー間で遷移がなされる際に遅延が生じることなくサービスを連続的に提供することができる。
複合リソースが不均質なメンバーから形成される場合、各々のメンバーの提供するサービスの品質または性質は異なり得る。しかし、複合リソースのサービスを規定する共通の機能は連続的に提供され、かつ可能な限り透明に提供される。
ステップ140にて、複合リソースを形成するメンバーでサービスを提供できるものが他にないと判断された場合、ステップ160にて、この複合リソースが提供するサービスは停止される。一実施例では、複合リソースが利用可能とされるのは、或る数の、または指定されたいくつかのメンバーが再始動できる場合のみである。
複合リソースを利用するためのシステム
図2は、複数のノードからなるクラスタにおいて実複合リソースを確立し利用するための基本的なシステムを例示する。この複合リソースは、ノードクラスタの内部または外部のいずれかに常駐し得る他のコンポーネントにサービスを提供する。図2に示すような実施例では、複合リソースはクラスタ内のノードのうち少なくとも1つに対し物理的な依存性を有し、この点で複合リソースは「実(real)」と言われる。図3に示すような他の実施例では、複合リソースはいかなる個々のノードに対しても物理的な依存性を有さず、この点で複合リソースは「仮想(virtual)」のものである。
一実施例では、システム200は第1のノード210と、第2のノード220と、第3
のノード230とを含む。第1のノード210は第1のリソース212と、第1のメンバー214と、第1のコンポーネント216とを含む。第2のノード220は第2のリソース222と、第2のメンバー224と、第2のコンポーネント226とを含む。同様に、第3のノード230は第3のリソース232と、第3のメンバー234と、第3のコンポーネント226とを含む。第1のメンバー214、第2のメンバー224および第3のメンバー234は実複合リソース240を形成するように確立され得る。
第1のノード210、第2のノード220および第3のノード230の各々にはフレームワーク260が存在する。フレームワーク260を異なるノードに常駐する区画の形で例示するが、一実施例ではフレームワーク260はノードすべてに存在する単一の論理的実体を形成する。フレームワーク260は、各々のノードにおいてフレームワークエージェント266の形で存在することができ、これはローカルなノードにあるリソースのための機能を実行する。フレームワーク260は、障害を起こしたノードのアプリケーションおよびリソースを他のノードにおいて再びスタック化する機能を含み得る。一実施例では、フレームワーク260は、複合リソース240を確立してサービスを他のコンポーネントに提供するためのコードを実行する。レジストリ262は、フレームワーク260および/または調整部250により利用され、複合リソース240の各メンバーについての状態情報を格納することができる。この状態情報は、複合リソース240内のメンバーが活性か非活性かを示すことができる。レジストリ262はフレームワーク260の一部であり得るが、またはこれに代えてレジストリがフレームワークの外部に常駐することもある。
実複合リソース
図2に示すようなシステムでは、複合リソース240は「実」であると考えられるが、それは複合リソースがフレームワーク260によって、システム内のノードのうち1つにおいて直接動作しかつこれに依存していると見なされるからである。フレームワーク260が複合リソース240の場所として見なす特定のノードは任意であり、複合リソース240の動作の進行に伴い何度も変わり得る。したがってノード210,220,230は、特定の瞬間にそのいずれもが複合リソース240を含んでいると見なされ得るという点で互いに等しい。
図2では、複合リソース240がノードのうち1つにおいて存在すると見なされる態様を調整部250によって例示してある。一実施例で調整部250は実際には、フレームワーク260において実行されて複合リソース240を評価するコードである。調整部250は実際、ノードすべてにわたって分散したフレームワークエージェントおよびリソースの表現であり得る。しかし、複合リソースにより実行されることになる機能に対応する命令をフレームワーク260が実行するとき、これら機能(および複合リソース240)は1つのノードにおいて実行されていると見なされる。
このように、「実」複合リソース240はノードから独立しており、複合リソースが依存する特定のノードは任意に決定でき、変更可能である。ある特定の時刻にて、複合リソース240が常駐する所であると見なされたノードが障害を起こすと、この複合リソースは別のノードにおいて透明に再始動される。複合リソース240のメンバーはなお複合リソース240の外側で機能するよう動作可能であり、サービスには変更が生じない。複合リソース240は動作中のメンバーに基づいて再始動および再評価される。
本願の目的のために、調整部250はフレームワークリソース、たとえばフレームワークエージェント266を参照し、これは実行されるとフレームワーク内のすべてのリソースについての調整活動をする。後でより詳細に説明するように、これらの機能としては、メンバーによるサービスの提供を開始する、メンバーによるサービスの提供を停止する、
複合リソース240を回復する、および、障害を起こしたメンバーの特定の複合リソースジョブを複合リソース240における他のメンバーへと再配置するなどが挙げられる。たとえばサービスをコンポーネント205に提供しているメンバーが障害を起こした際、調整活動により、他のメンバーの1つ(またはそれ以上)が同じサービスをこのコンポーネントに提供するよう手配される。
図2では、「実」複合リソース240が、そのメンバーの常駐するクラスタノードの1つに依存し得る点を説明するために、調整部250を1つのノードに常駐するものとして示す。調整部250のノードは、フレームワーク260により複合リソース240が常駐していると見なされるノードに対応すると仮定され得る。上述のように、複合リソース240が常駐していると見なされる特定のノードは任意に選択され変更可能である。したがって、調整部250の位置がノード同士の重要性の異なりを示していると見なすべきではない。
フレームワーク260が複合リソース240をノードの1つに物理的に存在するものとして扱い得る理由として、フレームワーク自体の既存の制約がある。この制約のため、場合によりフレームワーク260は、複合リソース240の実行する機能を任意の1つの特定のノードと関連していないと見なすことができなくなることがある。そこで、調整部250がその場所を1つのノードに有するとして示してある図2の実施例では、フレームワーク260についてあり得るこのような制約を勘案する。図2に示すような実施例が複合リソース240のサービスを連続的に提供することに関し効果的であるのは、フレームワーク260により複合リソースが特定のインスタンスに常駐すると見なされる特定のノードが障害を起こしていない場合である。このような障害が起こると、複合リソース240は回復の必要があり得る。回復のプロセスは、複合リソース240を再始動するステップと、この複合リソースを再評価してその個々のメンバーの状態を判断するステップとを含み得る。しかしほとんどの場合、複合リソース240についてのメンバーを提供するノードは多数ある。ノードすべてが複合リソース240の常駐する所であると見なされ得るため、1つのノードが障害を起こして複合リソース240を停止させてしまうということが起こるのは稀である。
複合リソース240はフレームワーク260の制約を勘案するとともに、そのメンバーの性能および利用しやすさを向上させる多くの機能を提供する。たとえば、複合リソース240内で動作するメンバーは、自動化されたフレームワーク動作および透明な負荷共有トポロジーを提供する。その他複合リソース240の結果として提供され得るサービスとしては、複合リソースが供給され得る多数のクライアントのための接続および実行時の作業負荷管理がある。複合リソースではさらに、追加の能力をオンデマンドで提供することが容易となる。たとえば複合リソース240の濃度は、複合リソースにより実行される作業量に対するいくつかの前提条件に応じて自動的に増加され得る。複合リソースにより実行され得る作業が取引可能にされることもある。
調整部
上述のように、調整部250は、調整活動を行なうフレームワークリソースおよびエージェントを表わすものである。一実施例では、調整部250はまた、複合リソース240のメンバーのリソースを含むことができ、これはこのような調整活動をフレームワークリソースの代わりにまたはこれに追加して行なう。一実施例では、調整活動には、複合リソース240の個々のメンバーを始動すること、個々のメンバーを停止すること、および複合リソース240の個々のメンバーを回復することが含まれる。複合リソースが回復される態様は予め定められたプロトコルに従うことができる。このプロトコルにより、たとえば複合リソース240のサービスの再始動、および複合リソースメンバーの状態の再評価がなされる。
一実施例で、負荷管理ソフトウェアは、サービスを要求している実体に複合リソース240の特定のメンバーがサービスを提供するよう手配する。サービスを提供しているメンバーがサービスの提供をやめる(メンバーまたはノードが障害を起こす)と、調整部250は複合リソース240内の別のメンバーがサービスをこの実体に提供するよう手配する。複合リソース内のすべての活性なメンバーは実行時に作業負荷を共有し、障害を起こしたメンバーからサービスを受取っていたコンポーネントのために回復時および修理時に作業負荷を改めて釣り合わせる。
複合リソースの或るメンバーが停止または障害を起こすたびに複合リソースの再評価がなされる。複合リソース240のメンバーは引続き、この複合リソースが再評価されるまでこの複合リソースの外側で動作する。複合リソース240を回復するための機能は、フレームワーク260のリソースおよび/またはフレームワークエージェント266により実行される。複合リソース240の回復は、個々のメンバー、特定のフレームワークリソース、および/または、その他調整活動を実行するために用いられるリソースの組の一部をなさないリソースにより実行される。
一実施例では、調整部250は、1つのノードに常駐する要求側コンポーネントにサービスが提供されるよう手配する。これに代えて、要求側コンポーネントがクライアントコンポーネント205などの外部コンポーネントに対応することもあり得る。フレームワークエージェント266により実行される調整活動は、複合リソース240が利用可能である限り活性である。調整部250を設けるのに用いられるリソースは、管理者が複合リソース240およびそのメンバー214,224,234と対話するためのインターフェイスを設けるためにもまた用いられ得る。
システム動作の一例として、第1のコンポーネント216は複合リソース240の提供するサービスを要求する。第1のコンポーネント216からの要求は、調整部250により表わされるリソースに対して行なわれ得る。調整部250は第1のメンバー214がサービスを提供するよう手配する。第1のコンポーネント216は第1のノード210に常駐するので、調整部250はこのサービスが第1のメンバー214によって第1のコンポーネント216に提供されるよう手配し得るが、コンポーネント216へのサービスの提供は、その他複合リソースを形成するどのメンバーから行なわれてもよい。サービスを提供するには、第1のメンバー214は第1のリソース212の利用に依存し得る。たとえば第1のリソース212は、他のコンピュータまたはデータベースと通信するための或るインターフェイスまたは下層のアプリケーションに対応し得る。
一実施例に従うと、図1に示したシステムにおいて、複合リソース240の或るメンバーがサービスの提供をやめたときにおけるサービスの可用性がもたらされる。第1のメンバー214が障害を起こすと、複合リソース240の別のメンバーが第1のメンバーと類似の態様でサービスを提供することができる。第1のコンポーネント216は、透明に、サービスの受取りにおいて意識されるほどの中断なしに切換わってこの別のメンバーからサービスを受取ることができる。この別のメンバーにより提供されるサービスの品質レベルは類似または等価のレベルとされ得る。したがって、第1のメンバー214が障害を起こした場合、調整部250は第2のメンバー224がサービスをコンポーネント216に提供するよう自動的に手配することができる。
1メンバーから別のメンバーへサービスが切換わることを結果として引起こす障害は、ノード全体の障害によるものである場合がある。また、障害がメンバーの障害に限定されノードは依然として機能していることもある。さらに、ノードのリソースが障害を起こし複合リソース240が作動できなくなることもある。
図2に示すような例では、図示する障害の種類は第1のメンバー214のみの障害であり、ノード210および第1のリソース212は依然として動作している。障害の検出に応答して調整部250は、当該のサービスが第2のノード220の第2のメンバー224から第1のコンポーネント216に提供されるよう自動的に手配する。この切換は透明に行なわれ、すなわちサービスの受取側はサービスが新たな場所から提供されていることを意識しない。しかし、受取側のコンポーネントが中断を受取ることもあり得る。この中断は低レベルのネットワーク活動でのものとされ得るので、ユーザへの中断の影響は透明である。
一実施例では、第2のメンバー224は第2のリソース222を用いてサービスを提供し、この第2のリソースは第1のリソース212と類似の機能を提供する。このような実施例では、メンバー224と第2のリソース222との間にはローカルな依存性があり得る。しかし依存性がグローバルなものであることもあり、この場合、メンバー224があるノードと、第2のリソース222の機能を提供するノードとは別々のものである。
サービス依存のリソースの管理
一実施例では、第1のコンポーネント216は複合リソース240の提供するサービスに依存する。第1のコンポーネント216は「弱く依存する」アプリケーションである場合があり、この場合、始動のためには複合リソース240のサービスが必要であるが、その後のこれの実行にはサービスは必要でない。その結果、第1のコンポーネント216は、第1のコンポーネント216を始動させる要求が受取られるたびに複合リソース240からサービスを要求し得る。
別の例では、サービスを要求しているコンポーネントはクライアントコンポーネント205であり、これはメンバーが常駐するノードの外部にある。この例では、第1のコンポーネント216は、複合リソース240の提供するサービスに依存するアプリケーションに対応し得る。クライアントコンポーネント205は、第1のコンポーネント216の提供する機能とともにサービスの利用を必要とし得る。
第1のノード210でのメンバーに障害があり、かつ第1のコンポーネント216が複合リソース240のサービスに依存する場合、第1のコンポーネント216は停止されるかまたは他で非活性にされ得る。コンポーネント205へのサービスの提供は、その他サービスが供給されるどのノードから行なわれてもよい。たとえばサービスが既に第2のメンバー224から利用可能であることがあり、この場合調整部250は、第1のメンバー214からサービスを受取っていた特定のコンポーネントへ第2のメンバーがサービスを提供するよう手配することができる。したがって、複合リソース240のサービスは第2のノード220の第2のメンバー224からコンポーネント205へ提供され得る。実際、複合リソース240の一部として第1のメンバー214により実行されるジョブのすべてを、第1のメンバー214の障害発生時に他のメンバーに対し等しく分散させることができる。コンポーネント205にサービスを提供する際には、第2のメンバー224は第1のリソース212または第2のリソース222のいずれを用いてもよい。第2のコンポーネント226がクライアントコンポーネント205により必要とされており、かつ第2のコンポーネント226がサービスに依存している場合、第2のコンポーネント226が実行されるのは、サービスが第2のメンバー224において始動された後である。
第1のコンポーネント216が第1のメンバー214に弱く依存しているか、または第1のコンポーネントが第1のメンバー214から独立している場合、第1のコンポーネント216は第1のメンバーの障害発生時に第1のノード210において動作しているよう維持され得る。第1のリソース212は第1のメンバー214に依存していないため、こ
れはメンバーの障害発生時でもなお第1のノード210にある他のアプリケーションまたはコンポーネントで利用されるように動作していることもできる。
障害が第1のノード210全体の障害である場合、第1のメンバー214の行なっていた作業は複合リソース240内の他の活性なメンバー間で共有される。クライアントコンポーネント205のためのサービスが第1のノードの障害発生後でも引続き提供され得るように、クライアントコンポーネント205に対して、第2のノード220にある第2のメンバー224にサービスを提供させる。第2のメンバー224は第2のリソース222を用いてサービスを提供する。第2のコンポーネント226が必要とされる場合、これもまた、コンポーネント205にサービスを提供するのに用いられる作業の実行を始めることができる。第2のノード220での必要に応じて他のリソースを始動することもできる。これら他のリソースが始動される順序は、第2のノード220内のリソース間で確立される依存性に基づいて決定され、これには複合リソース240と第2のノード内の他のリソースとの間の依存性も含まれる。
第2のノード220または第2のメンバー224において2つ目の障害が発生した場合には、負荷管理ソフトウェアは、第2のメンバーの行なっていた作業が、複合リソース240における他の活性なメンバーに分散されるよう手配する。図2に示す例では、第1のメンバー214および第2のメンバー224の行なう作業すべては、これらメンバーの障害発生時に第3のノード230の第3のメンバー234により実行され得る。一実施例では、複合リソース240におけるいずれか1つのメンバーの障害によって複合リソースの再評価が引起こされる。この再評価は、調整部250により表わされるリソースによって行なわれることもあれば、またはフレームワーク260にある他のリソースによることも、もしくは複合リソース240のメンバーによることもある。複合リソース240全体が障害を起こした場合、複合リソース240の回復を開始することができる。一実施例でこれは、サービスを提供するためになお活きているメンバーが他にない場合に対応する。別の実施例では、複合リソースについて最小濃度を指定し、そして活性なメンバーの数がこの濃度を満足させている限り複合リソースは動作していると見なされる。
一実施例では、複合リソース240の回復を開始するには、各々のメンバー214,224,234が停止されていることの検証が必要な場合がある。これに対し、複合リソースを形成する各々のメンバー214,224,234の始動が複合リソース240の回復の開始に必要な場合もある。これに代えて、複合リソース240の回復の開始には、複合リソース240についての指定された濃度が、始動したメンバーの数によって満足されていることの検証が必要であることもある。メンバーの始動はメンバーそれ自体によることも、または複合リソース240に関連付けられた別のリソースからの或る処置を介することもある。一実施例に従うと、メンバーは互いに対し独立に回復し、1つ以上のメンバーが障害を起こしかつ/または回復するたびに複合リソースが再評価される。この複合体は回復を必要としない(これが動作する物理ノードが故障しない限り)。
仮想複合リソース
図3はもう1つの実施例であって、システム300が、サービスを提供するための仮想複合リソースを含むように構成されるものを示す。図2に示した実複合リソースと同様、複数のノードからなるクラスタの内部または外部に常駐する実体に対して仮想複合リソース340がサービスを提供するシステムを記載する。仮想複合リソースの1つの特徴は、どの1ノードに対する物理的依存性もないことである。むしろ仮想複合リソースは、複合リソースが1つのノードにおいて物理的な場所を有するフレームワークまたはその他のコンポーネントからの処理なしに論理またはソフトウェアの形でさまざまなノードに対して等しくプロセスを分散させる。プロセスを分散させたことにより、クラスタ内のノードのうちいずれか1つが障害を起こしてもプロセスは依然として実行可能である。このように
、仮想複合リソースが用いられる実施例では、実複合リソースの物理的制約への対処がなされるとともに、同じ基本的な機能および特徴が提供される。
一実施例では、システムは第1のノード310と、第2のノード320と、第3のノード330(第nのノードを表わす)とを含む。第1のノード310は第1のリソース312と、第1のメンバー314と、第1のコンポーネント316とを含む。第2のノード320は第2のリソース322と、第2のメンバー324と、第2のコンポーネント326とを含む。同様に、第3のノード330は第3のリソース332と、第3のメンバー334と、第3のコンポーネント326とを含む。第1のメンバー314、第2のメンバー324および第3のメンバー334は仮想複合リソース340を形成する。
第1のノード310、第2のノード320および第3のノード330の各々にはフレームワークエージェント366が常駐する。フレームワークエージェント366はフレームワーク360と通信する。レジストリ362がフレームワーク360に設けられる。レジストリ362はフレームワークエージェント366にとってアクセス可能である。フレームワークエージェント366のため、フレームワーク360は、複合リソース340のメンバーが常駐するノードにわたる単一の論理的実体であると見なすことが可能となる。
仮想複合体
図3において、調整活動を行なうための論理は、フレームワーク360に常駐する仮想複合体管理部(VC)350により示される。VC350は、複合リソース340の管理および/または調整の活動を行なうためのプロセス、リソースおよび論理の単なる一表現である。VC350はフレームワーク360に常駐するように示してあるが、VCを実行するために用いられるコードがノードに常駐することもあり得る。一実施例では、VC350はフレームワーク360上で実行可能であるが、またはフレームワークエージェント362により等しくすべてのノードによって実行可能であることもある。さらに、フレームワーク360によって、仮想複合リソース340はどの1つのノードに位置しているとも見なされず、このため仮想複合リソース340をノードから独立に動作させることができる。しかしVC350は実際には、フレームワーク360、フレームワークエージェント366および/または複合リソースメンバーによって実行されるコードを含み得る。クラスタ内の1ノードが障害を起こしても、VC350を含むリソースにより実行される活動および機能には影響がない。
VC350を含むリソースにより実行される機能にはメンバー機能の支援または管理が含まれる。メンバー機能にはメンバーの障害後の再始動が含まれ得る。VC350はまた、複合リソースをそのメンバーの状態に基づき再評価することができる。メンバーの1つの障害発生に応答してこの再評価を行なうことができる。複合リソース340のメンバーが障害を起こすと、VC350は複合リソース340の回復をトリガできる。VC350はまた、1つのメンバーの実行する作業またはジョブを複合リソース340における1つ以上の他のメンバーへ再配置することができる。
一実施例で、VC350は、メンバー314,324,334および対応するノード310,320,330についての状態情報を収集するためのコードを実行する。メンバー314,324,334のうち1つについての状態が変化すると、VC350は状態情報を収集し得る。この状態情報は、メンバー314,324,334のいずれかが活きているかどうか、またはこれらメンバーのうち特定の1つが障害のためサービスの提供をやめたかどうかを示すことができる。状態情報の収集は、フレームワーク360の内部または外部に位置し得るレジストリ362によって行われ得る。VC350はフレームワーク360においてすべてのノードから実行可能であるため、ノードの障害がノードに起因するかメンバーに起因するかにかかわらず、VCは複合リソース340の特定のメンバーの障
害から隔離されている。
複合リソース340はユーザの入力によりシステム上で利用されるように構成され得る。管理者またはその他のユーザからの入力は、複合リソース340についての構成情報を特定し得る。構成データを用いて、複合リソース340を確立するための先在するプロセスをフレームワーク360が含む場合に複合リソース340を宣言し、かつこの複合リソースのためのVCを実行することができる。その結果、一実施例では、管理者は構成データを入力することにより複合リソース340を確立し管理することができ、コードを入力する必要はない。
複合リソース340およびVC350の動作は、実複合リソース240について図2に示したものと類似する。相違点としては、図2では、調整部250の常駐するノードが障害を起こした場合には複合リソース240が不能化されることがある。図3で示すシステムでは、クラスタ内でどの1ノードあるいはいくつかのノードが障害を起こしても複合リソース340は不能化されない。その結果、仮想複合リソース340はより信頼性が高い。
複合リソース340のサービスへの要求がなされると、VC350は、メンバー314,324,334のうち1つが要求側コンポーネントにサービスを提供するよう手配する。こうして、図3に示すように、第1のコンポーネント316がサービスを要求するのに応答して、VC350は第1のメンバー314がサービスを提供するよう手配する。第1のメンバー314が障害を起こすと、VC350は第2のメンバー324がサービスを提供するよう手配する。複合リソース340がサービスを提供するためにリソース312,322,332のうち1つに依存する場合、VC350は、第2のメンバーが第1のリソース312または第2のリソース322のいずれを利用するように定めてもよい。
ノードに障害があった場合、VC350により表わされるリソースは、第2のノード320にある第2のメンバー324からサービスが提供されるよう手配する。ノードまたはメンバーに障害が発生した場合、クライアントなどの外部コンポーネント305はサービスを第2のメンバー324から受取ることができる。たとえば第1のコンポーネント316が複合リソース340に依存しかつ第1のメンバー314が障害を起こした場合、第1のコンポーネントへのサービスの提供は第2のメンバー324により行なうことができる。これに代えて、第1のノード310にある第1のコンポーネント316の提供する機能を、第2のノード320にある第2のコンポーネント326に取って換わらせることもできる。
複合リソース340によれば、複合リソースを形成する個々のメンバーの構成および利用を単純化するモデルを使用することが容易となる。より具体的には、複合リソース340の提供する分散論理により、ユーザが複合リソースを利用し構成できるようにする際に「匿名性」および「濃度」の概念を用いることが容易となる。匿名性および濃度についてはともに後でより詳細に説明する。匿名性および濃度の概念を仮想複合リソース340との関連で説明するが、これらの概念は図2に示す実複合リソースでも実現可能である。しかしこれらの概念は仮想複合リソース340において容易にされる。というのもそのメンバーは、メンバー間でサービスを調整するためにどの特定のノードにも依存しないため、可用性をもたらすことを目的としてすべてのノードを等しく扱うことができるからである。これらノードで動作するメンバーを識別するには、これらと複合リソース340との関連および、当該のメンバーの常駐するノードの特定のアドレスまたは識別情報を用いればよい。個々のメンバー識別を必要とせずにユーザまたは管理者が複合リソースを全体としてアドレス指定できるようにするために、匿名性および濃度はともに都合がよい。
匿名性
一実施例に従うと、匿名性を達成するために、複合リソース(「実」または「仮想」)のサービスを用いるコンポーネントがこの複合リソース内の個々のメンバーの正確な身元を知る必要なしにこれらリソースを利用できることとする。匿名性により、システムのユーザまたは管理者が複合リソース340のメンバーを管理することがより容易となる。匿名性は仮想複合モデルにおいてさらに増強されるが、それはメンバー314,324,334が、少なくともユーザまたは管理者に対しては一意の識別名を有する必要がないからである。またメンバー314,324,334が個々にアドレス指定可能である必要はない。たとえば管理者は、複合リソース340についての特定の構成を実現しようとする場合、各々のノードに個々にアドレス指定する必要がない。
一実施例に従うと、ユーザまたは管理者は、仮想複合リソース340のメンバーを複合リソースと関連付けることにより識別する。たとえば複合リソース340を構成するための命令が特定のサービスを指定することがあり得る。サービスを提供する特定のメンバーに命令を与えるにはこれで十分であろう。これはより伝統的な、複合リソース340のメンバーを含む各々のアプリケーションを一意の識別情報およびアドレスにより管理するやり方とは対照的である。
匿名性を達成するには、アプリケーションまたはインスタンスなどのリソースを「ローカル」なリソースとして宣言することがあり得る。「ローカル」なリソースを或る組に属させて、このリソースの識別を、この組の名前とローカルなリソースの常駐するノードの識別情報とによって行なうことができる。たとえばリソースの組をアプリケーションの多数のインスタンスに対応させ、これらインスタンスをアプリケーション名により識別することがあり得る。
数多くのメンバーが存在するシステムでは、メンバーを管理する管理者の作業は大きな労力を要するものとなるが、それは管理者はメンバーを管理するために各々のメンバーの識別情報およびアドレスを指定する必要があるからである。しかし匿名性により、管理者はアプリケーションを管理するために、(個々のメンバーの代わりに)複合リソースと、関心の向けられたメンバーが常駐するノードとを指定すればよい。
一実施例では、フレームワーク360はマッピング論理を含むように構成され得る。このマッピング論理は、一意のノード識別情報およびアドレス情報を、複合リソース340と、この複合リソースを支援するノードのアドレスとにマッピングするものである。これにより管理者が複合リソース340のメンバーを管理する態様が単純化される。
このように、図3に示すようなシステムでは、ローカルなリソースが単一の識別情報により規定可能であり、かつクラスタ全体にわたり、複合リソース340を形成するノードのうちいくつかまたはそのすべてで埋込み可能である。このように、メンバーを個々に作動させ、構成し、またはその他で管理するには、複合リソース340とメンバーの常駐するノードとを識別するだけでよくなる。この解決法は、現在のノードクラスタ内のリソース管理とは対照的である。後者の場合、各々のリソースは、それ自身の一意の識別情報ならびに、そのノードおよびその下部構造の識別情報および/またはアドレスによって識別される。
濃度
一実施例に従うと、濃度とは複合リソースにおける活性なメンバーの数を指す。複合リソースのメンバー同士の重要性が異ならない場合、複合リソースにより提供されるサービスについての或るレベルを特定するには、複合リソースの濃度だけで十分である。
別の実施例では、濃度はいくつかの性能基準によって測られ得る。たとえば濃度は、仮想複合リソース340の提供するサービス時間に対応することがあり得る。
一実施例では、濃度は、最低限のサービスレベルが複合リソースにより提供されているかどうかを判断するために用いられる。たとえば管理者は、活きているメンバーの数が「1」またはその他の数と等しいまたはこれを上回る限り複合リソースが活きているとみなされると指定することができる。
別の実施例では、濃度は複合リソース340の構成の際に用いられ得る。たとえば管理者は、複合リソース340を構成するために、指定の数のメンバーにおいて実現されることになる構成情報を指定することがあり得る。
別の例では、濃度は複合リソース340の提供するサービスを拡張するために用いられる。濃度の指定を増大させることにより、複合リソース340が実行する作業を増大させることができる。管理者は濃度の指定を用いる際、サービスを提供する特定のメンバーまたはノードについての情報を指定する必要がない。このように、濃度と匿名性とは互いを容易にすることができる。
サービスレベルに基づく複合リソースメンバーの管理
図4は、サービスレベルに基づく複合リソースの複数のコンポーネントを管理する方法を示す。図4に示す方法は、図2または図3に示したようなシステムで実現可能である。しかし説明上、この方法の各ステップについて説明する際には図3における要素を参照する。
ステップ410にて、ノード310,320,330にそれぞれ常駐するメンバー314,324,334を用いて複合リソース340を確立する。複合リソース340を形成するメンバーは各々が類似のサービスを提供することができる。複合リソース340は均質である、すなわち各々のメンバー314,324,334が実質的に等価のサービスを提供することがあり得る。これに代えて、複合リソース340が不均質であり、すなわち、サービスの品質またはサービスを実行する態様における差異に対応し得る不均質な属性を有することもあり得る。
ステップ420にて、管理者の入力したデータにより複合リソース340を構成する。一実施例では、この構成は複合リソース340についてのサービスレベルを指定し得る。具体的には、この構成データは、複合リソース340の濃度、サービス時間により測られる全体的なサービスレベル、またはスループットにより測られる全体的なサービスレベルなどの特徴を指定することができる。さらにまた、構成データは、複合リソース340およびそのメンバー314,324,334を作動または回復させる態様についての他の情報を指定することもある。たとえば構成データが指定し得るものとしては、複合リソース340がどのリソースを必要とするか、さらにはどのコンポーネントが複合リソース340を必要とするかに関して存在すると仮定される(弱いおよび強い)依存性がある。
ステップ430にて、複合リソース340のメンバー314,324,334の各々から状態情報を収集する。このステップを行なうには、複合リソース340についての確認処置を実行すればよい。状態情報の収集は、VC350を形成する論理要素またはプロセスによってなされ得る。たとえば各々のノードがVC350の一部としての論理を含む場合がある。この論理は、この特定のノードにあるメンバーについての状態情報を収集することができる。この状態情報はレジストリ362に格納され得る。一実施例では、状態情報は、或る特定のメンバーが活きているか、または動作をやめたかに対応する。状態情報はまた、特定のメンバーの状態の変化に応答して収集されることもある。
ステップ440にて、複合リソース340のサービスレベルを、複合リソース340が非活性であることに対応する指定されたレベルと比較するための判断がなされる。一実施例では、この指定のレベルは管理者によって指定される。たとえばサービスレベルは特定ユーザの濃度に対応することがあり、この場合作動しているメンバーの数はこの濃度と等しいまたはこれを上回る必要がある。別の例として、サービスレベルは、複合リソース340により実行され得る最高のサービス品質の割合または比に対応することもある。
ステップ440にて複合リソース340が利用可能であると判断された場合、ステップ450にて、VC350は、複合リソース340内のメンバーのうち1つ以上によりサービスが要求側コンポーネントへ提供されるよう手配する。サービスが提供されるのは、サービスのレベルが、サービスが利用可能でないことに対応すると判断されるまでである。サービスが指定のレベルを上回っている限り、VC350は、メンバー314,324,334のうち少なくとも1つが要求側コンポーネントに複合リソース340のサービスを提供することを確実にする。サービスを提供するよう手配されているメンバーが障害を起こした場合、VC350は、活性である別のメンバーがサービスを要求側コンポーネントに提供するよう手配できる。上述のように、メンバー間の遷移は継ぎ目なく行なわれ得るので、メンバー間の切換は要求側コンポーネントの視点からは判別不可能である。
ステップ440にて複合リソース340が利用可能でないと判断された場合、複合リソース340はオフラインになる。そして、メンバーを再始動させて複合リソース340の再評価を引起こすことができる。このように複合リソース340は、存在するメンバーの機能として存在することになる。これに代えて、複合リソース340を拡張して、複合リソース340を利用可能にするであろう追加のサービスを提供することもできる。たとえば複合リソースの濃度を拡張させることがあり得る。たとえば複合リソースが1組の非活性なメンバーを確立し、これら非活性なメンバーを複合リソース340における活性なメンバーのための予備ノードとすることがあり得る。複合リソース340のサービスを拡張する場合、VC350のリソースは予備または非活性なメンバーから1つ以上のメンバーを活性化する。
関心の向けられたイベントの監視
図5は、関心の向けられたフレームワークイベントを即座に検出し、先回りしてこれと通信するように構成されたシステムを例示する。図5に示すようなシステムは図2および図3に示したシステムで実現可能である。図3の各要素を参照するが、これは図5に示す実施例を実施するための例示のコンポーネントを説明することを意図したものである。
システム500は、ノード530において実行されるアプリケーションインスタンス510を含む。ノード530はフレームワークエージェント540を含み、これらフレームワークエージェントは、ノードからなるクラスタが共有するフレームワークと通信する。一実施例に従うと、アプリケーションインスタンス510と連結されて、イベントの発生直後に関心の向けられたイベントを検出するモニタ520が設けられる。モニタ520は、関心の向けられたイベント524が発生するとイベント通知522を通信する。フレームワークエージェント540は予め定められた間隔でアプリケーションインスタンス510に対してポーリング動作526を実行し、これによりアプリケーションインスタンスの状態を判断する。関心の向けられたイベント524はアプリケーションインスタンス510の状態を変化させることがあるため、その場合、イベントが発生するのに伴い、モニタ520はフレームワークエージェント540に対し、これがポーリングを通じ他でも入手したであろう同じ情報を提供することになる。したがって、ポーリング動作526とモニタ520との行なう機能は重なり合うことがあり得る。この冗長性によりシステム500の信頼性が確保される。ノード530の動作中に、モニタ520がアプリケーションイン
スタンス510について信頼できるものであるとわかることがあるが、この場合、ポーリングをイベントシステムおよびアプリケーションレベルのモニタに完全に取って換わらせることができる。そうでなければ、ポーリングおよび監視をともに用いて、関心の向けられたイベントの検出を高速かつ信頼できるものにすることができる。
一実施例では、関心の向けられたイベントはフレームワーク540の利用する状態をカバーする。これに従い、イベントは以下の(i)から(v)に対応し得る。すなわち、(i)アプリケーションインスタンス510が始動するとき、(ii)アプリケーションインスタンス510が別のノードへ再配置されるとき、(iii)アプリケーションインスタンス510が停止されるが障害は起こしていないとき、(iv)アプリケーションインスタンス510が停止されかつ障害を起こしたとき、および(v)アプリケーションインスタンスが動作していると確認されるとき、である。これらイベントのうち1つが検出されれば、フレームワークエージェント362が開始されて或る処置を実行することができる。この処置はさらにVC350をトリガして、その活動、たとえば確認の開始または回復の開始のうち1つを実行させることができる。
図3に示す構成では、モニタ520はメンバー314,324,334の各々について確立される。モニタ520は、たとえば、別のコンポーネントからの要求に応答して第1のメンバー314が複合リソース340のサービスを提供することをやめるまたはやめようとしているときを検出する。モニタ520から送られたイベント通知522は障害をフレームワーク360に通信する。通信が与えられるのに応答して、フレームワーク360に常駐するVC350は、複合リソース340の第2のメンバー324がサービスを提供するよう手配する。
どのメンバーがサービスを提供するかの選択は、VC350の一部として実行されるフレームワークエージェント540により実行され得る。メンバーに障害が生じた場合に、或る特定のジョブについてどのメンバーがサービスを提供するかの選択は回復ポリシーに従って決定される。各々のメンバーの状態は、このメンバーが別のコンポーネントのために始動した(そのため利用不可能である)のか、障害を起こしたのか、停止されているが障害は起こしていないのか、活きていると確認されているのか、または再配置されているのかどうかに基づき得る。
これに代えて、状態情報のうちいくらかまたはそのすべてをフレームワーク540のポーリング機能526によって入手することもできる。モニタ520が常に信頼できるとは限らない。たとえばモニタ520がメンバー510またはノードとともに障害を起こすことがあり得る。このような場合には、ポーリング機能を実行するフレームワーク540が信頼できるバックアップを提供し得る。
可能化/不能化機能
複合リソースのメンバーが受ける障害には計画的なものと非計画的なものとがある。計画的な障害としてはたとえば整備のために実行されるものがある。非計画的な障害が起こり得るのは、或るメンバーが障害を起こしたときか、またはこれが別の障害を起こしたリソースに依存するときである。このような場合、このメンバーをシステムから外してしまうことが有益である。図2および図3に示すシステムでは、このメンバーをフレームワークの制御から外すことが有益である。このことは、メンバーは障害を起こしたら自動的に再始動可能であるべきではないことを意味する。むしろこのメンバーは、このメンバーまたはこれが依存するリソースを修理する修正処置がとられるまで不能化されたままであるのがよい。
図6は、メンバーの障害発生時に複合リソースを管理するための基本的な技術を例示す
る。図7は、ノードが不能化された後に複合リソースを管理するための別の技術を例示する。ここでの記載には図3における番号を参照するが、これは記載の技術で用いられる例示のコンポーネントを説明することを目的としたものである。
図6を参照すると、ステップ610にて、ノード310,320,330からなるクラスタにある複数のメンバー314,324,334から複合リソースを確立する。説明上、第1のメンバー314が最初にサービスを提供すると仮定する。
ステップ620にて、第1のメンバー314がサービスの提供をやめたという判断がなされる。この判断はたとえばフレームワークエージェント540により行なわれ、モニタ520を介し、またはポーリング機能を通じて第1のメンバー510と相談することによってなされ得る。
ステップ630にて、このメンバーを不能化してこのメンバーでの整備機能を実行する。この整備機能は手動であることも自動的であることもある。第1のノードが不能化される場合、第1のメンバー314は再始動できない。第1のメンバー314はこの後で可能化されるまで不能化され非活性であり続ける。換言すると、第1のメンバー314の不能化は持続的なものである。このため、このメンバーが不能化され第1のノードが撤去された場合、第1のノードを再始動しても第1のメンバー314の再始動が自動的に引起こされるわけではない。
メンバーまたはそのノードの不能化が計画的な整備の一部のこともある。したがって或るメンバーの障害がノードの不能化をトリガするとは限らない。一実施例では、障害が生じてもメンバーの不能化は引起こされない。むしろ、不能化は計画的な処置であって、ノードにおける大規模な修理および計画的な作業のために用いられるものである。
図7の方法を参照すると、ステップ710にて第1のメンバー314を再始動させる要求が受取られる。この要求が受取られるのは、第1のメンバー314が複合リソース340のサービスの実行をやめた後である。
ステップ720にて、特定のメンバーが可能化されているかまたは不能化されているかについての判断が行なわれる。状態の検索はレジストリ362からなされることも、またはフレームワーク360に連結された別のメモリコンポーネントからなされることもある。こうしてレジストリ362は、メンバー314がサービスの提供をやめる直前に可能化または不能化されたことを記録することができる。
ステップ720で第1のメンバー314が不能化されていると判断された場合、ステップ730にて第1のメンバー314は再始動されない。これは第1のメンバー314が計画的な整備を受けているときに起こり得る。一実施例では、これがVC350をトリガし、これによりVC350は、複合リソース340内のメンバーのうち別の1つからサービスが要求側コンポーネントへ提供されるよう手配することができる。
ステップ720で第1のメンバー314が可能化されていると判断された場合、ステップ740にて第1のメンバー314を自動的に再始動する試みがなされる。第1のメンバーが再始動され得る場合、第1のメンバーは複合リソース340に再び参加することができる。
図7に示すように、複合リソースの各メンバーの可能化/不能化の状態は持続的でかつ、このメンバーを再始動させる試みがなされるかどうかを決定するものとされ得る。このメンバーを不能化してこれが立上げプロセスの間に自動的に再始動されないようにするこ
とができる。
不能化/可能化状態を複合リソースへと拡張させることもできる。複合リソースを全体として不能化することでメンバーすべてが不能化することがあり得る。これに代えて複合リソースを可能化することもあり、これは不能化されていないメンバーすべての可能化を引起こすことになる。したがって、個々のメンバーの不能化は複合リソースの可能化に優先する。その結果、障害を起こしたメンバーは複合リソース全体を不能化することなく管理され得る。
ハードウェア概観
図8は、この発明の一実施例が実現され得るコンピュータシステム800を示すブロック図である。コンピュータシステム800は、バス802またはその他情報を通信するための通信機構と、バス802に結合され情報を処理するプロセッサ804とを備える。コンピュータシステム800はさらにランダムアクセスメモリ(RAM)またはその他の動的記憶装置などの主メモリ806を備え、これはバス802に結合されて、プロセッサ804が実行する命令および情報を記憶する。主メモリ806はまた、プロセッサ804が命令を実行している間に一時的な変数またはその他の中間情報を蓄積するためにも用いられる。コンピュータシステム800はさらに、バス802に結合されてプロセッサ804のための静的情報および命令を記憶する読出専用メモリ(ROM)808またはその他の静的記憶装置を備える。バス802に結合されて情報および命令を記憶するための磁気ディスクまたは光ディスクなどの記憶装置810が設けられる。
コンピュータシステム800はバス802を介して、情報をコンピュータユーザに対して表示するための陰極線管(CRT)などの表示装置812に結合され得る。英数字式キーおよびその他のキーを含む入力装置814がバス802に結合されて情報およびコマンド選択をプロセッサ804に通信する。別の種類のユーザ入力装置として、マウス、トラックボールまたはカーソルキーなどのカーソル操作装置816があり、これにより方向情報およびコマンド選択をプロセッサ804に通信し、ディスプレイ812におけるカーソルの動きを制御する。一般的にこの入力装置は、第1の軸(たとえばx)および第2の軸(たとえばy)の2本の軸上における2自由度を有し、これにより入力装置は或る平面上の位置を指定することができる。
この発明は、コンピュータシステム800を使用してここに記載された技術を実現することに関する。この発明の一実施例に従うと、プロセッサ804が、主メモリ806に入っている1つ以上の命令からなる1つ以上のシーケンスを実行するのに応答して、ここに記載された技術がコンピュータシステム800により実行される。このような命令は別のコンピュータ読取可能な媒体、たとえば記憶装置810から主メモリ806に読込まれ得る。主メモリ806に入っている命令シーケンスが実行されるのに伴い、プロセッサ804においてここに記載されたプロセスステップが実行される。これに代わる実施例では、ソフトウェアによる命令に代えて、またはこれと組合せて、ハードウェア回路を用いてこの発明を実現することもある。したがってこの発明の実施例は、ハードウェア回路およびソフトウェアのいかなる特定の組合せにも限定されない。
ここで用いる「コンピュータ読取可能な記憶媒体」という用語は、命令をプロセッサ804が実行できるようここに供給することに関与するあらゆる媒体を指す。このような媒体は多くの形態をとることができ、これには不揮発性媒体、揮発性媒体および伝送媒体が含まれるがこれに限定されない。不揮発性媒体にはたとえば、記憶装置810などの光ディスクまたは磁気ディスクが含まれる。揮発性媒体には主メモリ806などの動的記憶装置が含まれる。伝送媒体には同軸ケーブル、銅線および光ファイバが含まれ、これにはバス802を構成するワイヤが含まれる。伝送媒体はまた音波または光波の形態をとること
もでき、これにはたとえば電波通信および赤外線データ通信の際に生成されるものなどがある。
コンピュータ読取可能な記憶媒体の一般的な形態にはたとえば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、またはその他任意の磁気媒体、CD−ROM、その他任意の光媒体、パンチカード、紙テープ、その他任意の孔パターンによる物理的媒体、RAM、PROM、EPROM、FLASH−EPROM、その他任意のメモリチップまたはカートリッジ、後に記載する搬送波、またはその他コンピュータが読出可能な任意の媒体が含まれる。
1つ以上の命令からなる1つ以上のシーケンスを、プロセッサ804が実行できるようここへ伝達することには、さまざまな形態のコンピュータ読取可能な記憶媒体が関与し得る。たとえば、命令はまず遠隔コンピュータの磁気ディスクに収められ得る。この遠隔コンピュータは命令を自分の動的メモリにロードして、モデムを用いて電話回線経由でこれら命令を送信し得る。コンピュータシステム800に対してローカルなモデムが電話回線上のデータを受信し、赤外線送信機を用いてこのデータを赤外線信号に変換し得る。赤外線信号で搬送されたデータは赤外線検出器で受信され、適当な回路がこのデータをバス802に出力することになる。バス802はデータを主メモリ806へと伝達し、ここからプロセッサ804は命令を検索および実行する。任意には、主メモリ806が受取った命令は、プロセッサ804による実行前または実行後に記憶装置810に記憶される。
コンピュータシステム800はさらに、バス802に結合された通信インターフェイス818を含む。通信インターフェイス818は、ローカルネットワーク822に接続されたネットワークリンク820に対する2方向データ通信結合を行なうものである。たとえば通信インターフェイス818として統合デジタル通信サービス網(ISDN)カードまたはモデムを用いることができ、これにより対応する種類の電話回線に対するデータ通信接続を行なう。別の例として、通信インターフェイス818はローカルエリアネットワーク(LAN)カードを用いてもよく、これにより対応するLANに対するデータ通信接続を行なう。無線リンクもまた実現可能である。このような実現例のいずれにおいても、通信インターフェイス818は、さまざまな種類の情報を表わすデジタルデータの流れを搬送する電気信号、電磁信号または光信号を送受信する。
一般的にネットワークリンク820は、1つ以上のネットワーク経由で他のデータ装置に対するデータ通信を可能にする。たとえばネットワークリンク820はローカルネットワーク822経由で、ホストコンピュータ824、または、インターネットサービスプロバイダ(ISP)826の稼動させるデータ装置に対する接続を行なうことができる。そしてこのISP826は、現在一般的に「インターネット」と称される全世界規模パケットデータ通信網828を通じてデータ通信サービスを提供する。ローカルネットワーク822およびインターネット828ではともに、デジタルデータの流れを搬送する電気信号、電磁信号または光信号を使用される。このようにさまざまなネットワークを経由する信号や、デジタルデータをコンピュータシステム800に入出力するネットワークリンク820上および通信インターフェイス818経由の信号は、情報を運ぶ搬送波の形態の例である。
コンピュータシステム800は、ネットワーク、ネットワークリンク820および通信インターフェイス818を通じてメッセージを送信し、プログラムコードを含むデータを受信することができる。インターネットの例では、サーバ830は或るアプリケーションプログラムについての要求されたコードを、インターネット828、ISP826、ローカルネットワーク822、そして通信インターフェイス818経由で送信することがあり得る。
こうして受信されたコードは、受信されるとプロセッサ804により実行され、かつ/または記憶装置810もしくはその他の不揮発性記憶装置内で、後で実行されるように蓄積され得る。このようにコンピュータシステム800は搬送波の形でアプリケーションコードを入手し得る。
以上の明細書においては、この発明をその特定の実施例を参照して記載した。しかし、この発明のより広い意味および範囲から逸脱することなく、さまざまな変形および変更がこの発明で可能であることが明らかであろう。したがってこの明細書および図面は、限定としてでなく例示的な意味で考えられるべきである。
ノードクラスタにおいて複合リソースを用いてサービスを提供する方法を示す図である。 複数のノードからなるクラスタにおいて実複合リソースを確立し利用する基本的なシステムを例示する図である。 複数のノードからなるクラスタにおいて仮想複合リソースを確立し利用する別の基本的なシステムを示す図である。 複合リソースにおける複数のメンバーをサービスレベルに基づき管理する方法を示す図である。 関心の向けられたイベントを即座に検出するように構成されたシステムを例示する図である。 メンバーの障害発生時に複合リソースを管理する基本的な技術を例示する図である。 ノードの不能化の後に複合リソースを利用する別の技術を示す図である。 この発明の一実施例が実現され得るコンピュータシステムを例示するブロック図である。

Claims (56)

  1. フレームワークから複数のコンポーネントを管理する方法であって、
    複数のメンバーを含む複合リソースを確立するステップを含み、前記複数の前記メンバーにおける各々のメンバーは類似のサービスを提供することができ、前記方法はさらに、
    フレームワークリソースを用いて前記複合リソース内の各々のメンバーの状態を監視するステップと、
    前記類似のサービスを要求するコンポーネントに前記フレームワークリソースから前記サービスを要求させるステップと、
    前記サービスを前記コンポーネントに提供するステップとを含み、前記提供するステップは、
    前記サービスが前記複合リソース内の特定のメンバーにより前記コンポーネントへ提供されるよう前記フレームワークリソースにより手配し、さらに、
    前記特定のメンバーが活性でなくなったときに、別のメンバーにより既に提供されている前記サービスを自動的に利用し、かつ/または、前記サービスが前記複数のメンバーのうちの別のメンバーにより前記コンポーネントに提供されることを引起こすことによって行なわれ、前記方法はさらに、
    前記複合リソース内の各々のメンバーの状態から独立に前記複合リソースの状態を維持するステップを含む、方法。
  2. 前記複数のメンバーは、1組の活性なメンバーおよび1組の非活性なメンバーを含み、前記1組の活性なメンバーにおけるメンバーは、前記1組の非活性なメンバーにおけるメンバーが用いる態様とは異なる態様で前記類似のサービスを提供する、請求項1に記載の方法。
  3. 前記複数のメンバーにおけるメンバーのうちの1つ以上が活性でなくなることに応答して前記複合リソースを評価するステップをさらに含む、請求項1に記載の方法。
  4. ユーザ定義の基準に基づいて前記フレームワークリソースを介し前記複合リソースを構成するステップをさらに含む、請求項1に記載の方法。
  5. 前記フレームワークリソースを用いて前記複合リソースを停止するステップをさらに含み、こうして前記複数のメンバーにおける各々のメンバーが停止される、請求項1に記載の方法。
  6. 前記1組の活性なメンバーのうちのメンバーが常駐するノードから別のノードへ前記複合リソースのソースを再配置するステップをさらに含み、前記別のノードには、前記ソースを再配置するステップの実行直前に前記1組の非活性なメンバーのうちのメンバーが常駐し、前記複数の非活性なメンバーのうちの少なくとも1つ以上は前記第1の複数のメンバーの1つでもない、請求項1に記載の方法。
  7. 前記フレームワークリソースから前記複合リソースの性能特性を測定するステップをさらに含む、請求項1に記載の方法。
  8. 管理者が調整部に命令して前記フレームワークリソースを介し前記複合リソースにおいて1つ以上の動作を実行させることを可能にするためのインターフェイスを設けるステップをさらに含む、請求項1に記載の方法。
  9. 前記複数のメンバーのうちのどれが前記類似のサービスを提供するかにかかわらず、1つ以上のリソースが前記類似のサービスに依存することを可能にするステップをさらに含
    む、請求項1に記載の方法。
  10. 前記複合リソースを確立するステップは、前記複数のメンバーの各々が前記メンバーのノードにある1組のリソースとともに利用されることを可能にするステップを含み、前記メンバーのノードにある前記1組のリソースは前記サービスを提供するために前記メンバーにより必要とされる、請求項1に記載の方法。
  11. 前記サービスを前記コンポーネントに提供するステップは、
    前記サービスが前記複合リソースのうちの第1のメンバーにより前記第1のメンバーのノードから前記コンポーネントに提供されるよう手配するステップと、
    前記第1のメンバーが障害を起こしたときに、前記複数のメンバーのうちの第2のメンバーにより前記サービスが前記第2のメンバーのノードから前記コンポーネントに提供されることを引起こすステップとを含み、前記第2のメンバーのノードは前記第1のメンバーのノードとは異なり、
    前記第1のメンバーの障害に先立ち、前記方法はさらに、前記第2のメンバーのノードにある1組のリソースを用いて前記第2のメンバーが前記サービスを前記コンポーネントに提供することを可能にするステップを含み、前記第2のメンバーのノードにある前記1組のリソースは、前記サービスを提供するために前記第2のメンバーにより必要とされる、請求項1に記載の方法。
  12. 前記サービスを前記コンポーネントに提供するステップは、前記複数のノードにより共有されるデータソースからのデータの読出および前記データソースへのデータの書込のうち少なくとも1つを実行するステップを含む、請求項1に記載の方法。
  13. 前記第1のメンバーが障害を起こしているが前記第1のメンバーのノードはまだ機能していることを検出するステップをさらに含み、前記サービスが第2のメンバーにより前記コンポーネントに提供されることを引起こすステップは、前記第1のメンバーのノードにある前記1つ以上の他のリソースが機能している間に行なわれる、請求項11に記載の方法。
  14. 前記第1のメンバーが障害を起こしたことを検出した後に前記第1のメンバーを自動的に再始動するステップをさらに含む、請求項13に記載の方法。
  15. 前記サービスが第2のメンバーにより前記コンポーネントに提供されることを自動的に引起こすステップは、前記第1のメンバーの回復を試みている間に実行される、請求項13に記載の方法。
  16. 前記複合リソースを確立するステップは、データベースアプリケーションの複数のインスタンスが複数のノードにおいて実行されることを可能にするステップを含む、請求項1に記載の方法。
  17. 前記複合リソースが、前記複数のノードにおけるノードの1つに少なくとも部分的に常駐するように見えるように、前記フレームワークから前記複合リソースを実行するステップをさらに含む、請求項1に記載の方法。
  18. 前記複数のノードにより共有されるフレームワークにおいて前記調整部を実行するステップをさらに含む、請求項1に記載の方法。
  19. 第1のノードにおいてアプリケーションを実行するステップをさらに含み、前記アプリケーションは前記複合リソースに依存する、請求項1に記載の方法。
  20. 前記複数のメンバーのうちの第1のメンバーから前記アプリケーションに前記サービスを提供するステップをさらに含み、前記第1のメンバーは前記第1のノードに常駐し、前記第1のメンバーが前記サービスの提供をやめることに応答して、前記方法はさらに前記アプリケーションの実行を終了させるステップを含む、請求項19に記載の方法。
  21. 前記複数のメンバーのうちの第1のメンバーから前記アプリケーションに前記サービスを提供するステップをさらに含み、前記第1のメンバーは前記第1のノードに常駐し、前記第1のメンバーが前記サービスを提供しなくなることに応答して、前記方法はさらに、第2のノードに常駐する前記複数のメンバーのうちの第2のメンバーから、前記第1のノードにおいて実行される前記アプリケーションに前記サービスを提供するステップを含む、請求項20に記載の方法。
  22. さらに、
    前記複合リソースが機能している間に前記複合リソースの一部としてメンバーを加入させるステップと、
    前記第1のメンバーが前記複合リソースのメンバーとして加入させることに応答して、前記複合リソースが作動していることを前記メンバーに保証させることを引起こすステップとを含む、請求項1に記載の方法。
  23. 複数のコンポーネントを管理する方法であって、
    第1の複数のメンバーを含む第1の複合リソースを確立するステップを含み、前記第1の複数のメンバーは複数のノードに常駐し、前記第1の複数のメンバーの各々はサービスを同等に提供するよう活性であり、前記方法はさらに、
    第2の複数のメンバーを確立するステップを含み、前記第2の複数のメンバーは前記複数のノードに常駐し、前記第2の複数のメンバーの各々は、活性化されると前記サービスを同等に提供することができ、前記方法はさらに、
    前記第1の複数のメンバーにおけるメンバーが、前記サービスを要求する第1のコンポーネントに前記サービスを提供するよう手配するステップを含み、前記第1のメンバーは前記複数のノードのうちの第1のノードに常駐し、前記方法はさらに、
    前記第1の複数のメンバーにおけるメンバーのうちの1つ以上が非活性になることに応答して、
    前記第1の複数のメンバーにおけるメンバーのうちの1つ以上が非活性になることに応答して前記第2の複数のメンバーのうちの第2のメンバーを活性化するステップ、および、前記第1の複数のメンバーまたは前記第2の複数のメンバーのうちの一方にある活性な第2のメンバーを用いて前記サービスを自動的に提供するステップ
    を実行するステップとを含む、方法。
  24. 前記複合リソースの状態は、複合リソース内の活性な各々のメンバーの状態から独立して維持される、請求項23に記載の方法。
  25. 前記第1の複数のメンバーのうちの1つにある活性な第2のメンバーを用いて前記サービスを自動的に提供するステップは、前記複合リソースのサービスを活性的に提供するメンバーの濃度を維持するステップを含む、請求項23に記載の方法。
  26. 前記第2の複数のメンバーにおける多数のメンバーを活性化して前記サービスを提供させることにより前記濃度を拡張するステップをさらに含む、請求項24に記載の方法。
  27. 前記第1の複数のメンバーのうちの第1のメンバーが前記第1のサービスを提供するよう手配するステップは、前記第1の複数のメンバーおよび前記第2の複数のメンバーによ
    り共有されるフレームワークのリソースを用いて行なわれる、請求項22に記載の方法。
  28. フレームワークリソースを介し、前記第1の複数のメンバーおよび前記第2の複数のメンバーについての状態情報を維持するステップをさらに含む、請求項26に記載の方法。
  29. 複数のコンポーネントを管理するための1つ以上の命令シーケンスを担うコンピュータ読取可能な記憶媒体であって、1つ以上のプロセッサによる前記1つ以上の命令シーケンスの実行は、前記1つ以上のプロセッサに、
    複数のメンバーを含む複合リソースを確立するステップを実行させ、前記複数の前記メンバーにおける各々のメンバーは類似のサービスを提供することができ、前記1つ以上のプロセッサにさらに、
    調整部において前記複合リソース内の各々のメンバーの状態を監視するステップと、
    前記類似のサービスを必要とするコンポーネントに前記サービスを前記調整部に要求させるステップと、
    前記サービスを前記コンポーネントに提供するステップとを実行させ、前記提供するステップは、
    前記調整部により、前記サービスが前記複合リソース内の特定のメンバーにより前記コンポーネントへ提供されるよう手配し、さらに、
    前記特定のメンバーが活性でなくなったときに、別のメンバーにより既に提供されている前記サービスを自動的に利用し、かつ/または、前記サービスが前記複数のメンバーのうちの別のメンバーにより前記コンポーネントに提供されることを引起こすことによって行なわれ、前記1つ以上のプロセッサにさらに、
    前記複合リソース内の各々のメンバーの状態から独立して前記複合リソースの状態を維持するステップを実行させる、コンピュータ読取可能な記憶媒体。
  30. 前記複数のメンバーは第1のメンバーおよび第2のメンバーを含み、前記第1のメンバーは、前記第2のメンバーが前記類似のサービスを提供するために用いる態様とは異なる態様で前記類似のサービスを提供する、請求項29に記載のコンピュータ読取可能な記憶媒体。
  31. 前記複数のメンバーにおける各々のメンバーが活性でなくなったときに前記複合リソースの回復を開始させるための命令をさらに含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  32. ユーザ定義の基準に基づいて前記調整部を介し前記複合リソースを構成するための命令をさらに含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  33. 前記調整部を用いて前記複合リソースを停止するための命令をさらに含み、こうして前記複数のメンバーにおける各々のメンバーは前記類似のサービスを提供することができなくなる、請求項29に記載のコンピュータ読取可能な記憶媒体。
  34. 前記第1の複数のメンバーが常駐する第1の複数のノードから、第2の複数のメンバーが常駐する第2の複数のノードへ前記複合リソースを再配置するための命令をさらに含み、前記第2の複数のメンバーのうちの少なくとも1つ以上は前記第1の複数のメンバーの1つでもない、請求項29に記載のコンピュータ読取可能な記憶媒体。
  35. 前記調整部から前記複合リソースの性能特性を測定するための命令をさらに含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  36. 管理者が前記調整部に命令して前記調整部を介し前記複合リソースにおいて1つ以上の
    動作を実行させることを可能にするためのインターフェイスを設けるための命令をさらに含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  37. 前記複数のメンバーのうちのどれが前記類似のサービスを提供するかにかかわらず、1つ以上のリソースが前記類似のサービスに依存することを可能にするための命令をさらに含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  38. 前記複合リソースを確立するための命令は、前記複数のメンバーの各々が前記メンバーのノードにある1組のリソースとともに利用されることを可能にするための命令を含み、前記メンバーのノードにある前記1組のリソースは前記サービスを提供するために前記メンバーにより必要とされる、請求項29に記載のコンピュータ読取可能な記憶媒体。
  39. 前記サービスを前記コンポーネントに提供するための命令は、
    前記サービスが前記複合リソース内の第1のメンバーにより前記第1のメンバーのノードから前記コンポーネントに提供されるよう手配するステップと、
    前記第1のメンバーが活性でなくなったときに、前記サービスが前記複数のメンバーにおける第2のメンバーにより前記第2のメンバーのノードから前記コンポーネントに提供されることを引起こすステップとを実行するための命令を含み、前記第2のメンバーのノードは前記第1のメンバーのノードとは異なり、
    前記第1のメンバーが活性でなくなる前に、前記コンピュータ読取可能な記憶媒体はさらに、前記第2のメンバーのノードにある1組のリソースを用いて前記第2のメンバーが前記サービスを前記コンポーネントに提供することを可能にするステップを含み、前記第2のメンバーのノードにある前記1組のリソースは、前記サービスを提供するために前記第2のメンバーにより必要とされる、請求項29に記載のコンピュータ読取可能な記憶媒体。
  40. 前記サービスを前記コンポーネントに提供するための命令は、前記複数のノードにより共有されるデータソースからのデータの読出および前記データソースへのデータの書込のうち少なくとも1つを実行するための命令を含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  41. 前記第1のメンバーが障害を起こしたが前記第1のメンバーのノードはまだ機能していることを検出するための命令をさらに含み、前記サービスが第2のメンバーにより前記コンポーネントに提供されることを引起こすための命令は、前記第1のメンバーのノードにある前記1つ以上の他のリソースが機能している間に実行される、請求項39に記載のコンピュータ読取可能な記憶媒体。
  42. 前記サービスが第2のメンバーにより前記コンポーネントに提供されることを自動的に引起こすステップを実行するための命令は、前記第1のメンバーの回復を試みる間に前記ステップが実行されるための命令を含む、請求項41に記載のコンピュータ読取可能な記憶媒体。
  43. 前記複合リソースを確立するための命令は、データベースアプリケーションの複数のインスタンスが複数のノードにおいて実行されることを可能にするための命令を含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  44. 前記複数のノードのうち1つにおいて前記調整部を実行するための命令をさらに含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  45. 前記複数のノードの共有するフレームワークにおいて前記調整部を実行するための命令
    をさらに含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  46. 前記第1のノードにおいてアプリケーションを実行するステップを行なうための命令をさらに含み、前記アプリケーションは前記複合リソースに依存する、請求項29に記載のコンピュータ読取可能な記憶媒体。
  47. 前記サービスを前記複数のメンバーにおける第1のメンバーから前記アプリケーションに提供するための命令をさらに含み、前記第1のメンバーは前記第1のノードに常駐し、前記第1のメンバーが前記サービスを提供しなくなることに応答して、前記コンピュータ読取可能な記憶媒体はさらに、前記アプリケーションの実行を終了させるための命令を含む、請求項46に記載のコンピュータ読取可能な記憶媒体。
  48. 前記サービスを前記複数のメンバーのうちの第1のメンバーから前記アプリケーションに提供するための命令をさらに含み、前記第1のメンバーは前記第1のノードに常駐し、前記第1のメンバーが前記サービスを提供しなくなることに応答して、前記コンピュータ読取可能な記憶媒体はさらに、前記複数のメンバーのうちの、第2のノードに常駐する第2のメンバーから、前記第1のノードにおいて実行される前記アプリケーションに前記サービスを提供するための命令を含む、請求項47に記載のコンピュータ読取可能な記憶媒体。
  49. 前記コンピュータ読取可能な記憶媒体はさらに、
    前記複合リソースが機能している間に前記複合リソースの一部としてメンバーを開始するステップと、
    前記第1のメンバーが前記複合リソースのメンバーとして開始されることに応答して、前記複合リソースが機能していることを前記メンバーに保証させるステップとを実行するための命令を含む、請求項29に記載のコンピュータ読取可能な記憶媒体。
  50. 複数のコンポーネントを管理するための1つ以上の命令シーケンスを担うコンピュータ読取可能な記憶媒体であって、1つ以上のプロセッサによる前記1つ以上の命令シーケンスの実行は、前記1つ以上のプロセッサに、
    第1の複数のメンバーを含む第1の複合リソースを確立するステップを実行させ、前記第1の複数のメンバーは複数のノードに常駐し、前記第1の複数のメンバーの各々は第1のサービスを同等に提供することができ、前記1つ以上のプロセッサにさらに、
    第2の複数のメンバーを含む第2の複合リソースを確立するステップを実行させ、前記第2の複数のメンバーは前記複数のノードに常駐し、前記第2の複数のメンバーの各々は第2のサービスを同等に提供することができ、前記1つ以上のプロセッサにさらに、
    前記第1の複数のメンバーのうち第1のメンバーが、前記第1のサービスを要求する第1のコンポーネントに前記第1のサービスを提供するよう手配するステップを実行させ、前記第1のメンバーは前記複数のノードのうちの第1のノードに常駐し、前記1つ以上のプロセッサにさらに、
    前記第2の複数のメンバーのうちの第2のメンバーが、前記第2のサービスを要求する第2のコンポーネントに前記第2のサービスを提供するよう手配するステップを実行させ、前記第2のメンバーは前記第1のノードに常駐し、前記1つ以上のプロセッサにさらに、
    前記第1のメンバーが活性でなくなったときに、前記第1の複数のメンバーのうちの第3のメンバーを用いて前記第1のサービスを自動的に提供するステップを実行させ、前記第3のメンバーは、前記第1のノードとは異なる第2のノードに常駐し、前記1つ以上のプロセッサにさらに、
    前記第1の複数のメンバーのうちの前記第1のメンバーが活性でなくなることから独立して前記第1のノードから前記第2のサービスを提供するステップを実行させる、コンピ
    ュータ読取可能な記憶媒体。
  51. 前記第1の複数のメンバーのうちの前記第1のメンバーが活性でなくなることから独立して前記第2のサービスを提供するための命令は、前記第1のメンバーが活性でなくなった後に連続的に前記第2のサービスを提供するための命令を含む、請求項50に記載のコンピュータ読取可能な記憶媒体。
  52. さらに、
    前記第1のメンバーが第1の組の1つ以上のリソースを用いて前記第1のサービスを提供することを可能にするステップを実行するための命令をさらに含み、前記第1の組の1つ以上のリソースは、前記第1のサービスを提供するために前記第1のメンバーにより必要とされ、前記第1の組のリソースは前記第1のノードに常駐し、前記コンピュータ読取可能な記憶媒体はさらに、
    前記第2のメンバーが第2の組の1つ以上のリソースを用いて前記第2のサービスを提供することを可能にするステップを実行するための命令をさらに含み、前記第2の組のリソースは、前記第2のサービスを提供するために前記第2のメンバーにより必要とされ、前記第2の組のリソースは前記第1のノードに常駐し、かつ、前記第1の組のリソースと重なる少なくとも1つのリソースを有する、請求項50に記載のコンピュータ読取可能な記憶媒体。
  53. 前記第1のノードから前記第2のサービスを提供するための命令は、前記第1のメンバーが活性でなくなったことを検出した直後に前記第2のサービスを提供することにおいて、前記第2の組のリソースが前記第2のメンバーで利用されるように機能しているよう維持するための命令を含む、請求項52に記載のコンピュータ読取可能な記憶媒体。
  54. 前記第1の複数のメンバーのうちの第1のメンバーが前記第1のサービスを提供するよう手配するための命令は、第1の調整部を用い前記第1のサービスを調整することで前記第1のメンバーを割当てて前記第1のサービスを前記第1のコンポーネントに提供するための命令を含む、請求項50に記載のコンピュータ読取可能な記憶媒体。
  55. 前記第1の複数のメンバーのうちの第2のメンバーが前記第2のサービスを提供するよう手配するための命令は、第2の調整部を用い前記第2のサービスを調整することで前記第2のメンバーを割当てて前記第2のサービスを前記第2のコンポーネントに提供するための命令を含む、請求項54に記載のコンピュータ読取可能な記憶媒体。
  56. 前記第1の調整部および前記第2の調整部を介し、前記第1の複数のメンバーおよび前記第2の複数のメンバーについての状態情報を維持するための命令をさらに含む、請求項55に記載のコンピュータ読取可能な記憶媒体。
JP2003550059A 2001-11-30 2002-12-02 ネットワーク化システムにおけるリソースの高可用性をもたらす実複合オブジェクト Pending JP2005512190A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US33434901P 2001-11-30 2001-11-30
US42658702P 2002-11-15 2002-11-15
PCT/US2002/038389 WO2003048934A2 (en) 2001-11-30 2002-12-02 Real composite objects for providing high availability of resources on networked systems

Publications (2)

Publication Number Publication Date
JP2005512190A true JP2005512190A (ja) 2005-04-28
JP2005512190A5 JP2005512190A5 (ja) 2006-01-26

Family

ID=26989162

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003550059A Pending JP2005512190A (ja) 2001-11-30 2002-12-02 ネットワーク化システムにおけるリソースの高可用性をもたらす実複合オブジェクト

Country Status (6)

Country Link
US (3) US7548973B2 (ja)
EP (1) EP1451687B1 (ja)
JP (1) JP2005512190A (ja)
AU (1) AU2002363958B2 (ja)
CA (1) CA2467813C (ja)
WO (1) WO2003048934A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007265013A (ja) * 2006-03-28 2007-10-11 Fujitsu Ltd クラスタ制御プログラム、クラスタ制御方法およびクラスタ制御装置
JP2010514047A (ja) * 2006-12-21 2010-04-30 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 高可用性システムのための分散型プラットフォーム管理

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6887470B1 (en) 1999-09-10 2005-05-03 Conjuchem, Inc. Protection of endogenous therapeutic peptides from peptidase activity through conjugation to blood components
US7601691B2 (en) 1999-05-17 2009-10-13 Conjuchem Biotechnologies Inc. Anti-obesity agents
US20040266673A1 (en) * 2002-07-31 2004-12-30 Peter Bakis Long lasting natriuretic peptide derivatives
JP2004280741A (ja) * 2003-03-19 2004-10-07 Hitachi Ltd リソース信頼性判定システム及び方法
US20060064400A1 (en) 2004-09-21 2006-03-23 Oracle International Corporation, A California Corporation Methods, systems and software for identifying and managing database work
US7664847B2 (en) 2003-08-14 2010-02-16 Oracle International Corporation Managing workload by service
US7953860B2 (en) 2003-08-14 2011-05-31 Oracle International Corporation Fast reorganization of connections in response to an event in a clustered computing system
US7747717B2 (en) * 2003-08-14 2010-06-29 Oracle International Corporation Fast application notification in a clustered computing system
US7237267B2 (en) * 2003-10-16 2007-06-26 Cisco Technology, Inc. Policy-based network security management
US7647595B2 (en) * 2003-10-29 2010-01-12 Oracle International Corporation Efficient event notification in clustered computing environments
US7607021B2 (en) 2004-03-09 2009-10-20 Cisco Technology, Inc. Isolation approach for network users associated with elevated risk
US7526734B2 (en) * 2004-04-30 2009-04-28 Sap Ag User interfaces for developing enterprise applications
US7409576B2 (en) * 2004-09-08 2008-08-05 Hewlett-Packard Development Company, L.P. High-availability cluster with proactive maintenance
US7778984B2 (en) * 2004-11-19 2010-08-17 Microsoft Corporation System and method for a distributed object store
CN1326361C (zh) * 2005-02-02 2007-07-11 上海新思南广告有限公司 实现多平台信息交流的方法
US7464302B2 (en) * 2005-05-04 2008-12-09 International Business Machines Corporation Method and apparatus for expressing high availability cluster demand based on probability of breach
US7536426B2 (en) * 2005-07-29 2009-05-19 Microsoft Corporation Hybrid object placement in a distributed storage system
US20090099074A1 (en) * 2007-01-10 2009-04-16 Conjuchem Biotechnologies Inc. Modulating food intake
US8713186B2 (en) 2007-03-13 2014-04-29 Oracle International Corporation Server-side connection resource pooling
US7734947B1 (en) * 2007-04-17 2010-06-08 Netapp, Inc. System and method for virtual interface failover within a cluster
US7958385B1 (en) 2007-04-30 2011-06-07 Netapp, Inc. System and method for verification and enforcement of virtual interface failover within a cluster
EP2210227A2 (en) * 2007-10-25 2010-07-28 Markport Limited Modification of service delivery infrastructure in communication networks
US20090158298A1 (en) * 2007-12-12 2009-06-18 Abhishek Saxena Database system and eventing infrastructure
WO2010001198A1 (en) * 2008-07-02 2010-01-07 Telefonaktiebolaget L M Ericsson (Publ) Service enablement/disablement based on service relationships
US8615606B2 (en) * 2008-12-10 2013-12-24 At&T Intellectual Property I, L.P. Methods and apparatus to manipulate services in a distributed business intelligence computing environment
US9240937B2 (en) * 2011-03-31 2016-01-19 Microsoft Technology Licensing, Llc Fault detection and recovery as a service
US9747133B2 (en) 2012-06-21 2017-08-29 Microsoft Technology Licensing, Llc Enhanced availability for message services
US10324779B1 (en) 2013-06-21 2019-06-18 Amazon Technologies, Inc. Using unsupervised learning to monitor changes in fleet behavior
US20150006897A1 (en) * 2013-06-28 2015-01-01 Broadcom Corporation Apparatus and Method to Obtain Electronic Authentication
US8904483B1 (en) * 2014-03-26 2014-12-02 Iboss, Inc. Serving approved resources
US9760420B1 (en) * 2014-09-03 2017-09-12 Amazon Technologies, Inc. Fleet host rebuild service implementing vetting, diagnostics, and provisioning pools
US10452442B2 (en) * 2015-11-27 2019-10-22 Huawei Technologies Co., Ltd. System and method for resource management
US9870292B2 (en) * 2016-03-17 2018-01-16 Epro Gmbh Configurationless redundancy
WO2017205223A1 (en) * 2016-05-23 2017-11-30 William Turner Hyperconverged system including a user interface, a services layer and a core layer equipped with an operating system kernel
US10514932B2 (en) * 2016-09-26 2019-12-24 Amazon Technologies, Inc. Resource configuration based on dynamic group membership
US10474653B2 (en) 2016-09-30 2019-11-12 Oracle International Corporation Flexible in-memory column store placement
US11652892B2 (en) 2019-09-30 2023-05-16 Oracle International Corporation Automatic connection load balancing between instances of a cluster

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5005122A (en) * 1987-09-08 1991-04-02 Digital Equipment Corporation Arrangement with cooperating management server node and network service node
US5214778A (en) * 1990-04-06 1993-05-25 Micro Technology, Inc. Resource management in a multiple resource system
JPH0713838A (ja) * 1993-06-14 1995-01-17 Internatl Business Mach Corp <Ibm> エラーの回復方法及び装置
US5847955A (en) 1994-05-04 1998-12-08 National Instruments Corporation System and method for controlling an instrumentation system
US5640572A (en) * 1994-05-04 1997-06-17 National Instruments Corporation System and method for mapping driver level event function calls from a process-based driver level program to a session-based instrumentation control driver level system
US6360338B1 (en) 1995-01-24 2002-03-19 Compaq Computer Corporation Enhanced instrumentation software in fault tolerant systems
US5996075A (en) * 1995-11-02 1999-11-30 Sun Microsystems, Inc. Method and apparatus for reliable disk fencing in a multicomputer system
US5805785A (en) * 1996-02-27 1998-09-08 International Business Machines Corporation Method for monitoring and recovery of subsystems in a distributed/clustered system
US6421704B1 (en) 1998-03-20 2002-07-16 Sun Microsystems, Inc. Method, apparatus, and product for leasing of group membership in a distributed system
US6886035B2 (en) 1996-08-02 2005-04-26 Hewlett-Packard Development Company, L.P. Dynamic load balancing of a network of client and server computer
US6151688A (en) * 1997-02-21 2000-11-21 Novell, Inc. Resource management in a clustered computer system
US6134673A (en) * 1997-05-13 2000-10-17 Micron Electronics, Inc. Method for clustering software applications
US5999712A (en) * 1997-10-21 1999-12-07 Sun Microsystems, Inc. Determining cluster membership in a distributed computer system
US6178529B1 (en) 1997-11-03 2001-01-23 Microsoft Corporation Method and system for resource monitoring of disparate resources in a server cluster
US6092220A (en) * 1997-11-17 2000-07-18 International Business Machines Corporation Method and apparatus for ordered reliable multicast with asymmetric safety in a multiprocessing system
JP3609599B2 (ja) * 1998-01-30 2005-01-12 富士通株式会社 ノード代理システム、ノード監視システム、それらの方法、及び記録媒体
US6332023B1 (en) * 1998-06-04 2001-12-18 Mci Communications Corporation Method of and system for providing services in a communications network
US6427163B1 (en) * 1998-07-10 2002-07-30 International Business Machines Corporation Highly scalable and highly available cluster system management scheme
US6430611B1 (en) * 1998-08-25 2002-08-06 Highground Systems, Inc. Method and apparatus for providing data storage management
JP2000215276A (ja) * 1999-01-22 2000-08-04 Sony Corp 電子機器
US6438705B1 (en) * 1999-01-29 2002-08-20 International Business Machines Corporation Method and apparatus for building and managing multi-clustered computer systems
US6401120B1 (en) 1999-03-26 2002-06-04 Microsoft Corporation Method and system for consistent cluster operational data in a server cluster using a quorum of replicas
US6748381B1 (en) 1999-03-31 2004-06-08 International Business Machines Corporation Apparatus and method for maintaining consistency of shared data resources in a cluster environment
US6516348B1 (en) * 1999-05-21 2003-02-04 Macfarlane Druce Ian Craig Rattray Collecting and predicting capacity information for composite network resource formed by combining ports of an access server and/or links of wide arear network
US6732166B1 (en) * 1999-05-28 2004-05-04 Intel Corporation Method of distributed resource management of I/O devices in a network cluster
US6466980B1 (en) * 1999-06-17 2002-10-15 International Business Machines Corporation System and method for capacity shaping in an internet environment
US6970913B1 (en) 1999-07-02 2005-11-29 Cisco Technology, Inc. Load balancing using distributed forwarding agents with application based feedback for different virtual machines
US6718486B1 (en) 2000-01-26 2004-04-06 David E. Lovejoy Fault monitor for restarting failed instances of the fault monitor
US6523078B1 (en) 1999-11-23 2003-02-18 Steeleye Technology, Inc. Distributed locking system and method for a clustered system having a distributed system for storing cluster configuration information
US6339785B1 (en) * 1999-11-24 2002-01-15 Idan Feigenbaum Multi-server file download
FR2802673B1 (fr) 1999-12-16 2002-02-08 Bull Sa Procede et dispositif de supervision evolutive
US6789213B2 (en) 2000-01-10 2004-09-07 Sun Microsystems, Inc. Controlled take over of services by remaining nodes of clustered computing system
JP4434408B2 (ja) 2000-02-02 2010-03-17 富士通株式会社 情報処理装置
US6697805B1 (en) * 2000-04-14 2004-02-24 Microsoft Corporation XML methods and systems for synchronizing multiple computing devices
US6854069B2 (en) * 2000-05-02 2005-02-08 Sun Microsystems Inc. Method and system for achieving high availability in a networked computer system
US7133891B1 (en) 2000-05-31 2006-11-07 International Business Machines Corporation Method, system and program products for automatically connecting a client to a server of a replicated group of servers
US6961681B1 (en) * 2000-09-12 2005-11-01 Microsoft Corporation System and method providing virtual applications architecture
JP2004519024A (ja) 2000-09-08 2004-06-24 ゴー アヘッド ソフトウェア インコーポレイテッド 多数のノードを含むクラスタを管理するためのシステム及び方法
US6970939B2 (en) * 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
US7225467B2 (en) * 2000-11-15 2007-05-29 Lockheed Martin Corporation Active intrusion resistant environment of layered object and compartment keys (airelock)
US6950874B2 (en) * 2000-12-15 2005-09-27 International Business Machines Corporation Method and system for management of resource leases in an application framework system
ATE480822T1 (de) * 2001-02-13 2010-09-15 Candera Inc Failover-verarbeitung in einem speicherungssystem
US6906709B1 (en) * 2001-02-27 2005-06-14 Applied Visions, Inc. Visualizing security incidents in a computer network
US8032625B2 (en) * 2001-06-29 2011-10-04 International Business Machines Corporation Method and system for a network management framework with redundant failover methodology
US6721907B2 (en) * 2002-06-12 2004-04-13 Zambeel, Inc. System and method for monitoring the state and operability of components in distributed computing systems

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007265013A (ja) * 2006-03-28 2007-10-11 Fujitsu Ltd クラスタ制御プログラム、クラスタ制御方法およびクラスタ制御装置
JP4611922B2 (ja) * 2006-03-28 2011-01-12 富士通株式会社 制御プログラム、制御方法および制御装置
US8281007B2 (en) 2006-03-28 2012-10-02 Fujitsu Limited Cluster control apparatus, cluster control method, and computer product
JP2010514047A (ja) * 2006-12-21 2010-04-30 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 高可用性システムのための分散型プラットフォーム管理

Also Published As

Publication number Publication date
AU2002363958B2 (en) 2008-12-11
US20030105993A1 (en) 2003-06-05
EP1451687A2 (en) 2004-09-01
EP1451687B1 (en) 2019-01-23
AU2002363958A1 (en) 2003-06-17
US20030105867A1 (en) 2003-06-05
WO2003048934A3 (en) 2004-02-26
CA2467813A1 (en) 2003-06-12
US20030105866A1 (en) 2003-06-05
CA2467813C (en) 2014-01-07
US7548973B2 (en) 2009-06-16
WO2003048934A2 (en) 2003-06-12
US7475127B2 (en) 2009-01-06
US7350098B2 (en) 2008-03-25

Similar Documents

Publication Publication Date Title
JP2005512190A (ja) ネットワーク化システムにおけるリソースの高可用性をもたらす実複合オブジェクト
US7370223B2 (en) System and method for managing clusters containing multiple nodes
US7146532B2 (en) Persistent session and data in transparently distributed objects
CN102640108B (zh) 已复制数据的监控
CN102656565B (zh) 已复制数据的故障切换和恢复的方法和系统
US6839752B1 (en) Group data sharing during membership change in clustered computer system
JP4721195B2 (ja) マルチノード分散データ処理システムにおいてリモート・アクセス可能なリソースを管理する方法
US8055735B2 (en) Method and system for forming a cluster of networked nodes
JP4637842B2 (ja) クラスタ化されたコンピューティングシステムにおける高速なアプリケーション通知
US8032625B2 (en) Method and system for a network management framework with redundant failover methodology
US7619965B2 (en) Storage network management server, storage network managing method, storage network managing program, and storage network management system
US20110214007A1 (en) Flexible failover policies in high availability computing systems
JP2005209191A (ja) 高可用性システムの遠隔エンタープライズ管理
CN114116912A (zh) 一种基于Keepalived实现数据库高可用的方法
JP5285045B2 (ja) 仮想環境における故障復旧方法及びサーバ及びプログラム
JPH09293059A (ja) 分散システム及びその運用管理方法
JP2000215177A (ja) クライアント―サ―バシステム、サ―バ/クライアント装置、およびサ―バ/クライアントソフトウェアの管理プログラムを記録したコンピュ―タで読取可能な記録媒体
JP3008887B2 (ja) アプリケーションプログラム単位の現用予備切り替え機能を有するコンピュータシステム及びプログラムを記録した機械読み取り可能な記録媒体
JP2000112801A (ja) データベースバックアップシステム及びバックアップ方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051130

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090626

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090730

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20090821

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110304

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110309