図2は、本発明におけるネットワークシステムの基本構成の説明図である。同図においてシステム10は複数のノード11によって構成されるが、このシステムにおいてはノード同士が自律的に連携してグループを形成し、グループ単位でサービスの品質を維持するために状況に応じてグループの構成を変化させ、外部に対して規定の品質でサービスを提供することに最も基本的な特徴がある。なおサービスは一般に複数のアプリケーションによって構成され、後述するようにそれらのアプリケーションは一般ノードと呼ばれるノードによって実行され、規定の品質でサービスが維持されるように運用が行なわれる。
本実施形態においては、システム10の運用状態がリアルタイムで監視され、サービス毎の運用情報がモニタされる。そしてその運用情報の収集結果に対応して、提供すべきサービスに対する規定の品質を維持できるようにサービスの運用計画が立案され、サービス毎にグループ編成が行なわれる。
すなわち運用情報の収集、運用計画の立案、サービス毎のグループ編成という3つのシーケンスが自律的に繰り返され、システムの運用状況に応じてサービスの品質を維持する動作が行われる。運用情報の収集や解析が自律的に行なわれるため、外部からの管理コストを最小限におさえることが可能となる。
システム10を構成するノード11は固定的なものでなく、例えば従来他のシステムに所属していたような既存のノード12に本実施形態で必要とされる機能を後付けで搭載することによって、既存のノードでもシステムに参加することが可能であり、サービスに対するリクエストなどの状況に応じてシステム構成を柔軟に変更することも可能である。
図3は、本実施形態におけるノードの物理構成の説明図である。ノード11は一般的には中央処理装置15、メモリ16、外部記憶装置17、およびネットワークインターフェース18を備える。
図4は、図3の各ノードのメモリ16、または外部記憶装置17の内部の仮想領域に展開されるプログラムの説明図である。同図において、基本ソフトウェア21は例えばオペレーティングシステムであり、基盤ソフトウェア22は、例えばJava(登録商標)の仮想マシンであり、コンテナソフト23は例えばアプリケーションサーバのようにアプリケーションを動かすための基本ソフトである。本発明のプログラム25は、アプリケーションモジュール24とコンテナソフトウェア23との間の中継処理などを行ないながら、本実施形態におけるシステム内の運用情報の収集、運用計画立案、サービス毎のグループ編成という3つのシーケンスを自律的に繰り返すための処理を実行するためのものである。
図5は、システムの全体構成の説明図である。同図においてシステムは、複数のエリア30と、全てのエリアを横断的に管理するノードとしてのルート管理ノード31を備え、各エリア30内のノードは最上位にエリア管理ノード32、その下にサービス管理ノード33、最下位に一般ノード34が配置される階層的構造を持っている。
すなわちエリア30の内部には、そのエリア内の全てのノードを管理するエリア管理ノード32、サービス毎に品質に責任を持つための管理を行うサービス管理ノード33、サービス管理ノード33からの指示に対応して、サービスを構成するアプリケーションを実行する一般ノード34を備えており、一般ノード34はその初期状態ではサービスを構成するアプリケーションを持たず、必要に応じてサービス管理ノード33からアプリケーションモジュールが配布されることによってアプリケーションを実行するものとする。
図6は、全体システムを説明するための用語定義を示す。同図においてエリアは、物理的な距離や、通信遅延の小さい範囲で区切られ、エリア内でサービスを提供するための集まりとしてのグループは、一般に複数の一般ノードとサービス管理ノードによって構成される。どのような範囲でエリアを区切るかは、システムの運用者が適宜決めることができる。例えば、神奈川地区と千葉地区と北米地区というようにエリアを区切ることも可能である。
ルート管理ノードはシステムに唯一存在するものであり、ユニバーサル・ディスクリプション・ディスカバリー・アンド・インテグレーション(UDDI)として、どのサービスがどのエリアで提供されているかを示す役割を担っている。エリア管理ノードはエリア内でのサービスとそのエンドポイントを管理するUDDIの役割も果たす。サービス管理ノードには、管理すべきサービスを構成するアプリケーションが事前にインストールされていることが前提となっている。一般ノードは、実行すべきアプリケーションによって構成されるサービスを担当するサービス管理ノードに運用情報の報告を行なう。
またアプリケーションは、サービスを構成する、例えば単体のWebサービスであり、サービスは外部に提供され、品質を保証すべき機能の単位として、一般に複数のWebサービスを連携した形式で構成される。
図7は、グループ形成例の説明図である。同図においてAサービスは、サービス管理ノード331によって管理され、Aサービスグループ351はさらに3つの一般ノード341、342、および343を加えて構成される。Aサービスは、アプリケーションとして3つのアプリケーションa、b、cが、例えばこの順序で実行されることによって提供される。例えば一般ノード341はaアプリケーションを実行し、その実行の結果について、配属されているAサービスグループ351を管理するサービス管理ノード331に対して運用情報の報告を行なう。例えば一般ノード342のように、そのノードが実行するアプリケーションに対応して複数のサービスに配属されている場合は、それぞれのサービスに関連する運用情報を、それぞれのグループを管理するサービス管理ノードに報告することになる。
本実施形態においては、アプリケーションを実行する一般ノードの能力を数値化することによってサービスの管理が行なわれる。図8はノード能力数値化の説明図である。同図に示すように、ノードの能力の基準となる一般的なスペックのノードをモデルノードとして用意し、モデルノード37によるアプリケーションの実行結果の成績、例えばリクエストに対するレスポンスタイムの平均値などを基準の100ポイントとして定義し、一般ノード34による実行結果の成績、すなわち計測用アプリケーション38による計測結果としてのレスポンスタイムの平均値などと比較し、比率によってノードのパワーを示すポイント数が数値化される。この一般ノード34毎のノードパワーは、一般的に事前に測定され、後述する運用設定定義体に格納される。
図9は、運用計画作成方式の説明図である。同図において、サービス管理ノード331によってAサービスが管理され、サービス管理ノード332によってBサービスとCサービスとが管理されているものとする。Aサービスはa、b、およびcの3つのアプリケーションによって構成され、Bサービスは2つのアプリケーションcとd、Cサービスは2つのアプリケーションbとdとによって構成されているものとする。サービス管理ノード331は、担当するAサービスの提供に必要なノードの能力、すなわちノードパワーをアプリケーション毎に図8で説明したポイント数として算出し、同様にサービス管理ノード332は担当するBサービスとCサービスの提供のための3つのアプリケーションに必要なノードパワーをポイント数として算出する。
後述するようにエリア管理ノードは、エリア内の全てのサービス管理ノードの計画をマージし、エリア内で必要なノードパワーの総量を算出し、それぞれのサービスを運用するための計画を立案する。この計画立案においては、ただ1つの計画を作成するとは限らず、特にノードパワーが不足の場合には、どのサービスをパワー不足のままで運用するかなどによって複数のパターンの計画が立案される。
例えばエリア内の一般ノードのパワーのみで全てのサービスに対する計画が立案できる場合には、計画1のようにエリア内ノードのみでサービスが構成される計画が立案され、エリア内の一般ノードのパワーで不足の場合には、計画2のように他のエリアの余剰のノードパワーを利用する計画が立案される。この場合には、エリア管理ノードは、例えば隣接エリアのエリア管理ノードを通して隣接エリアの余剰のパワーを調査し、可能であれば他のエリアのノードのパワーを借りる前提で計画の作成が行われる。複数のパターンの計画が立案される場合には、例えばシステムの運用管理者によって計画の選択や必要な修正の指示が行なわれる。
図10は、本発明の第1の実施例におけるエリアを越えたノードパワー貸出方式の説明図である。例えばエリア30aにおける計画立案においてノードパワーが不足すると、エリア管理ノード32aは他のエリア30bを管理するエリア管理ノード32bに対してノードパワーの貸出を依頼し、エリア管理ノード32b側では自エリア内のノードパワーの貸出が可能か否かを調査し、貸出可能な場合には貸出可能なノードパワーを通知するとともに、そのノードパワーを持つ一般ノードを管理するサービス管理ノードを紹介する。
ノードパワー貸出可能な場合には、エリア管理ノード32bは貸出可能なノードパワーを持つ一般ノード、例えば34bを管理するサービス管理ノード33bに新規サービスをアサインし、パワーを借りるエリア30aの内部でそのサービスを管理するサービス管理ノード33aは、サービス管理ノード33bに対して必要なアプリケーションモジュールなどを転送し、そのモジュールはサービス管理ノード33bから一般ノード34bに配布され、そのアプリケーションの実行結果、すなわちサービス運用情報は一般ノード34bからサービス管理ノード33bを介してノードパワーを借りたエリア30a側のサービス管理ノード33aに報告される。
これに対して後述する第2の実施例においては、エリアを超えたノードパワー貸出はエリア管理ノード相互間ではなく、ルート管理ノードの仲介によって行われるものとする。すなわち第2の実施例では、後述するように、各エリアにおけるシステム運用計画立案に伴うグループ編成終了時に、各エリアのエリア管理ノードは自エリアのノードパワーの空き状態をルート管理ノードに報告する。
そしてノードパワー借用を希望するエリアのエリア管理ノードは、ルート管理ノードに対してノードパワー貸出が可能なエリアの問い合わせを行い、ルート管理ノードは各エリアのノードパワー空き状態に対応して貸出可能エリアを紹介する。ただし紹介後の実際のサービス実行準備、例えばアプリケーションモジュールの配布や、サービス実行情報の報告などについてはルート管理ノードは仲介しないものとするが、その詳細は第1の実施例の説明の後に、図58から図69を用いて説明する。
続いて本発明の第1の実施例について図11から図57を用いて説明するが、まず図11から図13を用いてノードの詳細論理構成について説明する。図11は、一般ノードの論理構成ブロック図である。前述のように本発明のプログラム25は、アプリケーションモジュール24とコンテナソフトウェア23との間に位置するものであり、全体を制御する基本機能部40、他のノードとの通信を行なうための会話ユニット41、アプリケーションモジュール24によるアプリケーションの実行にあたって、本実施形態に必要な処理を折り込む前処理折込部42、後処理折込部43に加えて、各種機能部と各種データベースを備えている。
各種機能部としては、サービスの運用情報の収集などを行なう運用情報収集機能部45、運用情報のサービス管理ノードへの報告などのスケジュールを管理するスケジュール機能部46、立案された計画が実行された場合のサービスの品質を調べる品質検査機能部47を備え、各種データベースとしては運用情報を保存する場合のデータ形式の定義を格納するデータ形式定義体50、アプリケーションの実行結果、すなわちリクエストの処理に関する情報等の運用情報を蓄積する運用情報蓄積部51、ノードの運用上必要となる、例えばノードパワーなどの設定情報の定義を格納する運用設定定義体52、サービス毎に守るべき品質、例えば規定のレスポンスタイムなどを格納する品質要件定義体53を備えている。
会話ユニット41の内部には、他の機能部などとの間のデータ転送などを制御する会話機能部55、管理用の通信以外の通信のための一般会話モジュール56、他のノードとの間のメッセージを解析するメッセージ解析部57、他のノードからのメッセージを受信するメッセージ受信部58、他のノードへのメッセージを送信するメッセージ送信部59を備えている。
図12は、サービス管理ノードの論理構成ブロック図である。このサービス管理ノードは、一般ノードを構成する各部、および定義体などに加えて、システムの運用管理者との間の通信などを行なうための運用管理ユニット61、いくつかの機能部、およびいくつかのデータベースが追加された構成となっている。また会話ユニット41の内部に、他のノードとの間で管理用の通信を行なうための管理用会話モジュール69が追加されている。なお運用管理ユニット61の内部には、運用管理者に対する必要な通知を行う管理者通知機能部71、および通信管理のための運用管理インターフェース72を備えている。
追加された機能部としては、サービスの運用計画を立案する運用計画立案機能部62、立案された計画に対応してサービスの品質を予測する品質効果予測機能部63、アプリケーションモジュールを管理するモジュール管理部64、および例えば一般ノードへのアプリケーションモジュールの配布にあたり、グループ内の運用情報を更新する運用構成更新機能部65を備えている。
追加されたデータベースとしては、立案したサービス計画を格納する運用計画蓄積部66、運用計画に基づき、どの一般ノードがどのサービスを実行するかなどを構成情報として蓄積する構成情報蓄積部67、アプリケーションモジュールを格納するモジュール蓄積部68を備えている。
図13は、エリア管理ノードの論理構成ブロック図である。その構成は図12におけるサービス管理ノードの構成と類似しているが、エリア管理ノードはエリア内の全てのノードの管理を行なうだけの機能を持つのみで十分であり、特にアプリケーション関係の機能部やデータベースは必要がなく、アプリケーションモジュール24、前処理折込部42、後処理折込部43、モジュール管理部64、モジュール蓄積部68を省いた構成となっており、追加されるデータベースとして、エリア内に存在するノードに関するデータのリストを格納するエリア構成定義体75が備えられる。
図14、および図15は、図11から図13で説明した各ノード内のデータベースが保持するデータの説明図である。まず図14において、データ形式定義体50は運用情報保存のための情報別のデータフォーマットを格納している。運用設定定義体52はノード運用上必要な設定情報として所属エリアのIDなどの各種のデータを格納する。これらのデータのうち、エリア管理ノードアドレスは一般ノードとサービス管理ノードにおいて保持され、ノードパワーから、サービス毎に運用情報の報告を行なう間隔までのデータは一般ノードに保持され、また連携可能エリアのデータはエリア管理ノードに保持される。なお、本実施形態ではサービスを構成するアプリケーションは一般ノードによって実行され、ノードパワーは一般ノードのみに保持されているが、サービス管理ノードもアプリケーションを実行する場合にはサービス管理ノードにもそのノードパワーが保持される。次に品質要件定義体53にはサービス毎に守るべき品質として規定のレスポンスタイムが格納される。
エリア構成定義体75には、エリア内に存在するノードに関するデータとして、ノードIDなどのデータが格納されている。この内ノード種別としては一般ノード、サービス管理ノード、他のエリアから借用しているノードの種別が格納されている。管理しているサービスのデータはサービス管理ノードのみに対して格納され、借用期限のデータは借用ノードのみに対して格納され、貸出先と貸出期限は他のエリアにノードパワーを貸出中のノードのみについて格納されている。
図15は、各種の蓄積部に蓄積されるデータの説明図である。運用情報蓄積部51には、一般ノードにおいてはそのノードでアプリケーションを実行した結果としての運用情報が、サービス管理ノードでは一般ノードから報告された運用情報が格納される。データ内容としてのリクエスト受信時刻などから実行されたリクエストの数も明らかとなる。
モジュール蓄積部68には、サービス管理ノードにおいて、そのノードが管理するサービスの実行のために必要なモジュールが格納され、運用計画蓄積部66にはサービス毎に必要とされるノードパワーの日にち/曜日ごとのリストが格納され、過去の立案計画も実績との比較のために蓄積される。さらに構成情報蓄積部67には、運用計画に基づいてどの一般ノードがどのサービスを実行するかのデータが過去の情報も含めて蓄積される。
続いて本実施形態において各ノードによって実行される処理のシーケンスについて詳細に説明する。図16は、そのようなシーケンスの全体、すなわちシステム運用サイクルの全体説明図である。まずシステムの初回起動時には起動シーケンス、すなわちステップS1として、基本的には自エリア内の各ノードがエリア管理ノードに対して自ノードの情報を登録する処理が行われる。
続いてステップS2で計画立案のシーケンスが実行される。このシーケンスでは、各サービス管理ノードにおいて、サービス実行のために必要なノードパワーと、運用中に収集された運用情報を基に、サービスの品質を維持するための最適な構成計画の立案が行なわれる。
続いてステップS3でグループ編成のシーケンスが実行される。このシーケンスでは計画立案のシーケンスで立案された計画を基に、サービス毎にサービス管理ノードと一般に複数の一般ノードとによって構成されるグループの編成が行なわれる。
ステップS4では運用情報収集のシーケンスが行なわれる。このシーケンスではシステムの運用中の運用情報が収集され、サービス品質のチェックが行われる。その結果はステップS2の計画立案のシーケンスで利用される。
図17は、運用計画立案タイミングと、その運用の時系列の説明図である。計画立案タイミングが来ると、ステップS2で運用計画の立案が行なわれる。この計画は次の計画立案タイミング以降の運用において用いられるものであり、運用計画が立案されるとステップS3のグループ編成が行なわれ、その結果が次の計画立案タイミングの時点以降の運用、すなわちステップS4で利用されることになる。
図18は、図16のシステム運用サイクルに対応するシーケンスの全体的関連を示すフローチャートである。同図においてシステムが起動されると、まずステップS1で起動シーケンスの処理が行われ、続いてステップS2で個々のサービス管理ノードにおいて運用計画の立案シーケンスの処理が行われる。システムにおいて新規サービスが追加される場合は、その追加内容がこのシーケンスにおいて反映される。
運用計画が立案されるとステップS3でエリア管理ノードにおいてグループ編成シーケンスの処理が行なわれる。新規ノードが追加される場合は、その新規ノードに対応してステップS1の起動シーケンスの処理が実行され、新規ノードはグループ編成シーケンスにおいてグループ編成に追加される。なおすでにステップS2で運用計画が立案されているために、運用計画そのものの練り直しは行われず、例えば新規ノードのパワーがノードパワーの不足しているサービスや、ぎりぎりのノードパワーによって提供されるサービスに対して追加される形式でグループ編成が行なわれる。
続いてステップS4でシステムが実際に運用されながら、サービス管理ノードにおいて運用情報の収集とチェックのシーケンスの処理が実行される。そしてステップS5で運用情報のチェックの結果に応じて、品質不良が定義された回数以上発生したか否かが判定され、定義された回数以上発生していない場合には、ステップS6で次の計画立案予定日に達したか否か、すなわち図17の計画立案タイミングに達したか否かが判定され、まだ達していない場合にはステップS4のシーケンスが続行される。そしてステップS5で品質不良、例えばレスポンスタイムオーバーが定義された回数以上発生した場合、あるいはステップS6で計画立案予定日に達したと判定された場合にはステップS2に戻り、再び運用計画の立案シーケンスの処理が行われる。
図19、および図20は、図18におけるステップS1の起動シーケンスの詳細フローチャートである。このシーケンスでは、前述のように新しく起動したノード、すなわち基本的にはエリア内の一般ノードやサービス管理ノードが、エリア管理ノードに自ノードの情報を登録する処理が実行される。
図19において、まずコンテナソフトウェア23から基本機能部40に対して、ステップS11で起動イベントが発信され、基本機能部40はステップS12で自ノードにインストールされている機能部などの自ノード構成を確認し、ステップS13で運用設定定義体52から運用設定データとして静的に定義されている、自ノードが所属するエリアのエリア管理ノードのアドレスを取得し、ステップS14で会話機能部55に対してエリア管理ノードへの登録を依頼する。
会話機能部55は、ステップS15で一般会話モジュール56を用いてメッセージを作成し、メッセージ送信部59に対してステップS16でメッセージの送信を依頼し、メッセージ送信部59はステップS17でエリア管理ノードのメッセージ受信部58に対して自ノードの情報、例えばアドレスやノードパワーなどを送信し、自ノードの情報の登録を依頼する。
図20において、エリア管理ノード側ではメッセージ受信部58が新しく起動したノードからのメッセージを受信し、ステップS18でそのメッセージを会話機能部55に通知し、会話機能部55はステップS19でメッセージの解析をメッセージ解析部57に依頼し、その解析結果としてのメッセージをステップS20で基本機能部40に通知する。
基本機能部40は、ステップS21でエリア構成定義体75内のノードリストとして、新規に起動したノードのアドレスやノードパワーを登録し、登録完了メッセージの返信を会話機能部55にステップS22で依頼する。会話機能部55は、ステップS23で管理用会話モジュール69にメッセージの作成を依頼し、作成されたメッセージの返信をステップS24でメッセージ送信部59に依頼する。メッセージ送信部59は、ステップS25で登録完了メッセージを新しく起動したノード側のメッセージ受信部58に対して送信する。
次に運用計画立案のシーケンスについて説明する。図21は、この運用計画立案の全体を示すシーケンス関連図である。同図において運用計画立案シーケンスは、システムに新しいサービスが登録された場合、他のエリアから借りていたノードパワーの貸出停止通知を他のエリアから受け取った場合、品質不良が多数回発生した場合、および図17で説明した計画立案タイミングに達した時のスケジューラによる起動の場合に開始される。
この全体シーケンスでは、まずステップS30で各サービスに対する計画立案がサービスを担当するサービス管理ノード毎に行なわれ、ステップS31でそれらの計画のマージがエリア管理ノードによって行なわれ、このマージ結果に対応して、全ての計画を自エリア内のノードのパワーだけで実行できない場合にはステップS32で他のエリアへのノードパワー借用依頼が行なわれ、あるいは他のエリアに自エリア内のノードパワーを貸出している場合にはステップS33でその貸出停止通知が他のエリアに対して行われる。
例えば他のエリアからノードパワーの借用が可能な場合にはステップS31に戻り、その借用可能なノードパワーを含めて再度個々のサービスに対応する運用計画の立案がなされる。
ステップS31で計画のマージの結果、作成されたサービス毎の運用計画に対して、必要があればステップS34で品質予測の実行が行なわれる。原則的には、この品質予測は、ステップS30で各サービス管理ノードによって立案されたサービス毎の計画に対してノードパワーが不足した場合にのみ実行される。ノードパワーが不足していない場合には、この品質予測の実行は行なわれない。
続いてまた必要に応じて、ステップS35でマージによって作成された運用計画、あるいはステップS34で実行された品質予測の結果に対して運用管理者への提案が行なわれ、運用管理者からすべてのサービスの運用計画実行に対する許可が得られた場合には、運用計画立案のシーケンスは終了し、そのままその運用計画にしたがってシステムの運用が行なわれる。1つでも計画に対して運用管理者から承認が得られない場合や修正が指示された場合には、再びステップS31に戻り、計画のマージ以降のシーケンスが実行される。なおこのステップS35における運用管理者への提案は必ずしも必須のものではなく、図16で説明したように計画立案、グループ編成、運用情報収集のサイクルがシステムによって自律的に行なわれる場合は必要のないものである。
図22、および図23は、運用計画の立案ロジックの説明図である。この計画立案ロジックにおいては、例えばサービス毎の規定レスポンスタイムを満足するように計画の立案が行なわれる。図22は、サービス毎の、また曜日毎のリクエスト数と平均レスポンスタイムの例である。例えばAサービスに対する規定レスポンスタイムは40msであり、月曜と金曜はリクエスト数が多いために、この規定レスポンスタイムを平均レスポンスタイムが上回ることが示されている。
図23は、サービス毎のノードパワー割当て計画の例である。表中の数値は、各サービスを構成するアプリに必要なノードパワーのポイントの和を示している。AサービスとBサービスのそれぞれに対して、曜日毎にノードパワーのポイント数を割当てることによって、品質予測として平均レスポンスタイムが得られる。パターン1では木曜日にA、Bの両方のサービスに対してそれぞれ200ポイントのノードパワーが割当てられるが、Bサービスに対するレスポンスタイムの予測値は80msとなり、規定レスポンスタイムを超えることが、またパターン2においては同じく木曜日にAサービスに対して100ポイント、Bサービスに対して300ポイントのノードパワーが割当てられるが、Aサービスに対する予測レスポンスタイムが50msとなり、規定レスポンスタイムを超えることが示されている。
図24、および図25は、図21のステップS30、すなわちサービス毎の計画立案の詳細シーケンスである。このシーケンスの処理は、各サービスを担当するサービス管理ノードによって実行される。まずスケジュール機能部46がステップS40で運用計画立案機能部62に計画の作成を依頼し、運用計画立案機能部62はステップS41で構成情報蓄積部67からサービス毎の担当ノードやそのノードのパワーなどの構成情報を取得し、ステップS42で運用情報蓄積部51からサービス毎のリクエスト数、レスポンスタイムなどの運用情報を取得する。ここで運用情報蓄積部51から運用計画立案機能部62に渡されるデータは、図26の受け渡しデータ詳細テーブルの項目“01”の内容である。
続いて運用計画立案機能部62は、品質要件定義体53からサービス毎に守るべきレスポンスタイムをステップS43でサービス品質要件として取得する。このデータは図26のテーブルの項目“02”の内容である。そして運用計画立案機能部62はこれらのデータを基にして、サービス要件を満たすためにステップS44でサービスを構成するアプリケーションの実行に必要なノードパワーの算出を行なう。
図27は、このノードパワー算出のために用いられる、蓄積された過去の構成情報および運用情報の具体例である。ここでこのサービスは2つのアプリケーションaとbとで構成され、サービスの品質要件としてレスポンスタイムが5秒以内と規定されているものとする。
図27において品質要件、すなわちレスポンスタイム5秒以内が満たされているのは3つのパターンであるが、これらのパターンのうちで合計のノードパワーが最も少ないパターンとしてアプリケーションaに100ポイント、アプリケーションbに50ポイントを割当てるものとして、図24のステップS44でノードパワーの算出が行なわれる。
図25は、図24のシーケンスの続きである。まずステップS45で運用計画立案機能部62は会話機能部55に対してエリア管理ノードへの計画の通知を依頼し、会話機能部55はステップS46で管理用会話モジュール69にメッセージの作成を依頼し、作成されたメッセージの送信をステップS47でメッセージ送信部59に依頼し、メッセージ送信部59はステップS48でエリア管理ノードに対して運用計画を送信する。ここで送られるデータは、図26の項目“03”に示すように、サービスおよび日にち毎に必要なノードパワーの値と、自ノードを識別するIDである。
エリア管理ノード側では、メッセージ受信部58がサービス管理ノードから送られたメッセージを受信し、ステップS49で会話機能部55にそのメッセージを通知する。会話機能部55はステップS50でメッセージの解析をメッセージ解析部57に依頼し、解析結果はサービス毎の運用計画としてステップS51で運用計画蓄積部66に格納される。
図28は、図21のステップS31における計画のマージの詳細シーケンスである。このシーケンスの処理はエリア管理ノードによって実行される。まず運用計画立案機能部62がステップS53で運用計画蓄積部66から各サービスの運用計画を取得し、ステップS54でその計画をマージし、ステップS55でエリア構成定義体75からエリア内のノードリストを取得し、ステップS56で、例えば図21のステップS32としての他のエリアへのパワー借用依頼をすでに実行し、他のエリアからノードパワーを借用できる場合にはその借用ノードの情報も含めてマージを行い、ステップS57で使用可能なノードリソースを基に計画と実際のノードリソースを比較して各サービスに実際に割当て可能なノードパワーを算出する。
以上の結果によってエリア内のノードパワーだけで計画を満たすことができるか、ステップS32をすでに実行していればステップS34、またはS35に進む。エリア内のノードパワーだけでは不足し、他のエリアに貸出中のノードがある場合にはステップS33に進む。エリア内のノードパワーだけでは不足し、他のエリアへの貸出もなく、ステップS32をまだ実行していない場合にはステップS32に進む。
図29から図31は図21のステップS32、すなわち他のエリアへのパワー借用依頼の詳細シーケンスである。図29は、エリア管理ノード、すなわちノードパワーを借りようとするエリアの管理ノードから全てのエリアを管理するルート管理ノードに対してノードパワーを借用したいエリアのエリア管理ノードのアドレスを問合せる処理のシーケンスである。まず運用計画立案機能部62が、ステップS60で運用設定定義体52の格納内容から連携可能エリアの範囲を取得する。ここでノード借用可能なエリアは静的に定義され、図14に示すように運用設定定義体52に格納されているものとする。運用計画立案機能部62は連携可能エリア、すなわち対象エリアのエリア管理ノード取得メッセージ、すなわちエリア管理ノードのアドレスを取得するためのメッセージをルート管理ノード側に送信するために、ステップS61からS64で、会話機能部55、管理用会話モジュール69、メッセージ送信部59を介して、ルート管理ノードに対してエリア管理ノード取得メッセージを送信する。
ここで前述のように、ノード借用可能なエリアは、エリア毎に例えばエリア管理者によって静的に設定されるものとする。借用可能か否かの判断は、基本的にはそのエリア相互間での通信に対して発生する遅延が実用上無視できるかどうか、およびエリア相互間での通信が許可されているかによって判定される。実際にはエリアの管理者同士による契約によって決定されるものと想定される。
若干の通信遅延が発生しても、ノードパワーの借用可能なエリアに関しては遅延の程度によってノードパワーに対して1より小さい係数を掛けることによって調整を行う。通信遅延のために他のエリアからの出力に対して80%の係数を掛けるべき場合には、100ポイントのパワーを持つノードを、80ポイントのパワーを持つノードとして扱うことになる。
ルート管理ノード側では、メッセージを受信したメッセージ受信部58から、ステップS65からS67において会話機能部55、メッセージ解析部57を介して処理が行われ、会話機能部55はステップS67でルート管理ノード内の、例えばエリア構成定義体、すなわちエリア管理ノードのリストから、問合せのあったエリアのエリア管理ノードのアドレスを取得する。なおルート管理ノードの構成は、図13で説明したエリア管理ノードの構成と類似しているものとする。
図30および図31は、図29のシーケンスの続きである。ルート管理ノード側では、会話機能部55、管理用会話モジュール69、メッセージ送信部59のステップS70からS72の処理によって、エリア管理ノード側に対して他エリアのエリア管理ノードの情報が送信される。
エリア管理ノード側では、ステップS73からS75でメッセージ受信部58、会話機能部55、メッセージ解析部57による処理によって、運用計画立案機能部62にエリア管理ノードの情報、すなわちアドレスが通知される。
続いてエリア管理ノードから他のエリアのエリア管理ノードに対してパワー借用依頼のメッセージを送るために、運用計画立案機能部62、会話機能部55、管理用会話モジュール69、メッセージ送信部59によってステップS76からS79の処理が行われ、他のエリアのエリア管理ノードに対してパワー借用依頼メッセージが送信される。このメッセージで送られるデータは、図26の項目“04”に示すように借用希望ノードパワーの値と、借用希望期間である。
このパワー借用依頼メッセージは図31で、他のエリアのエリア管理ノードのメッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS81とS82の処理によって解析される。会話機能部55は、この解析結果に対応してノードパワーの貸出が可能か否かを判定するために、ステップS83で構成情報蓄積部67からエリア内のノード状況を取得し、ステップS84で運用計画蓄積部66から各サービスに必要なノードパワーの計画を取得し、ノードパワーの貸出が可能か否かを判定する。
図32は、このノードパワー貸出可能性判定処理の詳細フローチャートである。この処理は、他のエリアからのノードパワーの貸出依頼を受信した時点で起動される。まずステップS90で構成情報蓄積部67から得られた各サービスに割当てられているノードの情報、運用計画蓄積部66から得られた各サービスに必要なノードパワーの計画がノード状況として取得され、ステップS91で計画で要求されているノードパワーと実際に割当てられているノードパワーを比較し、現時点でサービスの要求品質に対してノードパワーが足りているか否かが判定され、足りていない場合にはステップS92で貸出は不可能と判定される。足りている場合には、ステップS93で割当てられているノードパワーから要求されているノードパワーを減算して、ノードパワーの余剰値を算出することによって貸出可能ノードパワーが算出され、ステップS94でこの貸出可能ノードパワーがパワー貸出を依頼してきた他のエリアのエリア管理ノードに通知されることになる。
すなわち図31のステップS85からS87の処理において、会話機能部55、メッセージ送信部59によってパワー貸出を依頼してきたエリアのエリア管理ノードに対して貸出可能なパワーが通知される。この通知メッセージに含まれるデータは、図26の項目“05”のように貸出可能なノードパワーの値と、貸出可能期間である。この図31のシーケンスが終了すると、図21のステップS31、すなわち図28の処理に戻ることになる。
図33は、図21のステップS33、すなわち他のエリアへの貸出停止通知の詳細シーケンスである。同図において、まずノードパワーを貸出しているエリア管理ノード側の運用計画立案機能部62、会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS95からS98の処理によって、ノードパワーの貸出停止メッセージがパワーを借りている他のエリアのエリア管理ノードに対して送信される。このメッセージにおいて通知されるデータは、図26の項目“06”で示すように貸出停止予定のノードパワーの値、パワーを貸出したノードで実行中のサービス、およびそのサービスを管理するサービス管理ノードのアドレスである。
この貸出停止通知メッセージを受けた他のエリアのエリア管理ノード側では、メッセージ受信部58、会話機能部55、およびメッセージ解析部57によるステップS99、S100の処理によってメッセージの内容が解析され、その解析結果に対応して図21で説明したように、この通知を受けたエリア管理ノード側では計画立案シーケンスが開始される。
図34は、このノードパワー貸出停止通知に対応して、ノードパワーを貸しているエリア側と、ノードパワーを借りているエリア側での運用計画立案、およびグループ編成におけるその取扱の説明図である。まずノードパワーを貸しているエリア側のステップS2における運用計画立案シーケンスにおいて、ノードパワーの不足のためにノードパワーを貸しているエリア側に対して貸出停止通知が発信される。ノードパワーを借りているエリア側では、その通知に対して直ちにノードパワーを返却するというような即座の対応は不可能であり、次の計画立案タイミングまでは借りているノードパワーを含めて運用が行なわれる。
ノードパワーを借りているエリア側では、次の計画立案タイミングの時点t2で立案する運用計画においてノードパワー返却が可能か否かを検討し、返却が可能であればノードパワーを貸しているエリア側にそれを通知し、借りているノードパワーを含まない形で運用計画の立案を行なう。
ノードパワーを貸しているエリア側でも同時に運用計画の立案が行なわれているが、この運用計画立案タイミングの時点t2ではまだノードパワーを借りているエリア側からの返却可能通知が届いていないために、貸しているノードパワーを含めた運用計画を立案することはできず、運用計画立案の途中でノードパワーを借りているエリア側から返却可能通知を受け取ったとしても、前述のようにステップS3のグループ編成においては、例えばぎりぎりのノードパワーで運用しなければならないサービスのグループにそのノードパワーを組入れることは可能であるが、立案される運用計画そのものに返却されるノードパワーを活用することはできず、返却されるノードパワーを含めた運用計画の立案は次の計画立案タイミングt3において行なわれることになる。
ノードパワーの貸借は前述のように貸出可能期間、貸出期限を指定して行なわれる。この貸出期限が到来した時には、ノードパワーを借りているエリア側のエリア管理ノードは、前述の貸出停止通知を受け取らない限り、借用期間の更新を貸出側のエリア管理ノードに申請することができる。図35はその借用期間更新申請処理のフローチャートである。
図35において貸出期限がきた時点で処理が開始され、ステップS102でノードパワーの貸出もとのエリア管理ノードに借用期間の更新が申請され、ステップS103で更新が許可されるか否かによって、許可される場合にはステップS104で借用期限が更新され、継続して利用することが可能になるが、更新が許可されない場合にはステップS105で借用ノードが返却される。
なお、図34のようにノードパワー貸出停止通知を受けた場合および、図35のように借用期間の更新が許可されなかった場合におけるノードの返却処理は、該ノードパワーを借用しているエリアのエリア管理ノードから貸出元のエリアのエリア管理ノードへ返却メッセージを送信し、それぞれの構成情報蓄積部67およびエリア構成定義体75を修正することで実施される。
図36、および図37は、図21のステップS34、すなわち品質予測実行の詳細シーケンスである。前述のようにこの処理は、例えばステップS31の計画マージのシーケンスの結果、サービス管理ノードによって立案された各サービス毎の計画に対して割当てられるノードパワーが不足する場合にのみ実行される。
図36でエリア管理ノード側からサービス管理ノードに対して品質予測の実行が依頼される。運用計画立案機能部62が、エリア構成定義体75から品質予測を実行すべきサービスを管理するサービス管理ノードの情報、例えばそのアドレスをステップS108で取得し、ステップS109からS112の処理において会話機能部55、管理用会話モジュール69、およびメッセージ送信部59の処理によって、エリア内でマージされた計画において各サービスに割当て可能なノードパワーを通知して、品質予測の実行依頼メッセージがサービス管理ノード側に送られる。
サービス管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS113からS115の処理によって、品質効果予測機能部63に対してそのメッセージの内容が通知される。
図37においてサービス管理ノード側の品質効果予測機能部63は、ステップS117で運用情報蓄積部51から過去の運用情報を取得し、ステップS118で品質要件定義体53からサービス毎の品質要件を取得し、さらにステップS119で構成情報蓄積部67から過去の構成情報を取得して、ステップS120でサービス毎の品質予測を実行する。この品質予測では、実際にそのサービスに割当てられたノードパワーと過去の運用実績に基づいて、サービス毎の品質、例えばレスポンスタイムの予測などが、図27におけると同様に実行される。
図38、図39は、図21のステップS35、すなわち運用管理者への提案の詳細シーケンスである。前述のように、このシーケンスはノードパワーが不足し、ステップS34で品質予測が実行された後には原則的に行われる処理であるが、ノードパワーが不足していない場合にはシステムの自律的動作を実現するために原則的にはこのシーケンスは実行されないものである。例えばシステムの運用の初期においては、システムの運用状態の確認を行なうために図38、および図39のシーケンスが実行されるが、運用が定常状態に入ってからはノードパワーが不足していない場合には基本的に実行されないことになる。
図38において、サービス管理ノード側で品質効果予測機能部63、管理者通知機能部71、メッセージ送信部59、運用管理インターフェース72によるステップS122からS124の処理によって、サービス運用管理者に対してサービスの運用結果と品質予測の結果の通知が行われる。
サービス運用管理者は、システム内でサービス管理ノードとの通信が可能な範囲に存在するものとし、サービス運用管理者はステップS125でサービス管理ノードから送られた運用計画と品質予測結果を検討し、例えばサービス相互間の優先度などに応じて、サービスAに対しては、レスポンスタイムを短くするために割当てるノードパワーを増加させ、サービスBに割当てるノードパワーをその分減少させるというような修正、あるいは運用計画の承認の内容を、ステップS126、S127の運用管理インターフェース72を介する処理によって品質効果予測機能部63に通知する。図23で説明したように、パターン1とパターン2との2つのパターンのいずれかをサービス運用管理者が選択する形式をとることも可能である。
図39は、図38のシーケンスの続きである。サービス管理ノード側では、品質効果予測機能部63がステップS128で、運用管理者からの修正指示がある場合には、その指示に対応してサービス毎の必要パワーリストを再作成し、その再作成結果を含めて運用管理者による承認や修正の結果を、ステップS129からS132における会話機能部55、管理用会話モジュール69、メッセージ送信部59の処理によって、エリア管理ノード側のメッセージ受信部58に送信する。なおステップS128の必要パワーリスト再作成の処理は、例えば前述のようにサービスAのノードパワーを増加させ、サービスBのノードパワーを減少させるような運用管理者からの修正指示に対応して実行される。
以上で図21で説明した運用計画立案シーケンスの説明を終了し、続いて図18のステップS3、すなわちグループ編成シーケンスの詳細について説明する。図40は、グループ編成シーケンスの全体的なシーケンス関連図である。このシーケンスは計画立案シーケンスの終了にともなって開始される。まずステップS135で計画立案結果にしたがって実ノードの割当て、すなわちどのサービスのどのアプリケーションをどのノードで実行するかの割当てが行なわれ、次に他のエリアのノードパワーを借用する場合には、ステップS136でパワーを借りるエリアのエリア管理ノードに実際にノードパワーを借りることを通知し、そのエリア内でサービスを管理するサービス管理ノード、すなわち代理サービス管理ノードの情報を取得した後に、ステップS137でサービス管理ノードへの通知、すなわち運用計画の通知が行われ、他のエリアのノードパワーを借りる場合にはステップS138でパワー借用エリアへのアプリケーションモジュールの配布、すなわち代理サービス管理ノードへのモジュール配布が行なわれた後に、ステップS139で自エリア内、および他のエリアでノードパワーを借りる一般ノードへのモジュール配布が行われる。
図41は、図40のステップS135、すなわち実ノード割当ての詳細シーケンスである。同図において運用計画立案機能部62が、運用計画蓄積部66から運用管理者によって承認された運用計画をステップS151で取得し、またエリア構成定義体75からステップS152で他のエリア内の借用ノードを含めた利用可能なノード情報を取得し、ステップS153でどのサービスのアプリケーションをどのノードで実行するかを、運用計画のパワー割当てを基に決定し、計画に対して実際のノードを割当てる処理が終了する。
図42、および図43は、図40のステップS136、すなわちパワー借用エリアへの通知の詳細シーケンスである。図42においてエリア管理ノードの運用計画立案機能部62、会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS155からS158までの処理によって、他のエリアのエリア管理ノードに計画立案にあたって借用を依頼したノードパワーを実際に借用することを通知する借用メッセージが送信される。
このメッセージを受け取ったノードパワーを貸与するエリア側のエリア管理ノードでは、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS159からS161の処理によって、基本機能部40に対して借用メッセージの内容が通知される。
図43で、このメッセージの内容を受け取った基本機能部40は、エリア構成定義体75からサービスを管理するサービス管理ノードの情報をステップS162で取得する。すなわちパワーを貸与するエリアのために実行されるサービスを管理する代理サービス管理ノードを選定する。その選定結果は基本機能部40、会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS163からS166の処理によって、ノードパワーを借りるエリア側のエリア管理ノードに通知される。ここで通知される内容は図26の項目“07”に示すように、他のエリア側でサービスを管理する代理サービス管理ノードのアドレスである。
このメッセージを受け取ったノードパワーを借りる側のエリア管理ノードのメッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS167からS169までの処理によって、運用計画立案機能部62にその代理サービス管理ノードのアドレスが通知される。
図44は、図40のステップS137、すなわちサービス管理ノードへの通知の詳細シーケンスである。このシーケンスではエリア管理ノードから、サービスを担当するサービス管理ノードに対してサービス毎の運用計画、例えば日にちや曜日毎に各ノードが実行すべきアプリケーションなどを指定する情報が通知される。まずエリア管理ノード側の運用計画立案機能部62が、エリア構成定義体75からステップS171でエリア内のノードの情報を取得する。そして運用計画立案機能部62、会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS172からS175の処理によって、計画通知メッセージがサービス管理ノードに通知される。
サービス管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS176からS178の処理によって、受信したメッセージの解析が行われ、その内容としての構成情報が構成情報蓄積部67に格納される。
図45、および図46は、図40のステップS138、すなわちパワー借用エリアへのモジュール配布の詳細シーケンスである。図45においてノードパワーを借りる側のエリア管理ノードの運用計画立案機能部62、会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS180からS183の処理によって、借用ノード情報メッセージ、すなわち他のエリアでサービスを管理する代理サービス管理ノードのアドレス情報を含むメッセージが、パワーを借りるエリア側のサービス管理ノードに送られる。
パワーを借りる側のサービス管理ノードでは、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS184からS186の処理によって基本機能部40に借用ノード情報が通知される。
図46において、パワーを借りるエリア側のサービス管理ノードでは、運用計画立案機能部62がステップS188でモジュール蓄積部68からアプリケーションの実行に必要なモジュールを取得する。そして運用計画立案機能部62、会話機能部55、管理用会話モジュール69、メッセージ送信部59のステップS189からS192の処理によって、サービスの実行に必要なモジュールが代理サービス管理ノード側に送信される。
代理サービス管理ノード、すなわち他のエリア側のサービス管理ノードでは、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS193からS195の処理によって、送信されたモジュールがモジュール蓄積部68に格納される。
図47から図49は、図40のステップS139、すなわち一般ノードへのモジュール配布の詳細シーケンスである。図47においてサービス管理ノード側で運用構成更新機能部65が構成情報蓄積部67からグループ内の運用情報をステップS200で取得する。そして運用構成更新機能部65、会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS201からS204までの処理によって、一般ノードに対してノード運用設定メッセージが送信される。このノード運用設定メッセージの内容は、図26の項目“08に”に示すようなサービス実行に関する設定情報である。
このメッセージを受け取った一般ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57、基本機能部40によるステップS205からS208の処理によって、メッセージ内のノード運用設定情報が運用設定定義体52に格納される。ここでノード運用設定情報の内容は、当然、前述のようにエリア管理ノードによって一般ノードにアプリケーション単位に割当てられたノードパワーに対応するが、実際のアプリケーション実行時のクライアントからのリクエストの割当ては、例えば重み付きのラウンドロビン方式などの公知の技術によって行なわれ、ノードパワーの割当てとは必ずしも直接的には対応しないものとなる可能性もある。
図48において一般ノード側では、基本機能部40がステップS210で、コンテナソフトウェア23からインストール済みのモジュールの情報を取得し、ステップS211でノード運用設定情報とインストール済みのモジュールの情報とを比較し、モジュールが不足しているか否かを判定する。不足している場合には基本機能部40、会話機能部55、一般会話モジュール56、メッセージ送信部59によるステップS212からS215までの処理によって、サービス管理ノード側に不足モジュールの取得を依頼するメッセージが送信される。
このメッセージを受信したサービス管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS216からS218までの処理によって、メッセージの内容が解析され、モジュール管理部64に対して不足モジュールの取得依頼が通知される。
図49において、サービス管理ノードのモジュール管理部64はステップS220でモジュール蓄積部68から追加モジュールを取得する。そしてモジュール管理部64、会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS221からS224の処理によって、追加モジュール転送メッセージが一般ノードに送信される。
一般ノード側では追加モジュール転送メッセージを受信し、メッセージ受信部58、会話機能部55、メッセージ解析部57、基本機能部40によるステップS225からS228までの処理によって、転送された追加モジュールがコンテナソフトウェア23にインストールされる。
図50、および図51は、一般ノードによるサービス、すなわちアプリケーション実行時の詳細シーケンスである。図50は1つのエリア内、すなわち実質的に1つのサービスを管理するサービス管理ノード、およびそのサービスを構成するアプリケーションを実行する一般ノードが1つのエリア内に限定される場合の、一般ノードによるサービス実行シーケンスである。
図50において、クライアント80からアプリケーションモジュール24に対して、例えばBサービスの実行指示がステップS230で与えられると、ステップS231でアプリケーションモジュール24から前処理折込部42に対して折り込み処理実行が指示され、前処理折込部42によって構成情報蓄積部67からステップS232でアプリケーションを実行するのがどのノードであるかが取得され、また同時に前処理折込部42によって、例えばBサービスを構成するアプリケーションcを実行する一般ノード内のアプリケーションモジュール24に対してステップS233でアプリケーションcの実行が指示される。また同時にBサービスを構成するアプリケーションdを実行する一般ノードのアプリケーションモジュール24に対しても、ステップS234でアプリケーションdの実行が指示される。アプリケーションの実行結果は、前処理折込部42から、ステップS235でアプリケーションモジュール24を介して、ステップS236でクライアント80に対して返信される。
このように本実施形態では、クライアント80との間のサービスの窓口をサービス管理ノードとすることによって、サービスを構成する個々のアプリケーションを実行するノードが変化してもクライアントはその変化を意識する必要がない。またサービスを構成する個々のアプリケーションは一般ノードによって実行されるが、同一のアプリケーションを複数のノードが担当する場合には、ノードのパワーの比率によってリクエストの振り分けが制御される。例えばアプリケーションcをノード1が50ポイント、ノード2が100ポイントのノードパワーで実行する場合にはリクエストが1:2の比率で振り分けられる。
図51は、他のエリアのノード、すなわち借用ノードがアプリケーションを実行する場合の詳細シーケンスである。同図において、他のエリアのサービス管理ノード、すなわち代理サービス管理ノードが、アプリケーションを実行する一般ノードと、ノードパワーを借りるエリア側でBサービスを管理するサービス管理ノードの間に存在し、Bサービスを管理するサービス管理ノードの前処理折込部42から他のエリアのサービス管理ノード、すなわち代理サービス管理ノードに対してアプリケーションの実行が依頼される点を除いては、そのシーケンスは図50におけるとほぼ同様であり、その詳細な説明を省略する。
シーケンスの説明の最後として、図18のステップS4、すなわち運用情報の収集とチェックの詳細シーケンスについて説明する。図52は、この運用情報収集、およびチェックシーケンスの全体関連図である。同図(a)においてクライアントからサービスへのリクエストがあると、ステップS250で運用情報の取得とデータの正規化が行なわれる。すなわちリクエスト毎に一般ノードがサービスの実行情報としてレスポンスタイムなどを計測し、そのデータをある形式に従って正規化し、ノード内に保存する。そしてステップS251で品質チェックを実行する。
図52(b)でスケジューラ、すなわち図11の一般ノードの論理構成におけるスケジュール機能部46によって、一定の間隔で運用情報のサービス管理ノードへの提出指示が行なわれると、ステップS252でサービス管理ノードへの運用情報提出処理が行われる。
図53は、図52のステップS250、すなわち運用情報取得とデータ正規化の詳細シーケンスである。このシーケンスは一般ノードによって実行される。まず前処理折込部42に対してクライアントからのリクエストが与えられると、そのリクエスト情報がステップS255で運用情報収集機能部45に一時保存されるとともに、そのリクエストがステップS256でアプリケーション24に通知され、ステップS257によって処理が実行され、ステップS258で後処理折込部43に対して実行結果が返され、後処理折込部43からクライアントに対してステップS259で処理結果が返される。
このアプリケーションの処理結果のクライアントへの返却などとは非同期に、ステップS260で後処理折込部43から運用情報収集機能部45に対してレスポンス情報が通知される。運用情報収集機能部45はステップS261でデータ形式定義体50からデータ形式を取得し、ステップS262でデータを正規化し、ステップS263で品質検査機能部47に対して品質チェックを依頼する。このデータの正規化では、リクエスト情報とレスポンス情報から得られたリクエスト元の情報や、処理の所要時間などのデータをデータ形式に合わせて正規化する処理が実行される。
図54から図56は図52のステップS251における品質チェックの詳細シーケンスである。この品質チェックは一般ノードによって実行され、必要に応じてサービス管理ノードに警告が通知され、さらにサービス運用管理者に警告メッセージを通知する処理が行なわれる。
図54において、一般ノードの運用情報収集機能部45はステップS265で品質検査機能部47に対して品質検査を依頼し、品質検査機能部47は品質要件定義体53からステップS266でサービスに対応する品質要件を取得し、ステップS267で品質検査、例えばレスポンスタイムが規定の値以下であるか否かを調べ、品質要件を満たさない場合にはステップS268でサービス管理ノードに警告通知を行うために会話機能部55にその通知を依頼し、運用情報収集機能部にステップS269で品質検査の結果を返し、運用情報収集機能部45はステップS270で運用情報蓄積部51に品質検査済みの運用情報を格納する。
図55において、一般ノードの品質検査機能部47は前述のようにステップS268で会話機能部55に対して警告の通知を依頼する。この依頼に対応して会話機能部55、一般会話モジュール56、メッセージ送信部59によるステップS274からS276の処理によって、サービス管理ノードに対して警告メッセージが送信される。
サービス管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS277からステップS279の処理によって受信したメッセージが解析され、その内容としての警告が基本機能部40に通知される。ここでサービス管理ノードの基本機能部40は、次の図56のシーケンスによってサービス運用管理者に警告メッセージを送信する。図56のシーケンスは、ステップS282で警告の通知の依頼を受けるたびに起動される必要はなく、例えば、品質不良が、例えば予め定められた回数以上発生したとき、に起動されてもよい。
図56において、サービス管理ノードの基本機能部40はステップS281で管理者通知機能部71に警告の通知を依頼し、管理者通知機能部71、メッセージ送信部59によるステップS282、S283の処理によって、サービス運用管理者に対して警告メッセージが通知される。このような警告メッセージの通知により、サービス管理者は、サービスのレスポンス実績とリクエスト数などの運用状況を考慮して、計画の見直し等の対応を検討することが可能になる。
図57は、図52のステップS252、すなわちサービス管理ノードへの運用情報提出の詳細シーケンスである。同図において一般ノード内のスケジュール機能部46は、例えば一定の間隔で会話機能部55に対して保持されている運用情報の通知をステップS285で依頼する。この依頼に対応して会話機能部55、一般会話モジュール56、メッセージ送信部59によるステップS286からS288の処理によって、運用情報がサービス管理ノードに送信される。前述のように複数のサービス管理ノードの管理下にある場合は、関係するサービス(アプリケーション)の運用情報をそれぞれ対応するサービス管理ノードに送信する。
サービス管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57、運用情報収集機能部45によるステップS289からS292の処理によって、メッセージの内容が解析され、運用情報が運用情報蓄積部51に格納される。
以上において本発明の第1の実施例について詳細に説明したが、次に本発明の第2の実施例について説明する。前述のように第2の実施例では、立案された運用計画の実行時に自エリアのノードパワーだけでは不足する場合に、ルート管理ノードを介してノードパワーの空いているエリアに対してパワーの借用を依頼し、ルート管理ノードが各エリアのノードパワーの空き状況に対応してパワーを貸出可能なエリアを紹介する形式で、ノードパワーの貸し借りが行われる。なおルート管理ノードの構成は、前述のように、図13で説明したエリア管理ノードの構成と同様とする。
図58は、第2の実施例におけるエリアを超えたノードパワー貸出方式の説明図である。同図を第1の実施例における図10と比較すると、エリア管理ノード32aと32bとの間で直接にノードパワーの貸借の交渉が行われる代わりに、ノードパワーを借用しようとするエリア管理ノード32aはルート管理ノード31に対してノードパワーの貸出を依頼し、各エリアのノードパワーの空き状況を管理しているルート管理ノード31が、ノードパワーの貸出可能なエリアをエリア管理ノード32aに紹介することになる。
すなわち第2の実施例では、例えば図17で説明した運用計画立案の後のグループ編成の時点で、各エリア管理ノード32はルート管理ノード31に対してノードパワーの空き状況を登録し、各エリアのノードパワーの空き状況はルート管理ノード31によって一括管理される。ルート管理ノード31の役割は、第1の実施例では各エリア管理ノードのネットワークアドレスの管理を基本とするのに対して、第2の実施例ではそれに加えて各エリアのノードパワー空き状態、およびエリア間でのノードパワー貸借状況の管理も行うことになる。
以下図59から図69を用いてノードパワー貸出方式の相違による第1の実施例との処理の相違を説明する。ノードパワーのエリアを越えた貸借以外の処理については第1の実施例におけると同様であり、その説明は省略する。
図59から図61は、第2の実施例における他のエリアへのパワー借用依頼の詳細シーケンスであり、第1の実施例に対する図29から図31に対応するものである。まず図59では、ステップS301で運用計画立案機能部62によって運用設定定義体52から、図29のステップS60と同様に連携可能エリアの範囲が取得される。この場合、ノード借用可能なエリアは前述のように静的に定義されているものとする。
続いて運用計画立案機能部62、会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS302からS305までの処理によって、ノードパワー借用依頼メッセージがルート管理ノードに対して送信される。第1の実施例においては、エリア管理ノードからステップS64でルート管理ノードに対してエリア管理ノード取得メッセージが送られ、他のエリアのエリア管理ノードのアドレスのみの問い合わせが行われるが、第2の実施例では借用希望のノードパワーを示すことによって、その条件に合うエリアのリストの要求が行われる。
ルート管理ノード側ではメッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS306からS308までの処理によって受信メッセージの解析が行われ、構成情報蓄積部67からエリア管理ノードの情報取得、すなわち要求されているノードパワーを貸出可能なエリアのエリア管理ノードの検索が行われる。
次に図60においてルート管理ノード側では、会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS310からS312までの処理によって、エリア管理ノード側へのメッセージの送信、すなわち貸出可能エリアのリストの送信が行われる。
エリア管理ノード側ではメッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS313からS315までの処理によって、受信メッセージの解析が行われ、貸出可能エリアのリストが運用計画立案機能部62に通知される。そして運用計画立案機能部62、会話機能部55、管理用会話モジュール69によるステップS316からS318までの処理によって、ノードパワー借用予約を依頼するメッセージの送信指示がメッセージ送信部59に与えられる。すなわちルート管理ノードから取得した貸出可能エリアのリストから、ノードパワーの借用依頼を行うエリアが選定され、借用予約メッセージが作成され、そのメッセージの送信がメッセージ送信部59に指示される。
続いて図61において、エリア管理ノードのメッセージ送信部からルート管理ノードに対してステップS320でノードパワー借用依頼メッセージが送信され、ルート管理ノード側ではメッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS321からS323までの処理によって、受信メッセージが解析され、構成情報蓄積部67にノードパワー借用予約の登録が行われる。
この段階では借用予約の対象となるエリアのエリア管理ノードに対して予約が行われたことは通知されないものとする。これはノードパワーの空き状況の管理がルート管理ノードのみで行われるため、借用予約がエリア管理ノードに通知されなくても、ダブルブッキングのような事態は発生しないためである。そしてこの時点では実際のノードパワーの貸借は行われず、予約のみが行われ、予約されたエリアのノードパワーは、次に他のエリアからノードパワーの借用要求があった場合には、図59のステップS308におけるノードパワー貸出可能なエリアの検索の対象外となる。
図32におけるノードパワー貸出可否判定処理については、第2の実施例においてはノードパワーの空き状況が常にルート管理ノードに対して報告されているために、基本的に不必要な処理となる。
図62、図63は、第2の実施例における他のエリアへのノードパワー貸出停止通知の詳細シーケンスである。この処理は第1の実施例に対する図33に相当する。まず図62において、ノードパワーの貸出を停止したい側のエリア管理ノードでは、運用計画立案機能部62、会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS325からS328までの処理によって、ノードパワー貸出停止メッセージが作成されて、そのメッセージがルート管理ノード側に送信される。ノードパワー貸出停止メッセージの内容は、図33のステップS98におけると同様に図26の項目06に相当する。
ルート管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS329からS331までの処理によって、受信メッセージの内容が解析され、ノードパワー貸出停止通知の対象となる貸出先のエリアのエリア管理ノードが構成情報蓄積部67から検索される。
続いて図63で、ルート管理ノード側で、会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS333からS335までの処理によって、ノードパワー貸出停止メッセージが作成されて、そのメッセージが貸出停止通知の対象となる他のエリアのエリア管理ノードに送信される。このメッセージの内容も図26の項目06と同じである。
このメッセージを受信した他のエリアのエリア管理ノード側では、メッセージ受信部58、会話機能部55、およびメッセージ解析部57によるステップS336、S337の処理によって、メッセージの内容が解析され、ノードパワー貸出停止通知を受けたエリア管理ノードは、前述のように計画立案シーケンスを開始することになる。このように第2の実施例では、ノードパワー貸出停止の通知もルート管理ノードを介して行われる。
図64は、第2の実施例におけるグループ編成シーケンスの全体関連図である。この関連図は第1の実施例における図40に相当する。図64において、図40と同様にステップS340からS344までの処理において、一般ノードへのモジュール配布までの処理が終了するが、第2の実施例においてはその後、ステップS346の処理、すなわちルート管理ノードへの報告の処理が追加される。すなわち第2の実施例では各エリアのノードパワー空き状態がルート管理ノードによって一括管理されるために、その空き状況がグループ編成の終了時点でルート管理ノードに報告され、ルート管理ノードは構成情報蓄積部67に保持している各エリアのノードパワーの空き状態の更新を行う。
図65は、図64のステップS346のルート管理ノードへのノードパワー空き状況報告処理の詳細シーケンスである。同図においてエリア管理ノード側では、運用計画立案機能部62、会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS350からS353までの処理によって、ノードパワー空き状況の報告メッセージが作成されて、そのメッセージがルート管理ノード側へ送信される。
ルート管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS354からS356までの処理によって、受信メッセージが解析されて、構成情報蓄積部67内のエリアの情報、すなわちノードパワー空き状況が更新とされる。
図66,図67は、パワー借用メッセージのパワー貸出エリアへの通知の詳細シーケンスである。このシーケンスは、第1の実施例における図42に相当するが、図42ではノードパワーの借用メッセージが、パワーを借りるエリアの管理ノードからパワーを貸すエリアのエリア管理ノードに対して直接に送信されるが、第2の実施例ではノードパワー借用メッセージがルート管理ノードによって仲介される形式で、ノードパワーを貸すエリア側のエリア管理ノードに送信される。
図66、図67において、まずノードパワーを借りる側のエリア管理ノードにおいて、運用計画立案機能部62、会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS360からS363までの処理によって、ノードパワーの借用メッセージが作成されてルート管理ノード側に送信される。
ルート管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS364からS366までの処理によって、受信メッセージが解析され、構成情報蓄積部67からノードパワー貸出先となるエリアのエリア管理ノードが検索される。前述のようにノードパワー借用の予約はすでに行われており、その予約状況は、例えば構成情報蓄積部67に保持されているものとする。
図67において、ルート管理ノード側の会話機能部55、管理用会話モジュール69、メッセージ送信部59によるステップS370からS372までの処理によって、ノードパワーの借用メッセージが作成され、ノードパワー貸出側エリアのエリア管理ノードに対して送信される。
このメッセージを受信したノードパワー貸出元となるエリア側のエリア管理ノードでは、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS373からS375までの処理によって、受信メッセージが解析され、基本機能部40に対してノードパワー借用メッセージの内容が通知される。
図68、図69は、ノードパワー借用メッセージを受信したノードパワー貸出側のエリア管理ノードから、そのエリアにおいて一般ノードによって行われるサービスを管理するサービス管理ノード、すなわち代理サービス管理ノードの情報の送信メッセージの、ノードパワー借用側のエリア管理ノードに対する送信シーケンスの詳細である。このシーケンスは、第1の実施例に対する図43に相当するものである。まず図68でノードパワー貸出元となるエリアのエリア管理ノードにおける基本機能部40によるステップS380の処理によって、エリア構成定義体75からサービスを管理するノード、すなわち代理サービス管理ノードが選定され、そのアドレスなどの情報が取得される。そして基本機能部40、会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS381からS384までの処理によって、サービス管理ノードの情報のメッセージがルート管理ノード側に送信される。このメッセージによって送信される内容は図26の項目07に相当する。ルート管理ノード側では、メッセージ受信部58、会話機能部55、メッセージ解析部57によるステップS385、S386の処理によって、メッセージの内容が解析される。
そして図69で会話機能部55、管理用会話モジュール69、およびメッセージ送信部59によるステップS390からS392までの処理によって、代理サービス管理ノードの情報の送信メッセージが作成され、ノードパワーを借用するエリア側のエリア管理ノードに送られる。
このメッセージを受信したエリア管理ノード側では、メッセージ受信部58、会話機能部55、およびメッセージ解析部57によるステップS393からS395までの処理によって、受信メッセージが解析され、運用計画立案機能部62に代理サービス管理ノードの情報が通知される。
このように第2の実施例では、ノードパワーを借用するエリア側のエリア管理ノードがルート管理ノードを介して、ノードパワーの借用メッセージをノードパワーを貸す側のエリアのエリア管理ノードに対して送信し、そのメッセージを受信したエリア管理ノードが代理サービス管理ノードを選定し、その情報をルート管理ノードを介してノードパワーを借りるエリア側のエリア管理ノードに送信することになるが、その後の実際のサービス実行に必要な準備やサービス実行情報の報告などについては、ルート管理ノードによる仲介を受けることなく、第1の実施例におけると同様に、例えばパワーを借りる側のサービス管理ノードとパワーを貸す側のサービス管理ノード、すなわち代理サービス管理ノードとの間で直接に行われるものとする。
例えば図44から図49で説明したサービス管理ノードへの通知や、サービス実行のためのモジュール配布などの処理は、すべてルート管理ノードの仲介を受けることなく、第1の実施例におけると同様に、2つのエリアの間で直接に行われる。これは、ルート管理ノードはノードパワーの空き状態を一括管理し、ノードパワーの貸借に関する基本的仲介だけを行うためであり、例えばモジュール配布などのように転送データ量が大きくなると、ルート管理ノードの仲介はパフォーマンス上のボトルネックとなる恐れがあるという問題点などを防止するためのものである。さらにノードパワーの貸借に関する基本的仲介をルート管理ノードが行うという点以外は、第2の実施例における処理は第1の実施例におけると同様であり、その説明はすべて省略する。
以上において本発明の資源割当方法、およびネットワークシステムについてその詳細を説明したが、この資源割当方法を実現するために各ノードで実行されるプログラムは当然一般的なコンピュータシステムによって実行することが可能である。図70はそのようなコンピュータシステム、すなわちハードウェア環境の構成ブロック図である。
図70においてコンピュータシステムは中央処理装置(CPU)90、リードオンリメモリ(ROM)91、ランダムアクセスメモリ(RAM)92、通信インタフェース93、記憶装置94、入出力装置95、可搬型記憶媒体の読取り装置96、およびこれらの全てが接続されたバス97によって構成されている。
記憶装置94としてはハードディスク、磁気ディスクなど様々な形式の記憶装置を使用することができ、このような記憶装置94、またはROM91に図18から図69までのシーケンスとして説明したプログラムが格納され、そのようなプログラムがCPU90によって実行されることにより、本実施形態における自エリア内のノード資源が不足した場合の他エリア内のノード資源の借用、サービス運用計画の立案、グループ編成、運用情報収集のシーケンスの繰返しなどが可能となる。
このようなプログラムは、プログラム提供者98からネットワーク99、および通信インタフェース93を介して、例えば記憶装置94に格納されることも、また市販され、流通している可搬型記憶媒体100に格納され、読取り装置96にセットされて、CPU90によって実行されることも可能である。可搬型記憶媒体100としてはCD−ROM、フレキシブルディスク、光ディスク、光磁気ディスク、DVDなど様々な形式の記憶媒体を使用することができ、このような記憶媒体に格納されたプログラムが読取り装置96によって読取られることにより、本実施形態におけるネットワークエリアを超えた自律的な資源割当などが可能となる。
以上詳細に説明したように、本実施形態によればシステム内でサービスに関する運用情報の収集、運用計画の立案、サービス毎のノードグループの編成という3つのシーケンスがノード同士が自律的に連携する形式で繰り返されることによって、例えばリクエストの状況変化に応じて、規定の品質を保ちながらサービスを提供することが可能となる。
また運用情報の収集、解析がシステム内で自律的に行なわれるために、外部から必要とされる管理コストを最小限に抑えることができる。さらに既存のノードに本発明の機能を後付けで搭載することによって、そのノードがシステムに参加することが可能となり、システム構成の柔軟性が大きくなる。
またこのような自律的な動作が1つのエリア内に限定されることなく、他のエリア内のノードパワーを借用して行なわれることも可能となり、さらに他のエリアに貸出しているノードパワーの貸出も中止することによって、1つのエリア内、すなわち閉じたネットワークの内部で資源をまかなうことができない場合に、他のネットワークと連携してサービスの品質を維持することが可能となる。
(付記1) 複数のノードから構成されるネットワークエリアにおける資源割当て方法であって、
該ネットワークエリアにおいて提供すべきサービスの品質に対応して、自ネットワークエリア内のノード資源を該サービスに割当て、
自ネットワークエリア内でノード資源が不足する時、自ネットワークエリアと異なるネットワークエリア内のノード資源を借用して、該借用したノード資源を該サービスに割当てることを特徴とするネットワークエリアにおける資源割当て方法。
(付記2) 前記サービスが1つ以上のアプリケーションによって構成され、前記ノード資源を該1つ以上のアプリケーションのうちで指定したアプリケーションに割当てることを特徴とする付記1記載のネットワークエリアにおける資源割当て方法。
(付記3) 前記ノード資源の大きさをアプリケーション処理能力としてのノードパワーで表し、
該ノードの持つノードパワーと、前記アプリケーションの処理に必要なノードパワーとに対応して前記ノード資源のアプリケーションへの割当てを行なうことを特徴とする付記2記載のネットワークエリアにおける資源割当て方法。
(付記4) 前記ネットワークエリア内のノードが、
前記エリア内のノードを統一的に管理するエリア管理ノードと、
該エリア管理ノードの下で、前記提供すべきサービスを管理するサービス管理ノードと、
該サービス管理ノードの下で、前記サービスを構成するアプリケーションのうちで、割当てられたアプリケーションの処理を実行する一般ノードとによって階層的に構成されることを特徴とする付記3記載のネットワークエリアにおける資源割当て方法。
(付記5) 前記サービス管理ノードが、自ノードが管理すべきサービスを構成するアプリケーションの処理に必要なノードパワーを算出して、ある一定期間に対する該サービスの運用計画を作成し、
前記エリア管理ノードが、複数のサービス管理ノードによって作成されたサービスの運用計画をマージして、自エリア内で提供すべき複数のサービスに必要なノードパワーを該サービスを構成するアプリケーション単位に自エリア内の一般ノードのノード資源に割当て、
自エリア内でノードパワーが不足する時、前記借用した異なるネットワークエリア内の一般ノードのノード資源への前記アプリケーション単位のノードパワー割当てを行なうことを特徴とする付記4記載のネットワークエリアにおける資源割当て方法。
(付記6) 前記一般ノードが、前記エリア管理ノードによって自ノードのノードパワーに割当てられたアプリケーションの実行結果の品質を、前記一定期間に対して作成されたサービス運用計画の運用中に前記サービス管理ノードに報告し、
該サービス管理ノードが、該一般ノードからの報告に基づいて、該一定期間の次の一定期間に対するサービス運用計画を作成することを特徴とする付記5記載のネットワークエリアにおける資源割当て方法。
(付記7) 前記不足のノードパワーがアプリケーション単位に割当てられた他エリア内の一般ノードが、自ノードのノードパワーに割当てられたアプリケーションの実行結果の品質を自エリア内で自ノードを管理するサービス管理ノードに報告し、
該サービス管理ノードが、前記サービスの運用計画を作成したサービス管理ノードに、該アプリケーションの実行結果の品質の報告を中継することを特徴とする付記6記載のネットワークエリアにおける資源割当て方法。
(付記8) 前記一般ノードが、サービスにおけるリクエストに対応して前記アプリケーションの実行結果を正規化して、該実行結果の品質を調べることを特徴とする付記6記載のネットワークエリアにおける資源割当て方法。
(付記9) 前記サービスを構成するアプリケーションが割当てられた1つ以上の一般ノードと、該サービスの運用計画を作成したサービス管理ノードとが1つのグループを構成することを特徴とする付記5記載のネットワークエリアにおける資源割当て方法。
(付記10) 前記サービス管理ノードによるサービス運用計画作成の手順、エリア管理ノードによるサービス運用計画のマージと、該サービスに必要なノードパワーのアプリケーション単位の一般ノードへの割当てによるグループ編成の手順、および一般ノードのアプリケーションの実行と実行結果のサービス管理ノードへの報告の手順とを自律的に繰り返すことを特徴とする付記9記載のネットワークエリアにおける資源割当て方法。
(付記11) 前記一般ノードが、前記エリア管理ノードによって自ノードのノードパワーに割当てられたアプリケーションの実行結果の品質を、前記一定期間に対して作成されたサービス運用計画の運用中に前記サービス管理ノードに報告し、
該サービス管理ノードが、該一般ノードからの報告に基づいて、該アプリケーションによって構成されるサービスの品質が予め定められた回数以上規定値に違反したことが判明した時、前記サービスの運用計画を再作成することを特徴とする付記5記載のネットワークエリアにおける資源割当て方法。
(付記12) 前記サービス管理ノードが、前記エリア管理ノードによってアプリケーション単位のノードパワーが割当てられた一般ノードに対して、該アプリケーションの実行に必要なモジュールを配布することを特徴とする付記5記載のネットワークエリアにおける資源割当て方法。
(付記13) 前記サービス管理ノードが、前記エリア管理ノードによって前記異なるエリア内でアプリケーション単位のノードパワーが割当てられた一般ノードに対して、該アプリケーションが割当てられた一般ノードを管理するサービス管理ノードであって、該異なるネットワーク内のサービス管理ノードを介して、該アプリケーションの実行に必要なモジュールを配布することを特徴とする付記5記載のネットワークエリアにおける資源割当て方法。
(付記14) 前記異なるネットワークエリアを管理するエリア管理ノードが、前記ノードパワーが不足しているネットワークエリアのエリア管理ノードからのノードパワー借用要求に対して、
自エリア内で提供されるべき各サービスに必要なノードパワーの算出結果に基くサービス運用計画に対応して、サービスの要求品質に対する自エリア内でのノードパワーの過不足を判定し、
ノードパワーに余剰がある時、貸出可能なノードパワーを算出し、
該貸出可能なノードパワーをノードパワー借用要求を行なったエリア管理ノードに通知することを特徴とする付記5記載のネットワークエリアにおける資源割当て方法。
(付記15) 複数のネットワークエリアのすべてに対する前記エリア管理ノードを管理するルート管理ノードをさらに備えるとともに、
該複数のネットワークエリアに対する各エリア管理ノードが、前記サービスに必要なノードパワーの自エリア内の一般ノードのノード資源への割り当ての結果として自エリア内のノードパワーに余剰が生じたとき、該余剰の状況を前記ルート管理ノードに報告し、
該報告の結果に対応して、該ルート管理ノードが、ノードパワーが不足しているネットワークエリアのエリア管理ノードからのノードパワー借用要求に対して、ノードパワー貸出可能なエリアを検索し、ノードパワーの貸借を仲介することを特徴とする付記5記載のネットワークエリアにおける資源割り当て方法。
(付記16) 前記サービス管理ノードが、前記サービス運用計画の作成にあたり、過去に作成された運用計画の運用時においてサービスを構成する各アプリケーションに割当てられたノードパワーに対応して得られたサービスの品質の実績に基づいて、サービスを構成する各アプリケーションに必要なノードパワーを算出することを特徴とする付記5記載のネットワークエリアにおける資源割当て方法。
(付記17) 複数のノードから構成されるネットワークエリアにおける資源割当て方法であって、
該ネットワークエリアにおいて提供すべきサービスの品質に対応して、自ネットワークエリア内のノード資源を該サービスに割当て、
自ネットワークエリア内でノード資源が不足する時、自ネットワークエリアと異なるネットワークエリアへのノード資源の貸出を中止して、該貸出していたノード資源を該サービスに割当て、
さらにノード資源が不足する時、自ネットワークエリアと異なるネットワークエリア内のノード資源を借用して、該借用したノード資源を該サービスに割当てることを特徴とするネットワークエリアにおける資源割当て方法。
(付記18) 複数のノードから構成されるネットワークエリアにおける資源割当てを行なう計算機によって使用されるプログラムであって、
該ネットワークエリアにおいて提供すべきサービスの品質に対応して、自ネットワークエリア内のノード資源を該サービスに割当てる手順と、
自ネットワークエリア内でノード資源が不足する時、自ネットワークエリアと異なるネットワークエリアへのノード資源の貸出を中止して、該貸出していたノード資源を該サービスに割当てる手順と、
さらにノード資源が不足する時、自ネットワークエリアと異なるネットワークエリア内のノード資源を借用して、該借用したノード資源を該サービスに割当てる手順とを計算機に実行させることを特徴とするネットワークエリアにおける資源割当てプログラム。
(付記19) 複数のノードから構成されるネットワークエリアにおける資源割当てを実行する計算機によって使用されるプログラムであって、
該ネットワークエリアにおいて提供すべきサービスの品質に対応して、自ネットワークエリア内のノード資源を該サービスに割当てる手順と、
自ネットワークエリア内でノード資源が不足する時、自ネットワークエリアと異なるネットワークエリア内のノード資源を借用して、該借用したノード資源を該サービスに割当てる手順とを計算機に実行させることを特徴とするネットワークエリアにおける資源割当プログラム。
(付記20) 複数のノードから構成されるネットワークエリアにおける資源割当てを実行する計算機によって使用される記憶媒体であって、
該ネットワークエリアにおいて提供すべきサービスの品質に対応して、自ネットワークエリア内のノード資源を該サービスに割当てるステップと、
自ネットワークエリア内でノード資源が不足する時、自ネットワークエリアと異なるネットワークエリア内のノード資源を借用して、該借用したノード資源を該サービスに割当てるステップとを計算機に実行させるネットワークエリアにおける資源割当プログラムを格納した計算機読出し可能可搬型記憶媒体。