(57)【要約】【課題】  性能やアーキテクチャの異なる複数の計算ノードで構成される計算機システムに対して、システム性能の管理や運用ノード数の最適化を容易に行うことが可能なシステム使用率管理装置を提供する。【解決手段】  処理装置１１のノード最大性能設定手段１１１は外部のシステムを構成する各ノードの最大性能を記憶装置１２のノード最大性能記憶部１２１に格納する。リソース使用率取得手段１１２は各ノードのリソース使用率１０１を取得し、仮想使用率算出部１１３に付与する。仮想使用率算出部１１３はノード最大性能記憶部１２１に保持された各ノードの最大性能と付与された各ノードのリソース使用率とからシステムの仮想的な使用率を算出し、その仮想的な使用率を出力部１１４に付与する。出力部１１４は付与された仮想的な使用率を出力装置１３に出力する。【選択図】      図１
2011141908.tif 000002
【特許請求の範囲】
【請求項１】
同種あるいは関連する業務を行いかつグループ化された複数の計算ノードを１つの仮想ノードとみなした場合の当該仮想ノードのＣＰＵ使用率を算出するシステム使用率管理装置であって、
前記複数の計算ノード各々が単位時間当たり処理できる最大リクエスト数を最大性能として設定するノード最大性能設定手段と、前記複数の計算ノード各々のＣＰＵ使用率を取得するリソース使用率取得手段と、前記ノード最大性能設定手段にて設定された前記最大性能を重みとみなして前記前記リソース使用率取得手段にて取得された前記ＣＰＵ使用率の加重平均を前記仮想ノードのＣＰＵ使用率として算出する仮想使用率算出手段とを有することを特徴とするシステム使用率管理装置。
【請求項２】
前記ノード最大性能設定手段は、前記リソース使用率取得手段と、前記複数の計算ノード各々のリクエスト到着率を取得するリクエスト到着率取得手段と、前記リソース使用率取得手段にて取得された前記リソース使用率と前記リクエスト到着率取得手段にて取得された前記リクエスト到着率とから前記複数の計算ノード各々の最大性能を算出して保持するノード最大性能算出手段とを含むことを特徴とする請求項１記載のシステム使用率管理装置。
【請求項３】
前記仮想使用率算出手段にて算出された前記仮想的な使用率が規定のサービスレベルを満たしているかどうかを評価するサービス満足度評価手段を含むことを特徴とする請求項１または請求項２記載のシステム使用率管理装置。
【請求項４】
前記ノード最大性能設定手段にて設定された最新の最大性能と現在採用中の最大性能とを比較する最大性能比較手段と、前記最大性能比較手段にて比較を行った総数と前記最新の最大性能及び前記現在採用中の最大性能の両方の値の誤差が許容の範囲内であった回数とから信頼度を算出する信頼度算出手段とを含むことを特徴とする請求項１から請求項３のいずれか記載のシステム使用率管理装置。
【請求項５】
前記算出した仮想的な使用率を時系列に沿って表示する手段を含むことを特徴とする請求項１から請求項４のいずれか記載のシステム使用率管理装置。
【請求項６】
同種あるいは関連する業務を行いかつグループ化された複数の計算ノードを１つの仮想ノードとみなした場合の当該仮想ノードのＣＰＵ使用率を算出するシステム使用率管理装置に用いられるシステム使用率管理方法であって、
前記システム使用率管理装置が、前記複数の計算ノード各々が単位時間当たり処理できる最大リクエスト数を最大性能として設定する第１のステップと、前記複数の計算ノード各々のＣＰＵ使用率を取得する第２のステップと、前記第１のステップにて設定された前記最大性能を重みとみなして前記第２のステップにて取得された前記ＣＰＵ使用率の加重平均を前記仮想ノードのＣＰＵ使用率として算出する第３のステップとを実行することを特徴とするシステム使用率管理方法。
【請求項７】
前記システム使用率管理装置側に、前記最大性能を設定するステップは、前記リソース使用率を取得するステップと、前記複数の計算ノード各々のリクエスト到着率を取得するステップと、取得された前記リソース使用率と取得された前記リクエスト到着率とから前記複数の計算ノード各々の最大性能を算出して保持するステップとを含むことを特徴とする請求項６記載のシステム使用率管理方法。
【請求項８】
前記システム使用率管理装置側に、前記仮想的な使用率が規定のサービスレベルを満たしているかどうかを評価するステップを含むことを特徴とする請求項６または請求項７記載のシステム使用率管理方法。
【請求項９】
前記システム使用率管理装置側に、設定された最新の最大性能と現在採用中の最大性能とを比較するステップと、その比較を行った総数と前記最新の最大性能及び前記現在採用中の最大性能の両方の値の誤差が許容の範囲内であった回数とから信頼度を算出するステップとを含むことを特徴とする請求項６から請求項８のいずれか記載のシステム使用率管理方法。
【請求項１０】
前記システム使用率管理装置が、前記算出した仮想的な使用率を時系列に沿って表示することを特徴とする請求項６から請求項９のいずれか記載のシステム使用率管理方法。
【請求項１１】
同種あるいは関連する業務を行いかつグループ化された複数の計算ノードを１つの仮想ノードとみなした場合の当該仮想ノードのＣＰＵ使用率を算出するシステム使用率管理装置内のコンピュータに実行させるプログラムであって、
前記複数の計算ノード各々が単位時間当たり処理できる最大リクエスト数を最大性能として設定する第１の処理と、前記複数の計算ノード各々のＣＰＵ使用率を取得する第２の処理と、前記第１の処理にて設定された前記最大性能を重みとみなして前記第２の処理にて取得された前記ＣＰＵ使用率の加重平均を前記仮想ノードのＣＰＵ使用率として算出する第３の処理とを含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシステム使用率管理装置及びそれに用いるシステム使用率管理方法並びにそのプログラムに関し、特に複数の計算ノードから構成されるシステムに対してノード群の性能や使用率を管理するための管理方法に関する。
【背景技術】
【０００２】
従来、システム使用率管理装置においては、図９に示すように、処理装置５１と記憶装置５２とを具備しており、処理装置５１はＣＰＵ（中央処理装置）使用率取得手段５１１と、ＣＰＵ使用率比較手段５１２と、ＨＷ（ハードウェア）構成変更判断手段５１３とを備え、記憶装置５２はＣＰＵ使用率記憶部５２１とサービスレベル契約記憶部５２２とを備えている（例えば、特許文献１参照）。
【０００３】
上記のような構成を持つ従来のシステム使用率管理装置５は、以下のように動作する。まず、ＣＰＵ使用率取得手段５１１は図示せぬ１つ以上のノードで構成された外部システム（図示せず）から各ノードのＣＰＵ使用率を取得し、ＣＰＵ使用率記憶部５２１に格納する。サービスレベル契約記憶部５２２には各ノードが維持すべきＣＰＵ使用率の上限や、各ノードのＣＰＵ使用率がこの上限を越えた場合に増強可能なノードの最大数等が予め格納されている。
【０００４】
ＣＰＵ使用率比較手段５１２はＣＰＵ使用率記憶部５２１が保持する各ノードのＣＰＵ使用率と、サービスレベル契約記憶部５２２が保持する維持すべきＣＰＵ使用率の上限とを比較し、比較結果をＨＷ構成変更判断手段５１３に付与する。維持すべきＣＰＵ使用率を越える使用率が観測されたノードが存在した場合、ＨＷ構成変更判断手段５１３はサービスレベルを満足していないと判断し、外部システムに対してノードの増強を行う。この時、サービスレベル契約記憶部５２２が保持する増強可能なノードの最大数までノードを増強することができる。
【０００５】
一方、維持すべきＣＰＵ使用率以下のノードしか存在しない場合、ＨＷ構成変更判断手段５１３は外部システムがサービスレベルを満足していると判断する。ノードを削減してもサービスレベルを維持できる場合には、ノードを削減してもよい。この時、ＨＷ構成変更判断手段５１３は各ノードの計算能力が同一であると仮定し、使用率とノード数との積を一定とみなして増強後や削減後の使用率を見積もる。例えば、４ノードがいずれもＣＰＵ使用率２５％で運用されている時、ノード数を５に増強した時の各ノードの使用率の見積りは２０％となる。逆に、ノード数を２に削減した時の各ノードの使用率の見積りは５０％となる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−０２４１９２号公報
【特許文献２】特開平１０−１８７６３６号公報
【特許文献３】特開２００２−２６８９２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述した従来のシステム使用率管理装置では、性能の異なるノードが存在する場合に、ＨＷを増強すべきかどうかを適切に判断することができないという問題がある。これは、仮に性能の低いノードの使用率が許容値よりも高く、性能の高いノードの使用率が低かった場合に、システム全体としては大きな余力があるにも関わらず、ノードを増強しようとしてしまうためである。
【０００８】
またこの時、ＣＰＵクロック数のような単純な性能値は、システム上で動作するアプリケーションの性能を正確に表していないことが多い。これは、ＣＰＵや計算機のアーキテクチャが多様化し、同一のクロック数であっても、アーキテクチャや処理するアプリケーションの特性によって性能が大きく異なるためである。
【０００９】
そこで、本発明の目的は上記の問題点を解消し、性能やアーキテクチャの異なる複数の計算ノードで構成される計算機システムに対して、システム性能の管理や運用ノード数の最適化を容易に行うことができるシステム使用率管理装置及びそれに用いるシステム使用率管理方法並びにそのプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明によるシステム使用率管理装置は、同種あるいは関連する業務を行いかつグループ化された複数の計算ノードを１つの仮想ノードとみなした場合の当該仮想ノードのＣＰＵ使用率を算出するシステム使用率管理装置であって、
前記複数の計算ノード各々が単位時間当たり処理できる最大リクエスト数を最大性能として設定するノード最大性能設定手段と、前記複数の計算ノード各々のＣＰＵ使用率を取得するリソース使用率取得手段と、前記ノード最大性能設定手段にて設定された前記最大性能を重みとみなして前記前記リソース使用率取得手段にて取得された前記ＣＰＵ使用率の加重平均を前記仮想ノードのＣＰＵ使用率として算出する仮想使用率算出手段とを備えている。
【００１１】
本発明によるシステム使用率管理方法は、同種あるいは関連する業務を行いかつグループ化された複数の計算ノードを１つの仮想ノードとみなした場合の当該仮想ノードのＣＰＵ使用率を算出するシステム使用率管理装置に用いられるシステム使用率管理方法であって、
前記システム使用率管理装置が、前記複数の計算ノード各々が単位時間当たり処理できる最大リクエスト数を最大性能として設定する第１のステップと、前記複数の計算ノード各々のＣＰＵ使用率を取得する第２のステップと、前記第１のステップにて設定された前記最大性能を重みとみなして前記第２のステップにて取得された前記ＣＰＵ使用率の加重平均を前記仮想ノードのＣＰＵ使用率として算出する第３のステップとを実行している。
【００１２】
本発明によるプログラムは、同種あるいは関連する業務を行いかつグループ化された複数の計算ノードを１つの仮想ノードとみなした場合の当該仮想ノードのＣＰＵ使用率を算出するシステム使用率管理装置内のコンピュータに実行させるプログラムであって、
前記複数の計算ノード各々が単位時間当たり処理できる最大リクエスト数を最大性能として設定する第１の処理と、前記複数の計算ノード各々のＣＰＵ使用率を取得する第２の処理と、前記第１の処理にて設定された前記最大性能を重みとみなして前記第２の処理にて取得された前記ＣＰＵ使用率の加重平均を前記仮想ノードのＣＰＵ使用率として算出する第３の処理とを含むことを特徴とする。
【００１３】
すなわち、本発明のシステム使用率管理装置は、性能やアーキテクチャの異なる複数の計算ノードで構成される計算機システムに対して、ノード群の性能や使用率を算出することで、システム性能の管理や運用ノード数の最適化を容易に行えるようにしている。
【００１４】
より具体的に説明すると、本発明のシステム使用率管理装置では、各ノードの最大性能を設定するノード最大性能設定手段と、各ノードのリソース使用率を取得するリソース使用率取得手段と、各ノードの最大性能とリソース使用率とからノード群の仮想的な性能及び使用率を算出する仮想使用率算出手段と、算出した全体性能及び使用率を出力する出力手段とを備え、ノード群の性能や使用率を出力あるいは利用することで、上記の目的を達成している。
【００１５】
これによって、本発明のシステム使用率管理装置では、性能やアーキテクチャの異なる複数のノードで構成される計算機システムに対して、ノード群の性能や使用率を算出可能となるため、システムの使用状況や負荷を素早く把握することが可能となる。
【００１６】
また、本発明のシステム使用率管理装置では、各ノードの許容使用率からノード群の許容使用率が算出可能となるため、システムが全体として許容範囲内の使用率で運用できているかどうかを素早く判定することが可能となる。
【００１７】
さらに、本発明のシステム使用率管理装置では、仮想使用率とともに、仮想使用率算出時の時刻が出力可能となるため、仮想使用率を時系列に沿ってまとめた運用レポートが作成可能となる。
【発明の効果】
【００１８】
本発明は、上記のような構成及び動作とすることで、性能やアーキテクチャの異なる複数の計算ノードで構成される計算機システムに対して、システム性能の管理や運用ノード数の最適化を容易に行うことができるという効果が得られる。
【図面の簡単な説明】
【００１９】
【図１】本発明によるシステム使用率管理装置の構成を示すブロック図である。
【図２】本発明によるシステム使用率管理装置の動作を示すフローチャートである。
【図３】本発明の第１の実施の形態によるシステム使用率管理装置の構成を示すブロック図である。
【図４】本発明の第１の実施の形態によるシステム使用率管理装置の動作を示すフローチャートである。
【図５】本発明の第２の実施の形態によるシステム使用率管理装置の構成を示すブロック図である。
【図６】本発明の第２の実施の形態によるシステム使用率管理装置の動作を示すフローチャートである。
【図７】本発明の第３の実施の形態によるシステム使用率管理装置の構成を示すブロック図である。
【図８】本発明の第３の実施の形態によるシステム使用率管理装置の動作を示すフローチャートである。
【図９】本発明に関連するシステム使用率管理装置の構成を示すブロック図である。
【発明を実施するための形態】
【００２０】
次に、本発明の実施の形態について図面を参照して説明する。図１は本発明によるシステム使用率管理装置の構成を示すブロック図である。図１において、システム使用率管理装置１は処理装置１１と、記憶装置１２と、出力装置１３とから構成されている。処理装置１１はノード最大性能設定手段１１１と、リソース使用率取得手段１１２と、仮想使用率算出部１１３と、出力部１１４とを備え、記憶装置１２はノード最大性能記憶部１２１を備え、処理装置１１で実行されるプログラム（コンピュータで実行可能なプログラム）を格納している。
【００２１】
ノード最大性能設定手段１１１は外部のシステムを構成する各ノード（図示せず）の最大性能をノード最大性能記憶部１２１に格納する。リソース使用率取得手段１１２は各ノードのリソース使用率１０１を取得し、仮想使用率算出部１１３に付与する。仮想使用率算出部１１３はノード最大性能記憶部１２１に保持された各ノードの最大性能と付与された各ノードのリソース使用率とからシステムの仮想的な使用率を算出し、その仮想的な使用率を出力部１１４に付与する。出力部１１４は付与された仮想的な使用率を出力装置１３に出力する。
【００２２】
図２は本発明によるシステム使用率管理装置１の動作を示すフローチャートである。これら図１及び図２を参照して本発明によるシステム使用率管理装置１の動作について説明する。尚、図２に示す処理は処理装置１１が記憶装置１２のプログラムを実行することで実現される。
【００２３】
まず、ノード最大性能設定手段１１１は外部のシステムを構成する各ノードの最大性能をノード最大性能記憶部１２１に格納する（図２ステップＳ１）。ここで、最大性能とは単位時間当りに処理できるリクエスト等の個数を指す。以下、Ｗｅｂサーバやデータベースサーバへのリクエストのほか、ネットワークを経由して送受信されるパケットや、機械語、プログラムテキスト中のステートメント、関数等、受信側になんらかの処理を発生させるものを総称してリクエストと呼ぶ。
【００２４】
各ノードの最大性能は図示せぬ入力装置等を通じてユーザから入力された値や、予め用意された値、独自に算出した値等が用いられる。また、後述する理由によって、各ノードの最大性能は絶対的な値ではなく、ノード間の最大性能の比であってもよい。
【００２５】
外部システムにおいては、同種あるいは関連する業務を行うノードをグループ化し、同一グループ内のノード群に対して、ノード最大性能の設定や仮想使用率の算出を行ってもよい。以下では、特に断りがない限り、同一グループ内のノード群の全体とシステムの全体とを区別せずに説明する。
【００２６】
リソース使用率取得手段１１２は各ノードのリソース使用率１０１を取得し、仮想使用率算出部１１３に付与する（図２ステップＳ２）。リソース使用率としては、ＣＰＵ使用率やディスク使用率等がある。使用率とは、単位時間当りに実際にＣＰＵ（中央処理装置）やディスク等のリソースを使用した時間の割合のことを指す。
【００２７】
仮想使用率算出部１１３はノード最大性能記憶部１２１に保持された各ノードの最大性能と、付与された各ノードのリソース使用率とから、ノード群の仮想的な使用率を算出し、その仮想的な使用率を出力部１１４に付与する（図２ステップＳ３）。
【００２８】
識別番号ｉを持つノードの最大性能をαｉ・μとした時、ノード群（ノードグループ）の最大性能は各ノードの最大性能の合計Σｉ（αｉ・μ）で表すことができる。ここで、αｉ・μは絶対性能を表し、αｉは他のノードとの相対的な性能（性能比）を表す。例えば、３つのノードの絶対性能がそれぞれ、α１・μが１２０リクエスト／秒、α２・μが８０リクエスト／秒、α３・μが２００リクエスト／秒であった時、α１＝３，α２＝２，α３＝５となる。
【００２９】
一方、ノードｉへのリクエスト到着率をλｉとした時、各ノードのリソース使用率ρｉは、
ρｉ＝λｉ／（αｉ・μ）
と表すことができる。ここで、ノード群の全体を１個の仮想的なノードと考えると、ノード群へのリクエスト到着率は、
Σｉ（λｉ）
となるため、ノード群の使用率（仮想使用率）ρは、
ρ＝Σｉ（λｉ）／Σｉ（αｉ・μ）
と表すことができる。
【００３０】
さらに、
λｉ＝ρｉ・αｉ・μ
を使って上記の式を変形をすることで、
ρ＝Σｉ（ρｉ・αｉ・μ）／Σｉ（αｉ・μ）
＝Σｉ（ρｉ・αｉ）／Σｉ（αｉ）
が得られる。つまり、仮想使用率は各ノードの使用率とともに、絶対性能値あるいはノード間の性能比を用いて上記の式で算出される。
【００３１】
また、算出対象のノード群を構成する各ノードに対して、応答時間等の観点から、一定の使用率以下での運用を規定する許容使用率が与えられている場合、各ノードの許容使用率をリソース使用率取得手段１１２に与えることで、ノード群の許容使用率を得ることもできる。
【００３２】
最後に、出力部１１４はノード群の仮想使用率を出力装置１３に出力する。この時、出力部１１４は仮想使用率とともに、算出時の時刻やノードの構成情報等を出力してもよい。本発明の実施の形態は、外部システムとは別の計算機や計算ノード上で動作するほか、外部システムが備えるノード上で動作させることもできる。
【００３３】
このように、本発明では、性能やアーキテクチャの異なる複数のノードで構成される計算機システムに対して、ノード群の能力や使用率を算出することができるので、システムの使用状況や負荷を素早く把握することができる。
【００３４】
また、本発明では、各ノードの許容使用率からノード群の許容使用率を算出することができるので、システムが全体として許容範囲内の使用率で運用できているかどうかを素早く判定することができる。
【００３５】
さらに、本発明では、仮想使用率とともに、仮想使用率算出時の時刻を出力することができるので、仮想使用率を時系列に沿ってまとめた運用レポートを作成することができる。
【００３６】
この本発明の具体的な例について説明する。以下の説明では、図示していないが、外部システムがＷｅｂサーバの動作する３台のノードと、アプリケーションサーバのノード２台と、データベースサーバのノード２台とで構成されているものとする。
【００３７】
Ｗｅｂサーバ用の３台に対して仮想使用率の算出を行う場合、本発明のユーザはノードのＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスやマシン名等の識別子に同一のグループ識別子を与えることで、ノードをグループ化することができる。また、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を使い、画面上に表示された各ノードをグループを表す領域内に配置する等の操作によってグループ化してもよい。
【００３８】
このようにしてグループ化されたＷｅｂサーバ用の３台に関して、まず、各ノードの最大性能がノード最大性能設定手段１１１から入力されると、ノード最大性能記憶部１２１に格納される。ここでは、Ｗｅｂサーバが処理可能なＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）やＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）等のリクエストに基づいて、３ノードの最大性能がそれぞれ「α１・μ＝１２０」，「α２・μ＝８０」，「α３・μ＝２００」と与えられたとする。
【００３９】
入力値はユーザが直接与えるほか、最大性能として利用可能な値を保持している別の装置が与えてもよい。また、ノード最大性能記憶部１２１は各ノードの最大性能を性能比の形式で保持してもよい。今回の場合、性能比は「α１＝３」，「α２＝２」，「α３＝５」となる。
【００４０】
リソース使用率取得手段１１２は各ノードのリソース使用率１０１を取得し、仮想使用率算出部１１３に付与する。ここでは、例として、リソース使用率として、外部システムのＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等が提供しているＣＰＵ使用率を考える。いま、各ノードから取得したＣＰＵ使用率が、それぞれ「ρ１＝０．２」，「ρ２＝０．１５」，「ρ３＝０．６」であったとする。
【００４１】
仮想使用率算出部１１３はノード最大性能記憶部１２１に保持された各ノードの最大性能と、リソース使用率取得手段１１２から付与された各ノードのＣＰＵ使用率とから３ノードのＷｅｂサーバに対する仮想使用率を算出し、その仮想使用率を出力部１１４に付与する。この時の仮想使用率ρは、
ρ＝Σｉ（ρｉ・αｉ・μ）／Σｉ（αｉ・μ）
＝（０．２・１２０＋０．１５・８０＋０．６・２００）
／（１２０＋８０＋２００）
＝０．３９
となる。最大性能比を用いた場合も、
ρ＝Σｉ（ρｉ・αｉ）／Σｉ（αｉ）
＝（０．２・３＋０．１５・２＋０．６・５）／（３＋２＋５）
＝０．３９
となり、上記と同一の結果が得られる。
【００４２】
最後に、出力部１１４は得られたシステムの仮想使用率をディスプレイやプリンタ等の出力装置１３に出力する。この時、本発明では、サーバのグループ化を行ったＧＵＩ上において、グループ化されたノード群に対応した画面上の箇所に、グループの仮想使用率を表示することができる。また、本発明では、各ノードのＣＰＵ使用率の取得と仮想使用率の算出及び出力、記録を継続的に行うことによって、時間経過にしたがった仮想使用率の変化をグラフ等の形式で表示することができる。
【００４３】
さらに、本発明では、各ノードのＣＰＵ使用率を取得した時刻と、そこから算出される仮想使用率を一覧やグラフにまとめることで、外部システムの管理者や利用者に有用なレポートを作成することができる。ＧＵＩやレポート上では、時刻や仮想使用率とともに、各ノードの搭載するＣＰＵの種類やメモリ容量、ＯＳ、ミドルウェア等の構成情報を出力してもよい。
【００４４】
さらにまた、本発明では、アプリケーションサーバやデータベースサーバに関しても、上記と同様に、グループ化と仮想使用率の算出とを行って、各グループの仮想使用率の推移をまとめたレポートを作成することができ、これに基づいてグループ間のノードの融通やノードの増強等の運用計画を立てることができる。
【００４５】
図３は本発明の第１の実施の形態によるシステム使用率管理装置の構成を示すブロック図である。図３において、本発明の第１の実施の形態によるシステム使用率管理装置２は処理装置２１にサービス満足度評価部２１１を具備し、記憶装置２２にサービスレベル契約記憶部２２１を具備するようにした以外は図１に示す本発明の実施の形態によるシステム使用率管理装置１と同様の構成となっており、同一構成要素には同一符号を付してある。また、同一構成要素の動作は本発明の実施の形態の動作と同様である。
【００４６】
サービス満足度評価部２１１は仮想使用率算出部１１３が算出した仮想使用率を、サービスレベル契約記憶部２２１が保持するサービスレベル契約に基づいて評価し、評価結果を出力部１１４に付与する。尚、記憶装置２２は処理装置２１で実行されるプログラム（コンピュータで実行可能なプログラム）を格納している。
【００４７】
図４は本発明の第１の実施の形態によるシステム使用率管理装置２の動作を示すフローチャートである。これら図３及び図４を参照して本発明の第１の実施の形態によるシステム使用率管理装置２の動作について説明する。尚、図４に示す処理は処理装置２１が記憶装置２２のプログラムを実行することで実現される。また、図４に示すステップＳ１１〜Ｓ１３の処理動作（ノード最大性能設定手段１１１、リソース使用率取得手段１１２、仮想使用率算出部１１３の各動作）は上述した本発明の実施の形態の対応する部分の動作（図２のステップＳ１〜Ｓ３の処理動作）と同一であるため、その説明を省略する。
【００４８】
本発明の実施の形態では、仮想使用率算出部１１３が算出した仮想使用率を出力部１１４に付与しているが、本実施の形態では仮想使用率算出部１１３が算出した仮想使用率をサービス満足度評価部２１１に付与している。
【００４９】
サービス満足度評価部２１１は仮想使用率算出部１１３が算出した仮想使用率を、サービスレベル契約記憶部２２１が保持するサービスレベル契約に基づいて評価する。サービスレベル契約記憶部２２１はノード群に関して、一定の使用率以下での運用を規定する許容使用率を保持している。また、サービスレベル契約記憶部２２１にはシステムの仮想使用率に基づいた課金方法や、システムの仮想使用率が前記許容使用率を越えた場合に行うべき対処法等を保持してもよい。この場合の対処法としては、ノードの追加や課金方法の変更等がある。さらに、仮想使用率が許容使用率よりも大幅に低い場合には、ノードを削減してもよい。
【００５０】
サービス満足度評価部２１１はシステムの仮想使用率が許容使用率以下であるかどうかを判定し（図４ステップＳ１４）、判定の結果が真であれば、サービスレベルを満足している旨を評価結果として出力部１１４に付与する。判定の結果が偽である場合、サービス満足度評価部２１１はサービスレベル契約記憶部２２１が保持するノード構成や課金方法の変更といった対処法を出力部１１４に付与する（図４ステップＳ１５）。最後に、出力部１１４は付与された評価結果を出力装置１３に出力する。
【００５１】
このように、本実施の形態では、サービスレベル契約に基づいて、ノード数の最適化や課金方法の見直しができるので、ユーザへ提供するサービスの維持や管理のための業務を簡略化することができる。
【００５２】
この本発明の第１の実施の形態の具体的な例について説明する。以下の説明では、図示していないが、外部システムがＷｅｂサーバの動作する３台のノードと、アプリケーションサーバのノード２台と、データベースサーバのノード２台とで構成されているものとする。
【００５３】
本発明の第１の実施の形態においては、算出した仮想使用率を出力部１１４の代わりにサービス満足度評価部２１１へ付与する。サービス満足度評価部２１１はサービスレベル契約記憶部２２１の規定内容にしたがって、仮想使用率が許容使用率以下であるかどうかを判定する。サービスレベル契約記憶部２２１では、各サービスや各ノードグループ、ノード群等に対して、許容使用率や許容使用率を越えた場合の対処法が規定されている。例えば、Ｗｅｂサーバ用ノード群の仮想使用率３５％以下での運用と、この値を超過した場合のノードの追加と、追加すべきノードの種類が規定されていたとする。
【００５４】
本発明の具体的な例では、Ｗｅｂサーバ用の３ノードの仮想使用率が３９％であり、規定値を超過している。この時、追加するノードの種類や最大性能が未知の場合には、予め定められた台数の追加を行う。逆に、追加するノードがすでに配備しているノードと同種である場合等、追加するノードの最大性能が既知である場合には、追加後の仮想使用率を見積もることができる。
【００５５】
例えば、最大性能が８０のノードを１台追加することを考える。仮想使用率の算出式、
ρ＝Σｉ（ρｉ・αｉ・μ）／Σｉ（αｉ・μ）
における分子は、リクエストの総数Σｉ（λｉ）を表しているため、追加後も変化しないと仮定すると、追加後の仮想使用率は、
ρ＝Σｉ（ρｉ・αｉ・μ）／Σｉ（αｉ・μ）
＝（０．２・１２０＋０．１５・８０＋０．６・２００）
／（１２０＋８０＋２００＋８０）
＝０．３２５
となり、許容使用率以下となることがわかる。
【００５６】
また、追加するノードの最大性能をＸとして、不等式、
（０．２・１２０＋０．１５・８０＋０．６・２００）
／（１２０＋８０＋２００＋Ｘ）≦０．３５
を解くことで、４５．８≦Ｘが得られるため、最大性能が４５．８以上のノードを１台追加すればよいこともわかる。さらに、複数台の合計が４５．８以上になるようにノードを追加してもよい。
【００５７】
サービス満足度評価部２１１はノードの追加指示のほか、上記のようにして求めた追加後の予想使用率や、どの程度の性能のノードを追加すれば良いか等の情報を出力部１１４に付与する。最後に、出力部１１４がディスプレイ等の出力装置１３にこれらの情報を出力する。外部のシステムにノードを自動的に増強する機構が備わっている場合には、ノードの追加指示等を直接外部のシステムに付与することもできる。
【００５８】
図５は本発明の第２の実施の形態によるシステム使用率管理装置の構成を示すブロック図である。図５において、本発明の第２の実施の形態によるシステム使用率管理装置３は処理装置３１に、リクエスト到着率取得手段３１１１と、ノード最大性能算出部３１１２とリソース使用率取得手段１１２とからなるノード最大性能設定手段３１１を具備するようにした以外は図１に示す本発明の実施の形態によるシステム使用率管理装置１と同様の構成となっており、同一構成要素には同一符号を付してある。また、同一構成要素の動作は本発明の実施の形態の動作と同様である。
【００５９】
リクエスト到着率取得手段３１１１は各ノードのリクエスト到着率２０１を取得し、ノード最大性能算出部３１１２に付与する。ノード最大性能算出部３１１２はリクエスト到着率取得手段３１１１から付与された各ノードのリクエスト到着率と、リソース使用率取得手段１１２から付与された各ノードのリソース使用率とから各ノードの最大性能を算出し、その最大性能をノード最大性能記憶部１２１に格納する。
【００６０】
図６は本発明の第２の実施の形態によるシステム使用率管理装置３の動作を示すフローチャートである。これら図５及び図６を参照して本発明の第２の実施の形態によるシステム使用率管理装置３の動作について説明する。尚、図６に示す処理は処理装置３１が記憶装置１２のプログラムを実行することで実現される。
【００６１】
まず、リクエスト到着率取得手段３１１１は各ノードのリクエスト到着率２０１を取得し、そのリクエスト到着率２０１をノード最大性能算出部３１１２に付与する（図６ステップＳ２１）。
【００６２】
リソース使用率取得手段１１２は上記のリクエスト到着率取得手段３１１１によるリクエスト到着率取得時と同時刻、あるいは近い時刻における各ノードのリソース使用率１０１を取得し、そのリソース使用率１０１を仮想使用率算出部１１３とノード最大性能算出部３１１２とにそれぞれ付与する（図６ステップＳ２２）。
【００６３】
尚、上記のステップＳ２１，Ｓ２２の実行順序は任意の順序でよい。また、ノード最大性能算出部３１１２に付与する各ノードのリクエスト到着率やリソース使用率は、一定期間中に採取したサンプリングデータから算出した平均値等であってもよい。
【００６４】
ノード最大性能算出部３１１２は付与された各ノードのリクエスト到着率とリソース使用率とから各ノードの最大性能を算出し、その最大性能をノード最大性能記憶部１２１に格納する（図６ステップＳ２３）。
【００６５】
ノードｉの最大性能αｉ・μは、使用率が１．０（１００％）の時に処理することができるリクエスト数に等しく、ノードｉへのリクエスト到着率をλｉ、リソース使用率をρｉとした時、
αｉ・μ＝λｉ／ρｉ
で算出される。平均リクエスト到着率や平均リソース使用率を、それぞれλｉ，ρｉとみなして算出してもよい。
【００６６】
仮想使用率算出部１１３は上述した本発明の実施の形態における仮想使用率算出部１１３の動作と同様に、ノード最大性能記憶部１２１に保持された各ノードの最大性能と、付与された各ノードのリソース使用率とから仮想使用率を算出し、その仮想使用率を出力部１１４に付与する（図６ステップＳ２４）。
【００６７】
最後に、出力部１１４は付与された仮想使用率を出力装置１３に出力する。また、この時、出力部１１４は算出された各ノードの最大性能αｉ・μやノード群の最大性能Σｉ（αｉ・μ）を一緒に出力してもよい。
【００６８】
システム上で動作するアプリケーションの性能は、単純にＣＰＵ性能に比例するようなものではなく、ＣＰＵや計算機のアーキテクチャ及びアプリケーションの特性、利用方法等に強く依存している。しかしながら、本実施の形態では、運用時データから導かれた各ノードの最大性能を基にシステム性能や仮想使用率を算出することができるので、より正確なシステムの使用状況や負荷を少ない負担で把握することができる。
【００６９】
この本発明の第２の実施の形態の具体的な例について説明する。まず、リクエスト到着率取得手段３１１１は外部システムの各ノードのリクエスト到着率２０１を一定期間採取し、採取したデータを基にリクエスト到着率の平均値を算出する。算出した平均リクエスト到着率はノード最大性能算出部３１１２に付与される。
【００７０】
これと同様に、リソース使用率取得手段１１２は外部システムの各ノードのリソース使用率１０１を一定期間採取し、採取したデータを基に平均リクエスト到着率を算出し、その平均リクエスト到着率をノード最大性能算出部３１１２に付与する。
【００７１】
ノード最大性能算出部３１１２は付与された各ノードの平均リクエスト到着率と平均リソース使用率とから各ノードの最大性能を算出し、その最大性能をノード最大性能記憶部１２１に格納する。
【００７２】
ここでは、外部のノードグループが３ノードを備えるものとし、各ノードの平均リクエスト到着率が「λ１＝７０」，「λ２＝４５」，「λ３＝３２０」、平均リソース使用率が「ρ１＝０．２」，「ρ２＝０．１５」，「ρ３＝０．４」であったとする。この時、各ノードの最大性能αｉ・μは、
αｉ・μ＝λｉ／ρｉ
という算出式から、「α１・μ＝３５０」，「α２・μ＝３００」，「α３・μ＝８００」となる。
【００７３】
仮想使用率算出部１１３はリソース使用率取得手段１１２から各ノードのリソース使用率が付与されると、上記の本発明の実施の形態の場合と同様に、各ノードの最大性能値を参照し、ノードグループの仮想使用率を算出する。また、各ノードの最大性能算出時に取得した各ノードのリソース使用率データやその平均値に対して、遡って仮想使用率を算出することもできる。
【００７４】
図７は本発明の第３の実施の形態によるシステム使用率管理装置の構成を示すブロック図である。図７において、本発明の第３の実施の形態によるシステム使用率管理装置４は処理装置４１に、仮想使用率算出部１１３の代わりに、最大性能比較部４１１と信頼度算出部４１２とを具備し、記憶装置４２に採用中の最大性能記憶部４２１と比較回数及び有効回数記憶部４２２とを具備するようにした以外は図５に示す本発明の第２の実施の形態によるシステム使用率管理装置３と同様の構成となっており、同一構成要素には同一符号を付してある。また、同一構成要素の動作は本発明の第２の実施の形態の動作と同様である。
【００７５】
最大性能比較部４１１は採用中の最大性能記憶部４２１に保持された仮想使用率の算出に採用しているノード最大性能の値と、ノード最大性能記憶部１２１に保持された新たに算出した最新のノード最大性能の値とを比較し、採用中のノード最大性能の値が最新のノード最大性能の値から考えて有効かどうかを検査し、比較回数と有効回数とを比較回数及び有効回数記憶部４２２に格納する。
【００７６】
信頼度算出部４２２は比較回数及び有効回数記憶部４２２に保持された比較回数と有効回数とから採用中のノード最大性能の信頼度を算出し、その採用中のノード最大性能の信頼度を出力部１１４に付与する。尚、記憶装置４２は処理装置４１で実行されるプログラム（コンピュータで実行可能なプログラム）を格納している。
【００７７】
図８は本発明の第３の実施の形態によるシステム使用率管理装置４の動作を示すフローチャートである。これら図７及び図８を参照して本発明の第３の実施の形態によるシステム使用率管理装置４の動作について説明する。尚、図８に示す処理は処理装置４１が記憶装置４２のプログラムを実行することで実現される。また、図８のステップＳ３１〜Ｓ３３の処理動作（リクエスト到着率取得手段３１１１、リソース使用率取得手段１１２、ノード最大性能算出部３１１２の動作）は図６に示す本発明の第２の実施の形態の対応する部分の動作（図６のステップＳ２１〜Ｓ２３の処理動作）と同一であるため、その説明を省略する。
【００７８】
本実施の形態では仮想使用率の算出等のために現在採用しているノード最大性能の値が、採用中の最大性能記憶部４２１に保持されている。保持するノード最大性能値は過去において算出した値や、外部から与えられた値等である。最大性能比較部４１１は採用中のノード最大性能と、ノード最大性能記憶部１２１に保持された今回新たに算出した最新のノード最大性能とを比較する（図８ステップＳ３４）。
【００７９】
具体的に説明すると、最大性能比較部４１１は、採用中のノード最大性能値の合計値として算出されるノード群の性能（仮想最大性能）の値と、最新のノード最大性能から算出される仮想最大性能の値とを比較し、両性能値の差が許容の範囲内かどうかを検査する。簡単な検査法としては、採用中の仮想最大性能をＵｐ、最新の仮想最大性能をＵｎ、許容誤差をｅとした時、Ｕｎの値が、
Ｕｐ・（１−ｅ）≦Ｕｎ≦Ｕｐ・（１＋ｅ）
の範囲内にあれば、採用中の仮想最大性能が現在も有効と判断する方法等がある。また、この時、最新のノード最大性能は本実施の形態による装置の外部において算出された値が、最大性能比較部４１１に付与されてもよい。
【００８０】
最大性能比較部４１１は比較回数及び有効回数記憶部４２２に保持された比較回数を１増やす（図８ステップＳ３５）。尚、上記のステップＳ３４の処理及びステップＳ３５の処理は任意の順番でよい。
【００８１】
最大性能比較部４１１は上記の２つの仮想最大性能値を比較した結果、採用中の仮想最大性能値を有効と判断した場合、比較回数及び有効回数記憶部４２２に保持された有効回数を１増やす（図８ステップＳ３６，Ｓ３７）。最大性能比較部４１１は採用中の仮想最大性能と最新の仮想最大性能との差が許容範囲を越えており、採用中の仮想最大性能を無効と判断した場合、なにもせず次の処理に移行する。
【００８２】
信頼度算出部４１２は比較回数及び有効回数記憶部４２２に保持された比較回数と有効回数とから採用中のノード最大性能の信頼度を算出し、その採用中のノード最大性能の信頼度を出力部１１４に付与する（図８ステップＳ３８）。信頼度Ｄは比較回数をＮａ、有効回数をＮｖとした時、
Ｄ＝Ｎｖ／Ｎａ
で算出されるような比較回数に対する有効回数の割合を数値化したものである。最後に、出力部１１４は付与された信頼度を出力装置１３に出力する。
【００８３】
このように、本実施の形態では、最近の最大性能値に基づいて、参照中の最大性能値の信頼度を算出することができるので、外部システムにおいてリクエストの種類や傾向が変化し、過去に算出した最大性能値が現状に適合しなくなった時に、これを検出し、最大性能の再設定等の対処を行うことで、より正確な仮想使用率を算出することができる。
【００８４】
この本発明の第３の実施の形態の具体的な例について説明する。本実施の形態では、ノード最大性能記憶部１２１に格納されかつ算出したばかりの最新のノード最大性能と、過去において算出または入力されかつ現在の仮想使用率の算出等に採用中のノード最大性能とを比較する。
【００８５】
上記のノードグループに関し、採用中のノード最大性能がそれぞれ「β１・μ＝４２０」，「β２・μ＝２９０」，「β３・μ＝９１０」であったとする。この時、ノードグループの仮想最大性能は、
４２０＋２９０＋９１０＝１６２０
となる。
【００８６】
今、最新のノード最大性能が「α１・μ＝３５０」，「α２・μ＝３００」，「α３・μ＝８００」と算出されると、最新の仮想最大性能は、
３５０＋３００＋８００＝１４５０
となる。許容誤差が１０％であったとすると、最大性能比較部４１１は、
１６２０・（１−０．１）≦１４５０≦１６２０・（１＋０．１）
が成り立つかどうかを調べ、さらに比較回数を１増やす。
【００８７】
この場合、
１６２０・（１−０．１）＝１４５８
から「１４５８≦１４５０」が成り立たないので、有効回数は増やされない。このようにして、ノード最大性能算出部３１１２及び最大性能比較部４１１では、最新のノード最大性能の算出と、採用中のノード最大性能との比較とが繰り返される。
【００８８】
今回のノード最大性能の算出と比較とによって、比較回数が「３８２」、有効回数が「２９５」になったとする。この時、信頼度算出部４１２は信頼度を、
２９５／３８２≒０．７７２
すなわち、７７．２％と算出し、出力部１１４に付与する。
【００８９】
これによって、算出した信頼度が非常に低くなった場合には、採用中のノード最大性能が現状の負荷パターンに合致しなくなったことを意味するため、ノード最大性能の更新等の対処が必要となる。
【００９０】
上述したように、システム上で動作するアプリケーションの性能は、単純にＣＰＵ性能に比例するようなものではなく、ＣＰＵや計算機のアーキテクチャ及びアプリケーションの特性、利用方法等に強く依存している。しかしながら、本発明では、性能やアーキテクチャの異なる複数のノードで構成される計算機システムに対して、ノード群の性能や使用率を算出することができるため、より正確なシステムの使用状況や負荷を素早く把握することができる。
【００９１】
また、本発明では、各ノードの許容使用率からノード群の許容使用率を算出することができるため、システムが全体として許容範囲内の使用率で運用できているかどうかを素早く判定することができる。
【００９２】
さらに、本発明では、仮想使用率とともに、仮想使用率算出時の時刻を出力することができるため、仮想使用率を時系列に沿ってまとめた運用レポートを作成することができる。
【００９３】
尚、本発明においては、外部システムを構成するすべてのノードを一つのノードグループとすれば、システム全体の仮想最大能力や仮想使用率を算出することができる。また、ノードグループ同士をさらに上位のグループとしてグループ化し、各グループの仮想最大能力や仮想使用率を使って、上位グループの仮想最大能力や仮想使用率を算出することも可能である。
【産業上の利用可能性】
【００９４】
本発明は、複数の計算ノードから構成される並列計算機やクラスタシステム、分散システムに対する性能管理や運用管理、キャパシティプランニングといった用途に適用することができる。
【符号の説明】
【００９５】
１，２，３，４  システム使用率管理装置
１１，２１，３１，４１  処理装置
１２，２２，４２  記憶装置
１３  出力装置
１０１  ノード・リソース使用率
１１１，３１１  ノード最大性能設定手段
１１２  リソース使用率取得手段
１１３  仮想使用率算出部
１１４  出力部
１２１  ノード最大性能記憶部
２０１  ノード・リクエスト到着率
２１１  サービス満足度評価部
２２１  サービスレベル契約記憶部
４１１  最大性能比較部
４１２  信頼度算出部
４２１  採用中の最大性能記憶部
４２２  比較回数及び有効回数記憶部
３１１１  リクエスト到着率取得手段
３１１２  ノード最大性能算出部
【図１】
2011141908.tif 000003
【図２】
2011141908.tif 000004
【図３】
2011141908.tif 000005
【図４】
2011141908.tif 000006
【図５】
2011141908.tif 000007
【図６】
2011141908.tif 000008
【図７】
2011141908.tif 000009
【図８】
2011141908.tif 000010
【図９】
2011141908.tif 000011