(57)【要約】【課題】サービスの負荷分散が動的に行えるようにする。【解決手段】サービスＰＳＶＣ，ＳＶＣ１，ＳＶＣ２を実行可能な計算機システムにおいて、計算機１０-1〜１０-4上のサービス負荷モニタ１３１-1〜１３１-2，１５１-1〜１５１-4，１５２-1〜１５２-4は、当該計算機１０-1〜１０-4で実行されるサービスＰＳＶＣ，ＳＶＣ１，ＳＶＣ２の負荷をそれぞれ計測する。計算機１０-1〜１０-4上のノード負荷モニタ１６-1〜１６-4は、当該計算機１０-1〜１０-4の負荷を計測する。クラスタ制御機構１２内のサービス最適配置機構１２１は、サービス負荷モニタ１３１-1〜１３１-2，１５１-1〜１５１-4，１５２-1〜１５２-4及びノード負荷モニタ１６-1〜１６-4の計測結果をもとに、計算機１０-1〜１０-4のうちサービス実行に最適な計算機及び当該最適な計算機に再配置するサービスを決定して、当該最適な計算機に当該サービスを再配置する。【選択図】      図１
2005100381.tif 000002
【特許請求の範囲】
【請求項１】
複数の計算機を備え、複数種類のサービスを実行可能な計算機システムにおいて、
前記複数の計算機の各々で実行されるサービスの負荷をサービス負荷として計測するサービス負荷計測手段と、
前記複数の計算機の各々の負荷をノード負荷として計測するノード負荷計測手段と、
前記サービス負荷計測手段及び前記ノード負荷計測手段の計測結果をもとに、前記複数の計算機のうちサービス実行に最適な計算機及び当該最適な計算機に再配置するサービスを決定して、当該最適な計算機に当該サービスを再配置するサービス最適配置手段と
を具備することを特徴とする計算機システム。
【請求項２】
前記サービス負荷計測手段は、前記複数の計算機の各々でのサービスの実行に消費されるリソース量をもとに、当該サービスの動的負荷を表す動的サービスチケット値を前記サービス負荷として算出する動的サービスチケット値算出手段を含み、
前記ノード負荷計測手段は、前記サービス負荷計測手段によって算出された前記複数の計算機の各々で実行されているサービスの動的サービスチケット値をもとに、前記複数の計算機の各々の前記ノード負荷を表す総サービスチケット値を算出する総サービスチケット値算出手段と、前記総サービスチケット値算出手段によって算出された前記複数の計算機の各々の総サービスチケット値、及び予め設定されている前記複数の計算機の各々の処理能力を表す静的ノードチケット値をもとに、前記複数の計算機の各々で新たに使用可能なチケット値を動的ノードチケット値として算出する動的ノードチケット値算出手段とを含み、
前記サービス最適配置手段は、前記動的ノードチケット値が一定値以下になる可能性のある計算機で実行中のサービスの中から前記最適計算機に再配置されるサービスを選択する選択手段を含む
ことを特徴とする請求項１記載の計算機システム。
【請求項３】
前記サービス最適配置手段は、前記選択手段によって選択されたサービスの再配置対象となる前記最適計算機を、前記複数の計算機の各々の動的ノードチケット値をもとに検索する検索手段を含むことを特徴とする請求項２記載の計算機システム。
【請求項４】
前記サービス最適配置手段は、前記複数の計算機の各々の前記動的ノードチケット値と、前記選択手段によって選択されたサービスを前記複数の計算機の各々で実行するのに必要であると予め予測されているリソース量を表す静的サービスチケット値及び当該計算機で実行されている当該選択されたサービスの前記動的サービスチケット値の大きい方の値とをもとに、前記動的ノードチケット値が当該大きい方の値を超える計算機を、前記選択されたサービスを再配置すべき前記最適計算機として検索する手段を含むことを特徴とする請求項２記載の計算機システム。
【請求項５】
予め定められた並列実行型サービスを、前記複数の計算機のうちの少なくとも２つの計算機で並行して実行させる並列実行型サービス実行手段を更に具備し、
前記サービス最適配置手段は、前記システム内で並行して実行される前記並列実行型サービスの最適な実行数を表す最適サービス数を、前記複数の計算機の各々における当該並列実行型サービスの動的サービスチケット値、及び当該並列実行型サービスを前記複数の計算機の各々で実行するのに必要であると予め予測されているリソース量を表す静的サービスチケット値をもとに算出する最適サービス数算出手段と、前記最適サービス数算出手段によって算出された最適サービス数とその時点において前記システム内で実際に実行されている前記並列実行型サービスの実行数である現サービス数との大小関係に応じて、前記並列実行型サービス実行手段によって実際に実行させられる前記並列実行型サービスの実行数を調整するサービス数調整手段とを含む
ことを特徴とする請求項２記載の計算機システム。
【請求項６】
前記サービス数調整手段は、前記最適サービス数が前記現サービス数より多い場合、前記複数の計算機のうちの前記並列実行型サービスを新たに実行可能な計算機の中から、当該サービスを前記並列実行型サービス実行手段によって実行させる計算機を、前記静的ノードチケット値と前記動的ノードチケット値との差が大きい順に選択する手段を含むことを特徴とする請求項５記載の計算機システム。
【請求項７】
前記サービス数調整手段は、前記最適サービス数が前記現サービス数より少ない場合、前記並列実行型サービスを停止可能な計算機の中から、当該サービスを停止させる計算機を、前記静的ノードチケット値と前記動的ノードチケット値との差が小さい順に選択する手段を含むことを特徴とする請求項５または請求項６に記載の計算機システム。
【請求項８】
複数の計算機を備え、複数種類のサービスを実行可能な計算機システムにおいてサービスの負荷分散を動的に行うための負荷分散方法であって、
前記複数の計算機の各々で実行されるサービスの負荷を表すサービス負荷情報を取得するステップと、
前記複数の計算機の各々の負荷を表すノード負荷情報を取得するステップと、
取得されたサービス負荷情報及びノード負荷情報をもとに、前記複数の計算機のうちサービス実行に最適な計算機及び当該最適な計算機に再配置するサービスを決定するステップと、
決定されたサービスを決定された最適な計算機に再配置するステップと
を具備することを特徴とするサービス負荷分散方法。
【請求項９】
前記サービス負荷情報を取得するステップは、前記複数の計算機の各々でのサービスの実行に消費されるリソース量をもとに、当該サービスの動的負荷を表す動的サービスチケット値を前記サービス負荷情報として算出するステップを含み、
前記ノード負荷情報を取得するステップは、前記複数の計算機の各々で実行されているサービスの前記動的サービスチケット値をもとに、前記複数の計算機の各々の前記ノード負荷情報を表す総サービスチケット値を算出するステップと、前記複数の計算機の各々の前記総サービスチケット値、及び予め設定されている前記複数の計算機の各々の処理能力を表す静的ノードチケット値をもとに、前記複数の計算機の各々で新たに使用可能なチケット値である動的ノードチケット値を算出するステップとを含み、
前記決定するステップは、前記動的ノードチケット値が一定値以下になる可能性のある計算機で実行中のサービスの中から前記最適計算機に再配置するサービスを選択するステップを含む
ことを特徴とする請求項８記載のサービス負荷分散方法。
【請求項１０】
前記決定するステップは、前記複数の計算機の各々の前記動的ノードチケット値と、前記選択されたサービスを前記複数の計算機の各々で実行するのに必要であると予め予測されているリソース量を表す静的サービスチケット値及び当該計算機で実行されている当該選択されたサービスの前記動的サービスチケット値の大きい方の値とをもとに、前記動的ノードチケット値が当該大きい方の値を超える計算機を、前記選択されたサービスを再配置すべき前記最適計算機として検索するステップを含むことを特徴とする請求項９記載のサービス負荷分散方法。
【請求項１１】
予め定められた並列実行型サービスを、前記複数の計算機のうちの少なくとも２つの計算機で並行して実行するステップと、
前記並列実行型サービスの最適な実行数を表す最適サービス数を、前記複数の計算機の各々における当該並列実行型サービスの前記動的サービスチケット値、及び当該並列実行型サービスを前記複数の計算機の各々で実行するのに必要であると予め予測されているリソース量を表す静的サービスチケット値をもとに算出するステップと
を更に具備することを特徴とする請求項９記載のサービス負荷分散方法。
【請求項１２】
サービス負荷計測手段とノード負荷計測手段とを含む複数の計算機を備え、複数種類のサービスを実行可能な計算機システムに適用され、前記複数の計算機の各々で実行されることによりサービスの負荷分散を動的に行うことを可能とするプログラムであって、
前記計算機に、
前記計算機システム内の前記複数の計算機の各々で実行されるサービスの負荷を表すサービス負荷情報を前記サービス負荷計測手段から取得するステップと、
前記複数の計算機の各々の負荷を表すノード負荷情報を前記ノード負荷計測手段から取得するステップと、
取得されたサービス負荷情報及びノード負荷情報をもとに、前記複数の計算機のうちサービス実行に最適な計算機及び当該最適な計算機に再配置するサービスを決定するステップと、
決定されたサービスを決定された最適な計算機に再配置するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の計算機を備え、複数種類のサービスを実行可能な計算機システムに係り、特に非対称なリソース環境におけるサービスの負荷分散に好適な計算機システム及びプログラムに関する。
【背景技術】
【０００２】
従来から、多数のクライアント端末からのサービス実行要求を効率的に処理するために、これらの実行要求を複数のサーバ計算機に分配するサーバ負荷分散システムが知られている（例えば非特許文献１または２参照）。このサーバ負荷分散システムは一般に、対称（均一）なリソース環境を持つ複数のサーバ計算機と、負荷分散装置とから構成される。負荷分散装置はクライアント端末からネットワーク（外部ネットワーク）を介してサービスの実行要求（リクエスト）を受け取ると、当該要求で指定されたサービスを実行すべきサーバ計算機を選択する。このサーバ計算機の選択は、特定のサーバ計算機だけに多大な負荷がかからないように考慮して行われる。つまり負荷分散装置は、同種のサービスの実行を複数の計算機に振り分ける。
【０００３】
サーバ負荷分散システムでは、サービスを実行する計算機を選択するのに、つまりサービスのスケジュールに、（１）ラウンドロビン法、（２）重み付けラウンドロビン法、（３）最小接続法、或いは（４）最速法が適用されるのが一般的である。ラウンドロビン法は、各サーバ計算機を一定の順番で均等に選択する方法である。重み付けラウンドロビン法は、各計算機に能力に見合った重み（選択され易さ）を付けることで、ラウンドロビン法を基本としながら、各サーバ計算機の能力に応じて当該計算機が選択される頻度を変える方法である。最小接続法は、その時点でコネクション（セッション）数が最小の計算機を選択する方法である。最速法は、その時点で最も速く応答することが可能な計算機を選択する方法である。
【０００４】
負荷分散装置は、上記（１）乃至（４）のうちの何れかの方法で、サービスを実行すべきサーバ計算機を選択すると、クライアント端末からの実行要求を、選択したサーバ計算機にネットワーク（内部ネットワーク）を経由して送る。サーバ計算機は、この実行要求に基づいてサービスを実行し、応答を負荷分散装置に送る。負荷分散装置はサーバ計算機から送られた応答を要求元のクライアント端末に返す。
【０００５】
負荷分散装置は、サーバ計算機からの応答を監視する。そして負荷分散装置は、サーバ計算機からの応答が一定時間内に返ってこないタイムアウトをもとに、サーバ計算機の障害を検出する。このサーバ計算機の障害には、サーバ計算機自体の障害と、サーバ計算機によるサービス実行に関する障害とがある。負荷分散装置は、サーバ計算機の障害を検出すると、その障害計算機へのサービスの割り当てを行わないことで、システムを縮退運転させる。
【０００６】
一方、近年は、クラスタシステムと呼ばれる計算機システムが出現している（例えば、非特許文献３参照）。クラスタシステムは、非対称なリソース環境を持つ複数の計算機で構成される。クラスタシステムでは、非対称なリソース環境を持つ複数の計算機に対して、予めユーザによって綿密に計画された形で機能的に異なるサービス（異種のサービス）が割り当てられる。クラスタシステム内の各計算機は互いにネットワークを介して通信を行うことで、サービスを実行中の計算機の障害を検出する。この場合、クラスタシステムでは、障害が検出された計算機で実行されていたサービスを他の計算機に割り当て直す（フェイルオーバする）再スケジュールが行われる。これにより、サービス（業務）停止時間を短くでき、ＨＡ（High Availability）と呼ばれる高い可用性（サーバ稼動率、業務稼動率）が実現できる。そこで、このようなクラスタシステムは。ＨＡクラスタシステムと呼ばれる。
【０００７】
クラスタシステムにおけるサービスの再スケジュールは、待機系の計算機に対して行われるのが一般的である。このようなクラスタシステムでは、サービスのスケジューリングで計算機の負荷状況が考慮されることはない。また、ユーザの操作で、システム内の計算機毎に処理能力を設定すると共に、システムが提供可能なサービス毎に当該サービスの実行に必要な処理能力（チケット）を設定することで、特定の計算機に処理能力以上のサービスが割り当てられないようにする静的チケット方式のクラスタシステムが知られている。
【非特許文献１】Rajkumar Buyya（ラジクマル・ブイヤ），“High Performance Cluster Computing: Architecture and Systems（Volume 1）”，１９９９年，Prentice-Hall, Inc.，p.340-363
【非特許文献２】Tony Bourke（トニー・ブルーク），“Server Load Balancing”，O'Relly & Associates, Inc., p.3-31, December 2001
【非特許文献３】金子哲夫、森良哉、「クラスタソフトウェア」、東芝レビュー、Vol.54 No.12(1999)、p.18-21
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上記したように、従来のサーバ負荷分散システムは、対称なリソース環境を持つ複数のサーバ計算機を対象として動的に負荷分散することが可能である。しかしながら従来のサーバ負荷分散システムは、複雑な非対称なリソース環境を持つ複数のサーバ計算機を対象として動的に負荷分散すること、つまり複雑な非対称なリソース環境で動作するサービスの確実な実行制御は行えない。また、従来のサーバ負荷分散システムでは、計算機からの応答のタイムアウトにより当該計算機の障害検出が行われるため、計算機障害を迅速に検出できない。
【０００９】
一方、非対称なリソース環境を持つ従来のクラスタシステムでの負荷分散は、機能的な負荷分散をユーザが綿密に計画することで実現されるか、或いはサービス毎に固定的なチケットを割り当てる静的チケット方式で実現されている。このため従来のクラスタシステムでは動的に負荷分散することができず、しかも静的チケット方式では、実際の負荷状況と異なるサービスの配置が行われる虞がある。
【００１０】
本発明は上記事情を考慮してなされたものでその目的は、非対称なリソース環境におけるサービスの負荷分散が動的に行える計算機システム、サービス負荷分散方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の１つの観点によれば、複数の計算機を備え、複数種類のサービスを実行可能な計算機システムが提供される。この計算機システムは、上記各計算機で実行されるサービスの負荷をサービス負荷として計測するサービス負荷計測手段と、上記各計算機の負荷をノード負荷として計測するノード負荷計測手段と、上記サービス負荷計測手段及び上記ノード負荷計測手段の計測結果をもとに、上記複数の計算機のうちサービス実行に最適な計算機及び当該最適な計算機に再配置するサービスを決定して、当該最適な計算機に当該サービスを再配置するサービス最適配置手段とを備えることを特徴とする。
【００１２】
このような構成においては、システム内の各計算機で実行されるサービスの負荷（サービス負荷）と、当該各計算機の負荷（ノード負荷）とをもとに、サービス実行に最適な計算機及び当該最適な計算機に再配置するサービスが決定される。これにより、上記各計算機が有するリソース環境が非対称であったとしても、サービスの負荷分散が動的に行える。
【００１３】
ここで、上記サービス負荷計測手段に、上記各計算機でのサービスの実行に消費されるリソース量をもとに、当該サービスの動的負荷を表す動的サービスチケット値を上記サービス負荷として算出する動的サービスチケット値算出手段を持たせると共に、上記ノード負荷計測手段に、上記サービス負荷計測手段によって算出された上記各計算機で実行されているサービスの動的サービスチケット値をもとに、上記各計算機のノード負荷を表す総サービスチケット値を算出する総サービスチケット値算出手段と、この総サービスチケット値算出手段によって算出された上記各計算機の総サービスチケット値、及び予め設定されている上記各計算機の処理能力を表す静的ノードチケット値をもとに、上記各計算機でそれぞれ新たに使用可能なチケット値を動的ノードチケット値として算出する動的ノードチケット値算出手段とを持たせ、更に上記サービス最適配置手段には選択手段を持たせ、上記動的ノードチケット値が一定値以下になる可能性のある計算機で実行中のサービスの中から上記最適計算機に再配置されるサービスが上記選択手段によって選択される構成とすると良い。この場合、最適な負荷分散が可能となる。
【００１４】
また、最適計算機が、上記各計算機の動的ノードチケット値をもとに上記サービス最適配置手段によって検索される構成とするならば、より最適な負荷分散が可能となる。
【００１５】
更に、上記各計算機の動的ノードチケット値と、上記選択されたサービスを上記各計算機で実行するのに必要であると予め予測されているリソース量を表す静的サービスチケット値及び当該計算機で実行されている当該選択されたサービスの上記動的サービスチケット値の大きい方の値とをもとに、動的ノードチケット値が当該大きい方の値を超える計算機が上記最適計算機として検索される構成とするならば、より一層最適な負荷分散が可能となる。
【００１６】
また、予め定められた並列実行型サービスを、上記複数の計算機のうちの少なくとも２つの計算機で並行して実行させる並列実行型サービス実行手段を追加すると共に、上記サービス最適配置手段に最適サービス数算出手段及びサービス数調整手段を持たせ、上記最適サービス数算出手段では、上記システム内で並行して実行される並列実行型サービスの最適な実行数を表す最適サービス数が、上記各計算機における当該並列実行型サービスの動的サービスチケット値、及び当該並列実行型サービスを上記各計算機上で実行するのに必要であると予め予測されているリソース量を表す静的サービスチケット値をもとに算出され、上記サービス数調整手段では、上記最適サービス数算出手段によって算出された最適サービス数とその時点において上記システム内で実際に実行されている上記並列実行型サービスの実行数である現サービス数との大小関係に応じて、上記並列実行型サービス実行手段によって実際に実行させられる並列実行型サービスの実行数が調整される構成とすると良い。このようにすると、上記計算機システムがクラスタシステムであって、上記各計算機が有するリソース環境が非対称であったとしても、当該システムで並行して実行される並列実行型サービスの実行数を最適な数に調整できる。
【発明の効果】
【００１７】
本発明によれば、システム内の各計算機で実行されるサービスの負荷と、当該各計算機の負荷とをもとに、サービス実行に最適な計算機及び当該最適な計算機に再配置するサービスが決定されることから、当該各計算機が有するリソース環境が非対称であったとしても、サービスの負荷分散が動的に行える
【発明を実施するための最良の形態】
【００１８】
以下、本発明の一実施形態につき図面を参照して説明する。図１は本発明の一実施形態に係る高可用性クラスタシステム（ＨＡクラスタシステム）の構成を示すブロック図である。図１のクラスタシステムは、４台の計算機（サーバ計算機）１０-1〜１０-4から構成されている。計算機１０-1〜１０-4は、当該計算機１０-1〜１０-4間の通信に用いられるネットワーク（内部ネットワーク）２０によって相互接続されている。図１では、計算機１０-1〜１０-4とクライアント端末との間の通信に用いられるネットワーク（外部ネットワーク）は省略されている。クライアント端末からのサービスの実行要求は、この外部ネットワークを介して図１のクラスタシステムに送信される。クラスタシステム内の計算機１０-i（ｉ＝１〜４）は、クライアント端末からの要求で指定されたサービスを実行し、その実行結果を示す応答を外部ネットワークを介して要求元のクライアント端末に返す。なお、計算機１０-1〜１０-4間の通信と、計算機１０-1〜１０-4とクライアント端末との間の通信とが、同一のネットワークを介して行われる構成であっても構わない。但し、ネットワークにおける通信トラフィックの増大を招く。
【００１９】
計算機１０-1〜１０-4では、オペレーティングシステム（以下、ＯＳと称する）１１-1〜１１-4が動作する。また、計算機１０-1〜１０-4によって構成されるクラスタシステムでは、クラスタ制御機構１２が動作する。クラスタ制御機構１２は、計算機１０-1〜１０-4にそれぞれ設けられたクラスタ制御部（図示せず）が相互に通信を行いながら同期して一体となって動作することにより実現されるバーチャルマシンである。このため、クラスタ制御機構１２は、計算機１０-1〜１０-4にまたがって存在していると考えることができる。クラスタ制御部は、サービスの負荷分散を含むクラスタ制御用のプログラム（クラスタソフトウェア）を計算機１０-iが読み取り実行することにより実現される。このクラスタ制御用のプログラムは、計算機１０-iで読み取り可能な記憶媒体（フロッピー（登録商標）ディスクに代表される磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤに代表される光ディスク、フラッシュメモリに代表される半導体メモリ等）に予め格納して頒布可能である。また、このプログラムが、ネットワークを介してダウンロード（頒布）されても構わない。クラスタ制御機構１２は、各計算機１０-1〜１０-4上のクラスタ制御部が相互に通信を行いながら同期して動作することにより、計算機の障害を迅速に検出することができる。
【００２０】
クラスタ制御機構１２は、サービス最適配置機構１２１とサービス制御機構１２２とを含む。サービス最適配置機構１２１は、計算機１０-1〜１０-4にそれぞれ設けられたサービス最適配置部（図示せず）が相互に通信を行いながら同期して一体となって動作することにより実現される。サービス最適配置機構１２１は、サービスを実行中の計算機の障害発生時、或いはサービスの負荷状況の変化時に、当該サービスを実行するのに最適な計算機を決定する機能を有する。サービス最適配置機構１２１はまた、決定された最適な計算機にサービスを再配置する機能を有する。サービス最適配置機構１２１は更に、後述する並列実行型サービス実行部１３によって並行して実行される同種のサービス（並列実行型サービスＰＳＶＣ）の実行数を最適な数に調整する機能を有する。
【００２１】
サービス制御機構１２２は、計算機１０-1〜１０-4にそれぞれ設けられたサービス制御部（図示せず）が相互に通信を行いながら同期して一体となって動作することにより実現される。サービス制御機構１２２は、サービス最適配置機構１２１の制御のもとで、当該サービス最適配置機構１２１によって決定された計算機にサービスをスイッチオーバする機能を有する。
【００２２】
図１のクラスタシステムではまた、クラスタ制御機構１２によって管理される並列実行型サービス実行部１３が動作する。並列実行型サービス実行部１３は、クラスタ制御機構１２と同様に計算機１０-1〜１０-4によって実現され、当該計算機１０-1〜１０-4にまたがって存在する。並列実行型サービス実行部１３は、サービスＰＳＶＣを計算機１０-1〜１０-4のうちの複数の計算機（ノード）上で並行して実行する機能を有する。この並列実行型サービス実行部１３によって並行して実行可能なタイプのサービスＰＳＶＣを並列実行型サービスと呼ぶ。ここで、並列実行型サービス実行部１３によって並行して実行される並列実行型サービスＰＳＶＣの実行数、つまりサービス数（＝ノード数）は、後述するサービスチケット値をもとにクラスタ制御機構１２内のサービス最適配置機構１２１によって決定される。図１では、並列実行型サービスＰＳＶＣの実行数（サービス数）が２の場合が示されている。ここではサービスＰＳＶＣの実行に関し、計算機１０-3及び１０-4が稼動状態にあり、計算機１０-1及び１０-2が待機状態にある。つまり、図１では、並列実行型サービスＰＳＶＣが、並列実行型サービス実行部１３によって２つの計算機１０-3及び１０-4上で並行して実行されている。
【００２３】
並列実行型サービスＰＳＶＣ（を実現するアプリケーション）には、静的サービスチケット値ＳＳＴPSVCと呼ぶパラメータ値が予め設定されている。この静的サービスチケット値ＳＳＴPSVCは、並列実行型サービスＰＳＶＣを計算機１０-i上で実行するのに必要であると予め予測されているリソース量（つまり、サービスＰＳＶＣの静的な負荷）を表す。一方、並列実行型サービス実行部１３には、システム内で最低限並列実行させておくべき並列実行型サービスＰＳＶＣの実行数（以下、最小サービス数Ｎminと称する）がユーザの入力操作によって予め設定される。最小サービス数Ｎminは、システム内で並列実行型サービスＰＳＶＣを最低限並行して実行する計算機の数（ノード数）をも表す。
【００２４】
並列実行型サービス実行部１３は、計算機１０-1〜１０-4上で動作可能なサービス負荷モニタ１３１-1〜１３１-4を含む。サービス負荷モニタ１３１-i（ｉ＝１〜４）は、計算機１０-iが並列実行型サービスＰＳＶＣの実行状態にある場合だけ動作して、当該計算機１０-iでのサービスＰＳＶＣの実行状態におけるリソースの消費量を計測する。サービス負荷モニタ１３１-iは、計測された現在のリソースの消費量に基づいて計算機１０-iでの並列実行型サービスＰＳＶＣの実行に必要なリソース量を予測して、当該サービスＰＳＶＣの実行に必要なリソース量（つまり、サービスＰＳＶＣの動的な負荷）を表す動的サービスチケット値ＤＳＴPSVCiを求める。サービス負荷モニタ１３１-iは、動的サービスチケット値ＤＳＴPSVCiをクラスタ制御機構１２に通知する。
【００２５】
計算機１０-1〜１０-4では、ＨＡ型サービスＳＶＣ１を実行するＨＡ型サービス実行部１４１-1〜１４１-4と、ＨＡ型サービスＳＶＣ２を実行するＨＡ型サービス実行部１４２-1〜１４２-4とが動作可能である。ＨＡ型サービス実行部１４１-1〜１４１-4，１４２-1〜１４２-4は、クラスタ制御機構１２によって管理される。
【００２６】
ＨＡ型サービスは、クラスタ制御機構１２の制御によってフェイルオーバされるサービス（アプリケーション）であり、同一時間帯では、計算機１０-1〜１０-4のうちのいずれか１つの計算機のみで実行が可能なタイプのサービスである。図１では、ＨＡ型サービスＳＶＣ１の実行に関し、計算機１０-1（内のＨＡ型サービス実行部１４１-1）のみが稼動状態にあり、他の計算機１０-2〜１０-4（内のＨＡ型サービス実行部１４１-2〜１４１-4）は待機状態にある。また、図１では、ＨＡ型サービスＳＶＣ２の実行に関し、計算機１０-2（内のＨＡ型サービス実行部１４２-2）のみが稼動状態にあり、他の計算機１０-1，１０-3，１０-4（内のＨＡ型サービス実行部１４２-1，１４２-3，１４２-4）は待機状態にある。
【００２７】
ＨＡ型サービスＳＶＣ１，ＳＶＣ２（を実現する各アプリケーション）には、静的サービスチケット値ＳＳＴSVC1，ＳＳＴSVC2が予め設定されている。静的サービスチケット値ＳＳＴSVC1，ＳＳＴSVC2は、ＨＡ型サービスＳＶＣ１，ＳＶＣ２を計算機１０-i内のＨＡ型サービス実行部１４１-iが実行するのに必要なリソース量を表すパラメータ値である。
【００２８】
ＨＡ型サービス実行部１４１-1〜１４１-4，１４２-1〜１４２-4は、それぞれサービス負荷モニタ１５１-1〜１５１-4，１５２-1〜１５２-4を含む。サービス負荷モニタ１５１-i，１５２-i（ｉ＝１〜４）は、計算機１０-i内のＨＡ型サービス実行部１４１-i，１４２-iがＨＡ型サービスＳＶＣ１，ＳＶＣ２の実行状態にある場合だけ動作して、当該計算機１０-iでのサービスＳＶＣ１，ＳＶＣ２の実行状態におけるリソースの消費量を計測する。サービス負荷モニタ１５１-i，１５２-iは、計測された現在のリソースの消費量に基づいて計算機１０-iでのサービスＳＶＣ１，ＳＶＣ２の実行に必要なリソース量を予測して、当該サービスＳＶＣ１，ＳＶＣ２の実行に必要なリソース量（つまり、サービスＳＶＣ１，ＳＶＣ２の動的な負荷）を表す動的サービスチケット値ＤＳＴSVC1i，ＤＳＴSVC2iを求める。サービス負荷モニタ１５１-i，１５２-iは、動的サービスチケット値ＤＳＴSVC1i，ＤＳＴSVC2iをクラスタ制御機構１２に通知する。
【００２９】
計算機１０-1〜１０-4では、それぞれノード負荷モニタ１６-1〜１６-4が動作する。計算機１０-1〜１０-4には、当該計算機（ノード）の処理能力（リソース量）を表す静的ノードチケット値ＳＮＴ1〜ＳＮＴ4が予め設定されている。本実施形態では、計算機１０-1〜１０-4が非対称なリソース環境を持っている場合を想定しており、したがって静的ノードチケット値ＳＮＴ1〜ＳＮＴ4はそれぞれ異なる。ノード負荷モニタ１６-1〜１６-4は、計算機１０-1〜１０-4上で実行されている全てのサービスのチケット値の総和（以下、総サービスチケット値と称する）ＴＳＴ1〜ＴＳＴ4と静的ノードチケット値ＳＮＴ1〜ＳＮＴ4とから動的ノードチケット値ＤＮＴ1〜ＤＮＴ4を予め定められた検査時期が到来する毎に計算する。動的ノードチケット値ＤＮＴ1〜ＤＮＴ4は、計算機１０-1〜１０-4で新たに使用可能なリソース量を表すチケット値である。ノード負荷モニタ１６-1〜１６-4は、動的ノードチケット値ＤＮＴ1〜ＤＮＴ4をクラスタ制御機構１２に通知する。
【００３０】
次に、図１のクラスタシステムの動作について説明する。  
サービス負荷モニタ１３１-i（ｉ＝１〜４）は、並列実行型サービス実行部１３によって計算機１０-i上で並列実行型サービスＰＳＶＣが実行されている場合に、予め定められた検査時期が到来する毎に、例えば定期的に動作する。そしてサービス負荷モニタ１３１-iは、計算機１０-iでのサービスＰＳＶＣの実行状態におけるリソースの消費量を計測する。サービス負荷モニタ１３１-iは、計測された現在のリソースの消費量に基づいて計算機１０-iでの並列実行型サービスＰＳＶＣの実行に必要なリソース量の予測値を表す動的サービスチケット値ＤＳＴPSVCiを計算する。この動的サービスチケット値ＤＳＴPSVCiの計算には、３つの予測関数ｆ（ｘ），ｇ（ｙ），ｈ（ｚ）が用いられる。予測関数ｆ（ｘ），ｇ（ｙ），ｈ（ｚ）は、それぞれ計算機１０-iにおける３種類のリソースの消費量、例えばＣＰＵ使用量ｘ、メモリ使用量ｙ、応答時間ｚ（クライアント端末からのサービスｓの実行要求を受け取ってから実行結果の応答を返すまでの時間）の関数である。ここでは、動的サービスチケット値ＤＳＴPSVCiは、次式
ＤＳＴsi＝ｆ（ｘ）＋ｇ（ｙ）＋ｈ（ｚ）                              （１）
に従って算出される。但し、ｓ＝ＰＳＶＣである。サービス負荷モニタ１３１-iによって算出された動的サービスチケット値ＤＳＴPSVCiはクラスタ制御機構１２に通知される。
【００３１】
同様に、サービス負荷モニタ１５１-i，１５２-iは、計算機１０-i（内のＨＡ型サービス実行部１４１-i，１４２-i）がＨＡ型サービスＳＶＣ１，ＳＶＣ２の実行状態にある場合、予め定められた検査時期が到来する毎に、例えば定期的に動作する。そしてサービス負荷モニタ１５１-i，１５２-iは、計算機１０-iでのサービスＳＶＣ１，ＳＶＣ２の実行に必要なリソース量の予測値を表す動的サービスチケット値ＤＳＴSVC1i，ＤＳＴSVC2iを、現在のリソースの消費量に基づいて上記（１）式に従って算出する。ここでは、ｓ＝ＳＶＣ１，ｓ＝ＳＶＣ２である。サービス負荷モニタ１５１-i，１５２-iによって算出された動的サービスチケット値ＤＳＴSVC1i，ＤＳＴSVC2iはクラスタ制御機構１２に通知される。
【００３２】
次に、ノード負荷モニタ１６-i（ｉ＝１〜４）による動的ノードチケット値ＤＮＴiの算出動作について、図２のフローチャートを参照して説明する。  
ノード負荷モニタ１６-iは、計算機１０-i上で実行中の全てのサービスｓについて、サービスチケット値ＳＴsiを、次式
サービスチケット値ＳＴsi
＝ＭＡＸ（静的サービスチケット値ＳＳＴs，動的サービスチケット値ＤＳＴsi）
（２）
に従って求める（ステップＳ１，Ｓ２）。サービスチケット値ＳＴsiは、計算機１０-i上で実行中のサービスｓで消費されているリソース量または消費されると予測されるリソース量のうちの最大値、つまりサービスｓで消費される可能性のある最大のリソース量を表す。
【００３３】
ノード負荷モニタ１６-iは、計算機１０-i上で実行中の全てのサービスｓのサービスチケット値ＳＴsiを求めると、当該サービスチケット値ＳＴsiの総和、つまり総サービスチケット値ＴＳＴiを、次式
総サービスチケット値ＴＳＴi
＝Σ（計算機１０-iで実行中のサービスのサービスチケット値ＳＴsi）  （３）
に従って算出する（ステップＳ３）。総サービスチケット値ＴＳＴiは、計算機１０-i上で実行中のサービス全体で消費される可能性のある最大のリソース量、つまり計算機１０-i全体の負荷（ノード負荷）を表す。
【００３４】
ノード負荷モニタ１６-iは、計算機１０-i上で実行中の全てのサービスｓの総サービスチケット値ＴＳＴiを求めると、その時点において計算機１０-iで新たに使用可能なリソース量を表すチケット値、つまり動的ノードチケット値ＤＮＴiを、次式
動的ノードチケット値ＤＮＴi
＝（静的ノードチケット値ＳＮＴi）−（総サービスチケット値ＴＳＴi）  （４）
に従って算出する（ステップＳ４）。  
このように、動的ノードチケット値ＤＮＴiは、静的ノードチケット値ＳＮＴiから総サービスチケット値ＴＳＴiを差し引くことにより算出される。ノード負荷モニタ１６-iは、以上の処理（ステップＳ１〜Ｓ４）を、定期的に（つまり一定時間間隔で）繰り返す。
【００３５】
次に、並列実行型サービス実行部１３により並行して実行される並列実行型サービスＰＳＶＣの実行数（サービス数）を、クラスタ制御機構１２内のサービス最適配置機構１２１が最適な数に調整する動作について、図３のフローチャートを参照して説明する。
【００３６】
サービス最適配置機構１２１は、システム内の各計算機（ノード）１０-iにおける並列実行型サービスＰＳＶＣの動的サービスチケット値ＤＳＴPSVCi、当該サービスＰＳＶＣの静的サービスチケット値ＳＳＴPSVC及び当該サービスＰＳＶＣの最小サービス数Ｎminをもとに、現在システムで必要な並列実行型サービスＰＳＶＣの実行数（以下、最適サービス数と称する）ＯＳＮを次のように算出する（ステップＳ１１）。まずサービス最適配置機構１２１は、各計算機１０-1〜１０-4での動的サービスチケット値ＤＳＴPSVC1〜ＤＳＴPSVC4の総和、つまり総動的サービスチケット値ＴＤＳＴを、次式
総動的サービスチケット値ＴＤＳＴ
＝Σ（計算機１０-iの動的サービスチケット値ＤＳＴPSVCi）            （５）
に従って算出する（ステップＳ１１ａ）。
【００３７】
次にサービス最適配置機構１２１は、総動的サービスチケット値ＴＤＳＴと並列実行型サービスＰＳＶＣの静的サービスチケット値ＳＳＴPSVCとをもとに、現在必要な並列実行型サービスＰＳＶＣの実行数を、仮サービス数ＴＳＮとして次式
仮サービス数ＴＳＮ
＝（総動的サービスチケット値ＴＤＳＴ／静的サービスチケット値ＳＳＴPSVC）
の整数部（余りが０の場合）
または
仮サービス数ＴＳＮ
＝（総動的サービスチケット値ＴＤＳＴ／静的サービスチケット値ＳＳＴPSVC）
の整数部＋１（余りが０でない場合）                               （６）
に従って算出する（ステップＳ１１ｂ）。
【００３８】
次にサービス最適配置機構１２１は、仮サービス数ＴＳＮと予め設定されている最小サービス数Ｎminとをもとに、最適サービス数ＯＳＮを次式
最適サービス数ＯＳＮ
＝ＭＡＸ（仮サービス数ＴＳＮ，最小サービス数Ｎmin）                  （７）
に従って算出する（ステップＳ１１ｃ）。
【００３９】
次にサービス最適配置機構１２１は、最適サービス数ＯＳＮを、現在並列実行型サービス実行部１３によって実行されている並列実行型サービスＰＳＶＣの実行数（以下、現サービス数と称する）ＣＳＮと比較し、最適サービス数ＯＳＮが現サービス数ＣＳＮより多いならば（ステップＳ１２）、システム内の計算機１０-1〜１０-4の中に新たに並列実行型サービスＰＳＶＣを実行可能な計算機１０-j（ｊは１〜４のいずれか）があるか否かを判定する（ステップＳ１３）。もし、サービスＰＳＶＣを実行可能な計算機１０-jがあるならば、サービス最適配置機構１２１は、当該計算機１０-jのうちの、静的ノードチケット値ＳＮＴjと動的ノードチケット値ＤＮＴjとの差が最も大きい計算機を選択し、その選択された計算機で当該サービスＰＳＶＣを実行させる（ステップＳ１４）。その後、サービス最適配置機構１２１はステップＳ１１に戻る。つまりサービス最適配置機構１２１は、サービスＰＳＶＣを実行可能な計算機１０-jの中から、当該サービスＰＳＶＣを実行させる計算機を静的ノードチケット値ＳＮＴjと動的ノードチケット値ＤＮＴjとの差が大きい順に選択して、その選択された計算機で当該サービスＰＳＶＣを開始させる動作を、最適サービス数ＯＳＮが現サービス数ＣＳＮに達するようになるまで繰り返す。一方、サービスＰＳＶＣを実行可能な計算機１０-jがないならば（ステップＳ１３）、サービス最適配置機構１２１は一定時間待った（スリープした）後に（ステップＳ１５）、ステップＳ１１に戻る。
【００４０】
また、サービス最適配置機構１２１は、最適サービス数ＯＳＮが現サービス数ＣＳＮより少ないならば（ステップＳ１６）、システム内の計算機１０-1〜１０-4の中に並列実行型サービスＰＳＶＣを停止可能な計算機１０-j（ｊは１〜４のいずれか）があるか否かを判定する（ステップＳ１７）。もし、サービスＰＳＶＣを停止可能な計算機１０-jがあるならば、サービス最適配置機構１２１は、当該計算機１０-jのうちの、静的ノードチケット値ＳＮＴjと動的ノードチケット値ＤＮＴjとの差が最も小さい計算機を選択し、その選択された計算機における当該サービスＰＳＶＣの実行を停止させる（ステップＳ１８）。その後、サービス最適配置機構１２１はステップＳ１１に戻る。つまりサービス最適配置機構１２１は、サービスＰＳＶＣを停止可能な計算機１０-jの中から、当該サービスＰＳＶＣを停止させる計算機を静的ノードチケット値ＳＮＴjと動的ノードチケット値ＤＮＴjとの差が小さい順に選択して、その選択された計算機における当該サービスＰＳＶＣの実行を停止させる動作を、最適サービス数ＯＳＮが現サービス数ＣＳＮに達するようになるまで繰り返す。一方、サービスＰＳＶＣを停止可能な計算機１０-jがないならば（ステップＳ１７）、サービス最適配置機構１２１は一定時間待った後に（ステップＳ１５）、ステップＳ１１に戻る。また、最適サービス数ＯＳＮが現サービス数ＣＳＮに一致しているならば、サービス最適配置機構１２１は一定時間待った後に（ステップＳ１５）、ステップＳ１１に戻る。
【００４１】
このように本実施形態においては、図１のクラスタシステム（計算機システム）内で並行して実行される並列実行型サービスＰＳＶの最適な実行数を表す最適サービス数ＯＳＮが、当該システム内の各計算機１０-iにおける並列実行型サービスＰＳＶＣの動的サービスチケット値ＤＳＴPSVCi、当該サービスＰＳＶＣの静的サービスチケット値ＳＳＴPSVC及び当該サービスＰＳＶＣの最小サービス数Ｎminをもとに算出される。そして、算出された最適サービス数ＯＳＮと現サービス数ＣＳＮ（その時点においてシステム内で実際に実行されている並列実行型サービスＰＳＶの実行数）との大小関係に応じて、並列実行型サービスの実行数が調整される。これにより、本実施形態のように、図１の計算機システムがクラスタシステムであり、且つ当該システム内の計算機１０-1乃至１０-4が有するリソース環境が非対称であったとしても、当該システムで並行して実行される並列実行型サービスの実行数を最適な数に調整できる。
【００４２】
なお、図１のシステムでは、実行可能な並列実行型サービスの種類がＰＳＶＣの１種類である場合を想定している。しかし、実行可能な並列実行型サービスを複数種類とすることも可能である。この場合、並列実行型サービスの種類毎に、最適サービス数ＯＳＮを求めれば良い。
【００４３】
次に、サービス最適配置機構１２１によるＨＡ型サービスまたは並列実行型サービスの最適配置について、図４のフローチャートを参照して説明する。  
サービス最適配置機構１２１は、計算機１０-1〜１０-4の中から、（動的ノードチケット値ＤＮＴj−Δ）の値が一定値以下となる計算機１０-j、つまり動的ノードチケット値ＤＮＴjが一定値以下となる可能性のある計算機１０-jを検索する（ステップＳ２１）。ここで、Δは、動的ノードチケット値ＤＮＴjが一定値以下でなくても、当該ＤＮＴjが一定値以下となる可能性のある計算機１０-jを検索するためのマージンである。なお、本実施形態では、上記一定値は零である。また、動的ノードチケット値ＤＮＴjが一定値未満となる可能性のある計算機１０-jを検索する構成としても構わない。
【００４４】
もし、動的ノードチケット値ＤＮＴjが一定値以下となる可能性のある計算機１０-jがないならば（ステップＳ２１）、サービス最適配置機構１２１は、一定時間を待った（スリープした）後（ステップＳ２２）、ステップＳ２１に戻る。なお、計算機障害等のイベントが発生した場合には、サービス最適配置機構１２１は、一定時間を待つことなくステップＳ２１に戻る。
【００４５】
これに対し、動的ノードチケット値ＤＮＴjが一定値以下となる可能性のある計算機１０-jがあるならば（ステップＳ２１）、サービス最適配置機構１２１は、当該計算機１０-jの中から、最も優先度の低いサービスｓを実行中の計算機と当該サービスｓとを選択する（ステップＳ２３）。次にサービス最適配置機構１２１は、選択されたサービスｓをシステム内の他の計算機にスイッチオーバ（引き継ぎ）可能であるか否かを判定する（ステップＳ２４）。本実施形態では、スイッチオーバ可能なサービスは予め定められている。つまり本実施形態では、サービス毎に、スイッチオーバ可能か否かが予め設定されている。この場合、ステップＳ２４の判定は、選択されたサービスｓが、スイッチオーバ可能なサービスとして予め定められているかを判定することによって実現される。なお、サービスｓの実行状況、例えばサービスｓがクリティカル領域の処理中であるかによって、スイッチオーバ可能であるかが判定される構成とすることも可能である。クリティカル領域の処理とは、例えば、応答性能が要求される処理、或いは一貫性（原始性）が要求される処理で、後戻り処理にコストがかかる処理である。具体例としては、トランザクション処理及びデータベース更新処理が挙げられる。
【００４６】
まず、選択されたサービスｓが他の計算機にスイッチオーバ可能であるものとする。また、サービスｓを実行可能な計算機が計算機１０-k（ｋは１〜４のいずれか）であるものとする。この場合、サービス最適配置機構１２１は、選択されたサービスｓを実行可能な計算機１１-kの中から、当該サービスｓをスイッチオーバするのに最適な計算機を次のように検索する（ステップＳ２５）。即ちサービス最適配置機構１２１は、サービスｓを実行可能な各計算機１０-kの動的ノードチケット値ＤＮＴkと、静的サービスチケット値ＳＳＴs及び動的サービスチケット値ＤＳＴskのうちの大きい方の値、つまりＭＡＸ（ＳＳＴs，ＤＳＴsk）とをもとに、ＤＮＴkがＭＡＸ（ＳＳＴs，ＤＳＴsk）を超える計算機１０-kを検索する。もし、複数の計算機１０-kが検索された場合、サービス最適配置マシン１２１は、当該複数の計算機１０-kの１つをサービスｓをスイッチオーバするのに最適な計算機として選択する。ここでは、動的ノードチケット値ＤＮＴkが最も大きい計算機１０-kを最適な計算機として選択すると良い。また、ＭＡＸ（ＳＳＴs，ＤＳＴsk）を超えるＤＮＴkのうち、ＭＡＸ（ＳＳＴs，ＤＳＴsk）に最も近いＤＮＴkを持つ計算機１０-kが選択される構成としても良い。
【００４７】
サービス最適配置機構１２１は、選択されたサービスｓをスイッチオーバするのに最適な計算機が検索できた場合（ステップＳ２６）、当該最適な計算機で当該サービスｓの実行を開始させ（ステップＳ２７）、しかる後にステップＳ２１に戻る。これに対し、最適な計算機が検索できなかった場合（ステップＳ２６）、サービス最適配置機構１２１は、動的ノードチケット値ＤＮＴjが一定値以下となる可能性のある計算機１０-jの中から、次に優先度の低いサービスｓを実行中の計算機と当該サービスｓとを選択する（ステップＳ２８）。その後、サービス最適配置機構１２１はステップＳ２４に戻る。
【００４８】
一方、選択されたサービスｓが他の計算機にスイッチオーバ可能でないならば（ステップＳ２４）、サービス最適配置機構１２１は、当該選択されたサービスｓが停止可能であるか否かを判定する（ステップＳ２９）。本実施形態では、停止可能なサービスは予め定められている。つまり本実施形態では、サービス毎に、停止可能か否かが予め設定されている。なお、サービスｓの実行状況によって、停止可能であるかが判定される構成とすることも可能である。
【００４９】
もし、選択されたサービスｓが停止可能であるならば（ステップＳ２９）、サービス最適配置機構１２１は、当該選択されたサービスｓを停止させ（ステップＳ３０）、しかる後にステップＳ２１に戻る。これに対し、選択されたサービスｓが停止可能でないならば（ステップＳ２９）、サービス最適配置機構１２１は、動的ノードチケット値ＤＮＴjが一定値以下となる可能性のある計算機１０-jの中から、次に優先度の低いサービスｓを実行中の計算機と当該サービスｓとを選択する（ステップＳ３１）。その後、サービス最適配置機構１２１はステップＳ２４に戻る。
【００５０】
このように本実施形態においては、動的ノードチケット値ＤＮＴjが一定値以下となる可能性のある計算機１０-jで実行中のサービスｓを、動的ノードチケット値ＤＮＴkが、静的サービスチケット値ＳＳＴs及び動的サービスチケット値ＤＳＴskのうちの大きい方の値を超えている計算機１０-kで実行させることができる。これにより最適な負荷分散が実現される。即ち本実施形態においては、計算機の障害、或いは大幅なサービス負荷またはノード負荷の変化が発生した場合、サービス最適配置マシン１２１によりサービスの再配置が自動的に行われる。
【００５１】
なお、図４のフローチャートには、ステップＳ２４，Ｓ２５，Ｓ２６及びＳ２８のループを繰り返しても、選択されたサービスをスイッチオーバするのに最適な計算機がなかった場合については示されていない。同様に、図４には、ステップＳ２４，Ｓ２９及びＳ３１のループを繰り返しても、停止可能なサービスがなかった場合については示されていない。このような場合、予め定められたユーザの設定に応じて、例えば他のサービスのスイッチオーバ／停止を行うようにしても良い。また、最適な計算機がなかった場合には、最適な計算機が出現するまで、選択されたサービスを停止するか、或いは何もしないようにしても良い。
【００５２】
上記実施形態においては、ＨＡ型サービスだけでなく並列実行型サービスが実行可能なクラスタシステムを想定している。しかし本発明はクラスタシステムに限らず、ＨＡ型サービスは実行できないものの並列実行型サービスが実行可能な計算機システム（負荷分散システム）にも適用可能である。
【００５３】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【図面の簡単な説明】
【００５４】
【図１】本発明の一実施形態に係るクラスタシステムの構成を示すブロック図。
【図２】同実施形態におけるノード負荷モニタ１６-i（ｉ＝１〜４）による動的ノードチケット値ＤＮＴiの算出手順を示すフローチャート。
【図３】同実施形態で適用される並列実行型サービスＰＳＶＣの実行数（サービス数）を調整する動作の手順を示すフローチャート。
【図４】同実施形態で適用されるサービス（ＨＡ型サービスまたは並列実行型サービス）の最適配置のための動作の手順を示すフローチャート。
【符号の説明】
【００５５】
１０-1〜１０-4…計算機、１１-1〜１１-4…ＯＳ（オペレーティングシステム）、１２…クラスタ制御機構、１３…並列実行型サービス実行部、１６-1〜１６-4…ノード負荷モニタ（ノード負荷計測手段）、２０…ネットワーク、１２１…サービス最適配置機構、１２２…サービス制御機構、１３１-1〜１３１-4，１５１-1〜１５１-4，１５２-1〜１５２-4…サービス負荷モニタ（サービス負荷計測手段）。
【図１】
2005100381.tif 000003
【図２】
2005100381.tif 000004
【図３】
2005100381.tif 000005
【図４】
2005100381.tif 000006