(57)【要約】【課題】  情報処理装置から記憶装置に対するＩＯ要求を適切に制御【解決手段】  ＶＭの要求ＩＯＰＳと送信ＩＯＰＳと性能目標値と目標性能係数と記憶装置の論理ディスクの性能目標値を基にＶＭの性能目標値を計算し、計算した性能目標値を基にＶＭのＱｏＳ機能を実現する情報処理装置と、論理ディスクの受理ＩＯＰＳと処理ＩＯＰＳと性能目標値とを基に論理ディスクの性能目標値を計算し、計算した性能目標値と基に論理ディスクのＱｏＳ機能を実現し、さらに、計算した論理ディスクの性能目標値を情報処理装置に送信する記憶装置とを含む情報処理システム。【選択図】  図２
2015184707.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータの動作をエミュレートするソフトウェアであるＶＭと、
ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行する第１のＱｏＳ機能実行手段と、
前記第１のＱｏＳ機能実行手段からＩＯ要求を受信し、前記ＩＯ要求を記憶装置に送信するＩＯ送信処理手段と、
前記ＶＭから前記第１のＱｏＳ機能実行手段に送られたＩＯ要求の回数と、前記第１のＱｏＳ機能実行手段から前記ＩＯ送信処理手段に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算する第１のＩＯ状況計測手段と、
前記第１のＩＯ状況計測手段が計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存する第１のＩＯ量保存手段と、
ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存する目標性能係数保存手段と、
前記記憶装置から、論理ディスクの性能目標値を受信する割当て性能受信手段と、
前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前記割当て性能受信手段が前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算する第１の割当て性能計算手段と、
を含む情報処理装置と、
情報を記憶及び再生する論理ディスクと、
前記情報処理装置から前記論理ディスクへのＩＯ要求を受信するＩＯ受信処理手段と、
前記論理ディスクの性能目標値を基に前記論理ディスクのＱｏＳ機能を実行する第２のＱｏＳ機能実行手段と、
前記論理ディスクの性能目標値を、前記情報処理装置に送信する割当て性能送信手段と、
前記論理ディスクに、前記ＩＯ受信処理手段から前記第２のＱｏＳ機能実行手段に送られたＩＯ要求の回数と前記第２のＱｏＳ機能実行手段が前記論理ディスクに送ったＩＯ処理の回数とを計測し、単位時間当たりの受理ＩＯの回数である受理ＩＯＰＳと処理ＩＯの回数である処理ＩＯＰＳを計算する第２のＩＯ状況計測手段と、
前記受理ＩＯＰＳと、前記処理ＩＯＰＳと、前記論理ディスクの性能目標値とを保存する第２のＩＯ量保存手段と、
前記論理ディスクに設定された性能目標値を保存する性能目標値保存手段と、
前記受理ＩＯＰＳ、処理ＩＯＰＳ、及び性能目標値と、前記性能目標値保存手段が保存している性能目標値とを基に、前記論理ディスクの性能目標値を計算する第２の割当て性能計算手段と
を含む記憶装置と
を含む情報処理システム。
【請求項２】
前記第１の割当て性能計算手段が、
前記割当て性能受信手段が前記記憶装置から前記論理ディスクの性能目標値を受け取った時に前記ＶＭの性能目標値を計算する
請求項１に記載の情報処理システム。
【請求項３】
前記情報処理装置が、
前記第１のＩＯ状況計測手段が計測した要求ＩＯＰＳと送信ＩＯＰＳ及び性能目標値との履歴を保存する第１のＩＯ状況履歴保存手段と、
前記第１のＩＯ状況履歴保存手段が保存する履歴を基に、前記第１のＱｏＳ機能実行手段が前記ＶＭを抑制する程度を決定する第１のＩＯ抑制レベル決定手段と
をさらに含み、
前記第１のＱｏＳ機能実行手段が、
前記ＩＯ抑制レベル決定手段が決定した抑制の程度に基づいて前記ＶＭを抑制する
請求項１又は２に記載の情報処理システム。
【請求項４】
前記記憶装置が、
前記第２のＩＯ状況計測手段が計測した、前記論理ディスクの受理ＩＯＰＳ及び処理ＩＯＰＳと、前記論理ディスクの性能目標値との履歴を保存する第２のＩＯ状況履歴保存手段と、
前記第２のＩＯ状況履歴保存手段が保存した履歴を基に、前記第２のＱｏＳ機能実行手段が前記論理ディスクを抑制の程度を決定する第２のＩＯ抑制レベル決定手段と
をさらに含む、
前記第２のＱｏＳ機能実行手段が、
前記第２のＩＯ抑制レベル決定手段が決定した抑制の程度に基づいて前記論理ディスク抑制する
請求項１ないし３のいずれか１項に記載の情報処理システム。
【請求項５】
前記記憶装置が、
性能のボトルネックに関連する構成と、前記関連する構成に影響を受ける前記論理ディスクとの情報を保存する論理構成保存手段と、
前記性能のボトルネックに関連する構成の性能の状態を監視し、いずれかの構成においてボトルネックが発生した場合、その構成を通知するボトルネック性能監視手段と、
前記論理構成保存手段が保持する情報を基に、前記ボトルネック性能監視手段から通知された構成に影響を受ける論理ディスクを判別するＩＯ抑制範囲決定手段と
をさらに含み、
前記第２の割当て性能計算手段が、
前記ＩＯ抑制範囲決定手段が判別した論理ディスクの性能目標値の再計算する
請求項１ないし４のいずれか１項に記載の情報処理システム。
【請求項６】
コンピュータの動作をエミュレートするソフトウェアであるＶＭと、
ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行する第１のＱｏＳ機能実行手段と、
前記第１のＱｏＳ機能実行手段からＩＯ要求を受信し、前記ＩＯ要求を記憶装置に送信するＩＯ送信処理手段と、
前記ＶＭから前記第１のＱｏＳ機能実行手段に送られたＩＯ要求の回数と、前記第１のＱｏＳ機能実行手段から前記ＩＯ送信処理手段に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算する第１のＩＯ状況計測手段と、
前記第１のＩＯ状況計測手段が計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存する第１のＩＯ量保存手段と、
ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存する目標性能係数保存手段と、
前記記憶装置から、論理ディスクの性能目標値を受信する割当て性能受信手段と、
前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前記割当て性能受信手段が前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算する第１の割当て性能計算手段と、
を含む情報処理装置。
【請求項７】
情報処理装置と記憶装置とを含む情報システムの情報処理装置において
コンピュータの動作をエミュレートするソフトウェアであるＶＭを実行させ、
ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行し、
前記ＱｏＳ機能に基づいて送信されるＩＯ要求を前記記憶装置に送信し、
前記ＶＭからのＩＯ要求の回数と、前記記憶装置に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算し、
前記計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存し、
ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存し、
前記記憶装置から、論理ディスクの性能目標値を受信し、
前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算し、
前記記憶装置において、
情報を記憶及び再生する論理ディスクを実行し、
前記情報処理装置から前記論理ディスクへのＩＯ要求を受信し、
前記論理ディスクの性能目標値を基に前記論理ディスクのＱｏＳ機能を実行し、
前記論理ディスクの性能目標値を、前記情報処理装置に送信し、
前記論理ディスクに、前記情報処理装置から送られたＩＯ要求の回数と前記論理ディスクのＱｏＳ機能が実行されたＩＯ処理の回数とを計測し、単位時間当たりの受理ＩＯの回数である受理ＩＯＰＳと処理ＩＯの回数である処理ＩＯＰＳを計算し、
前記受理ＩＯＰＳと、前記処理ＩＯＰＳと、前記論理ディスクの性能目標値とを保存し、
前記論理ディスクに設定された性能目標値を保存し、
前記受理ＩＯＰＳ、処理ＩＯＰＳ、及び性能目標値と、前記性能目標値保存手段が保存している性能目標値とを基に、前記論理ディスクの性能目標値を計算する
情報処理方法。
【請求項８】
情報処理装置と記憶装置とを含む情報システムの情報処理装置としての、
コンピュータの動作をエミュレートするソフトウェアであるＶＭを実行させる処理と、
ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行する処理と、
前記ＱｏＳ機能に基づいて送信されるＩＯ要求を前記記憶装置に送信する処理と、
前記ＶＭからのＩＯ要求の回数と、前記記憶装置に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算する処理と、
前記計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存する処理と、
ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存する処理と、
前記記憶装置から、論理ディスクの性能目標値を受信する処理と、
前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算する処理と
前記記憶装置としての、
情報を記憶及び再生する論理ディスクを実行する処理と、
前記情報処理装置から前記論理ディスクへのＩＯ要求を受信する処理と、
前記論理ディスクの性能目標値を基に前記論理ディスクのＱｏＳ機能を実行する処理と、
前記論理ディスクの性能目標値を、前記情報処理装置に送信する処理と、
前記論理ディスクに、前記情報処理装置から送られたＩＯ要求の回数と前記論理ディスクのＱｏＳ機能が実行されたＩＯ処理の回数とを計測し、単位時間当たりの受理ＩＯの回数である受理ＩＯＰＳと処理ＩＯの回数である処理ＩＯＰＳを計算する処理と、
前記受理ＩＯＰＳと、前記処理ＩＯＰＳと、前記論理ディスクの性能目標値とを保存する処理と、
前記論理ディスクに設定された性能目標値を保存する処理と、
前記受理ＩＯＰＳ、処理ＩＯＰＳ、及び性能目標値と、前記性能目標値保存手段が保存している性能目標値とを基に、前記論理ディスクの性能目標値を計算する処理と
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報の処理に関し、特に、情報処理装置と記憶装置とを含む情報処理システムのＱｏＳ（Quality of Service）に関する。
【背景技術】
【０００２】
情報処理システムは、情報処理の主体となる１つ又は複数の情報処理装置と、処理の対象であるデータを記憶する１つ又は複数の記憶装置とを含む。
【０００３】
また、情報処理装置は、装置上において、１つ又は複数の仮想マシン（ＶＭ：Virtual Machine）を動作させている。
【０００４】
このように、情報処理システムにおいて、複数の情報処理装置、及び、複数のＶＭが、１つ又は複数の記憶装置を、共有して使用している。
【０００５】
そのため、一部の情報処理装置又はＶＭが、記憶装置に過剰な入出力（ＩＯ：Input and Output）要求を発行した場合、記憶装置の応答が、低下する。その結果、情報処理システムの性能が、低下する。
【０００６】
このような性能への影響を防ぐため、情報処理装置と記憶装置とを含む情報処理システムにおいて、記憶装置へのＩＯ要求を制御する技術が、広く用いられている（例えば、特許文献１及び特許文献２を参照）。
【０００７】
このような技術の１つに、情報処理装置と記憶装置との間の通信の帯域を制御するＱｏＳがある（例えば、特許文献３を参照）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１１−２４３１１７号公報
【特許文献２】特開２０１２−２２１３４０号公報
【特許文献３】特表２００６−５２１６４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特許文献３に記載の技術のように、記憶装置がＱｏＳ機能を実施する場合、記憶装置は、ＩＯ要求の発行先の論理ディスク、又は、ＩＯ要求の発行元の情報処理装置に対して、所定の性能（例えば、ＩＯＰＳ（Input Output per Second））を設定できる。しかし、ＶＭを使用している情報処理システムでは、複数のＶＭが、１つの情報処理装置上で動作している。そして、１つの情報処理装置上で動作している複数のＶＭが、同じ論理ディスクにアクセスする場合がある。この場合、記憶装置は、１つの情報処理装置で動作している複数のＶＭにおいて、個別のＶＭに対応した性能（例えば、ＩＯＰＳ）の目標値を設定できない。
【００１０】
このように、特許文献３に記載の技術は、個別のＶＭに対応したＱｏＳ機能を実現できないという問題点があった。
【００１１】
特許文献１及び特許文献２に記載の技術では、情報処理装置が、制御を実施している。
【００１２】
そこで、情報処理装置においてＱｏＳ機能を実現する方法が、考えられる。
【００１３】
例えば、情報処理装置が、ＱｏＳ機能を実施する場合、情報処理装置は、自装置上で動作するＶＭに対して、ＱｏＳ機能を適用できる。すなわち、情報処理装置は、ＶＭ毎に設定した目標性能（例えば、ＩＯＰＳ）に近づくように、ＶＭのＩＯ処理の順序を制御する。このような制御を基に、情報処理装置は、過剰にＩＯ要求を出すＶＭのＩＯ要求を抑制できる。
【００１４】
しかし、情報処理装置は、記憶装置の状態を把握していない。そのため、情報処理装置は、記憶装置の性能に対して、過剰にＩＯ要求を抑えてしまう場合がある。あるいは、情報処理装置は、記憶装置の性能を超えたＩＯ要求を送信してしまう可能性がある。
【００１５】
このように、特許文献１及び特許文献２に記載の技術は、記憶装置に対するＩＯ要求を適切に制御できないという問題点があった。
【００１６】
本発明の目的は、上記した課題を解決する情報処理システム、情報処理装置、情報処理方法、及び、プログラムを提供することにある。
【課題を解決するための手段】
【００１７】
本発明の一形態のおける情報処理システムは、コンピュータの動作をエミュレートするソフトウェアであるＶＭと、ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行する第１のＱｏＳ機能実行手段と、前記第１のＱｏＳ機能実行手段からＩＯ要求を受信し、前記ＩＯ要求を記憶装置に送信するＩＯ送信処理手段と、前記ＶＭから前記第１のＱｏＳ機能実行手段に送られたＩＯ要求の回数と、前記第１のＱｏＳ機能実行手段から前記ＩＯ送信処理手段に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算する第１のＩＯ状況計測手段と、前記第１のＩＯ状況計測手段が計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存する第１のＩＯ量保存手段と、ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存する目標性能係数保存手段と、前記記憶装置から、論理ディスクの性能目標値を受信する割当て性能受信手段と、前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前記割当て性能受信手段が前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算する第１の割当て性能計算手段とを含む情報処理装置と、情報を記憶及び再生する論理ディスクと、前記情報処理装置から前記論理ディスクへのＩＯ要求を受信するＩＯ受信処理手段と、前記論理ディスクの性能目標値を基に前記論理ディスクのＱｏＳ機能を実行する第２のＱｏＳ機能実行手段と、前記論理ディスクの性能目標値を、前記情報処理装置に送信する割当て性能送信手段と、前記論理ディスクに、前記ＩＯ受信処理手段から前記第２のＱｏＳ機能実行手段に送られたＩＯ要求の回数と前記第２のＱｏＳ機能実行手段が前記論理ディスクに送ったＩＯ処理の回数とを計測し、単位時間当たりの受理ＩＯの回数である受理ＩＯＰＳと処理ＩＯの回数である処理ＩＯＰＳを計算する第２のＩＯ状況計測手段と、前記受理ＩＯＰＳと、前記処理ＩＯＰＳと、前記論理ディスクの性能目標値とを保存する第２のＩＯ量保存手段と、前記論理ディスクに設定された性能目標値を保存する性能目標値保存手段と、前記受理ＩＯＰＳ、処理ＩＯＰＳ、及び性能目標値と、前記性能目標値保存手段が保存している性能目標値とを基に、前記論理ディスクの性能目標値を計算する第２の割当て性能計算手段とを含む記憶装置とを含む。
【００１８】
本発明の一形態のおける情報処理装置は、コンピュータの動作をエミュレートするソフトウェアであるＶＭと、ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行する第１のＱｏＳ機能実行手段と、前記第１のＱｏＳ機能実行手段からＩＯ要求を受信し、前記ＩＯ要求を記憶装置に送信するＩＯ送信処理手段と、前記ＶＭから前記第１のＱｏＳ機能実行手段に送られたＩＯ要求の回数と、前記第１のＱｏＳ機能実行手段から前記ＩＯ送信処理手段に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算する第１のＩＯ状況計測手段と、前記第１のＩＯ状況計測手段が計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存する第１のＩＯ量保存手段と、ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存する目標性能係数保存手段と、前記記憶装置から、論理ディスクの性能目標値を受信する割当て性能受信手段と、前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前記割当て性能受信手段が前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算する第１の割当て性能計算手段と、を含む。
【００１９】
本発明の一形態のおける情報処理装置と記憶装置とを含む情報システムの情報処理方法は、情報処理装置において、コンピュータの動作をエミュレートするソフトウェアであるＶＭを実行させ、ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行し、前記ＱｏＳ機能に基づいて送信されるＩＯ要求を前記記憶装置に送信し、前記ＶＭからのＩＯ要求の回数と、前記記憶装置に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算し、前記計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存し、ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存し、前記記憶装置から、論理ディスクの性能目標値を受信し、前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算し、前記記憶装置において、情報を記憶及び再生する論理ディスクを実行し、前記情報処理装置から前記論理ディスクへのＩＯ要求を受信し、前記論理ディスクの性能目標値を基に前記論理ディスクのＱｏＳ機能を実行し、前記論理ディスクの性能目標値を、前記情報処理装置に送信し、前記論理ディスクに、前記情報処理装置から送られたＩＯ要求の回数と前記論理ディスクのＱｏＳ機能が実行されたＩＯ処理の回数とを計測し、単位時間当たりの受理ＩＯの回数である受理ＩＯＰＳと処理ＩＯの回数である処理ＩＯＰＳを計算し、前記受理ＩＯＰＳと、前記処理ＩＯＰＳと、前記論理ディスクの性能目標値とを保存し、前記論理ディスクに設定された性能目標値を保存し、前記受理ＩＯＰＳ、処理ＩＯＰＳ、及び性能目標値と、前記性能目標値保存手段が保存している性能目標値とを基に、前記論理ディスクの性能目標値を計算する。
【００２０】
本発明の一形態のおけるプログラムは、情報処理装置と記憶装置とを含む情報システムの情報処理装置としての、コンピュータの動作をエミュレートするソフトウェアであるＶＭを実行させる処理と、ＶＭの性能目標値を基にＶＭからのＩＯ要求のＱｏＳ機能を実行する処理と、前記ＱｏＳ機能に基づいて送信されるＩＯ要求を前記記憶装置に送信する処理と、前記ＶＭからのＩＯ要求の回数と、前記記憶装置に送られたＩＯ送信の回数とを計測し、単位時間当たりのＩＯ要求の回数である要求ＩＯＰＳと、単位時間当たりのＩＯ送信の回数である送信ＩＯＰＳとを計算する処理と、前記計算した要求ＩＯＰＳ及び送信ＩＯＰＳと、前記ＶＭの性能目標値とを保存する処理と、ＶＭの性能目標値を計算するときに用いる情報である目標性能係数を保存する処理と、前記記憶装置から、論理ディスクの性能目標値を受信する処理と、前記保存されたＶＭの要求ＩＯＰＳ、送信ＩＯＰＳ、及び性能目標値と、前記目標性能係数と、前回受信した論理ディスクの性能目標値と、今回受信した性能目標値とを基に、ＶＭの性能目標値を計算する処理とを、前記記憶装置としての、情報を記憶及び再生する論理ディスクを実行する処理と、前記情報処理装置から前記論理ディスクへのＩＯ要求を受信する処理と、前記論理ディスクの性能目標値を基に前記論理ディスクのＱｏＳ機能を実行する処理と、前記論理ディスクの性能目標値を、前記情報処理装置に送信する処理と、前記論理ディスクに、前記情報処理装置から送られたＩＯ要求の回数と前記論理ディスクのＱｏＳ機能が実行されたＩＯ処理の回数とを計測し、単位時間当たりの受理ＩＯの回数である受理ＩＯＰＳと処理ＩＯの回数である処理ＩＯＰＳを計算する処理と、前記受理ＩＯＰＳと、前記処理ＩＯＰＳと、前記論理ディスクの性能目標値とを保存する処理と、前記論理ディスクに設定された性能目標値を保存する処理と、前記受理ＩＯＰＳ、処理ＩＯＰＳ、及び性能目標値と、前記性能目標値保存手段が保存している性能目標値とを基に、前記論理ディスクの性能目標値を計算する処理とをコンピュータに実行させる。
【発明の効果】
【００２１】
本発明に基づけば、情報処理装置から記憶装置に対するＩＯ要求を適切に制御するとの効果を提供できる。
【図面の簡単な説明】
【００２２】
【図１】図１は、本発明における第１の実施形態に係る情報処理システムの構成の一例を示すブロック図である。
【図２】図２は、第１の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図３】図３は、第１の実施形態の動作を説明するための図である。
【図４】図４は、第１の実施形態の動作を説明するための図である。
【図５】図５は、第１の実施形態に係る記憶装置の構成の一例を示すブロック図である。
【図６】図６は、第１の実施形態の動作の一例を示すシーケンス図である。
【図７】図７は、第１の実施形態の動作の一例を示すシーケンス図である。
【図８】図８は、第１の実施形態の動作の一例を示すシーケンス図である。
【図９】図９は、第１の実施形態の動作の一例を示すシーケンス図である。
【図１０】図１０は、第１の実施形態に係る情報処理装置の別の構成の一例を示すブロック図である。
【図１１】図１１は、本発明における第２の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図１２】図１２は、第２の実施形態に係る記憶装置の構成の一例を示すブロック図である。
【図１３】図１３は、第３の実施形態に係る記憶装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００２３】
次に、本発明の実施形態について図面を参照して説明する。
【００２４】
なお、各図面は、本発明の実施形態を説明するものである。そのため、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。
【００２５】
また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。
【００２６】
なお、本発明の実施形態のおける性能は、特に制限はない。例えば、本発明の実施形態は、性能として、スループット、ＴＡＴ（Turn Around Time）、又は、ＩＯＰＳを用いても良い。以下の説明では、性能の一例としてＩＯＰＳ（情報処理装置から記憶装置への送信ＩＯＰＳ）を用いて説明する。他の性能を用いる場合、情報処理装置及び記憶装置は、以下の説明において、ＩＯＰＳを他の性能と置き換えればよい。
【００２７】
また、以下の説明では、情報処理装置のＱｏＳ機能の対象として、ＶＭを用いて説明する。しかし、本発明のＱｏＳ機能の対象は、情報処理装置のＶＭに限る必要はない。例えば、本発明のＱｏＳ機能は、情報処理装置上で動作するアプリケーションを対象にしても良い。
【００２８】
次に、本発明の実施形態の説明の前に、関連技術における情報処理システムについて説明する。
【００２９】
特許文献１ないし特許文献３の問題点を解決するために、関連技術の情報処理システムは、記憶装置側のＱｏＳ機能と、情報処理装置側のＱｏＳ機能とを、同時に動作させる。つまり、情報処理装置側のＱｏＳ機能が、ＶＭについてのＩＯＰＳ目標値を実現する。そして、記憶装置側のＱｏＳ機能が、記憶装置と情報処理装置間のＩＯＰＳ目標値を実現する。
【００３０】
しかし、上記の構成を用いた情報処理システムには、以下のような課題がある。
【００３１】
すなわち、第一の課題は、問題のないＶＭまで、ＩＯの性能が落ちてしまうことである。その理由は、次のとおりである。
【００３２】
一つの論理ディスクを複数のＶＭが使用する場合、関連技術の記憶装置のＱｏＳ機能は、この論理ディスクを使用するすべてのＶＭに対して、均等に、ＩＯを抑制する。そのため、記憶装置のＱｏＳ機能は、問題となるＶＭ（ＩＯ要求が過大なＶＭ）に限らず、対象となっている論理ディスクを使用するその他のＶＭのＩＯも抑制する。その結果、この論理ディスクのＩＯの応答時間は、長くなる。つまり、情報処理システムの性能が、劣化する。
【００３３】
第二の課題は、過剰なＩＯ要求を発行し続けるＶＭ（問題のあるＶＭ）を十分には抑制できないことである。その理由は、次のとおりである。
【００３４】
全てのＶＭが、常時、ＩＯＰＳ目標値までＩＯ要求を出すわけではない。そのため、各ＶＭのＩＯＰＳ目標値を合計した値は、記憶装置の性能を超える値に設定して、運用されることが多い。これは、記憶装置の性能を、できる限り高く発揮できるようにするためである。しかし、この運用の場合、上記の構成を用いた情報処理システムは、記憶装置に対するＩＯ負荷が過剰になっているＶＭについて、ＩＯを十分に抑制することができない。その結果、関連技術の情報処理システムの情報処理装置は、記憶装置に過剰なＩＯ要求を送信してしまう。
【００３５】
第三の課題は、ＩＯ要求を急激に抑制し、ＶＭの動作を不安定にしてしまうことである。その理由は、次のとおりである。
【００３６】
ＩＯ要求の一部は、ＱｏＳ機能が動作すると、ＩＯＰＳ目標値に合わせて抑制される。そのため、ＩＯ要求の量の多いＶＭは、ＩＯの応答時間が遅くなる。記憶装置は、ＶＭの状況が不明である。そのため、記憶装置のＱｏＳ機能は、記憶装置の性能を勘案し、ＩＯを抑制する。その結果、本発明関連する情報処理システムは、情報処理装置のＶＭからみたＩＯの性能（ＩＯＰＳ）を、過剰に抑制してしまう。
【００３７】
そこで、本発明の実施形態に係る情報処理システムは、以下で説明するように、特許文献１ないし特許文献３に課題の解決に加え、上記関連技術の問題点を解決する。
【００３８】
次に、本発明のおける第１の実施形態について、図面を参照して説明する。
【００３９】
＜第１の実施形態＞
図１に示すように、本発明のおける第１に実施形態に係る情報処理システム１０は、１つ又は複数の情報処理装置１００と、１つ又は複数の記憶装置２００と、ネットワーク３００とを含む。
【００４０】
情報処理装置１００は、記憶装置２００が記憶する情報を用いて、処理を実行する。そのため、情報処理装置１００は、記憶装置２００に処理に必要なＩＯ要求を送信する。
【００４１】
記憶装置２００は、情報処理装置１００からＩＯ要求を受信し、ＩＯ要求に対応した処理を実行する。
【００４２】
ネットワーク３００は、情報処理装置１００と記憶装置２００とを接続する通信網である。ネットワーク３００は、一般的な通信網であれば特に制限はない。例えば、ネットワーク３００は、インターネット又は電話通信網でも良い。そのため、ネットワーク３００の詳細な説明を省略する。
【００４３】
次に、本実施形態における情報処理装置１００と記憶装置２００の構成について図面を参照して説明する。
【００４４】
まず、情報処理装置１００の構成について説明する。
【００４５】
図２は、第１の実施形態に係る情報処理装置１００の構成の一例を示すブロック図である。
【００４６】
情報処理装置１００は、ＱｏＳ機能実行部１１０と、割当て性能計算部１２１と、割当て性能受信部１２２と、ＩＯ量保存部１２３と、ＩＯ状況計測部１２４と、目標性能係数保存部１２５と、ＶＭ１４１と、ＩＯ送信処理部１４２とを含む。ここで、情報処理装置１００は、１つ又は複数のＶＭ１４１を含んでも良い。
【００４７】
ＶＭ１４１は、情報処理装置１００の上で、コンピュータの動作をエミュレートするソフトウェアである。
【００４８】
ＱｏＳ機能実行部１１０は、後ほど説明する割当て性能計算部１２１が計算したＶＭ１４１毎の性能目標値（以下、「ＩＯＰＳ目標値」という）を保持する。そして、ＱｏＳ機能実行部１１０は、ＶＭ１４１からのＩＯ要求を受け取る。さらに、ＱｏＳ機能実行部１１０は、ＶＭ１４１毎の性能の履歴（以下、「ＩＯＰＳ履歴」という）を保持する。そして、ＱｏＳ機能実行部１１０は、ＩＯＰＳ履歴とＩＯＰＳ目標値とを比較する。そして、ＱｏＳ機能実行部１１０は、ＩＯＰＳ目標値の達成の度合いの低いＶＭ１４１からのＩＯ要求を優先的に処理する。つまり、ＱｏＳ機能実行部１１０は、情報処理装置１００におけるＱｏＳ機能を実現する。このようにして、ＱｏＳ機能実行部１１０は、処理対象のＩＯ要求をＩＯ送信処理部１４２に送信する。
【００４９】
ＩＯ送信処理部１４２は、ＱｏＳ機能実行部１１０からのＩＯ要求を、記憶装置２００に送信する。
【００５０】
目標性能係数保存部１２５は、後ほど説明する割当て性能計算部１２１が、ＶＭ１４１毎のＩＯＰＳ目標値を計算（決定）するときに用いる情報（例えば、計算式の係数。以下、目標性能係数」という）を保存する。
【００５１】
割当て性能受信部１２２は、記憶装置２００から、後ほど説明する論理ディスク２４１毎の性能目標値（ＩＯＰＳ目標値）の設定を受信する。割当て性能受信部１２２は、受信したＩＯＰＳ目標値を割当て性能計算部１２１に送信する。
【００５２】
ＩＯ状況計測部１２４は、ＶＭ１４１からＱｏＳ機能実行部１１０に送られたＩＯ要求の回数（以下、「要求ＩＯ回数」という）と、ＱｏＳ機能実行部１１０からＩＯ送信処理部１４２に送られたＩＯの回数（以下、「送信ＩＯ回数」という）とを計測する。そして、ＩＯ状況計測部１２４は、要求ＩＯ回数を計測時間で割り、単位時間当たりの要求ＩＯ回数（以下、「要求ＩＯＰＳ」という）を計算する。同様に、ＩＯ状況計測部１２４は、送信ＩＯ回数を計測時間で割り、単位時間当たりの送信ＩＯ回数（以下、「送信ＩＯＰＳ」という）を計算する。そして、ＩＯ状況計測部１２４は、計算結果（要求ＩＯＰＳ及び送信ＩＯＰＳ）をＩＯ量保存部２３２に保存する。
【００５３】
ＩＯ量保存部１２３は、ＩＯ状況計測部１２４が計算した単位時間当たりの性能（要求ＩＯＰＳと送信ＩＯＰＳ）と、割当て性能計算部１２１が計算した性能目標値（ＩＯＰＳ目標値）とを保存する。
【００５４】
割当て性能計算部１２１は、ＶＭ１４１毎のＩＯＰＳ目標値（性能目標値）を計算する。
【００５５】
次に、割当て性能計算部１２１の計算について説明する。
【００５６】
ここで、割当て性能計算部１２１は、割当て性能受信部１２２が、記憶装置２００から論理ディスク２４１毎のＩＯＰＳ目標値を受け取った時に動作する。
【００５７】
割当て性能計算部１２１は、より具体的には、例えば、次に示す情報を基に、ＶＭ１４１毎のＩＯＰＳ目標値を計算する。基とする情報は、次のとおりである。
【００５８】
（１）ＩＯ量保存部１２３に保存されたＶＭ１４１毎の要求ＩＯＰＳと、送信ＩＯＰＳと、ＩＯＰＳ目標値（このＩＯＰＳ目標値は、前回計算したＩＯＰＳ目標値である。）
（２）目標性能係数保存部１２５に保存された情報（目標性能係数）
（３）割当て性能受信部１２２が今回受信した論理ディスク２４１毎のＩＯＰＳ目標値
（４）割当て性能受信部１２２が前回受信した論理ディスク２４１毎のＩＯＰＳ目標値
割当て性能計算部１２１におけるＶＭ１４１毎のＩＯＰＳ目標値の計算方法は、例えば、次のとおりである。
【００５９】
ここで、以下の説明において、計算対象の論理ディスク２４１を利用する全てのＶＭ１４１を「ＶＭ＾ＬＤ」と表記する。
【００６０】
ＱｏＳ機能実行部１１０がＶＭ１４１毎のＩＯＰＳ目標値を保持していない場合、割当て性能計算部１２１は、目標性能係数保存部１２５から、全てのＶＭ１４１（「ＶＭ＾ＬＤ」に属する全てのＶＭ１４１）について、目標性能係数を取得する。そして、割当て性能計算部１２１は、論理ディスク２４１毎のＩＯＰＳ目標値と、目標性能係数との積を基に、ＶＭ１４１毎のＩＯＰＳ目標値を計算（決定）する。つまり、目標性能係数は、論理ディスク２４１に関連するＶＭ１４１に割り当てる性能の比率に相当する値である。
【００６１】
割当て性能計算部１２１は、計算したＩＯＰＳ目標値を、ＱｏＳ機能実行部１１０に通知する。さらに、割当て性能計算部１２１は、計算したＩＯＰＳ目標値を、ＩＯ量保存部１２３に送信する。
【００６２】
一方、ＱｏＳ機能実行部１１０がＶＭ１４１毎のＩＯＰＳ目標値を保持している場合、割当て性能計算部１２１は、ＩＯ量保存部１２３から、「ＶＭ＾ＬＤ」に属する全てのＶＭ１４１毎のＩＯＰＳ目標値と、要求ＩＯＰＳと、送信ＩＯＰＳとを取得する。そして、ＩＯＰＳ目標値が変化した論理ディスク２４１がある場合、割当て性能計算部１２１は、ＶＭ１４１の新しいＩＯＰＳ目標値を計算する。
【００６３】
例えば、ＩＯＰＳ目標値が前回の値より小さい論理ディスク２４１、すなわちＩＯ要求を絞る必要がある論理ディスク２４１がある場合、割当て性能計算部１２１は、ＶＭ１４１の新たなＩＯＰＳ目標値を計算する。以下、論理ディスク２４１におけるＩＯＰＳ目標値の差の絶対値を「ｄｉｆ」とする。
【００６４】
この計算について、図面を参照して説明する。
【００６５】
図３は、この説明に用いるＩＯ要求を絞る必要がある論理ディスク２４１に関連するＶＭ１４１毎のＩＯＰＳを模式的に示した図である。
【００６６】
図３は、一例として、５つのＶＭ１４１（ＶＭ１〜ＶＭ５）の送信ＩＰＯＳを示している。つまり、「ＶＭ＾ＬＤ」は、「ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４、ＶＭ５」を含む。
【００６７】
また、図３において、新たなＶＭ１４１毎のＩＯＰＳ目標値が、新たに設定するＩＯＰＳ目標値（以下、図３の説明において「ｎｅｗｄ」とする）である。
【００６８】
まず、割当て性能計算部１２１は、論理ディスク２４１における前回との差の絶対値（ｄｉｆ）を計算する。今の場合、ｄｉｆは、削減する送信ＩＯＰＳの総量となる。そして、割当て性能計算部１２１は、新たなＶＭ１４１毎のＩＯＰＳ目標値（ｎｅｗｄ）として、ｎｅｗｄを超える送信ＩＯＰＳの合計が、ｄｉｆと等しくなるように、ｎｅｗｄを選択する。つまり、割当て性能計算部１２１は、図３における斜線部分（ｎｅｗｄを超えた部分）の和が、ｄｉｆと等しくなるように、ｎｅｗｄの値を選択する。そして、割当て性能計算部１２１は、ｎｅｗｄを超えている「ＶＭ＾ＬＤ」に属する全てのＶＭ１４１（図３では、ＶＭ１、ＶＭ２、ＶＭ３）について、新しいＩＯＰＳ目標値（ＩＯＰＳ＿ｎｅｗｄ）を計算する。そして、割当て性能計算部１２１は、計算した新しいＩＯＰＳ目標値を、ＱｏＳ機能実行部１１０とＩＯ量保存部１２３とに送信する。
【００６９】
また、ＩＯＰＳ目標値が前回よりも大きい論理ディスク２４１、すなわち、ＩＯ要求を追加発行可能な論理ディスク２４１がある場合（以下、この場合の差の絶対値も「ｄｉｆ」とする）、割当て性能計算部１２１は、新たなＩＯＰＳ目標値を計算する。
【００７０】
この計算について、図面を参照して説明する。
【００７１】
図４は、この説明に用いるＩＯ要求の追加発行可能な論理ディスク２４１に関連するＶＭ１４１毎の要求ＩＯＰＳを模式的に示した図である。
【００７２】
図４は、一例として、５つのＶＭ１４１（ＶＭ１〜ＶＭ５）を示している。つまり、「ＶＭ＾ＬＤ」は、「ＶＭ１、ＶＭ２、ＶＭ３、ＶＭ４、ＶＭ５」を含む。
【００７３】
また、図４において、前回のＩＯＰＳ目標値が、既に設定されていたＩＯＰＳ目標値である。また、新たなＶＭ１４１毎のＩＯＰＳ目標値が、新たに設定するＩＯＰＳ目標値（以下、図４の説明において「ｎｅｗｄ」とする）である。
【００７４】
まず、割当て性能計算部１２１は、論理ディスク２４１のＩＯＰＳ目標値における前回との差の絶対値（ｄｉｆ）を計算する。今の場合、ｄｉｆは、追加できる送信ＩＯＰＳの総量となる。そして、割当て性能計算部１２１は、新たなＶＭ１４１毎のＩＯＰＳ目標値（ｎｅｗｄ）として、前回のＩＯＰＳ目標値を超える要求ＩＯＰＳの合計が、ｄｉｆと等しくなるように、ｎｅｗｄを選択する。つまり、割当て性能計算部１２１は、図４における斜線部分の和がｄｉｆと等しくなるように、ｎｅｗｄを選択する。この斜線部分が、追加する部分となる。そして、割当て性能計算部１２１は、追加できる「ＶＭ＾ＬＤ」に属するすべてのＶＭ１４１（図４では、ＶＭ１、ＶＭ２、ＶＭ３）について、新しいＩＯＰＳ目標値を計算する。ここで、割当て性能計算部１２１は、要求ＩＯＰＳとｎｅｗｄのいずれか小さい方を設定することになる。ここで、図４におけるＶＭ１の横線部分は、追加できない要求ＩＯＰＳである。
【００７５】
なお、前回のＩＯＰＳ目標値を超える要求ＩＯＰＳの合計（以下、「ｓｕｍｄ」とする）が、ｄｉｆより小さい場合、割当て性能計算部１２１は、ＶＭ１４１毎のＩＯＰＳ目標値を再計算しても良い。この場合は、例えば、図４における横線部分が、ない場合である。
【００７６】
例えば、割当て性能計算部１２１は、目標性能係数保存部１２５から、目標性能係数を取得し、次の数式１を用いて、ＩＯＰＳ目標値を設定しても良い。
【００７７】
［数式１］
ＩＯＰＳ目標値＝（目標性能係数）×（ｄｉｆ  −  ｓｕｍｄ）
＋（「ＶＭ＾ＬＤ」に属する全てのＶＭ１４１の最大の要求ＩＯＰＳ）
割当て性能計算部１２１は、上記の処理を基に、ＶＭ１４１毎のＩＯＰＳ目標値を計算し、ＱｏＳ機能実行部１１０とＩＯ量保存部１２３に、ＩＯＰＳ目標値を送信する。
【００７８】
次に、記憶装置２００の構成について説明する。
【００７９】
図５は、第１の実施形態に係る記憶装置２００の構成の一例を示すブロック図である。
【００８０】
記憶装置２００は、ＱｏＳ機能実行部２１０と、割当て性能送信部２２１と、性能目標値保存部２２２と、割当て性能計算部２３１と、ＩＯ量保存部２３２と、ＩＯ状況計測部２３３と、論理ディスク２４１と、ＩＯ受信処理部２４２とを含む。ここで、記憶装置２００は、１つ又は複数の論理ディスク２４１を含んでも良い。
【００８１】
論理ディスク２４１は、情報を記憶及び再生する論理的な記憶再生装置である。
【００８２】
ＩＯ受信処理部２４２は、情報処理装置１００から、論理ディスク２４１へのＩＯ要求を受信し、ＱｏＳ機能実行部２１０に送信する。
【００８３】
性能目標値保存部２２２は、論理ディスク２４１毎に設定する性能目標値（ＩＯＰＳ目標値）を保存する。性能目標値保存部２２２が保存する性能目標値は、論理ディスク２４１に最初に設定する目標設定値である。あるいは、性能目標値保存部２２２が保存する性能目標値は、再設定時に用いられる値である。つまり、性能目標値保存部２２２が保存する性能目標値は、論理ディスク２４１において、初期の性能目標値である。
【００８４】
ＱｏＳ機能実行部２１０は、論理ディスク２４１毎に、性能目標値（以下、「ＩＯＰＳ目標値」という）を保持する。そして、ＱｏＳ機能実行部２１０は、論理ディスク２４１へのＩＯ要求を、ＩＯ受信処理部２４２から受け取る。さらに、ＱｏＳ機能実行部２１０は、論理ディスク２４１毎のＩＯＰＳ履歴を保持する。そして、ＱｏＳ機能実行部２１０は、ＩＯＰＳ履歴とＩＯＰＳ目標値とを比較し、ＩＯＰＳ目標値の達成の度合いの低い論理ディスク２４１へのＩＯ要求を優先的に処理する。つまり、ＱｏＳ機能実行部２１０は、記憶装置２００におけるＱｏＳ機能を実現する。このように、ＱｏＳ機能実行部２１０は、ＩＯ要求を論理ディスク２４１に渡す。
【００８５】
割当て性能送信部２２１は、割当て性能計算部２３１が計算した論理ディスク２４１毎のＩＯＰＳ目標値を、情報処理装置１００の割当て性能受信部１２２に送信する。なお、割当て性能送信部２２１は、論理ディスク２４１毎のＩＯＰＳ目標値をＱｏＳ機能実行部２１０に送信しても良い。ただし、割当て性能計算部２３１が、ＩＯＰＳ目標値をＱｏＳ機能実行部２１０に送信しても良い。また、初期状態など割当て性能計算部２３１がＩＯＰＳ目標値を計算する前の場合、割当て性能送信部２２１は、性能目標値保存部２２２が保存する性能目標値を情報処理装置１００及びＱｏＳ機能実行部２１０に送信しても良い。
【００８６】
ＩＯ状況計測部２３３は、ＩＯ要求の要求先の論理ディスク２４１毎に、ＩＯ受信処理部２４２からＱｏＳ機能実行部２１０に送られたＩＯ要求の回数（以下、「受理ＩＯ回数」という）を計測する。さらに、ＩＯ状況計測部２３３は、ＱｏＳ機能実行部２１０が論理ディスク２４１に送ったＩＯ処理の回数（以下、「処理ＩＯ回数」という）を計測する。そして、ＩＯ状況計測部２３３は、受理ＩＯ回数及び処理ＩＯ回数の単位時間当たりの回数（以下、それぞれ、「受理ＩＯＰＳ」及び「処理ＩＯＰＳ」とする）を計算する。そして、ＩＯ状況計測部２３３は、受理ＩＯＰＳと処理ＩＯＰＳをＩＯ量保存部２３２に保存する。
【００８７】
ＩＯ量保存部２３２は、論理ディスク２４１毎に、ＩＯ状況計測部２３３が計算（計測）した受理ＩＯＰＳと、処理ＩＯＰＳと、割当て性能計算部２３１が計算した論理ディスク２４１のＩＯＰＳ目標値とを保存する。
【００８８】
割当て性能計算部２３１は、論理ディスク２４１毎の性能目標値（ＩＯＰＳ目標値）を計算する。
【００８９】
次に、割当て性能計算部２３１の計算についてさらに説明する。
【００９０】
割当て性能計算部２３１は、次に示す情報を基に、論理ディスク２４１のＩＯＰＳ目標値を計算する。計算の基となる情報は、次のとおりである。
【００９１】
（１）ＩＯ量保存部２３２が保存している論理ディスク２４１毎の受理ＩＯＰＳと、処理ＩＯＰＳと、ＩＯＰＳ目標値（このＩＯＰＳ目標値は、前回計算したＩＯＰＳ目標値である。）
（２）性能目標値保存部２２２が保存しているＩＯＰＳ目標値（このＩＯＰＳ目標値は、初期の目標値である。）
割当て性能計算部２３１は、計算した論理ディスク２４１毎のＩＯＰＳ目標値を、ＩＯ量保存部２３２に保存する。
【００９２】
割当て性能計算部２３１における論理ディスク２４１毎のＩＯＰＳ目標値の計算方法は、例えば、次のとおりである。
【００９３】
ＱｏＳ機能実行部２１０が論理ディスク２４１のＩＯＰＳ目標値を保持していない場合、割当て性能計算部２３１は、性能目標値保存部２２２が保存しているＩＯＰＳ目標値を、ＩＯＰＳ目標値とする。なお、ＱｏＳ機能実行部２１０が論理ディスク２４１のＩＯＰＳ目標値を保持していない場合、割当て性能送信部２２１が、ＩＯＰＳ目標値を送信しても良い。
【００９４】
一方、ＱｏＳ機能実行部２１０が論理ディスク２４１毎のＩＯＰＳ目標値を保持する場合、割当て性能計算部２３１は、ＩＯ量保存部２３２が保存している処理ＩＯＰＳと受理ＩＯＰＳとを比較する。
【００９５】
そして、受理ＩＯＰＳが処理ＩＯＰＳを超えている論理ディスク２４１が、少なくとも一つある場合、すなわち、ＩＯ処理の抑制が発生している場合、割当て性能計算部２３１は、論理ディスク２４１の性能に、余裕がないと判断する。そして、割当て性能計算部２３１は、処理ＩＯＰＳの最も大きい論理ディスク２４１の処理ＩＯＰＳを、論理ディスク２４１毎の新たなＩＯＰＳ目標値とする。
【００９６】
一方、全ての論理ディスク２４１の処理ＩＯＰＳが、受理ＩＯＰＳと等しい又は受理ＩＯＰＳよりも低い場合、すなわち、論理ディスク２４１の性能に余裕がある場合、割当て性能計算部２３１は、記憶装置２００の性能に余裕があると判断する。そして、割当て性能計算部２３１は、性能目標値保存部２２２に保存されているＩＯＰＳ目標値と処理ＩＯＰＳの大きい方を、新規の論理ディスク２４１毎のＩＯＰＳ目標値とする。
【００９７】
続いて、情報処理装置１００及び記憶装置２００の動作について図面を参照して説明する。
【００９８】
図６ないし図９は、本実施形態の動作の一例を示すシーケンス図である。
【００９９】
まず、割当て性能送信部２２１は、性能目標値保存部２２２から、論理ディスク２４１毎のＩＯＰＳ目標値を取得する（Ｂ１０１）。
【０１００】
割当て性能送信部２２１は、取得したＩＯＰＳ目標値を、論理ディスク２４１の初期のＩＯＰＳ目標値として、ＱｏＳ機能実行部２１０に送信（通知）する（Ｂ１０２）。
【０１０１】
さらに、割当て性能送信部２２１は、取得したＩＯＰＳ目標値を、情報処理装置１００の割当て性能受信部１２２に送信する（Ｂ１０３）。
【０１０２】
割当て性能受信部１２２は、受信した論理ディスク２４１のＩＯＰＳ目標値を割当て性能計算部１２１に送る。
【０１０３】
割当て性能計算部１２１は、目標性能係数保存部１２５から目標性能係数を取得する（Ａ１０４）。
【０１０４】
そして、割当て性能計算部１２１は、論理ディスク２４１のＩＯＰＳ目標値と、目標性能係数とを基に、ＶＭ１４１毎の性能目標値（ＩＯＰＳ目標値）を計算する（Ａ１０５）。
【０１０５】
次に、割当て性能計算部１２１は、計算したＶＭ１４１毎のＩＯＰＳ目標値を、ＱｏＳ機能実行部１１０に送信する（Ａ１０６）。
【０１０６】
ＱｏＳ機能実行部１１０は、ＶＭ１４１毎のＩＯＰＳ目標値（性能目標値）を超えないように、ＶＭ１４１からのＩＯ要求を、ＩＯ送信処理部１４２を介して、記憶装置２００のＩＯ受信処理部２４２に送信する（Ａ１０７）。
【０１０７】
また、ＩＯ状況計測部１２４は、ＶＭ１４１毎に、ＱｏＳ機能実行部１１０におけるＩＯ要求の回数（要求ＩＯ回数）と、ＩＯ送信の回数（送信ＩＯ回数）とをカウントする。そして、ＩＯ状況計測部１２４は、要求ＩＯ回数と送信ＩＯ回数とについて単位時間当たりの回数（性能：要求ＩＯＰＳと送信ＩＯＰＳ）を計算する（Ａ１０８）。
【０１０８】
さらに、ＩＯ状況計測部１２４は、計算した要求ＩＯＰＳと送信ＩＯＰＳとを、ＩＯ量保存部１２３に保存する（Ａ１０９）。
【０１０９】
一方、記憶装置２００のＩＯ受信処理部２４２は、ＩＯ送信処理部１４２から送信されたＩＯ要求を受信する（Ｂ１１０）。
【０１１０】
そして、ＱｏＳ機能実行部２１０は、受信したＩＯ要求を、保持している（設定された）ＩＯＰＳ目標値と、要求ＩＯＰＳの達成度合いとに基づいて、受信したＩＯ要求の優先処理を実行する。そして、ＱｏＳ機能実行部２１０は、ＩＯ要求を論理ディスク２４１に送信する（Ｂ１１１）。
【０１１１】
さらに、ＩＯ状況計測部２３３は、論理ディスク２４１毎に、ＱｏＳ機能実行部２１０におけるＩＯ要求の受信の回数とＩＯ処理の回数とをカウントする。そして、ＩＯ状況計測部２３３は、単位時間当たりの回数（要求ＩＯＰＳと送信ＩＯＰＳ）を計算する（Ｂ１１２）。
【０１１２】
ＩＯ状況計測部２３３は、計算した要求ＩＯＰＳと送信ＩＯＰＳを、ＩＯ量保存部２３２に保存する（Ｂ１１３）。
【０１１３】
割当て性能計算部２３１は、定期的又は所定のタイミングで、保存された論理ディスク２４１毎の、要求ＩＯＰＳと、送信ＩＯＰＳと、ＩＯＰＳ目標値（性能目標値）とを取得する。そして、割当て性能計算部２３１は、取得した値を基に、論理ディスク２４１毎のＩＯＰＳ目標値を再計算する（Ｂ１１４）。なお、割当て性能計算部２３１は、必要に応じて、性能目標値保存部２２２が保存する性能目標値を用いても良い。
【０１１４】
そして、割当て性能計算部２３１は、再計算した論理ディスク２４１毎のＩＯＰＳ目標値を、割当て性能送信部２２１に送信し、ＩＯ量保存部２３２に保存する（Ｂ１１５）。
【０１１５】
そして、割当て性能送信部２２１は、受信した論理ディスク２４１のＩＯＰＳ目標値を、ＱｏＳ機能実行部２１０に送信する（Ｂ１１６）。
【０１１６】
さらに、割当て性能送信部２２１は、論理ディスク２４１のＩＯＰＳ目標値を、割当て性能受信部１２２に送信（通知）する（Ｂ１１７）。
【０１１７】
割当て性能受信部１２２は、受信した論理ディスク２４１毎のＩＯＰＳ目標値を、割当て性能計算部１２１に送信する。
【０１１８】
割当て性能計算部１２１は、次の情報を基に、ＶＭ１４１毎のＩＯＰＳ目標値を再計算する（Ａ１１８）。基とする情報は、次のとおりである。
【０１１９】
（１）受信した論理ディスク２４１のＩＯＰＳ目標値
（２）前回受信した論理ディスク２４１のＩＯＰＳ目標値
（３）ＩＯ量保存部１２３に保存されている要求ＩＯＰＳと送信ＩＯＰＳとＶＭ１４１毎のＩＯＰＳ目標値
（４）目標性能係数
そして、割当て性能計算部１２１は、計算したＶＭ１４１毎のＩＯＰＳ目標値を、ＱｏＳ機能実行部１１０に送信する（Ａ１１９）。また、割当て性能計算部１２１は、ＩＯＰＳ目標値をＩＯ量保存部１２３に保存する。
【０１２０】
情報処理装置１００は、Ａ１０７に戻る。そして、ＱｏＳ機能実行部１１０は、ＩＯＰＳ目標値を超えないように、ＩＯ要求を、記憶装置２００に送信する。そして、記憶装置２００は、Ｂ１１０のＩＯ要求を受信後の動作に戻る。
【０１２１】
情報処理装置１００と記憶装置２００は、Ａ１０７−Ａ１１９及びＢ１１０−Ｂ１１７の動作を繰り返す。
【０１２２】
このように、記憶装置２００は、受理ＩＯＰＳと処理ＩＯＰＳを基に、論理ディスク２４１のＩＯＰＳ目標値を計算する。そして、記憶装置２００は、計算したＩＯＰＳ目標値を基に、論理ディスク２４１のＱｏＳ機能を実現する。さらに、記憶装置２００は、計算した論理ディスク２４１毎のＩＯＰＳ目標値を情報処理装置１００に送信する。
【０１２３】
情報処理装置１００は、論理ディスク２４１毎のＩＯＰＳ目標値を用いて、ＶＭ１４１毎のＩＯＰＳ目標値を計算し、ＱｏＳ機能を実行する。
【０１２４】
つまり、情報処理装置１００は、記憶装置２００の状況を基に、ＶＭ１４１のＱｏＳ機能を実行する。
【０１２５】
次に、本実施形態の効果について説明する。
【０１２６】
本発明の第１の実施形態の情報処理システム１０の情報処理装置１００は、負荷が過大なＶＭ１４１以外のＶＭ１４１において、ＩＯ性能を劣化させないとの効果を得ることができる。
【０１２７】
その理由は、次のとおりである。
【０１２８】
記憶装置２００は、論理ディスク２４１のＩＯＰＳ目標値を情報処理装置１００に送信する。ここで、送信されたＩＯＰＳ目標値は、論理ディスク２４１が処理可能な性能値である。
【０１２９】
情報処理装置１００の割当て性能受信部１２２は、記憶装置２００から論理ディスク２４１のＩＯＰＳ目標値（記憶装置２００で処理可能なＩＯＰＳの値）を受信する。そして、割当て性能計算部１２１が、論理ディスク２４１のＩＯＰＳ目標値を考慮して、ＶＭ１４１のＩＯＰＳ目標値を計算する。そのため、情報処理装置１００のＱｏＳ機能実行部１１０は、記憶装置２００が処理可能な程度に、問題のないＶＭ１４１のＩＯ要求を抑制する。このように、情報処理装置１００は、記憶装置２００が、ＩＯ処理の性能を維持できる範囲で、ＶＭ１４１のＩＯ要求を制御するためである。
【０１３０】
また、第１の実施形態の情報処理システム１０の情報処理装置１００は、問題のあるＶＭ１４１を、選択的に抑制できることである。
【０１３１】
その理由は、次のとおりである。
【０１３２】
情報処理装置１００のＩＯ状況計測部１２４は、ＱｏＳ機能実行部１１０におけるＶＭ１４１のＩＯ要求の状況を監視する。そして、割当て性能計算部１２１は、負荷が大きい、つまり、問題があるＶＭ１４１のＩＯ要求を選択的に抑制するように、ＩＯＰＳ目標値を計算する。そして、ＱｏＳ機能実行部１１０は、割当て性能計算部１２１の計算結果を基にＱｏＳ機能を実現するためである。
【０１３３】
このように、本実施形態に係る情報処理装置１００及び記憶装置２００を含む情報処理システム１０は、記憶装置２００に対するＩＯ要求を適切に制御できる。
【０１３４】
（変形例）
以上説明した情報処理装置１００は、次のように構成される。
【０１３５】
例えば、情報処理装置１００の各構成部は、ハードウェア回路で構成されても良い。
【０１３６】
また、情報処理装置１００は、各構成部をネットワーク又はバスを介して接続した複数の情報処理装置として構成されても良い。
【０１３７】
また、情報処理装置１００は、複数の構成部を１つのハードウェアで構成しても良い。
【０１３８】
また、情報処理装置１００は、ＣＰＵ（Central Processing Unit）と、ＲＯＭ（Read Only Memory）と、ＲＡＭ（Random Access Memory）とを含むコンピュータ装置として実現されても良い。情報処理装置１００は、上記構成に加え、さらに、入出力接続回路（ＩＯＣ：Input Output Circuit）と、ネットワークインターフェース回路（ＮＩＣ：Network Interface Circuit）とを含むコンピュータ装置として実現されても良い。
【０１３９】
図１０は、変形例に係る情報処理装置６００の構成の一例を示すブロック図である。
【０１４０】
情報処理装置６００は、ＣＰＵ６１０と、ＲＯＭ６２０と、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを含み、コンピュータを構成している。
【０１４１】
ＣＰＵ６１０は、ＲＯＭ６２０からプログラムを読み込む。そして、ＣＰＵ６１０は、読み込んだプログラムに基づいて、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを制御する。そして、ＣＰＵ６１０を含むコンピュータは、これらの構成を制御し、図２に示す、情報処理装置１００としての各機能を実現する。ここで、各機能とは、ＱｏＳ機能実行部１１０と、割当て性能計算部１２１と、割当て性能受信部１２２と、ＩＯ状況計測部１２４と、ＩＯ送信処理部１４２と、ＶＭ１４１との機能である。ＣＰＵ６１０は、各機能を実現する際に、ＲＡＭ６３０又は内部記憶装置６４０を、プログラムの一時記憶として使用しても良い。
【０１４２】
また、ＣＰＵ６１０は、プログラムを記憶したコンピュータ読み取り可能な記憶媒体７００が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでも良い。あるいは、ＣＰＵ６１０は、ＮＩＣ６８０を介して、図示しない外部の装置からプログラムを受け取っても良い。さらに、ＣＰＵ６１０は、読み込んだプログラム又は受け取ったプログラムをＲＡＭ６３０に保存し、保存したプログラムを基に動作しても良い。
【０１４３】
ＲＯＭ６２０は、ＣＰＵ６１０が実行するプログラム及び固定的なデータを記憶する。ＲＯＭ６２０は、例えば、Ｐ−ＲＯＭ（Programable-ROM）又はフラッシュＲＯＭである。
【０１４４】
ＲＡＭ６３０は、ＣＰＵ６１０が実行するプログラム及びデータを一時的に記憶する。ＲＡＭ６３０は、例えば、Ｄ−ＲＡＭ（Dynamic-RAM）である。
【０１４５】
内部記憶装置６４０は、情報処理装置６００が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置６４０は、ＩＯ量保存部１２３と、目標性能係数保存部１２５として動作する。また、内部記憶装置６４０は、ＣＰＵ６１０の一時記憶装置として動作しても良い。内部記憶装置６４０は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Solid State Drive）又はディスクアレイ装置である。
【０１４６】
ここで、ＲＯＭ６２０と内部記憶装置６４０は、不揮発性の記憶媒体である。一方、ＲＡＭ６３０は、揮発性の記憶媒体である。そして、ＣＰＵ６１０は、ＲＯＭ６２０、内部記憶装置６４０、又は、ＲＡＭ６３０に記憶されているプログラムを基に動作可能である。つまり、ＣＰＵ６１０は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。
【０１４７】
ＩＯＣ６５０は、ＣＰＵ６１０と、入力機器６６０及び表示機器６７０とのデータを仲介する。ＩＯＣ６５０は、例えば、ＩＯインターフェースカード又はＵＳＢ（Universal Serial Bus）カードである。
【０１４８】
入力機器６６０は、情報処理装置６００の操作者からの入力指示を受け取る機器である。入力機器６６０は、例えば、キーボード、マウス又はタッチパネルである。
【０１４９】
表示機器６７０は、情報処理装置６００の操作者に情報を表示する機器である。表示機器６７０は、例えば、液晶ディスプレイである。
【０１５０】
ＮＩＣ６８０は、ネットワークを介した図示しない外部の装置とのデータのやり取りを中継する。ＮＩＣ６８０は、ＩＯ送信処理部１４２としての機能を実現しても良い。ＮＩＣ６８０は、例えば、ＬＡＮ（Local Area Network）カードである。
【０１５１】
このように構成された情報処理装置６００は、情報処理装置１００と同様の効果を得ることができる。
【０１５２】
その理由は、情報処理装置６００のＣＰＵ６１０が、プログラムに基づいて情報処理装置１００と同様の機能を実現できるためである。
【０１５３】
また、記憶装置２００は、情報処理装置１００と同様に、ハードウェア回路を基に、構成可能である。
【０１５４】
例えば、記憶装置２００の各構成部は、ハードウェア回路で構成されても良い。
【０１５５】
また、記憶装置２００は、各構成部をネットワーク又はバスを介して接続した複数の情報処理装置として構成されても良い。
【０１５６】
また、記憶装置２００は、複数の構成部を１つのハードウェアで構成しても良い。
【０１５７】
また、記憶装置２００は、図６に示す情報処理装置６００と同様のコンピュータ装置として実現されても良い。つまり、記憶装置２００は、ＣＰＵ６１０と、ＲＯＭ６２０と、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを含むコンピュータを用いて構成されても良い。この場合、記憶装置２００を構成するコンピュータは、これらの構成を制御し、図５に示す、記憶装置２００としての各機能を実現する。ここで、各機能とは、ＱｏＳ機能実行部２１０と、割当て性能送信部２２１と、割当て性能計算部２３１と、ＩＯ状況計測部２３３と、論理ディスク２４１と、ＩＯ受信処理部２４２との機能である。また、記憶装置２００に含まれる内部記憶装置６４０は、性能目標値保存部２２２と、ＩＯ量保存部２３２と、論理ディスク２４１との機能を実現する。
【０１５８】
このように構成された情報処理装置６００は、記憶装置２００と同様の効果を得ることができる。
【０１５９】
その理由は、情報処理装置６００のＣＰＵ６１０が、プログラムに基づいて記憶装置２００と同様の機能を実現できるためである。
【０１６０】
＜第２の実施形態例＞
次に、本発明の第２の実施形態に係る情報処理システム１０について説明する。本実施形態の情報処理システム１０は、第１の実施形態と同様に、１つ又は複数の情報処理装置１０１と、１つ又は複数の記憶装置２０１とを含む。
【０１６１】
続いて、本実施形態における情報処理装置１０１と記憶装置２０１の構成について図面を参照して説明する。
【０１６２】
図１１は、第２の実施形態に係る情報処理装置１０１の構成の一例を示すブロック図である。図１１に示すように、本実施形態の情報処理装置１０１は、第１の実施形態の情報処理装置１００の構成に加え、ＩＯ状況履歴保存部１２６と、ＩＯ抑制レベル決定部１２７とを含む。
【０１６３】
図１２は、第２の実施形態に係る記憶装置２０１の構成の一例を示すブロック図である。図１２に示すように、本実施形態の記憶装置２０１は、第１の実施形態の記憶装置２００の構成に加え、ＩＯ状況履歴保存部２１５と、ＩＯ抑制レベル決定部２１６とを含む。
【０１６４】
ＩＯ状況履歴保存部１２６は、ＩＯ状況計測部１２４が計測した、ＶＭ１４１毎の要求ＩＯＰＳと送信ＩＯＰＳとＩＯＰＳ目標値との履歴を保存する。
【０１６５】
ＩＯ抑制レベル決定部１２７は、ＩＯ状況履歴保存部１２６が保存するＶＭ１４１毎の要求ＩＯＰＳと送信ＩＯＰＳとＩＯＰＳ目標値との履歴を基に、ＱｏＳ機能実行部１１０に、ＶＭ１４１毎の抑制の程度（度合い、レベル）を決定する。そして、ＩＯ抑制レベル決定部１２７は、決定したＶＭ１４１毎の抑制のレベルをＱｏＳ機能実行部１１０に指示する。つまり、ＩＯ抑制レベル決定部１２７は、性能の履歴を基に、ＱｏＳ機能実行部１１０において抑制するＶＭ１４１のレベルを決定する。
【０１６６】
ここで、情報処理装置１０１は、ＩＯＰＳ目標値を超えたときの抑制の度合い（レベル）を、情報処理システム１０に合わせて設定すれば良い。例えば、情報処理装置１０１は、次のように、抑制の度合いを決定しても良い。
【０１６７】
ＩＯ抑制レベル決定部１２７は、所定の間隔（サイクル）の履歴を確認する。例えば、１回の履歴の時間を１０秒とし、使用する履歴の回数を１０回とすると、ＩＯ抑制レベル決定部１２７は、１００秒間の履歴を確認する。ここで、要求ＩＯＰＳと送信ＩＯＰＳが等しい場合、ＩＯ要求の抑制が発生していない。そこで、ＩＯ抑制レベル決定部１２７は、ＱｏＳ機能実行部１１０に、次のサイクルにおいて、所定の範囲でＩＯＰＳ目標値を超えたＩＯ送信（ＩＯ要求）を許可するように指示する。（ただし、ＩＯＰＳ目標値を超えた分のＩＯ要求の優先度は、下げておくことが望ましい。）その指示を基に、ＱｏＳ機能実行部１１０は、送信ＩＯＰＳがＩＯＰＳ目標値を超えていないＶＭ１４１からのＩＯ要求がない場合、保持している（処理を待っている）ＶＭ１４１のＩＯ要求を、抑制せずに送信する。
【０１６８】
このように、ＩＯ抑制レベル決定部１２７は、所定に時間内でＩＯ要求の発生量を基に、抑制のレベルを判断する。そのため、ＩＯ抑制レベル決定部１２７は、一時的にＩＯ要求が増加したＶＭ１４１を抑制しない。
【０１６９】
これに対し、恒常的にＩＯ要求が多いＶＭ１４１は、ＩＯ抑制レベル決定部１２７が履歴を用いても、ＩＯ要求が抑制される。つまり、ＩＯ抑制レベル決定部１２７は、恒常的にＩＯ要求が多いＶＭ１４１を抑制する。
【０１７０】
さらに、ＩＯ抑制レベル決定部１２７は、履歴を用いる。そのため、ＩＯ抑制レベル決定部１２７は、漸減的にＶＭ１４１の抑制を適用し、漸増的に抑制の解除を適用する。つまり、本実施形態において、ＶＭ１４１の抑制及び抑制の解除は、漸減及び漸増する。その結果、ＶＭ１４１の動作は、安定する。
【０１７１】
なお、ＩＯ抑制レベル決定部１２７は、過去の履歴におけるＩＯ要求の抑制された回数を基に、抑制の程度（レベル）を決めても良い。
【０１７２】
あるいは、ＩＯ抑制レベル決定部１２７は、過去の送信ＩＯＰＳとＩＯＰＳ目標値との間の値の範囲内で、最大ＩＯＰＳを設定しても良い。そして、ＩＯ抑制レベル決定部１２７は、ＱｏＳ機能実行部１１０に、設定した最大ＩＯＰＳを超えるＩＯ要求について、他のＶＭ１４１のＩＯ要求がない場合でも送信しないように指示しても良い。
【０１７３】
ＩＯ状況履歴保存部２１５は、ＩＯ状況計測部２３３が計測した、論理ディスク２４１毎の受理ＩＯＰＳと処理ＩＯＰＳとＩＯＰＳ目標値との履歴を保存する。
【０１７４】
ＩＯ抑制レベル決定部２１６は、ＩＯ状況履歴保存部２１５が保存した論理ディスク２４１毎の受理ＩＯＰＳと処理ＩＯＰＳとＩＯＰＳ目標値との履歴を基に、ＱｏＳ機能実行部２１０での、論理ディスク２４１毎の抑制の度合い（程度、レベル）を決定する。そして、ＩＯ抑制レベル決定部２１６は、決定した抑制の度合いをＱｏＳ機能実行部２１０に指示する。つまり、ＩＯ抑制レベル決定部２１６は、いずれかの論理ディスク２４１がＩＯＰＳ目標値を超えたとき、ＱｏＳ機能実行部２１０に、ＩＯＰＳ目標値を超えた論理ディスク２４１の抑制を指示する。
【０１７５】
なお、ＩＯ抑制レベル決定部２１６は、ＩＯ抑制レベル決定部１２７と同様の手法を基に、抑制を決定すれば良い。そのため、ＩＯ抑制レベル決定部２１６の抑制の詳細な説明を省略する。
【０１７６】
このように、ＩＯ抑制レベル決定部２１６は、ＩＯ抑制レベル決定部１２７と同様に動作するため、論理ディスク２４１の動作も、安定する。
【０１７７】
なお、情報処理装置１０１及び記憶装置２０１は、図１０に示すコンピュータを用いて構成されても良い。
【０１７８】
次に、本実施形態の効果について説明する。
【０１７９】
第２の実施形態の情報処理システム１０の情報処理装置１０１は、第１の実施形態の効果に加え、ＶＭ１４１をより安定的に動作させる効果を得ることができる。
【０１８０】
その理由は、次のとおりである。
【０１８１】
情報処理装置１０１のＩＯ状況履歴保存部１２６が、ＩＯ要求に対する履歴を保存する。そして、ＩＯ抑制レベル決定部１２７は、所定の時間の履歴を基に、ＱｏＳ機能実行部１１０におけるＶＭ１４１の抑制を決定する。そのため、ＩＯ抑制レベル決定部１２７は、一時的にＩＯ要求が増加したＶＭ１４１を抑制しない。一方、ＩＯ抑制レベル決定部１２７は、恒常的にＩＯ要求が多いＶＭ１４１を抑制する。また、ＩＯ抑制レベル決定部１２７は、履歴を用いるため、ＶＭ１４１の抑制が漸減的に進む。つまり、本実施形態の情報処理装置１０１は、ＶＭ１４１のＩＯ性能を緩やかに変化させる。その結果、ＶＭ１４１の動作が、安定になる。
【０１８２】
また、第２の実施形態の情報処理システム１０の記憶装置２０１は、論理ディスク２４１の動作を安定させる効果を得ることができる。
【０１８３】
その理由は、ＩＯ抑制レベル決定部２１６が、ＩＯ抑制レベル決定部１２７のＶＭ１４１に対する動作と同様に、履歴を用いて論理ディスク２４１の抑制を実行するためである。
【０１８４】
＜第３の実施形態＞
次に、本発明の第３の実施形態に係る情報処理システム１０について説明する。本実施形態の情報処理システム１０は、１つ又は複数の情報処理装置１００と、１つ又は複数の記憶装置２０２とを含む。
【０１８５】
本実施形態における情報処理装置１００は、第１の実施形態と同様のため、詳細な説明を省略する。
【０１８６】
本実施形態における記憶装置２０２の構成について図面を参照して説明する。
【０１８７】
図１３は、第３の実施形態に係る記憶装置２０２の構成の一例を示すブロック図である。
【０１８８】
図１３に示すように、本実施形態の記憶装置２０２は、第１の実施形態の記憶装置２００の構成に加え、論理構成保存部２３５と、ボトルネック性能監視部２３６と、ＩＯ抑制範囲決定部２３７とを含む。
【０１８９】
論理構成保存部２３５は、記憶装置２０２の装置性能のボトルネックに関連する可能性がある記憶装置２０２に含まれる構成と、その構成の性能の影響を受ける論理ディスク２４１との情報を保存する。
【０１９０】
ボトルネック性能監視部２３６は、記憶装置２０２内における性能のボトルネックとなる構成の性能状態を監視する。そして、ボトルネック性能監視部２３６は、いずれかの構成において負荷が高くなった場合（ボトルネックが発生した場合）、負荷が高くなった構成（ボトルネックの構成）をＩＯ抑制範囲決定部２３７に通知する。
【０１９１】
ＩＯ抑制範囲決定部２３７は、論理構成保存部２３５が保持する情報を基に、ボトルネック性能監視部２３６から通知された負荷の高い構成に関連する論理ディスク２４１を判別（決定）する。そして、ＩＯ抑制範囲決定部２３７は、割当て性能計算部２３１に、判別した全ての論理ディスク２４１においてボトルネックを解消するように、ＩＯＰＳ目標値の再計算を指示する。
【０１９２】
割当て性能計算部２３１は、負荷の高い構成要素に関連する論理ディスク２４１に対する適切なＩＯＰＳ目標値を計算する。そして、割当て性能計算部２３１は、計算したＩＯＰＳ目標値を、割当て性能送信部２２１に送信する。割当て性能送信部２２１は、受信したＩＯＰＳ目標値をＱｏＳ機能実行部２１０に設定する。ＱｏＳ機能実行部２１０は、再計算結果のＩＯＰＳ目標値を基に、論理ディスク２４１のＱｏＳ機能を実行する。また、割当て性能送信部２２１は、割当て性能受信部１２２に、再計算結果のＩＯＰＳ目標値を送信する。
【０１９３】
情報処理装置１００は、通知を受けた論理ディスク２４１のＩＯＰＳ目標値を用いて、ＶＭ１４１のＩＯＰＳ目標値を再計算する。
【０１９４】
なお、記憶装置２０２は、第１の実施形態の記憶装置２００と同様に、ハードウェア回路、複数の装置、又は、図１０に示すコンピュータを用いて構成されても良い。
【０１９５】
次に、本実施形態の効果について説明する。
【０１９６】
第３の実施形態の情報処理システム１０の記憶装置２０２は、ボトルネックとなる構成に関連する論理ディスク２４１の性能を改善する効果を得ることができる。
【０１９７】
その理由は、次のとおりである。
【０１９８】
記憶装置２０２のボトルネック性能監視部２３６が、ボトルネックとなる構成を監視する。ＩＯ抑制範囲決定部２３７は、ボトルネックとなる構成に関連する論理ディスク２４１を判別する。そして、割当て性能計算部２３１が、ボトルネックを解消するように、ボトルネックとなる構成に関連する論理ディスク２４１のＩＯＰＳ目標値を再計算する。そして、ＱｏＳ機能実行部２１０が、再計算されたＩＯＰＳ目標値を基に、ＱｏＳ機能を実行するためである。さらに、情報処理装置１００が、新しい論理ディスク２４１のＩＯＰＳ目標値を基にＶＭ１４１のＩＯＰＳ目標値を設定するためである。
【０１９９】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０２００】
１０    情報処理システム
１００    情報処理装置
１０１    情報処理装置
１１０    ＱｏＳ機能実行部
１２１    割当て性能計算部
１２２    割当て性能受信部
１２３    ＩＯ量保存部
１２４    ＩＯ状況計測部
１２５    目標性能係数保存部
１２６    ＩＯ状況履歴保存部
１２７    ＩＯ抑制レベル決定部
１４１    ＶＭ
１４２    ＩＯ送信処理部
２００    記憶装置
２０１    記憶装置
２０２    記憶装置
２１０    ＱｏＳ機能実行部
２１５    ＩＯ状況履歴保存部
２１６    ＩＯ抑制レベル決定部
２２１    割当て性能送信部
２２２    性能目標値保存部
２３１    割当て性能計算部
２３２    ＩＯ量保存部
２３３    ＩＯ状況計測部
２３５    論理構成保存部
２３６    ボトルネック性能監視部
２３７    ＩＯ抑制範囲決定部
２４１    論理ディスク
２４２    ＩＯ受信処理部
３００    ネットワーク
６００    情報処理装置
６１０    ＣＰＵ
６２０    ＲＯＭ
６３０    ＲＡＭ
６４０    内部記憶装置
６５０    ＩＯＣ
６６０    入力機器
６７０    表示機器
６８０    ＮＩＣ
７００    記憶媒体
【図１】
2015184707.tif 000003
【図２】
2015184707.tif 000004
【図３】
2015184707.tif 000005
【図４】
2015184707.tif 000006
【図５】
2015184707.tif 000007
【図６】
2015184707.tif 000008
【図７】
2015184707.tif 000009
【図８】
2015184707.tif 000010
【図９】
2015184707.tif 000011
【図１０】
2015184707.tif 000012
【図１１】
2015184707.tif 000013
【図１２】
2015184707.tif 000014
【図１３】
2015184707.tif 000015