(57)【要約】【課題】管理ステーションがコンピュータ・ネットワーク中のノード・クラスタを管理する方法、システム、および装置を提供すること。【解決手段】ノード・クラスタ中のどのノードが管理ステーションからマスタ・ノードへの管理コマンドを受信するかに関係なく、管理コマンドはマスタ・ノードに送信される。マスタ・ノードは、コマンド応答を作成し、管理コマンドを受信した本来のノードにその応答を送り返す。本来のノードは、コマンド応答を管理ステーションに転送する。本発明は、マスタ・ノードとサーバント・ノードとで実行される管理エージェントを利用してコマンド応答を作成および処理する。
2005525747.tif 000002
【特許請求の範囲】
【請求項１】
複数のサーバント・ノードと、１つのターゲット・ノードおよびマスタ・ノードを含む、コンピュータ・ネットワーク中のノード・クラスタを管理ステーションが管理する方法であって、
前記ネットワークを通じて、前記ターゲット・ノードにより前記管理ステーションから管理コマンドを受信するステップと、
前記ターゲット・ノードから前記マスタ・ノードに前記管理コマンドを送信するステップと、
前記マスタ・ノードにより、前記管理コマンドに対する管理応答を処理するステップと、
前記マスタ・ノードから前記ターゲット・ノードに前記管理応答を送信するステップと、
前記ターゲット・ノードにより、前記管理ステーションに前記管理応答を送信するステップと
を含む方法。
【請求項２】
前記管理応答を処理するステップはさらに、前記管理コマンドの範囲を決定するステップを備える請求項１に記載の方法。
【請求項３】
前記管理応答を処理するステップはさらに、前記管理コマンドによって要求されるデータを求めて前記サーバント・ノードをポーリングするステップを備える請求項２に記載の方法。
【請求項４】
前記管理応答を処理するステップはさらに、前記管理ステーションによって予期されるプロトコルに合わせて前記管理応答をフォーマットするステップを備える請求項１に記載の方法。
【請求項５】
管理ステーションからの管理コマンドを処理する、ノード・クラスタ中で実行するのに適した管理エージェントであって、前記ノード・クラスタは複数のノード・メンバを含み、前記ノード・メンバはマスタ・ノードとターゲット・ノードを含み、前記管理エージェントは、
前記ノード・メンバから、要求される管理データを受信するように構成され、さらに、前記ターゲット・ノードから前記マスタ・ノードに管理コマンドを通信するように構成された受信モジュールと、
前記ノード・メンバから管理データを送信するように構成され、さらに前記マスタ・ノードから前記ターゲット・ノードにコマンド応答を通信するように構成された送信モジュールと
を備える管理エージェント。
【請求項６】
前記管理ステーションによって予期される方式で前記コマンド応答をフォーマットするように構成された情報プロセッサをさらに備える請求項５に記載の管理エージェント。
【請求項７】
ローカル・ノード・データを取得するように構成されたローカル・アクセス・モジュールをさらに備える請求項５に記載の管理エージェント。
【請求項８】
別のノード・メンバからノード・データを取得するように構成されたリモート・アクセス・モジュールをさらに備える請求項５に記載の管理エージェント。
【請求項９】
前記ノード・メンバによって実行されるソフトウェアと対話するように構成された共通インタフェースをさらに備える請求項５に記載の管理エージェント。
【請求項１０】
前記別のノード・メンバは、前記マスタ・ノードまたはサーバント・ノードである請求項８に記載のマスタ管理エージェント。
【請求項１１】
管理ステーションから発行された管理コマンドを処理するシステムであって、
複数のサーバント・ノードと１つのマスタ・ノードを含むノード・クラスタと、
前記ノード・クラスタに属し、前記管理ステーションから発行された前記管理コマンドを受信するターゲット・ノードと、
前記マスタ・ノードで実行される、請求項５ないし１０のいずれか一項に記載のマスタ管理エージェントと、
前記ターゲット・ノードで実行され、前記管理コマンドを前記マスタ・ノードに転送し、前記コマンド応答を前記管理ステーションに送信するように構成されたターゲット管理エージェントと
を備えるシステム。
【請求項１２】
前記ノード・クラスタはさらに、前記サーバント・ノードを前記マスタ・ノードに接続するローカル・ネットワークを備える請求項１１に記載のシステム。
【請求項１３】
有形媒体に具体化されたコンピュータ・プログラム製品であって、管理ステーションによりコンピュータ・ネットワーク中のノード・クラスタを管理するための、前記有形媒体に結合されたコンピュータ可読プログラム・コードを備え、前記ノード・クラスタは、複数のサーバント・ノードと、１つのターゲット・ノードおよびマスタ・ノードを含み、前記コンピュータ可読プログラム・コードは、請求項１ないし４のいずれか一項に記載の方法を前記プログラムに実行させるように構成されるコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にはコンピュータ・ネットワークに関し、より詳細には、プライベート・ネットワークのクラスタリング環境におけるノードの管理に関する。
【背景技術】
【０００２】
コンピュータ・ネットワークは、通信システムによって共にリンクされたコンピュータ、プリンタ、および他のネットワーク装置の群である。コンピュータ・ネットワークでは、ネットワーク内の装置が相互に情報を転送することができる。コンピュータ・ネットワークは、相互に近接した２つのネットワーク装置を共に結合するなど非常に小規模なものも、何千ものネットワーク装置が相互に接続され、全世界にわたるなど極めて大規模なものもある。
【０００３】
コンピュータ・ネットワークの規模が増大するにつれて、ネットワークを効率的に管理することが次第に困難になる。ワイド・エリア・ネットワーク（ＷＡＮ）とも称される大規模なネットワークでは、ネットワークに接続された装置の数が常に変化する可能性がある。ネットワーキング機器が障害を起こし、システム中に隘路またはトラフィックの迂回を生じさせる可能性がある。拡張のために、ネットワークの特定の部分でより高い帯域幅能力が必要となる場合がある。ネットワーク管理者は、コンピュータ・ネットワークの適正な動作を維持するために、そのような変化を常に把握し、変化に応じて対応しなければならない。
【０００４】
コンピュータ・ネットワークを編成する方式の１つは、ノードとも称されるネットワーク装置をノード・クラスタあるいはノード・グループに構成するものである。ノード・クラスタは、２つ以上のノードから構成され、通例はネットワーク・システム内の異なるリソースを扱うように作成される。例えば、あるノード・クラスタはデータ・ファイルの転送を担当し、別のノード・クラスタはあるサイトの電子メール・サービスを扱う等である。ノード・クラスタは、１つのノードが過負荷にならないように、ネットワーク・トラフィックを調整および配分する助けともなる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
各ノード・クラスタ・メンバは、通例、そのノード・クラスタ中の他のノードと同じタスクのセットを実行するので、そのノード・クラスタのメンバのすべてまたは多くに同じ管理動作を同時に行うことが望ましい場合が多い。多くのノード・クラスタ・メンバに同じ管理動作を同時に行う際の問題の１つは、ネットワーク管理者が、どのノードが特定のノード・クラスタのメンバであるかを認識しているとは限らないことである。したがって、ネットワーク管理者は、どのノードがそのノード・クラスタに属するのかを正確に調べるのに時間を費やすことが必要となる場合がある。ノード・クラスタ中の複数のノードにサービスしようとするネットワーク管理者の要望をさらに複雑にするのは、すべてのノード・クラスタ・メンバが同じネットワーク接続性を有するとは限らないことである。したがって、管理者は、特定のネットワーク位置からノード・クラスタ中のすべてのノードにはサービスできないという状況に直面する可能性がある。これらおよびその他の問題のために、ネットワーク管理者がノード・クラスタにサービスするために多大な時間と労力を費やすことが必要となる可能性がある。
【課題を解決するための手段】
【０００６】
本発明は、ノード・クラスタのシングル・システム・イメージをネットワーク管理者に提供することにより、上述の従来のコンピュータ・ネットワーク管理システムの制約に対処する。この構成は、任意のノード・クラスタ・メンバと通信することによりノード・クラスタを遠隔から管理することを可能にし、それにより管理作業を大幅に簡略化する。
【０００７】
第１の態様によれば、本発明は、管理ステーションがコンピュータ・ネットワーク中のノード・クラスタを管理する方法を提供し、ノード・クラスタは、複数のサーバント・ノード、１つのターゲット・ノード、および１つのマスタ・ノードを含む。本方法は、ネットワークを通じて、管理ステーションからの管理コマンドをターゲット・ノードによって受信する受信ステップを含む。送信動作が、ターゲット・ノードからマスタ・ノードに管理コマンドを送信する。処理ステップが、マスタ・ノードにより管理コマンドに対する管理応答を処理する。次いで、送信ステップがマスタ・ノードからターゲット・ノードに管理応答を送信し、別の送信動作が、ターゲット・ノードにより管理ステーションに管理応答を送信する。
【０００８】
第２の態様によれば、本発明は、管理ステーションからの管理コマンドを処理する管理エージェントを提供する。管理エージェントは、受信モジュールと送信モジュールを含む。受信モジュールは、ノード・メンバから、要求される管理データを受信するように構成される。受信モジュールは、ターゲット・ノードからマスタ・ノードに管理コマンドを通信するようにも構成される。送信モジュールは、ノード・メンバから管理データを送信するように、かつ、マスタ・ノードからターゲット・ノードにコマンド応答を通信するように構成される。
【０００９】
第３の態様によれば、本発明は、管理ステーションから発行された管理コマンドを処理するシステムである。このシステムは、複数のサーバント・ノードと１つのマスタ・ノードを有するノード・クラスタを含む。ノード・クラスタに属するターゲット・ノードは、管理ステーションから発行された管理コマンドを受信する。マスタ管理エージェントがマスタ・ノードで実行され、管理コマンドを処理し、ターゲット・ノードにコマンド応答を送信するように構成される。ターゲット管理エージェントがターゲット・ノードで実行され、管理コマンドをマスタ・ノードに転送し、管理ステーションにコマンド応答を送信するように構成される。
【００１０】
第４の態様によれば、本発明は、管理ステーションによりコンピュータ・ネットワーク中のノード・クラスタを管理するための、有形媒体に具体化されたコンピュータ・プログラム製品を提供する。このコンピュータ・プログラム製品は、ネットワークを通じてターゲット・ノードにより管理ステーションからの管理コマンドを受信する動作、ターゲット・ノードからマスタ・ノードに管理コマンドを送信する動作、マスタ・ノードにより管理コマンドに対する管理応答を処理する動作、マスタ・ノードからターゲット・ノードに管理応答を送信する動作、およびターゲット・ノードにより管理ステーションに管理応答を送信する動作、を行う。
【００１１】
次いで、本発明の好ましい実施形態について、以下の図面を参照して単なる例として説明する。
【発明を実施するための最良の形態】
【００１２】
本発明について、図１〜５を参照して説明する。図を参照する際は、すべての図面に示す同様の構造および要素は、同様の参照符号で示す。
【００１３】
下記で詳細に述べるように、本発明は、コンピュータ・ネットワーク内のノードのクラスタの管理を容易にするものである。本発明は、ノード・クラスタを単一のノードあるいはシングル・システム・イメージ（ＳＳＩ）として表すことにより、ノード・クラスタ内の複雑な相互接続を管理ステーションから有益に隠蔽する。このような構成により、どのノード・クラスタ・メンバにアクセスすることによってもノード・クラスタを遠隔から管理することが可能になり、それにより管理作業が大幅に簡略化される。
【００１４】
図１に、本発明を実施する例示的ネットワーク環境１０２を示す。ネットワーク環境１０２は、コンピュータ・ネットワーク１０８を介してノード・クラスタ１０６と通信する管理ステーション１０４を含む。管理ステーション１０４は、１つまたは複数のネットワーク管理タスクを行う能力を有するネットワーク・クライアントを表す。通例、管理ステーション１０４は、ネットワーク環境１０２内のシステムを管理するためにネットワーク管理者によって使用されるコンピュータである。例えば、管理ステーションは、ノードによって送受信されるパケットの数、ノードによって行われる接続の数などを問い合わせることができる。管理ステーション１０２とノード・クラスタ１０６間の通信経路は、ルータ１１０、リピータ、ハブ、スイッチ、ブリッジなど、当業者に知られる各種のネットワーキング装置を含むことができる。
【００１５】
ノード・クラスタ１０６は、プライベート・ネットワーク１１６によって接続された数個のサーバント・ノード１１２と１つのマスタ・ノード１１４を含む。本発明で使用されるノード・クラスタとは、単一のエンティティとして見えるように選択されたノードの群である。クラスタの一部とするために選択するノードは、どのような理由で選択してもよい。さらに、ノード・クラスタのメンバは、必ずしも相互の近くに物理的に位置しなくともよく、あるいは同じネットワーク接続性を共有しなくともよい。しかし、クラスタ１０６中のすべてのサーバント・ノード１１２は、プライベート・ネットワーク１１６を介してマスタ・ノード１１４との接続性を有さなければならない。プライベート・ネットワークとは、一般に、そのノード・クラスタに関係するすべてのノードによって共有され、ネットワーク内のその他のデバイスからはアクセスできないローカル・エリア・ネットワーク（ＬＡＮ）接続を指す。ノード・クラスタ１０６は、システムで必要とされるだけの数のノードを含むことができる。ただし、実際的な応用例では、ノードの最大数は、機能的な性能の制約によって決まる可能性がある。例えば、応用例によっては、２０個のノードを超えるとノード・クラスタ１０６の性能が低下し始める可能性がある。
【００１６】
下記で詳細に述べるように、マスタ・ノード１１４は、任意のノード・クラスタ・メンバによって受信された管理ステーション要求を処理する役割を担う。
【００１７】
すべてのクラスタ・メンバへの接続性を有する、ノード・クラスタ中の任意ノードをマスタ・ノード１１４として選択してよいが、通例は、クラスタ中で最も高い可用性を提供するノードがマスタ・ノード１１４として選択される。マスタ・ノード１１４が機能しなくなった場合に備えて、予備マスタ・ノードを選択できることが望ましい。ただし、説明を簡潔にするために、マスタ・ノード１１４の選択は任意とする。
【００１８】
ノード・クラスタ１０６の各ノードは、管理ステーション１０４から受け取られる管理要求に対処する管理エージェント１１８を含む。下記で説明するように、各ノードの管理エージェント１１８は、管理ステーション１０４から受信した管理要求をマスタ・ノード１１４に渡す。そして、マスタ・ノード１１４で実行される管理エージェント１１８が管理要求を処理する。要求が処理されると、マスタ・ノード１１４は、管理要求を受信した本来のノードに応答を送信する。そして、本来のノードは、その応答を管理ステーション１０４に転送する。本発明の一実施形態では、管理ステーション１１８は、Simple Network Management Protocol（ＳＮＭＰ）標準の下でフォーマットされたプロトコル・データ・ユニット（ＰＤＵ）のためのゲートウェイを含む。CommonInformation Model（ＣＭＩ）、Common Management Information Protocol（ＣＭＩＰ）、およびSystemNetwork Architecture-Managementサービス（ＳＮＡ−ＭＳ）などの当業者に知られる他のシステム管理標準を本発明で使用できる。
【００１９】
図２に、本発明の好ましい実施形態による、管理エージェントによって行われる動作を含むフローチャートを示す。この管理エージェントの論理的動作は、（１）コンピューティング・システムで行われる一連のコンピュータ実行ステップとして、または（２）コンピューティング・システム中の相互接続されたマシン・モジュールとして、実施してよいことに留意されたい。この実施は、本発明を実施するシステムの性能要件に応じて選択してよい。したがって、ここに述べる本発明の実施形態を構成する論理的動作は、代替的に、動作、ステップ、またはモジュールと称される。
【００２０】
動作フローは、受信動作２０２で開始し、ここでターゲット・ノードが、管理ステーションから管理コマンド・パケットを受信する。本発明で用いられるターゲット・ノードとは、管理ステーションからのコマンド・パケットの宛先とされるノード・クラスタ中のノードである。ターゲット・ノードは、サーバント・ノードである場合もマスタ・ノードである場合もある。本発明の一実施形態では、ＳＮＭＰを利用して管理要求コマンドをノードに送信する。例えば、ＳＮＭＰでは、管理ステーションは、「Ｇｅｔ」または「Ｇｅｔ−ｎｅｘｔ」のコマンドを送信することによりノードのステータスを問い合わせることができる。ターゲット・ノードが管理コマンドを受信すると、送信動作２０４にコントロールが移る。
【００２１】
送信動作２０４では、管理コマンド・パケットがマスタ・ノードに転送される。このように、ターゲット・ノードは、管理コマンドを処理するのではなく、管理コマンドをマスタ・ノードに送信する。ターゲット・ノードからマスタ・ノードに管理コマンドを転送するために使用される正確な通信機構は特に重要ではなく、したがって当業者に知られる任意の方法を使用して実現してよい。例えば、一実施形態では、リモート・プロシージャ・コール（ＲＰＣ）を使用してノード間で管理コマンドを通信する。送信動作２０４を完了すると、決定動作２０６にコントロールが移る。
【００２２】
決定動作２０６で、マスタ・ノードは、ターゲット・ノードから管理コマンドを受信し、管理ステーションによって要求される情報の範囲を決定する。管理ステーションによって発行される管理要求ごとに、コマンド応答として管理ステーションに返されるデータを表す最良の方式について決定が行われる。マスタ・ノードは、応答データが表す内容を考慮しなければならない。すなわち、そのデータがあるノードについての情報を表すのか、マルチノード、仮想ファイル・サーバ（ＶＦＳ）、あるいは他のエンティティについての情報を表すのかを考慮しなければならない。この表現を本発明では情報の範囲とも称する。要求の範囲が決定されると、処理動作２０８にコントロールが移る。
【００２３】
処理動作２０８で、マスタ・ノードは、必要な指示を実行し、必要な処理を行って管理コマンドに対する応答を作成する。管理コマンドのタイプとその範囲により、マスタ・ノードによって取られるアクションが決まる。マスタ・ノードによって取られるアクションには、例えば、管理コマンド・パケットを受信したターゲット・ノードとの通信、他のサーバント・ノードとの通信、情報を編集およびフォーマットして応答とすることなどがある。処理動作２０８が終了すると、転送動作２１０にコントロールが移る。
【００２４】
転送動作２１０で、マスタ・ノードは、作成された応答をターゲット・ノードに転送する。ここでも、マスタ・ノードからターゲット・ノードに応答を転送するために使用される通信機構は重要ではない。本発明の一実施形態では、ＲＰＣを使用してマスタ・ノードからターゲット・ノードに応答を転送する。
【００２５】
次いで、送信動作２１２で、ターゲット・ノードは、管理ステーションに応答を送り返す。ターゲット・ノードは、予期されるプロトコルで管理ステーションに応答を送信する。したがって、管理コマンドの発行にＳＮＭＰが使用された場合は、応答はＳＮＭＰを使用して送信される。ターゲット・ノードが管理ステーションに応答を発行すると、動作フローは終了する。
【００２６】
本発明の好ましい実施形態によれば、管理エージェントによって行われる動作は、コンピュータ可読媒体として実施されたコンピュータ可読プログラムとすることができる。制限ではなく例として、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータなどの情報を記憶するための任意の方式または技術として実施された揮発性および不揮発性、取り外し可能および取り外し不能の媒体が含まれる。コンピュータ記憶媒体には、これらに限定しないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリその他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）その他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージその他の磁気記憶装置、または所望の情報の記憶に使用することができ、管理エージェントからアクセス可能な他の任意の媒体が含まれる。通信媒体は通例、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータを、搬送波などの変調データ信号または他のトランスポート機構に実装し、任意の情報伝達媒体を含む。用語「変調データ信号」とは、信号中に情報を符号化するような方式でその特徴の１つまたは複数を設定または変化させた信号を意味する。制限ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、ＲＦ、赤外線その他の無線媒体が含まれる。上記の媒体の組み合わせもコンピュータ可読媒体の範囲に含めるべきである。
【００２７】
図３に、本発明の好ましい実施形態を実施する例示的システムを示す。このシステムは、ノード・グループ中のサーバント・ノード１１２と通信するマスタ・ノード１１４を含む。マスタ・ノード１１４はマスタ管理エージェント３０２を含み、サーバント・ノード１１２はサーバント管理エージェント３０４を含む。
【００２８】
マスタ管理エージェント３０２は、送信プロセス３０６と受信プロセス３０８の２部分に分割される。送信プロセス３０６は、受信された管理コマンドの範囲に従って、ノード・グループ中のサーバント・ノード１１２に情報要求を通信する役割を担う。さらに、送信プロセス３０６は、管理コマンドの発信元であるターゲット・ノードにコマンド応答を渡す。本発明の特定の一実施形態では、送信プロセス３０６は、ＲＰＣ技術を使用してサーバント管理エージェント３０４と通信する。
【００２９】
マスタ管理エージェント３０２の受信プロセス３０８は、サーバント・ノード１１２から、要求されたデータを取得する。受信プロセス３０８は、ターゲット・ノードから管理コマンドを取得するためにも利用される。上記のように、本発明の一実施形態では、受信プロセス３０８は、ＳＮＭＰ  ＰＤＵゲートウェイを含む。
【００３０】
サーバント管理エージェント３０４も、受信プロセス３１０と送信プロセス３１２に分割される。受信プロセス３１０は、マスタ管理エージェント３０２の送信プロセス３０６から発行された要求を受信し、同じくＳＮＭＰ  ＰＤＵゲートウェイを含む。要求が取得されると、サーバント管理エージェント３０４は、必要なデータを取り出し、そのデータを、送信プロセス３１２を介して、マスタ管理エージェント３０２の受信モジュール３０８に転送する。サーバント管理エージェント３０４の受信プロセス３１０と送信プロセス３１２間のデータ通信もＲＰＣ技術を利用して実現してよい。サーバント・ノード１１２がターゲット・ノードでもある場合は、下記のように、受信プロセス３１０はさらに、マスタ・ノード１１４からコマンド応答を取得するように構成され、送信プロセス３１２はさらに、管理ステーションにコマンド応答を送信するように構成される。
【００３１】
図４に、本発明の好ましい実施形態の代替システム構成を示す。このシステムは、管理ステーションから管理コマンド４０４を受信するターゲット・ノード４０２を含む。管理コマンド４０４は、ユーザ・データ・プロトコル（ＵＤＰ）下でフォーマットされ、ＵＤＰポート４０６を通じてターゲット・ノード４０２によって受信される。他の管理コマンド・プロトコルを利用する実施形態も可能である。
【００３２】
ＵＤＰポート４０６は、管理コマンドが受信されたことを、ターゲット・ノード４０２で実行されるターゲット管理エージェント４０８に通知する。ターゲット管理エージェント４０８は、ゲートウェイ受信プロセス４１０を開始し、プロセス４１０は、マスタ・ノード１１４で実行されるマスタ管理エージェント３０２に管理コマンドを転送する。
【００３３】
管理コマンドは、例えばＲＰＣ４１２でマスタ管理エージェント３０２に転送することができる。本発明の一実施形態では、ターゲット管理エージェント４０８とマスタ管理エージェント３０２は、ＳＮＭＰエージェントである。さらに、マスタ・ノード１１４がターゲット・ノード４０２でもある場合は、ＲＰＣの結果、同じノードのＳＮＭＰエージェントが呼び出される。
【００３４】
上記のように、マスタ管理エージェント３０２は、管理コマンドを受け取り、適切なコマンド応答を構築する。このプロセスは、データを求めてノード・クラスタ中のサーバント・ノードをポーリングすること、記憶されたデータにアクセスすること、およびデータを編集することを含むことができる。コマンド応答が作成されると、マスタ管理エージェント３０２は、ターゲット・ノード４０２のターゲット管理エージェント４０８に応答を送信する。本発明の好ましい実施形態では、この応答は、ＲＰＣ４１４を使用してマスタ管理エージェント３０２からターゲット管理エージェント４０８に送信される。
【００３５】
ターゲット管理エージェント４０８は、ターゲット・エージェント３０２がコマンド応答を受信すると、ゲートウェイ送信プロセス４１６を開始する。本発明の好ましい特定の実施形態では、ＲＰＣサーバ・ポート４１８を使用してコマンド応答を受信する。ゲートウェイ送信プロセス４１６は、ＵＤＰポート４０６にコマンド応答を渡し、また適切なプロトコルに合わせてコマンド応答をフォーマットすることもできる。
【００３６】
コマンド応答がＵＤＰポート４０６に渡されると、ターゲット・ノード４０２は、応答４２０を管理ステーションに送り返す。コマンド応答４２０は、ＵＤＰパケットとしてフォーマットできる。このように、上記のシステムは、有益に、ネットワーク管理者が、ノード・グループ中の単一のノードに対して管理コマンドとクエリを発行し、同時にそのノード・クラスタのシングル・システム・イメージを維持することを可能にする。
【００３７】
上記のように、マスタ・ノードが管理コマンドを受信すると、マスタ・ノードは応答を作成する。図５に、マスタ・ノード１１４により応答を作成するために使用される例示的な機能ブロックを示す。提示するこの機能ブロックは、ユーザの性能要件に応じて、ハードウェア、ソフトウェア、またはそれらの組み合わせとして実施してよいことに留意されたい。
【００３８】
マスタ・ノード１１４は、マスタ・ノード１１４によって実行されるソフトウェアと対話するためのルーチン、プロトコル、および他のツールを備える共通インタフェース５０２を含む。本発明の一実施形態では、共通アプリケーション・プログラム・インタフェース（Ｃ−ＡＰＩ）を共通インタフェース５０２として使用する。
【００３９】
共通インタフェース５０２は、情報プロセッサ５０４と結合される。情報プロセッサ５０４は、ノード・クラスタ・メンバからデータを収集し、処理するために使用される。情報プロセッサ５０４は、管理ステーションが予期する方式でデータをフォーマットし、構成する役割も負う。したがって、情報プロセッサ５０４は、管理システムによって求められる情報の範囲を認識し、それに従って管理コマンドに対する応答を構築する。ルックアップ・テーブルを使用して各管理コマンドに要求されるデータのタイプを決定することができる。
【００４０】
情報プロセッサ５０４には、ローカル・アクセス・モジュール５０６およびリモート・アクセス・モジュール５０８が結合される。ローカル・アクセス・モジュール５０６は、管理コマンドに対する応答を構築または実行するためにローカル・データ・アクセスが必要なときに利用される。例えば、応答の一部として、マスタ・ノード１１４が自身の通し番号を管理ステーションに提供する必要がある場合は、ローカル・アクセス・モジュール５０６を使用してマスタ・ノードの通し番号を取得する。本発明の一実施形態では、ノードのローカル・データは、管理情報ベース（ＭＩＢ）により表される。ローカル・アクセス・モジュール５０６は、ＭＩＢによって表されるオブジェクト・インスタンスを取り出すことにより、ノードからローカル・データを取得する。同様に、ローカル・アクセス・モジュール５０６は、ＭＩＢのオブジェクト・インスタンスを変更することによりローカル・データを設定することができる。
【００４１】
サーバント・ノードからのデータ・アクセスがマスタ・ノード１１４によって求められる場合は、リモート・アクセス・モジュール５０８を使用してそのような情報にアクセスする。さらに、リモート・アクセス・モジュール５０８は、通信モジュール５１０と併せて使用される。通信モジュール５１０は、情報をフォーマットし、送信するルーチンと、データ圧縮ルーチンおよび誤り訂正のルーチンを含む。通信モジュール５１０は任意のノード間通信機構を使用可能である。
【００４２】
上述のように、本発明の好ましい実施形態では、リモート・ノードへのアクセスは、リモート・プロシージャ・コール（ＲＰＣ）を使用して達成される。ＲＰＣで、マスタ・ノード１１４は、サーバント・ノード１１２に対して機能を実行し、その機能の結果を得ることができる。詳細には、リモート・アクセス・モジュール５０８は、サーバント・ノード１１２に対する機能呼び出しを特定の管理コマンドに関連付ける。リモート・アクセス・モジュール５０８は、正しい機能パラメータとともにその機能呼び出しを通信モジュール５１０に渡す。通信モジュール５１０は次いで、サーバント・ノード１１２中のその機能を呼び出し、その結果を待つ。結果が到着すると、通信モジュール５１０は、会話ルーチンを利用して、外部データ表現（ＸＤＲ）でフォーマットされた情報を取り出す。
【００４３】
サーバント・ノード１１２も、通信モジュール５１２とローカル・アクセス・モジュール５１４を含む。通信モジュール５１４は、情報をフォーマットおよび送信し、データを圧縮し、誤りを訂正するために使用される。マスタ・ノード１１４から発行されたコマンドが通信モジュール５１２によって受信されると、ローカル・アクセス・モジュール５１４を使用して応答を取得する。応答がローカル・アクセス・モジュール５１４によって符号化されると、その応答が通信モジュール５１２によりマスタ・ノード１１４に送信される。
【００４４】
当業者には、上記の本発明は、ノード・クラスタをシングル・システム・イメージ（ＳＳＩ）として表す手段を提供することにより、ノード・クラスタの管理を助けることが明らかであろう。本発明は、任意のノード・クラスタ・メンバにアクセスすることにより、ノード・クラスタ全体の管理制御を可能にする。このような構成により、管理タスクが簡略化され、ネットワークのノード・クラスタにサービスする際に必要とされる労力が低減される。
【図面の簡単な説明】
【００４５】
【図１】本発明を実施する例示的なネットワーク環境の図である。
【図２】管理エージェントによって行われる動作を示すフローチャートである。
【図３】本発明の好ましい実施形態による例示的システムの図である。
【図４】好ましい実施形態の代替構成の図である。
【図５】管理コマンドに対する応答を作成するためにマスタ・ノードによって使用される機能ブロックの図である。
【図１】
2005525747.tif 000003
【図２】
2005525747.tif 000004
【図３】
2005525747.tif 000005
【図４】
2005525747.tif 000006
【図５】
2005525747.tif 000007
【手続補正書】
【提出日】平成15年11月21日(2003.11.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータ・ネットワーク中のノード・クラスタを管理ステーションが管理する方法であって、前記ノード・クラスタは、複数のサーバント・ノードと、前記ノード・クラスタ中の任意のサーバント・ノードによって受信された管理ステーション・コマンドを処理する役割を担うマスタ・ノードとを含み、前記方法は、
サーバント・ノードにより前記ネットワークを通じて前記管理ステーションから管理コマンドを受信するステップであって、前記管理コマンドを受信するサーバント・ノードがターゲット・ノードであるステップと、
前記管理コマンドを前記ターゲット・ノードから前記マスタ・ノードに渡すステップと、
前記管理コマンドに対する応答を作成するのに必要なアクションを取ることにより、前記マスタ・ノードにより前記管理コマンドを処理するステップと、
前記マスタ・ノードから前記ターゲット・ノードに前記応答を送信するステップと、
前記ターゲット・ノードにより前記応答を前記管理ステーションに転送するステップと
を備える方法。
【請求項２】
前記アクションは、前記管理コマンドによって要求されるデータを求めて１つまたは複数のサーバント・ノードと通信し、前記データを編集およびフォーマットして前記応答とする請求項１に記載の方法。
【請求項３】
管理ステーションからの管理コマンドを処理する、ノード・クラスタ中で実行するのに適した管理エージェントであって、前記ノード・クラスタは複数のノード・メンバを含み、前記ノード・メンバは、複数のサーバント・ノードと、前記ノード・クラスタの任意のサーバント・ノードによって受信された管理ステーション・コマンドを処理する役割を担うマスタ・ノードとを含み、前記管理エージェントは、
管理ステーションから管理コマンドを受信し、
前記コマンドを前記マスタ・ノードに渡し、
前記マスタ・ノードから前記管理コマンドに対する応答を受信し、
前記応答を前記管理ステーションに転送するための、
各サーバント・ノード中の手段と、
サーバント・ノードから管理コマンドを受信し、
前記管理コマンドに対する応答を作成するのに必要なアクションを取り、
前記管理コマンドを送信した前記サーバント・ノードに、前記管理コマンドに対する応答を送信するための、
前記マスタ・ノード中の手段と
を備える管理エージェント。
【請求項４】
前記管理コマンドによって要求されるデータを求めて１つまたは複数のサーバント・ノードと通信し、
前記データを編集およびフォーマットして前記応答とするための、
前記マスタ・ノード中の手段をさらに備える請求項に記載の管理エージェント。
【請求項５】
管理ステーションから発行された管理コマンドを処理するシステムであって、
複数のサーバント・ノードおよび１つのマスタ・ノードを含むノード・クラスタと、
前記マスタ・ノードおよびサーバント・ノードで実行される、請求項３または４に記載のマスタ管理エージェントと
を備えるシステム。
【請求項６】
有形媒体に具体化されたコンピュータ・プログラム製品であって、
管理ステーションによりコンピュータ・ネットワーク中のノード・クラスタを管理するための、前記有形媒体に結合されたコンピュータ可読プログラム・コードを備え、前記ノード・クラスタは複数のサーバント・ノードおよび１つのマスタ・ノードを含み、前記コンピュータ可読プログラム・コードは、請求項１または２に記載の方法を前記プログラムに実行させるように構成されるコンピュータ・プログラム製品。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にはコンピュータ・ネットワークに関し、より詳細には、プライベート・ネットワークのクラスタリング環境におけるノードの管理に関する。
【背景技術】
【０００２】
コンピュータ・ネットワークは、通信システムによって共にリンクされたコンピュータ、プリンタ、および他のネットワーク装置の群である。コンピュータ・ネットワークでは、ネットワーク内の装置が相互に情報を転送することができる。コンピュータ・ネットワークは、相互に近接した２つのネットワーク装置を共に結合するなど非常に小規模なものも、何千ものネットワーク装置が相互に接続され、全世界にわたるなど極めて大規模なものもある。
【０００３】
コンピュータ・ネットワークの規模が増大するにつれて、ネットワークを効率的に管理することが次第に困難になる。ワイド・エリア・ネットワーク（ＷＡＮ）とも称される大規模なネットワークでは、ネットワークに接続された装置の数が常に変化する可能性がある。ネットワーキング機器が障害を起こし、システム中に隘路またはトラフィックの迂回を生じさせる可能性がある。拡張のために、ネットワークの特定の部分でより高い帯域幅能力が必要となる場合がある。ネットワーク管理者は、コンピュータ・ネットワークの適正な動作を維持するために、そのような変化を常に把握し、変化に応じて対応しなければならない。
【０００４】
コンピュータ・ネットワークを編成する方式の１つは、ノードとも称されるネットワーク装置をノード・クラスタあるいはノード・グループに構成するものである。ノード・クラスタは、２つ以上のノードから構成され、通例はネットワーク・システム内の異なるリソースを扱うように作成される。例えば、あるノード・クラスタはデータ・ファイルの転送を担当し、別のノード・クラスタはあるサイトの電子メール・サービスを扱う等である。ノード・クラスタは、１つのノードが過負荷にならないように、ネットワーク・トラフィックを調整および配分する助けともなる。
【０００５】
ＡＮＤＡ  Ｎｅｔｗｏｒｋｓ社に発行されたＷＯ０１／２６１２８６は、クラスタ中のあるノードをヘッド・ノードに指定し、そのクラスタを対象とするすべてのコマンドをそのヘッド・ノードに送信することにより、ネットワーク・クラスタ中でコマンドを配布する方法を開示する。ヘッド・ノードは次いで、そのコマンドがヘッド・ノードを対象とする場合はローカルにコマンドを処理するか、またはコマンドを変換し、適切な子ノードによる処理のためにそのコマンドをダウンストリームに流すことにより、コマンドを処理する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
各ノード・クラスタ・メンバは、通例、そのノード・クラスタ中の他のノードと同じタスクのセットを実行するので、そのノード・クラスタのメンバのすべてまたは多くに同じ管理動作を同時に行うことが望ましい場合が多い。多くのノード・クラスタ・メンバに同じ管理動作を同時に行う際の問題の１つは、ネットワーク管理者が、どのノードが特定のノード・クラスタのメンバであるかを認識しているとは限らないことである。したがって、ネットワーク管理者は、どのノードがそのノード・クラスタに属するのかを正確に調べるのに時間を費やすことが必要となる場合がある。ノード・クラスタ中の複数のノードにサービスしようとするネットワーク管理者の要望をさらに複雑にするのは、すべてのノード・クラスタ・メンバが同じネットワーク接続性を有するとは限らないことである。したがって、管理者は、特定のネットワーク位置からノード・クラスタ中のすべてのノードにはサービスできないという状況に直面する可能性がある。これらおよびその他の問題のために、ネットワーク管理者がノード・クラスタにサービスするために多大な時間と労力を費やすことが必要となる可能性がある。
【課題を解決するための手段】
【０００７】
本発明は、ノード・クラスタのシングル・システム・イメージをネットワーク管理者に提供することにより、上述の従来のコンピュータ・ネットワーク管理システムの制約に対処する。この構成は、任意のノード・クラスタ・メンバと通信することによりノード・クラスタを遠隔から管理することを可能にし、それにより管理作業を大幅に簡略化する。
【０００８】
第１の態様によれば、本発明は、コンピュータ・ネットワーク中のノード・クラスタを管理ステーションが管理する方法を提供し、ノード・クラスタは、複数のサーバント・ノードと、ノード・クラスタ中の任意のサーバント・ノードによって受信された管理ステーション・コマンドを処理する役割を担うマスタ・ノードとを含み、この方法は、サーバント・ノードによりネットワークを通じて管理ステーションからの管理コマンドを受信するステップであって、管理コマンドを受信するサーバント・ノードがターゲット・ノードであるステップと、管理コマンドをターゲット・ノードからマスタ・ノードに渡すステップと、管理コマンドに対する応答を作成するのに必要なアクションを取ることにより、マスタ・ノードにより管理コマンドを処理するステップと、マスタ・ノードからターゲット・ノードに応答を送信するステップと、ターゲット・ノードにより応答を管理ステーションに転送するステップとを備える。
【０００９】
第２の態様によれば、本発明は、管理ステーションからの管理コマンドを処理する、ノード・クラスタ中で実行するのに適した管理エージェントを提供し、ノード・クラスタは、複数のノード・メンバを含み、ノード・メンバは、複数のサーバント・ノードと、ノード・クラスタ中の任意のサーバント・ノードによって受信された管理ステーション・コマンドを処理する役割を担うマスタ・ノードとを含み、管理エージェントは、管理ステーションから管理コマンドを受信し、コマンドをマスタ・ノードに渡し、マスタ・ノードから管理コマンドに対する応答を受信し、応答を管理ステーションに転送するための各サーバント・ノード中の手段と、サーバント・ノードから管理コマンドを受信し、管理コマンドに対する応答を作成するのに必要なアクションを取り、管理コマンドを送信したサーバント・ノードに管理コマンドに対する応答を送信するための、マスタ・ノード中の手段と、を備える。
【００１０】
第３の態様によれば、本発明は、管理ステーションから発行された管理コマンドを処理するシステムを提供し、このシステムは、複数のサーバント・ノードおよび１つのマスタ・ノードを含むノード・クラスタと、マスタ・ノードおよびサーバント・ノードで実行される、第２の態様によるマスタ管理エージェントとを備える。
【００１１】
第４の態様によれば、本発明は、有形媒体に具体化されたコンピュータ・プログラム製品を提供し、この製品は、管理ステーションによりコンピュータ・ネットワーク中のノード・クラスタを管理するための、有形媒体に結合されたコンピュータ可読プログラム・コードを備え、ノード・クラスタは、複数のサーバント・ノードおよび１つのマスタ・ノードを含み、コンピュータ可読プログラム・コードは、第１の態様による方法をプログラムに実行させるように構成される。
【００１２】
次いで、本発明の好ましい実施形態について、以下の図面を参照して単なる例として説明する。
【発明を実施するための最良の形態】
【００１３】
本発明について、図１〜５を参照して説明する。図を参照する際は、すべての図面に示す同様の構造および要素は、同様の参照符号で示す。
【００１４】
下記で詳細に述べるように、本発明は、コンピュータ・ネットワーク内のノードのクラスタの管理を容易にするものである。本発明は、ノード・クラスタを単一のノードあるいはシングル・システム・イメージ（ＳＳＩ）として表すことにより、ノード・クラスタ内の複雑な相互接続を管理ステーションから有益に隠蔽する。このような構成により、どのノード・クラスタ・メンバにアクセスすることによってもノード・クラスタを遠隔から管理することが可能になり、それにより管理作業が大幅に簡略化される。
【００１５】
図１に、本発明を実施する例示的ネットワーク環境１０２を示す。ネットワーク環境１０２は、コンピュータ・ネットワーク１０８を介してノード・クラスタ１０６と通信する管理ステーション１０４を含む。管理ステーション１０４は、１つまたは複数のネットワーク管理タスクを行う能力を有するネットワーク・クライアントを表す。通例、管理ステーション１０４は、ネットワーク環境１０２内のシステムを管理するためにネットワーク管理者によって使用されるコンピュータである。例えば、管理ステーションは、ノードによって送受信されるパケットの数、ノードによって行われる接続の数などを問い合わせることができる。管理ステーション１０２とノード・クラスタ１０６間の通信経路は、ルータ１１０、リピータ、ハブ、スイッチ、ブリッジなど、当業者に知られる各種のネットワーキング装置を含むことができる。
【００１６】
ノード・クラスタ１０６は、プライベート・ネットワーク１１６によって接続された数個のサーバント・ノード１１２と１つのマスタ・ノード１１４を含む。本発明で使用されるノード・クラスタとは、単一のエンティティとして見えるように選択されたノードの群である。クラスタの一部とするために選択するノードは、どのような理由で選択してもよい。さらに、ノード・クラスタのメンバは、必ずしも相互の近くに物理的に位置しなくともよく、あるいは同じネットワーク接続性を共有しなくともよい。しかし、クラスタ１０６中のすべてのサーバント・ノード１１２は、プライベート・ネットワーク１１６を介してマスタ・ノード１１４との接続性を有さなければならない。プライベート・ネットワークとは、一般に、そのノード・クラスタに関係するすべてのノードによって共有され、ネットワーク内のその他のデバイスからはアクセスできないローカル・エリア・ネットワーク（ＬＡＮ）接続を指す。ノード・クラスタ１０６は、システムで必要とされるだけの数のノードを含むことができる。ただし、実際的な応用例では、ノードの最大数は、機能的な性能の制約によって決まる可能性がある。例えば、応用例によっては、２０個のノードを超えるとノード・クラスタ１０６の性能が低下し始める可能性がある。
【００１７】
下記で詳細に述べるように、マスタ・ノード１１４は、任意のノード・クラスタ・メンバによって受信された管理ステーション要求を処理する役割を担う。
【００１８】
すべてのクラスタ・メンバへの接続性を有する、ノード・クラスタ中の任意ノードをマスタ・ノード１１４として選択してよいが、通例は、クラスタ中で最も高い可用性を提供するノードがマスタ・ノード１１４として選択される。マスタ・ノード１１４が機能しなくなった場合に備えて、予備マスタ・ノードを選択できることが望ましい。ただし、説明を簡潔にするために、マスタ・ノード１１４の選択は任意とする。
【００１９】
ノード・クラスタ１０６の各ノードは、管理ステーション１０４から受け取られる管理要求に対処する管理エージェント１１８を含む。下記で説明するように、各ノードの管理エージェント１１８は、管理ステーション１０４から受信した管理要求をマスタ・ノード１１４に渡す。そして、マスタ・ノード１１４で実行される管理エージェント１１８が管理要求を処理する。要求が処理されると、マスタ・ノード１１４は、管理要求を受信した本来のノードに応答を送信する。そして、本来のノードは、その応答を管理ステーション１０４に転送する。本発明の一実施形態では、管理ステーション１１８は、Simple Network Management Protocol（ＳＮＭＰ）標準の下でフォーマットされたプロトコル・データ・ユニット（ＰＤＵ）のためのゲートウェイを含む。Common
Information Model（ＣＭＩ）、Common Management Information Protocol（ＣＭＩＰ）、およびSystem
Network Architecture-Managementサービス（ＳＮＡ−ＭＳ）などの当業者に知られる他のシステム管理標準を本発明で使用できる。
【００２０】
図２に、本発明の好ましい実施形態による、管理エージェントによって行われる動作を含むフローチャートを示す。この管理エージェントの論理的動作は、（１）コンピューティング・システムで行われる一連のコンピュータ実行ステップとして、または（２）コンピューティング・システム中の相互接続されたマシン・モジュールとして、実施してよいことに留意されたい。この実施は、本発明を実施するシステムの性能要件に応じて選択してよい。したがって、ここに述べる本発明の実施形態を構成する論理的動作は、代替的に、動作、ステップ、またはモジュールと称される。
【００２１】
動作フローは、受信動作２０２で開始し、ここでターゲット・ノードが、管理ステーションから管理コマンド・パケットを受信する。本発明で用いられるターゲット・ノードとは、管理ステーションからのコマンド・パケットの宛先とされるノード・クラスタ中のノードである。ターゲット・ノードは、サーバント・ノードである場合もマスタ・ノードである場合もある。本発明の一実施形態では、ＳＮＭＰを利用して管理要求コマンドをノードに送信する。例えば、ＳＮＭＰでは、管理ステーションは、「Ｇｅｔ」または「Ｇｅｔ−ｎｅｘｔ」のコマンドを送信することによりノードのステータスを問い合わせることができる。ターゲット・ノードが管理コマンドを受信すると、送信動作２０４にコントロールが移る。
【００２２】
送信動作２０４では、管理コマンド・パケットがマスタ・ノードに転送される。このように、ターゲット・ノードは、管理コマンドを処理するのではなく、管理コマンドをマスタ・ノードに送信する。ターゲット・ノードからマスタ・ノードに管理コマンドを転送するために使用される正確な通信機構は特に重要ではなく、したがって当業者に知られる任意の方法を使用して実現してよい。例えば、一実施形態では、リモート・プロシージャ・コール（ＲＰＣ）を使用してノード間で管理コマンドを通信する。送信動作２０４を完了すると、決定動作２０６にコントロールが移る。
【００２３】
決定動作２０６で、マスタ・ノードは、ターゲット・ノードから管理コマンドを受信し、管理ステーションによって要求される情報の範囲を決定する。管理ステーションによって発行される管理要求ごとに、コマンド応答として管理ステーションに返されるデータを表す最良の方式について決定が行われる。マスタ・ノードは、応答データが表す内容を考慮しなければならない。すなわち、そのデータがあるノードについての情報を表すのか、マルチノード、仮想ファイル・サーバ（ＶＦＳ）、あるいは他のエンティティについての情報を表すのかを考慮しなければならない。この表現を本発明では情報の範囲とも称する。要求の範囲が決定されると、処理動作２０８にコントロールが移る。
【００２４】
処理動作２０８で、マスタ・ノードは、必要な指示を実行し、必要な処理を行って管理コマンドに対する応答を作成する。管理コマンドのタイプとその範囲により、マスタ・ノードによって取られるアクションが決まる。マスタ・ノードによって取られるアクションには、例えば、管理コマンド・パケットを受信したターゲット・ノードとの通信、他のサーバント・ノードとの通信、情報を編集およびフォーマットして応答とすることなどがある。処理動作２０８が終了すると、転送動作２１０にコントロールが移る。
【００２５】
転送動作２１０で、マスタ・ノードは、作成された応答をターゲット・ノードに転送する。ここでも、マスタ・ノードからターゲット・ノードに応答を転送するために使用される通信機構は重要ではない。本発明の一実施形態では、ＲＰＣを使用してマスタ・ノードからターゲット・ノードに応答を転送する。
【００２６】
次いで、送信動作２１２で、ターゲット・ノードは、管理ステーションに応答を送り返す。ターゲット・ノードは、予期されるプロトコルで管理ステーションに応答を送信する。したがって、管理コマンドの発行にＳＮＭＰが使用された場合は、応答はＳＮＭＰを使用して送信される。ターゲット・ノードが管理ステーションに応答を発行すると、動作フローは終了する。
【００２７】
本発明の好ましい実施形態によれば、管理エージェントによって行われる動作は、コンピュータ可読媒体として実施されたコンピュータ可読プログラムとすることができる。制限ではなく例として、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータなどの情報を記憶するための任意の方式または技術として実施された揮発性および不揮発性、取り外し可能および取り外し不能の媒体が含まれる。コンピュータ記憶媒体には、これらに限定しないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリその他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）その他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージその他の磁気記憶装置、または所望の情報の記憶に使用することができ、管理エージェントからアクセス可能な他の任意の媒体が含まれる。通信媒体は通例、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータを、搬送波などの変調データ信号または他のトランスポート機構に実装し、任意の情報伝達媒体を含む。用語「変調データ信号」とは、信号中に情報を符号化するような方式でその特徴の１つまたは複数を設定または変化させた信号を意味する。制限ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、ＲＦ、赤外線その他の無線媒体が含まれる。上記の媒体の組み合わせもコンピュータ可読媒体の範囲に含めるべきである。
【００２８】
図３に、本発明の好ましい実施形態を実施する例示的システムを示す。このシステムは、ノード・グループ中のサーバント・ノード１１２と通信するマスタ・ノード１１４を含む。マスタ・ノード１１４はマスタ管理エージェント３０２を含み、サーバント・ノード１１２はサーバント管理エージェント３０４を含む。
【００２９】
マスタ管理エージェント３０２は、送信プロセス３０６と受信プロセス３０８の２部分に分割される。送信プロセス３０６は、受信された管理コマンドの範囲に従って、ノード・グループ中のサーバント・ノード１１２に情報要求を通信する役割を担う。さらに、送信プロセス３０６は、管理コマンドの発信元であるターゲット・ノードにコマンド応答を渡す。本発明の特定の一実施形態では、送信プロセス３０６は、ＲＰＣ技術を使用してサーバント管理エージェント３０４と通信する。
【００３０】
マスタ管理エージェント３０２の受信プロセス３０８は、サーバント・ノード１１２から、要求されたデータを取得する。受信プロセス３０８は、ターゲット・ノードから管理コマンドを取得するためにも利用される。上記のように、本発明の一実施形態では、受信プロセス３０８は、ＳＮＭＰ  ＰＤＵゲートウェイを含む。
【００３１】
サーバント管理エージェント３０４も、受信プロセス３１０と送信プロセス３１２に分割される。受信プロセス３１０は、マスタ管理エージェント３０２の送信プロセス３０６から発行された要求を受信し、同じくＳＮＭＰ  ＰＤＵゲートウェイを含む。要求が取得されると、サーバント管理エージェント３０４は、必要なデータを取り出し、そのデータを、送信プロセス３１２を介して、マスタ管理エージェント３０２の受信モジュール３０８に転送する。サーバント管理エージェント３０４の受信プロセス３１０と送信プロセス３１２間のデータ通信もＲＰＣ技術を利用して実現してよい。サーバント・ノード１１２がターゲット・ノードでもある場合は、下記のように、受信プロセス３１０はさらに、マスタ・ノード１１４からコマンド応答を取得するように構成され、送信プロセス３１２はさらに、管理ステーションにコマンド応答を送信するように構成される。
【００３２】
図４に、本発明の好ましい実施形態の代替システム構成を示す。このシステムは、管理ステーションから管理コマンド４０４を受信するターゲット・ノード４０２を含む。管理コマンド４０４は、ユーザ・データ・プロトコル（ＵＤＰ）下でフォーマットされ、ＵＤＰポート４０６を通じてターゲット・ノード４０２によって受信される。他の管理コマンド・プロトコルを利用する実施形態も可能である。
【００３３】
ＵＤＰポート４０６は、管理コマンドが受信されたことを、ターゲット・ノード４０２で実行されるターゲット管理エージェント４０８に通知する。ターゲット管理エージェント４０８は、ゲートウェイ受信プロセス４１０を開始し、プロセス４１０は、マスタ・ノード１１４で実行されるマスタ管理エージェント３０２に管理コマンドを転送する。
【００３４】
管理コマンドは、例えばＲＰＣ４１２でマスタ管理エージェント３０２に転送することができる。本発明の一実施形態では、ターゲット管理エージェント４０８とマスタ管理エージェント３０２は、ＳＮＭＰエージェントである。さらに、マスタ・ノード１１４がターゲット・ノード４０２でもある場合は、ＲＰＣの結果、同じノードのＳＮＭＰエージェントが呼び出される。
【００３５】
上記のように、マスタ管理エージェント３０２は、管理コマンドを受け取り、適切なコマンド応答を構築する。このプロセスは、データを求めてノード・クラスタ中のサーバント・ノードをポーリングすること、記憶されたデータにアクセスすること、およびデータを編集することを含むことができる。コマンド応答が作成されると、マスタ管理エージェント３０２は、ターゲット・ノード４０２のターゲット管理エージェント４０８に応答を送信する。本発明の好ましい実施形態では、この応答は、ＲＰＣ４１４を使用してマスタ管理エージェント３０２からターゲット管理エージェント４０８に送信される。
【００３６】
ターゲット管理エージェント４０８は、ターゲット・エージェント３０２がコマンド応答を受信すると、ゲートウェイ送信プロセス４１６を開始する。本発明の好ましい特定の実施形態では、ＲＰＣサーバ・ポート４１８を使用してコマンド応答を受信する。ゲートウェイ送信プロセス４１６は、ＵＤＰポート４０６にコマンド応答を渡し、また適切なプロトコルに合わせてコマンド応答をフォーマットすることもできる。
【００３７】
コマンド応答がＵＤＰポート４０６に渡されると、ターゲット・ノード４０２は、応答４２０を管理ステーションに送り返す。コマンド応答４２０は、ＵＤＰパケットとしてフォーマットできる。このように、上記のシステムは、有益に、ネットワーク管理者が、ノード・グループ中の単一のノードに対して管理コマンドとクエリを発行し、同時にそのノード・クラスタのシングル・システム・イメージを維持することを可能にする。
【００３８】
上記のように、マスタ・ノードが管理コマンドを受信すると、マスタ・ノードは応答を作成する。図５に、マスタ・ノード１１４により応答を作成するために使用される例示的な機能ブロックを示す。提示するこの機能ブロックは、ユーザの性能要件に応じて、ハードウェア、ソフトウェア、またはそれらの組み合わせとして実施してよいことに留意されたい。
【００３９】
マスタ・ノード１１４は、マスタ・ノード１１４によって実行されるソフトウェアと対話するためのルーチン、プロトコル、および他のツールを備える共通インタフェース５０２を含む。本発明の一実施形態では、共通アプリケーション・プログラム・インタフェース（Ｃ−ＡＰＩ）を共通インタフェース５０２として使用する。
【００４０】
共通インタフェース５０２は、情報プロセッサ５０４と結合される。情報プロセッサ５０４は、ノード・クラスタ・メンバからデータを収集し、処理するために使用される。情報プロセッサ５０４は、管理ステーションが予期する方式でデータをフォーマットし、構成する役割も負う。したがって、情報プロセッサ５０４は、管理システムによって求められる情報の範囲を認識し、それに従って管理コマンドに対する応答を構築する。ルックアップ・テーブルを使用して各管理コマンドに要求されるデータのタイプを決定することができる。
【００４１】
情報プロセッサ５０４には、ローカル・アクセス・モジュール５０６およびリモート・アクセス・モジュール５０８が結合される。ローカル・アクセス・モジュール５０６は、管理コマンドに対する応答を構築または実行するためにローカル・データ・アクセスが必要なときに利用される。例えば、応答の一部として、マスタ・ノード１１４が自身の通し番号を管理ステーションに提供する必要がある場合は、ローカル・アクセス・モジュール５０６を使用してマスタ・ノードの通し番号を取得する。本発明の一実施形態では、ノードのローカル・データは、管理情報ベース（ＭＩＢ）により表される。ローカル・アクセス・モジュール５０６は、ＭＩＢによって表されるオブジェクト・インスタンスを取り出すことにより、ノードからローカル・データを取得する。同様に、ローカル・アクセス・モジュール５０６は、ＭＩＢのオブジェクト・インスタンスを変更することによりローカル・データを設定することができる。
【００４２】
サーバント・ノードからのデータ・アクセスがマスタ・ノード１１４によって求められる場合は、リモート・アクセス・モジュール５０８を使用してそのような情報にアクセスする。さらに、リモート・アクセス・モジュール５０８は、通信モジュール５１０と併せて使用される。通信モジュール５１０は、情報をフォーマットし、送信するルーチンと、データ圧縮ルーチンおよび誤り訂正のルーチンを含む。通信モジュール５１０は任意のノード間通信機構を使用可能である。
【００４３】
上述のように、本発明の好ましい実施形態では、リモート・ノードへのアクセスは、リモート・プロシージャ・コール（ＲＰＣ）を使用して達成される。ＲＰＣで、マスタ・ノード１１４は、サーバント・ノード１１２に対して機能を実行し、その機能の結果を得ることができる。詳細には、リモート・アクセス・モジュール５０８は、サーバント・ノード１１２に対する機能呼び出しを特定の管理コマンドに関連付ける。リモート・アクセス・モジュール５０８は、正しい機能パラメータとともにその機能呼び出しを通信モジュール５１０に渡す。通信モジュール５１０は次いで、サーバント・ノード１１２中のその機能を呼び出し、その結果を待つ。結果が到着すると、通信モジュール５１０は、会話ルーチンを利用して、外部データ表現（ＸＤＲ）でフォーマットされた情報を取り出す。
【００４４】
サーバント・ノード１１２も、通信モジュール５１２とローカル・アクセス・モジュール５１４を含む。通信モジュール５１４は、情報をフォーマットおよび送信し、データを圧縮し、誤りを訂正するために使用される。マスタ・ノード１１４から発行されたコマンドが通信モジュール５１２によって受信されると、ローカル・アクセス・モジュール５１４を使用して応答を取得する。応答がローカル・アクセス・モジュール５１４によって符号化されると、その応答が通信モジュール５１２によりマスタ・ノード１１４に送信される。
【００４５】
当業者には、上記の本発明は、ノード・クラスタをシングル・システム・イメージ（ＳＳＩ）として表す手段を提供することにより、ノード・クラスタの管理を助けることが明らかであろう。本発明は、任意のノード・クラスタ・メンバにアクセスすることにより、ノード・クラスタ全体の管理制御を可能にする。このような構成により、管理タスクが簡略化され、ネットワークのノード・クラスタにサービスする際に必要とされる労力が低減される。
【図面の簡単な説明】
【００４６】
【図１】本発明を実施する例示的なネットワーク環境の図である。
【図２】管理エージェントによって行われる動作を示すフローチャートである。
【図３】本発明の好ましい実施形態による例示的システムの図である。
【図４】好ましい実施形態の代替構成の図である。
【図５】管理コマンドに対する応答を作成するためにマスタ・ノードによって使用される機能ブロックの図である。
【国際調査報告】
2005525747.tif 000008
2005525747.tif 000009