(57)【要約】      （修正有）【課題】サーバの負荷を算出するために、事前に臨界ＣＰＵ使用率のようなリソース使用量の臨界値をサーバ毎に定義することを不要にする情報処理装置および負荷計測方法を提供する。【解決手段】負荷の計測が可能な情報処理装置は、計測対象の実行処理単位数、及び、前記計測対象の使用率を含む負荷情報を取得する、負荷情報取得手段１２と、前記計測対象の同時実行可能なリソース量であるリソース限界値を取得する、リソース限界値取得手段１３と、前記リソース限界値に対する前記実行処理単位数の比率である論理最大値を算出する、論理最大値算出手段１４と、前記論理最大値に対する前記使用率の比率である論理利用率を算出する、論理利用率算出手段１５と、を包含する。【選択図】図１
2015014818.tif 000002
【特許請求の範囲】
【請求項１】
計測対象における実行中の処理の単位数を表す実行処理単位数、及び、前記計測対象の使用率を含む負荷情報を取得する、負荷情報取得手段と、
前記計測対象の同時実行可能なリソース量であるリソース限界値を取得する、リソース限界値取得手段と、
前記リソース限界値に対する前記実行処理単位数の比率である論理最大値を算出する、論理最大値算出手段と、
前記論理最大値に対する前記使用率の比率である論理利用率を算出する、論理利用率算出手段と、を包含する、負荷の計測が可能な情報処理装置。
【請求項２】
前記計測対象がプロセッサで、前記実行処理単位数が実行スレッド数である、請求項１に記載の負荷の計測が可能な情報処理装置。
【請求項３】
前記論理利用率と所定の閾値とを比較し前記計測対象の負荷の状態を判定する、負荷判定手段、を更に包含する、請求項１または２に記載の負荷の計測が可能な情報処理装置。
【請求項４】
計測対象における実行中の処理の単位数を表す実行処理単位数、及び、前記計測対象の使用率を取得し、
前記計測対象の同時実行可能なリソース量であるリソース限界値を取得し、
前記リソース限界値に対する前記実行処理単位数の比率である論理最大値を算出し、
前記論理最大値に対する前記使用率の比率である論理利用率を算出する、負荷計測方法。
【請求項５】
前記計測対象がプロセッサで、前記実行処理単位数が実行スレッド数である、請求項４に記載の負荷計測方法。
【請求項６】
前記論理利用率と所定の閾値とを比較し前記計測対象の負荷の状態を判定する、請求項４または５に記載の負荷計測方法。
【請求項７】
計測対象における実行中の処理の単位数を表す実行処理単位数、及び、前記計測対象の使用率を取得する処理と、
前記計測対象の同時実行可能なリソース量であるリソース限界値を取得する処理と、
前記リソース限界値に対する前記実行処理単位数の比率である論理最大値を算出する処理と、
前記論理最大値に対する前記使用率の比率である論理利用率を算出する処理と、をコンピュータに実行させるプログラム。
【請求項８】
前記計測対象がプロセッサで、前記実行処理単位数が実行スレッド数である、請求項７に記載のプログラム。
【請求項９】
前記論理利用率と所定の閾値とを比較し前記計測対象の負荷の状態を判定する処理をコンピュータに実行させる請求項７または８に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、負荷の計測が可能な情報処理装置、負荷計測方法、及び、そのためのプログラムに関する。
【背景技術】
【０００２】
特許文献１には、サーバの負荷の調整を目的とした技術が開示されている。特許文献１に記載されたコンピュータ装置は、ボトルネック解析モジュールによりサーバの多重度を考慮したサーバの負荷を解析し、その解析によって得られるボトルネック解析結果を表示する。これによって、コンピュータ装置は、ボトルネックとなる構成要素の多重度の修正を可能にする。
【０００３】
特許文献２には、ネットワーク内の各サーバのＣＰＵ利用率およびメモリ利用率などの情報に統計処理（平均化など）を施したセンタ情報に基づいて、各サーバの負荷分散比率を決定し、負荷分散を行う技術について記載されている。
【０００４】
特許文献３には、負荷監視項目の負荷値が閾値を超えると判定された場合に、監視情報テーブルを参照して該当する処理を起動する技術について記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２０９１６５号公報
【特許文献２】特開２００７−２５７３９６号公報
【特許文献３】特開２００１−１３４４７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記文献の技術を用いた場合、サーバの負荷を算出するためには、事前に臨界ＣＰＵ使用率のようなリソース使用量の臨界値をサーバ毎に定義する必要がある。このため、現在の状態に応じた臨界値複数のサーバのリソースを利用したデータ処理を実行するコンピュータシステムでは、サーバ数の増大が、事前の臨界値の設定および設計時間の増大を招く、という課題がある。
【０００７】
たとえば、特許文献１は、サーバの負荷を判定するため、固定的な負荷基準である臨界ＣＰＵ利用率を使用している。この臨界ＣＰＵ利用率は、あらかじめ定義を必要があり、その結果、上述した課題がある。
【０００８】
特許文献２は、固定的な負荷基準である、各サーバに関する一般的な統計量を集計して、各サーバに負荷を分散させている。その固定的な負荷基準である統計量は、事前に設定する必要があり、その結果、上述した課題がある。
【０００９】
特許文献３は、ＣＰＵ使用率などの固定的な負荷基準を使用し負荷を算出している。その結果、上述した課題がある。
【００１０】
本発明の目的は、サーバの負荷を算出するために、事前に臨界ＣＰＵ使用率のようなリソース使用量の臨界値をサーバ毎に定義することを不要にすることで上述した課題を解決できる、情報処理装置および負荷計測方法を提供することにある。
【課題を解決するための手段】
【００１１】
本発明の負荷の計測が可能な情報処理装置は、計測対象における実行中の処理の単位数を表す実行処理単位数、及び、前記計測対象の使用率を含む負荷情報を取得する、負荷情報取得手段と、前記計測対象の同時実行可能なリソース量であるリソース限界値を取得する、リソース限界値取得手段と、前記リソース限界値に対する前記実行処理単位数の比率である論理最大値を算出する、論理最大値算出手段と、前記論理最大値に対する前記使用率の比率である論理利用率を算出する、論理利用率算出手段と、を包含する。
【００１２】
本発明の負荷計測方法は、計測対象における実行中の処理の単位数を表す実行処理単位数、及び、前記計測対象の使用率を取得し、前記計測対象の同時実行可能なリソース量であるリソース限界値を取得し、前記リソース限界値に対する前記実行処理単位数の比率である論理最大値を算出し、前記論理最大値に対する前記使用率の比率である論理利用率を算出する。
【００１３】
本発明のコンピュータプログラムは、計測対象における実行中の処理の単位数を表す実行処理単位数、及び、前記計測対象の使用率を取得する処理と、前記計測対象の同時実行可能なリソース量であるリソース限界値を取得する処理と、前記リソース限界値に対する前記実行処理単位数の比率である論理最大値を算出する処理と、前記論理最大値に対する前記使用率の比率である論理利用率を算出する処理と、をコンピュータに実行させる。
【発明の効果】
【００１４】
本発明によれば、サーバの負荷の臨界値を事前に定義することなく、現在実行中の対象プロセスの状態に基づいて、サーバの負荷を算出することができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明の第一の実施形態に係る、負荷計測装置の構成の一例を示すブロック図である。
【図２】図２は、本発明の第一の実施の形態における負荷計測装置をコンピュータ装置で実現したハードウェア回路を示すブロック図である。
【図３】図３は、サーバ一覧格納部に格納されるサーバ一覧情報の一例を示す図である。
【図４】図４は、プロセスグループ格納部に格納されるプロセス情報の一例を示す図である。
【図５】図５は、監視サーバの動作を示すフローチャートである。
【図６】図６は、サーバの動作を示すフローチャートである。
【図７】図７は、第二の実施形態に係る、負荷計測装置の構成の一例を示すブロック図である。
【図８】図８は、計測単位格納部の構成の一例を示す図である。
【図９】図９は、第二の実施形態に係る、負荷計測装置の動作を示すフローチャートである。
【図１０】図１０は、第三の実施形態に係る、負荷計測装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１６】
発明を実施するための第一の形態について、図面を参照して詳細に説明する。
【００１７】
本発明の実施形態は、ＣＰＵやメモリの上限値が異なるサーバが混在するようなサーバ群や、サーバアプリケーションの実行プロセス数がサーバ毎の設定により異なるようなサーバ群の負荷の計測に対して有効であり、それらサーバ群の各サーバで現在実行中のプロセスの多重度を考慮した負荷の状態から、サーバの負荷を算出する。
【００１８】
図１は、本発明の第一の実施形態に係る、負荷の計測が可能な情報処理装置の一例である、負荷計測装置３０の構成の一例を示すブロック図である。
【００１９】
図１を参照すると、負荷計測装置３０は、サーバ１０、及び、監視サーバ２０から構成されている。サーバ１０は、負荷の計測対象であり、監視サーバ２０は、負荷を計測（監視）する装置である。サーバ１０がプロセッサの場合、計測対象は、プロセッサである。負荷が計測されるべき実行処理単位は、サーバ１０（またはプロセッサ）が実行する各プロセスである。また実行処理単位数は、実行中のすべてのプロセスの実行スレッド数である。
【００２０】
サーバ１０は、Ｍａｎａｇｅｒ通信部（監視対象の通信部）１１、負荷情報取得部１２、リソース限界値取得部１３、論理最大値算出部１４、及び、論理利用率算出部１５を含む。  監視サーバ２０は、Ａｇｅｎｔ通信部（監視側通信部）２１、サーバ監視部２２、負荷判定部２３、プロセスグループ格納部２４、及び、サーバ一覧格納部２５を含む。
【００２１】
Ｍａｎａｇｅｒ通信部１１は、ネットワークを経由して監視サーバ２０のＡｇｅｎｔ通信部２１との通信を行う。なお、ネットワークは、例えば、イーサネット（Ｅｔｈｅｒｎｅｔ）（登録商標）などの有線ネットワーク、無線ＬＡＮ（ローカル・エリア・ネットワーク）および他の移動体通信網などの無線ネットワーク、あるいは、それらの混在のいずれでも良い。
【００２２】
負荷情報取得部１２は、サーバ１０内のプロセス毎の各種情報を取得する。取得する情報には、例えば、実行中のスレッド数とＣＰＵ使用率またはメモリ使用率を含む、プロセス毎の負荷情報が含まれる。
【００２３】
リソース限界値取得部１３は、サーバ１０が保持するリソースの多重度（ＣＰＵの総コア数など）を考慮したリソース限界値であり、プロセッサ（ＣＰＵ）の同時実行可能なリソース量であるリソース限界値を取得する。
【００２４】
論理最大値算出部１４は、負荷情報取得部１２およびリソース限界値取得部１３が出力した、実行スレッド数およびリソース限界値の情報に基づいて、論理最大値を算出する。算出結果は、論理利用率算出部１５に出力される。
【００２５】
論理利用率算出部１５は、論理最大値算出部１４の出力である論理最大値および負荷情報取得部１２の出力であるリソース使用率に基づいて、論理最大値に対するリソース使用率の比率である論理利用率を算出する。算出結果は、Ｍａｎａｇｅｒ通信部１１に出力される。記憶装置１６は、監視サーバ２０から受信したプロセス情報を格納する。
【００２６】
Ａｇｅｎｔ通信部２１は、サーバ１０のＭａｎａｇｅｒ通信部１１との通信を行う。サーバ監視部２２は、サーバ一覧格納部２５に格納された情報に基づき、サーバ１０の監視のための処理を実行する。負荷判定部２３は、サーバ１０で算出された、論理利用率の算出結果と閾値の比較を行い、その比較結果から負荷を判定する。プロセスグループ格納部２４は、監視対象のプロセスを一意に識別するプロセス情報を保持する。サーバ一覧格納部２５は、監視対象のサーバ１０のサーバ一覧情報を保持する。
【００２７】
ここで、Ｍａｎａｇｅｒ通信部１１、負荷情報取得部１２、リソース限界値取得部１３、論理最大値算出部１４、論理利用率算出部１５、Ａｇｅｎｔ通信部２１、サーバ監視部２２、及び、負荷判定部２３は、論理回路等のハードウェアで構成される。また、プロセスグループ格納部２４、及び、サーバ一覧格納部２５は、ディスク装置、半導体メモリ等の記憶装置である。
【００２８】
また、Ｍａｎａｇｅｒ通信部１１、負荷情報取得部１２、リソース限界値取得部１３、論理最大値算出部１４、及び、論理利用率算出部１５は、コンピュータであるサーバ１０のプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
【００２９】
また、Ａｇｅｎｔ通信部２１、サーバ監視部２２、及び、負荷判定部２３は、コンピュータである監視サーバ２０のプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
【００３０】
図２は、本発明の第一の実施の形態におけるサーバ１０をコンピュータ装置で実現したハードウェア回路を示すブロック図である。なお、監視サーバ２０もサーバ１０と同様の構成とする。
【００３１】
図２に示されるように、情報処理装置１００は、ＣＰＵ１９１、ネットワーク接続用のＩ／Ｆ１９２（インターフェース１９２）、メモリ１９３、およびプログラムを格納するハードディスク等の記憶装置１９４を含む。また、情報処理装置１００は、バス１９７を介して入力装置１９５および出力装置１９６に接続されている。Ｉ／Ｆ１９２は、図１のＭａｎａｇｅｒ通信部１１に対応する。
【００３２】
ＣＰＵ１９１は、オペレーティングシステムを動作させて本発明の第一の実施の形態に係る情報処理装置１００の全体を制御する。また、ＣＰＵ１９１は、例えばドライブ装置などに装着された記録媒体１９８からメモリ１９３にプログラムやデータを読み出す。また、ＣＰＵ１９１は、第一の実施の形態におけるＭａｎａｇｅｒ通信部１１、負荷情報取得部１２、リソース限界値取得部１３、論理最大値算出部１４、及び、論理利用率算出部１５の一部として機能し、プログラムに基づいて各種の処理を実行する。ＣＰＵ１９１は、複数のＣＰＵによって構成されていてもよい。
【００３３】
記憶装置１９４は、例えば光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク、または半導体メモリ等である。記憶媒体１９８は、不揮発性記憶装置であり、そこにＣＰＵ１９１が実行するプログラムを記録する。記憶媒体１９８は、記憶装置１９４の一部であってもよい。また、プログラムは、通信網に接続されている図示しない外部コンピュータからダウンロードされてもよい。
【００３４】
入力装置１９５は、例えばマウスやキーボード、内蔵のキーボタンなどで実現され、入力操作に用いられる。入力装置１９５は、マウスやキーボード、内蔵のキーボタンに限らず、例えばタッチパネルでもよい。出力装置１９６は、例えばディスプレイで実現され、出力を確認するために用いられる。
【００３５】
以上のように、図１に示す第一の実施の形態は、図２に示されるハードウェア構成によって実現される。ただし、図２の情報処理装置１００は、図２の構成に限定されない。たとえば、入力装置１９５、出力装置１９６は、インターフェース１９２を介して外付けされるものでもよい。
【００３６】
また、情報処理装置１００は、物理的に結合した一つの装置により実現されてもよいし、物理的に分離した二つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。
【００３７】
図３は、サーバ一覧格納部２５に格納されるサーバ一覧情報の一例を示す図である。図３に示すように、サーバ一覧格納部２５は、項番ごとに、監視対象とするサーバ名とプロセスグループ名を対応付けた複数のデータレコードを含むサーバ一覧情報を格納する。サーバ名は、例えば、ホスト名、ＦＱＤＮ（Ｆｕｌｌｙ  Ｑｕａｌｉｆｉｅｄ  Ｄｏｍａｉｎ  Ｎａｍｅ）名、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス等、ネットワーク上のサーバを識別できる名称であれば良い。プロセスグループ名は、サーバ毎に実行される複数のプロセスの集合のグループ名、またはグループ識別子でもよい。たとえば、項番１のレコードには、サーバ名「Ｓｅｒｖｅｒ１」とプロセスグループ名「ＰＧ１」が格納されている。
【００３８】
図４は、プロセスグループ格納部２４に格納されるプロセス情報の一例を示す図である。図４に示すように、プロセスグループ格納部２４は、プロセスグループ名とプロセス名の対のデータレコードで構成されるプロセス情報を格納する。プロセス名は、サーバ毎のプロセスグループに属する複数のプロセスを含むことができる。
【００３９】
以上のように、図３のプロセスグループ名と図４のプロセスグループ名が対応している。
【００４０】
図５は、監視サーバ２０の動作を示すフローチャートである。
【００４１】
図６は、サーバ１０の動作を示すフローチャートである。
【００４２】
図５および図６のフローチャートを参照して、本実施形態の負荷計測装置３０全体の動作について詳細に説明する。
【００４３】
まず、監視サーバ２０のサーバ監視部２２は、サーバ一覧格納部２５から監視対象のサーバ１０の一覧を示すサーバ一覧情報（図３）を読み取る（ステップＡ１）。
【００４４】
また、サーバ監視部２２は、サーバ一覧情報の中から監視対象のサーバ１０を一つ選択し、選択されたサーバ１０のサーバ名（たとえば、「ｓｅｒｖｅｒ１」）に対応するプロセスグループ名とプロセス名を含むプロセス情報（図４）を、プロセスグループ格納部２４から抽出する（ステップＡ２）。Ａｇｅｎｔ通信部２１は、サーバ監視部２２で抽出されたプロセス情報をサーバ１０に通知する（ステップＡ３）。
【００４５】
なお、サーバ監視部２２およびＡｇｅｎｔ通信部２１は、すべての監視対象のサーバに対して、上述のプロセス情報の抽出と通知の処理を繰り返す。
【００４６】
監視対象のサーバ１０のＭａｎａｇｅｒ通信部１１は、監視サーバ２０からのプロセス情報を受信する（ステップＢ1）。受信されたプロセス情報は、一旦、記憶装置１６に格納される。また、負荷情報取得部１２は、現在サーバ１０上で実行されているプロセスの一覧情報を取得する（ステップＢ２）。
【００４７】
次に、負荷情報取得部１２は、ステップＢ２で取得されたプロセスの一覧情報から一つのプロセス（抽出プロセスＰともいう）を取り出し、記憶装置１６に記憶されたプロセス情報の中の監視対象のプロセス名と比較する。比較の結果、一致する、すなわち、その抽出プロセスがプロセスグループ格納部２４に定義されているもの（定義されているプロセス情報ＰＧに属するもの）であれば（ステップＢ４でＹＥＳ、負荷情報取得部１２は、その抽出プロセスの実行スレッド数を取得し、スレッド数の合算値Ｔに加算する（ステップＢ５）。負荷情報取得部１２は、この処理を、ステップＢ２で取得した実行中のプロセスの一覧情報の中のすべての抽出プロセスに対して実行する（ステップＢ３〜ステップＢ６）。これにより、サーバ１０で実行中、かつプロセスグループ格納部２４に定義されている、すべてのプロセスの実行スレッド数の合算値Ｔが算出される。
【００４８】
また、リソース限界値取得部１３は、サーバ１０のリソースの最大数であるリソース限界値（並列実行数Ｎ）を取得する（ステップＢ７）。例えば、リソースがＣＰＵの場合、並列実行数Ｎは、サーバ１０のＣＰＵの総コア数である。あるいは、並列実行数Ｎは、ハイパースレッドテクノロジ等のスレッドの総数である。次に、論理最大値算出部１４は、ステップＢ５で算出したスレッド数の合算値Ｔと、ステップＢ７で取得した並列実行数Ｎの比較を行う（ステップＢ８）。Ｔ＜Ｎの場合、論理最大値算出部１４は、論理最大値Ｍとして、（Ｔ／Ｎ）×１００（％）を算出する（ステップＢ９）。Ｔ≧Ｎの場合、論理最大値算出部１４は、論理最大値Ｍを１００％とする（ステップＢ１０）。
【００４９】
さらに、負荷情報取得部１２は、ＣＰＵ使用率の算出を行う。負荷情報取得部１２は、ステップＢ２で取得したプロセス一覧について、プロセスのＣＰＵ使用率を算出する。具体的には、プロセスがプロセスグループ格納部２４に定義されているものであれば（ステップＢ１２でＹＥＳ）、負荷情報取得部１２は、該当するプロセスの使用率（リソースがＣＰＵの場合はプロセス毎のＣＰＵ使用率）（％）を取得し、合計値Ｃ（％）に加算する（ステップＢ１３）。負荷情報取得部１２は、この処理をステップＢ２で取得した実行中のプロセスの一覧情報の中のすべてのプロセスに対して実行する（ステップＢ１１〜ステップＢ１４）。これにより、サーバ１０で実行中、かつプロセスグループ格納部２４に定義されている、すべてのプロセスの使用率の合算値Ｃが算出される。
【００５０】
次に、論理利用率算出部１５は、論理利用率（論理ＣＰＵ使用率）を（Ｃ／Ｍ）×１００（％）として算出する（ステップＢ１５）。この後、Ｍａｎａｇｅｒ通信部１１は、論理ＣＰＵ使用率を監視サーバ２０に通知する（ステップＢ１６）。監視サーバ２０のＡｇｅｎｔ通信部２１は、サーバ１０から論理ＣＰＵ使用率を受信し（ステップＡ４）、負荷判定部２３に出力する。負荷判定部２３は、負荷である論理ＣＰＵ使用率を、閾値と比較する（ステップＡ５）。
【００５１】
この後、負荷判定部２３は、論理ＣＰＵ使用率の値が閾値を超えている場合、負荷が基準を超過していると判定する。この判定結果は、たとえば、出力装置に表示され、監視者が過負荷を確認可能となる。
【００５２】
なお、ステップＢ１１乃至Ｂ１４の処理は、ステップＢ２の終了後、ステップＢ１５の実行前であれば、どの時点で実行されてもよい。
【００５３】
本発明の第一の実施の形態は、異なるハードウェア上に同一のソフトウェア構成でのサーバ群におけるスレッド数やプロセス数といったチューニングパラメータを利用することにより、リソースの使用量が異なるサーバ群を同一の閾値で監視するといった用途に適用できる。また、ＳａａＳ（Ｓｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）のようなクラウドシステムにおいて、同一のサービスを提供するサーバ群を同一の閾値で監視するといった用途にも適用可能である。
【００５４】
本実施形態に係る負荷計測装置３０は、以下に記載するような効果を奏する。
【００５５】
サーバの負荷の臨界値を事前に定義することなく、現在実行中の対象プロセスの状態に基づいて、サーバの負荷を算出することができる。その理由は、現在実行中の対象プロセスの状態を示すパラメータを用いてサーバの負荷を算出するからである。
＜第二の実施形態＞
次に、本発明の第二の実施形態について図面を参照して詳細に説明する。
【００５６】
図７は、第二の実施形態に係る、負荷計測装置４０の構成の一例を示すブロック図である。負荷計測装置４０は、負荷情報取得部１２、リソース限界値取得部１３、論理最大値算出部１４、論理利用率算出部１５、負荷判定部２３、及び、計測単位格納部３１を包含する。
【００５７】
負荷情報取得部１２は、計測対象の実行対象プロセスにおける、実行処理単位数の上限値（例えば、計測単位の使用量の上限値）、及び、計測対象の単位時間あたりの使用率を取得する。ここで、実行対象プロセスとは、実行中の計測対象のプロセスである。実行処理単位数は、実行中のプロセスにおける処理単位の数である。その処理単位は、計測対象における各計測単位において実行される処理の単位である。リソース限界値取得部１３は、計測対象の同時実行可能なリソース量であるリソース限界値を取得する。論理最大値算出部１４は、リソース限界値に対する実行処理単位数の比率である論理最大値を算出する。論理利用率算出部１５は、論理最大値に対する計測対象の単位時間当たりの使用率の比率である論理利用率を算出する。
【００５８】
負荷判定部２３は、論理利用率の算出結果と閾値との比較を行い、その結果から負荷計測装置４０の負荷の状態を判定する。計測単位格納部３１は、負荷計測装置４０の内部で動作する計測対象（計測単位）の一覧情報を格納する。
【００５９】
図８は、計測単位格納部３１に格納される情報の一例を示す図である。図８に示すように、計測単位格納部３１には、例えば、項番ごとに、管理グループ、管理グループ内の負荷である負荷装置（負荷装置名またはその識別子）、及び、負荷装置内の計測単位を対応づけたデータレコードを含む一覧情報が格納されている。ここで、管理グループは、グループ管理される特定のハードウェア装置群、または各グループの管理対象のネットワークに含まれる複数の装置で構成されてもよい。
【００６０】
図８は、例えば、ネットワークスイッチを計測対象である負荷装置に、また、ポートを計測対象の単位（計測単位）に設定した場合の例を示している。一覧情報の中の項番１のレコードには、管理グループ名「ＭＧ１」、負荷装置「スイッチ１」、及び、計測単位のポート情報が格納されている。
【００６１】
図９は、第二の実施形態に係る、負荷計測装置４０の動作を示すフローチャートである。図９のフローチャートを参照して本実施形態の全体の動作について詳細に説明する。
【００６２】
まず、負荷情報取得部１２は、計測単位格納部３１の情報の中から監視対象の管理グループを一つ選択する（Ｃ１）。  また、負荷情報取得部１２は、処理を実行中の負荷装置（計測対象）内の計測単位の一覧情報を取得する（ステップＣ２)。
【００６３】
次に、負荷情報取得部１２は、ステップＣ２で取得した一覧情報から計測単位を一つ取り出す。その計測単位が計測単位格納部３１（管理グループ）に定義されているものであれば（ステップＣ４）、負荷情報取得部１２は、計測対象の計測単位における実行処理単位数の上限値（以下、上限値）を取得し、上限値Ｔに加算する（ステップＣ５）。計測情報取得部１２は、この処理を取得したすべての計測単位に対して実行する（ステップＣ３〜ステップＣ６）。これにより、計測対象であって、監視対象の管理グループに定義されている、すべての実行処理単位数の上限値の合算値Ｔが算出される。
【００６４】
リソース限界値取得部１３は、負荷装置のリソース限界値（以下、限界値）Ｎを取得する（Ｃ７）。論理最大値算出部１４は、ステップＣ５で算出した上限値Ｔと、ステップＣ７で取得したリソース限界値Ｎの比較を行う（ステップＣ８）。Ｔ＜Ｎの場合、論理最大値算出部１４は、論理最大値Ｍを、（Ｔ／Ｎ）×１００（％）とする（ステップＣ９）。Ｔ≧Ｎの場合、論理最大値Ｍを、１００％とする（ステップＣ１０）。
【００６５】
さらに、負荷情報取得部１２は、計測対象の単位時間当たりの使用率の算出を行う。負荷情報取得部１２は、ステップＣ２で取得した計測単位について使用率を算出する。計測単位が計測単位格納部３１（管理グループ）に定義されているものであれば（ステップＣ１２）、負荷情報取得部１２は、該当する計測単位の使用率を取得し、合計値Ｃに加算する（ステップＣ１３）。負荷情報取得部１２は、この処理を取得したすべての計測単位に対して実行する（ステップＣ１１〜ステップＣ１４）。
【００６６】
論理利用率算出部１５は、論理使用率をＣ／Ｍ×１００（％）として算出する（ステップＣ１５）。
【００６７】
例えば、図８に示したように、管理グループ内の負荷装置がネットワークスイッチの場合、計測単位（装置）はポートとなり、管理グループでは負荷計測対象のポート群が設定される。この場合、使用率はポートの転送容量（率）となり、計測単位の上限値はポートの転送容量の上限値であり、限界値はスイッチの総転送容量となる。
【００６８】
なお、例えば、負荷装置がネットワークスイッチの場合であれば、計測対象はポートに限定されず、ＣＰＵを対象とする、等としても良い。
【００６９】
また、本実施形態において、負荷装置がサーバの場合、計測単位はプロセスとなり、管理グループではプロセスを識別する情報が使用される。また、計測対象の使用率としてＣＰＵの使用率を使用する場合、計測単位の上限値はプロセスのスレッド数であり、負荷装置の限界値はサーバの総コア数となる。
【００７０】
また、ＣＰＵの代わりにメモリやＩ／Ｏを使用する場合、計測単位の上限はプロセスに設定されている使用量の上限値となり、負荷装置の限界値はサーバ全体で使用可能な容量になる。
【００７１】
本実施形態に係る負荷計測装置４０は、以下に記載するような効果を奏する。
【００７２】
負荷装置の負荷の臨界値を事前に定義することなく、現在実行中の対象プロセスの状態に基づいて、負荷装置の負荷を算出することができる。その理由は、現在実行中の対象プロセスの状態を示すパラメータを用いて負荷装置の負荷を算出するからである。
＜第三の実施形態＞
図１０は、第三の実施形態に係る、負荷計測装置５０の構成の一例を示すブロック図である。負荷の計測が可能な情報処理装置の一例である、負荷計測装置５０は、負荷情報取得部１２、リソース限界値取得部１３、論理最大値算出部１４、及び、論理利用率算出部１５を包含する。
【００７３】
負荷情報取得部１２は、計測対象の実行処理単位数、及び、計測対象の単位時間あたりの使用率を取得する。
リソース限界値取得部１３は、計測対象の同時実行可能なリソース量であるリソース限界値を取得する。論理最大値算出部１４は、リソース限界値に対する実行処理単位数の比率である論理最大値を算出する。論理利用率算出部１５は、論理最大値に対する使用率の比率である論理利用率を算出する。
【００７４】
本実施形態に係る負荷計測装置５０は、以下に記載するような効果を奏する。
【００７５】
計測対象を含む負荷装置の負荷の臨界値を事前に定義することなく、現在実行中の対象プロセスの状態に基づいて、負荷装置の負荷を算出することができる。その理由は、現在実行中の対象プロセスの状態を示すパラメータを用いて負荷装置の負荷を算出するからである。
【００７６】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００７７】
１０    サーバ
１１    Ｍａｎａｇｅｒ通信部
１２    負荷情報取得部
１３    リソース限界値取得部
１４    論理最大値算出部
１５    論理利用率算出部
１６    記憶装置
２０    監視サーバ
２１    Ａｇｅｎｔ通信部
２２    サーバ監視部
２３    負荷判定部
２４    プロセスグループ格納部
２５    サーバ一覧格納部
３０    負荷計測装置
３１    計測単位格納部
４０    負荷計測装置
５０    負荷計測装置
１００    情報処理装置
１９１    ＣＰＵ
１９２    Ｉ／Ｆ
１９３    メモリ
１９４    記憶装置
１９５    入力装置
１９６    出力装置
１９７    バス
１９８    記録媒体
【図１】
2015014818.tif 000003
【図２】
2015014818.tif 000004
【図３】
2015014818.tif 000005
【図４】
2015014818.tif 000006
【図５】
2015014818.tif 000007
【図６】
2015014818.tif 000008
【図７】
2015014818.tif 000009
【図８】
2015014818.tif 000010
【図９】
2015014818.tif 000011
【図１０】
2015014818.tif 000012