(57)【要約】【課題】利用者の業務に影響を与えないことが確認された期間をＬＭ回避期間の除外期間として特定すること。【解決手段】負荷モデル作成部６１が、対象ＶＭのＬＭ回避期間に低負荷期間があるか否かを低負荷閾値を用いて判定する。そして、対象ＶＭのＬＭ回避期間に低負荷期間がある場合に、グルーピング部６２が、ＬＭ回避期間の負荷モデルの類似度でＶＭをグルーピングする。そして短縮部６４が、対象ＶＭを含むグループの過去のＬＭの成否と該ＬＭが行われたときの負荷の実績に基づいて、ＬＭ回避期間から除外する除外期間を特定する。【選択図】図４
2020086990.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
１つの物理マシン上で稼働している複数の仮想マシンそれぞれに対するユーザがライブマイグレーションの回避を希望するライブマイグレーション回避期間を取得し、
前記複数の仮想マシンの１つである第１仮想マシンに対するライブマイグレーション回避期間の中で、負荷が第１閾値以下の低負荷期間があるか否かを判定し、
前記低負荷期間があると判定した場合に、前記複数の仮想マシンの中で、前記第１仮想マシンと利用者、生成元のソフトウェアイメージ及びライブマイグレーション回避期間が同じであり、ライブマイグレーション回避期間の負荷が類似する仮想マシンを、前記第１仮想マシンと一緒にしてグループを作成し、
前記グループに含まれる仮想マシンについて過去に行われたライブマイグレーションの成否と該ライブマイグレーションが行われたときの負荷の実績に基づいて、前記ライブマイグレーション回避期間から除外する除外期間を特定する
処理を実行させることを特徴とするライブマイグレーション調整プログラム。
【請求項２】
前記除外期間を特定する処理は、
前記グループに含まれる仮想マシンの負荷に基づいて前記ライブマイグレーション回避期間における前記グループとしてのグループ負荷を計算し、
ライブマイグレーションが成功した割合が第２閾値以上である負荷の閾値として第３閾値を特定し、
前記グループ負荷が前記第３閾値以下である期間を前記除外期間として特定することを特徴とする請求項１に記載のライブマイグレーション調整プログラム。
【請求項３】
前記第２閾値は、１００％であることを特徴とする請求項２に記載のライブマイグレーション調整プログラム。
【請求項４】
前記第３閾値を特定する処理は、前記グループに含まれる仮想マシンについてライブマイグレーションの作業ログと負荷のログを突き合わせることで負荷の値とライブマイグレーションの成否との対応付けを複数の負荷について行い、該対応付けに基づいて負荷の値毎にライブマイグレーションの成功率を計算して前記第３閾値を特定することを特徴とする請求項２に記載のライブマイグレーション調整プログラム。
【請求項５】
前記低負荷期間があるか否かを判定する処理で用いられ第１閾値は、前記ライブマイグレーション回避期間以外の前記第１仮想マシンの負荷を用いて算出されることを特徴とする請求項１〜４のいずれか１つに記載のライブマイグレーション調整プログラム。
【請求項６】
前記グループを作成する処理は、前記ライブマイグレーション回避期間の複数の時点の負荷のベクトルの類似度に基づいて仮想マシンをクラスタリングすることによって前記グループを作成することを特徴とする請求項１〜５のいずれか１つに記載のライブマイグレーション調整プログラム。
【請求項７】
コンピュータが、
１つの物理マシン上で稼働している複数の仮想マシンそれぞれに対するユーザがライブマイグレーションの回避を希望するライブマイグレーション回避期間を取得し、
前記複数の仮想マシンの１つである第１仮想マシンに対するライブマイグレーション回避期間の中で、負荷が第１閾値以下の低負荷期間があるか否かを判定し、
前記低負荷期間があると判定した場合に、前記複数の仮想マシンの中で、前記第１仮想マシンと利用者、生成元のソフトウェアイメージ及びライブマイグレーション回避期間が同じであり、ライブマイグレーション回避期間の負荷が類似する仮想マシンを、前記第１仮想マシンと一緒にしてグループを作成し、
前記グループに含まれる仮想マシンについて過去に行われたライブマイグレーションの成否と該ライブマイグレーションが行われたときの負荷の実績に基づいて、前記ライブマイグレーション回避期間から除外する除外期間を特定する
処理を実行することを特徴とするライブマイグレーション調整方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ライブマイグレーション調整プログラム及びライブマイグレーション調整方法に関する。
【背景技術】
【０００２】
クラウドシステムでは、利用者の業務を実行する仮想マシン（ＶＭ：Virtual  Machine）が動作する物理マシン（ＰＭ：Physical  Machine）に対して定期的に計画メンテナンスが行われる。計画メンテナンス時には、ＶＭは、停止されるか別のＰＭに無停止移動（ＬＭ：Live  Migration：ライブマイグレーション）される。
【０００３】
図１７は、計画メンテナンス時のＬＭを説明するための図である。図１７（ａ）に示すように、最初の状態では、３台のＰＭ２のうち、右のＰＭ２が空ＰＭ２であるので、右のＰＭ２のメンテナンスが行われる。ここで、空ＰＭ２とは、動作するＶＭ２１がないＰＭ２である。
【０００４】
そして、右のＰＭ２のメンテナンスが終了すると、真ん中のＰＭ２で動作する３台のＶＭ２１が右のＰＭ２にＬＭされ、図１７（ｂ）に示すように、真ん中のＰＭ２が空ＰＭ２となる。そして、真ん中のＰＭ２のメンテナンスが行われる。
【０００５】
そして、真ん中のＰＭ２のメンテナンスが終了すると、左のＰＭ２で動作する３台のＶＭ２１が真ん中のＰＭ２にＬＭされ、図１７（ｃ）に示すように、左のＰＭ２が空ＰＭ２となる。そして、左のＰＭ２のメンテナンスが行われる。
【０００６】
このように、計画メンテナンスでは、メンテナンス対象のＰＭ２で動作するＶＭ２１を全て他のＰＭ２にＬＭするため、全てのＶＭ２１のＬＭをできるだけ短時間に行う必要がある。
【０００７】
一方、ＬＭによってＶＭ２１の性能低下がおき、利用者の業務に影響が出ることがあるので、利用者は、ＬＭの回避を要望する期間としてＬＭ回避期間を指定する。このため、計画メンテナンス時のＬＭに時間がかかる場合がある。
【０００８】
図１８は、計画メンテナンス時のＬＭに時間がかかる場合を説明するための図である。図１８において、ＶＭ＃１〜ＶＭ＃４はＶＭ２１を表す。図１８（ａ）は、ＶＭ＃１とＶＭ＃３の平均的な一日の負荷を０〜１００％で示す。なお、ＶＭ＃２の平均的な一日の負荷はＶＭ＃１と同じであり、ＶＭ＃４の平均的な一日の負荷はＶＭ＃３と同じであるとする。
【０００９】
ＶＭ＃１とＶＭ＃２については、深夜１時〜２時のみ、サービス規約上の日時メンテナンス期間なので、ＬＭが許可される。したがって、ＶＭ＃１とＶＭ＃２については、ＬＭ回避期間は、図１８（ｂ）に示すように、０時〜１時と２時〜２４時である。また、ＶＭ＃３とＶＭ＃４については、深夜１時〜朝６時にバッチジョブが実行されるため、ＬＭ回避期間は、１時〜６時である。
【００１０】
ＶＭ＃１とＶＭ＃２についてはＬＭ回避期間を除く１時にＬＭが行われ、ＶＭ＃３とＶＭ＃４についてはＬＭ回避期間を除く６時にＬＭが行われる。このため、ＶＭ＃１〜ＶＭ＃４のＬＭには約５時間かかり、ＬＭに時間がかかる。
【００１１】
ただし、利用者は余裕をもってＬＭ回避期間を指定する傾向があるため、ＬＭ回避期間の中にＬＭが行える場合がある。図１８（ａ）において、ＶＭ＃３とＶＭ＃４の負荷は３時〜４時頃低くなるので、例えば３時頃にＶＭ＃３とＶＭ＃４のＬＭを行うことによって、ＬＭに要する時間を短縮することができる。
【００１２】
なお、ＬＭに関しては、ＶＭの所定の指標に関する傾向が類似するＶＭを同じＶＭＭ（VM  Monitor）上に集約し、ＶＭＭ上に集約された各ＶＭの傾向と、各ＶＭが他のＶＭＭ上に移動する場合の移動時間とに基づいて、各ＶＭを移動する期間を決定する技術がある。ここで、ＶＭＭは、複数のＶＭを制御するソフトウェアである。この技術によれば、ＶＭＭ上のＶＭを移動先のＶＭＭへ高速に退避できる。
【００１３】
また、ＬＭの失敗を低減するＶＭ管理装置がある。このＶＭ管理装置は、異なるＰＭ内で稼働する複数のＶＭのそれぞれについて、アクセス数の増減の規則性を示すアクセスパターンを検出し、複数のＶＭの間でアクセスパターンの相関が低い組合せを特定する。そして、このＶＭ管理装置は、特定した組合せと、各ＰＭのリソースの空き容量とに基づいて、移行対象のＶＭ及び移行先のＰＭを決定し、アクセスパターンに基づいて、当該移行対象のＶＭにおけるアクセス数が低下する時間帯を移行予定日時として決定する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】国際公開第２０１３／１４０５２４号
【特許文献２】特開２０１８−５５１６０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
ＬＭ回避期間中にＬＭを行う除外期間を特定する場合、除外期間中にＬＭを行っても利用者の業務に影響が出ないことを確認する必要があり、この確認は過去の実績に基づいて行われる。しかしながら、計画メンテナンスの頻度は、例えば数か月に１度であり、各ＶＭについて影響の確認に十分な実績データを集めることができず、除外期間中のＬＭが利用者の業務に影響を与えないことを確認することができないという問題がある。
【００１６】
本発明は、１つの側面では、利用者の業務に影響を与えないことが確認された期間をＬＭ回避期間の除外期間として特定することを目的とする。
【課題を解決するための手段】
【００１７】
１つの態様では、ライブマイグレーション調整プログラムは、コンピュータに、１つの物理マシン上で稼働している複数の仮想マシンそれぞれに対するユーザがライブマイグレーションの回避を希望するライブマイグレーション回避期間を取得する処理を実行させる。そして、前記ライブマイグレーション調整プログラムは、前記コンピュータに、前記複数の仮想マシンの１つである第１仮想マシンに対するライブマイグレーション回避期間の中で、負荷が第１閾値以下の低負荷期間があるか否かを判定する処理を実行させる。そして、前記ライブマイグレーション調整プログラムは、前記コンピュータに、前記低負荷期間があると判定した場合に、前記第１仮想マシンを含むグループを作成する処理を実行させる。前記グループには、前記複数の仮想マシンの中で、前記第１仮想マシンと利用者、生成元のソフトウェアイメージ及びライブマイグレーション回避期間が同じであり、ライブマイグレーション回避期間の負荷が類似する仮想マシンが含まれる。そして、前記ライブマイグレーション調整プログラムは、前記コンピュータに、前記ライブマイグレーション回避期間から除外する除外期間を特定する処理を実行させる。前記除外期間は、前記グループに含まれる仮想マシンについて過去に行われたライブマイグレーションの成否と該ライブマイグレーションが行われたときの負荷の実績に基づいて特定される。
【発明の効果】
【００１８】
１つの側面では、本発明は、利用者の業務に影響を与えないことが確認された期間をＬＭ回避期間の除外期間として特定することができる。
【図面の簡単な説明】
【００１９】
【図１】図１は、実施例に係るクラウドシステムにおいてＬＭ回避期間中のＬＭによる業務への影響を確認する方法を説明するための図である。
【図２】図２は、実施例に係るクラウドシステムの構成を示す図である。
【図３】図３は、利用者にＬＭ回避要望を入力させる画面の例を示す図である。
【図４】図４は、ＬＭ回避期間短縮部の機能構成を示す図である。
【図５】図５は、Ｖ＃３のシステム統計ログの一例を示す図である。
【図６】図６は、ＬＭ回避期間の負荷モデルの例を示す図である。
【図７】図７は、グルーピングの例を示す図である。
【図８】図８は、Ｖ＃３グループのＬＭ回避期間の負荷モデルの例を示す図である。
【図９】図９は、ＬＭ作業ログとシステム統計ログの突き合わせを説明するための図である。
【図１０】図１０は、除外期間の例を示す図である。
【図１１】図１１は、ＬＭ回避期間の短縮例を示す図である。
【図１２】図１２は、短縮したＬＭ回避期間に基づくＬＭの実施について、利用者に許可を求める画面の例を示す図である。
【図１３】図１３は、メンテナンス調整部によるスケジュール作成処理のフローを示すフローチャートである。
【図１４】図１４は、メンテナンス調整部によるスケジュール調整処理のフローを示すフローチャートである。
【図１５】図１５は、実施例に係るＬＭ回避期間短縮による効果を説明するための図である。
【図１６】図１６は、ＰＭのハードウェア構成を示す図である。
【図１７】図１７は、計画メンテナンス時のＬＭを説明するための図である。
【図１８】図１８は、計画メンテナンス時のＬＭに時間がかかる場合を説明するための図である。
【発明を実施するための形態】
【００２０】
以下に、本願の開示するライブマイグレーション調整プログラム及びライブマイグレーション調整方法の実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例】
【００２１】
まず、実施例に係るクラウドシステムにおいてＬＭ回避期間中のＬＭによる業務への影響を確認する方法について説明する。図１は、実施例に係るクラウドシステムにおいてＬＭ回避期間中のＬＭによる業務への影響を確認する方法を説明するための図である。図１において、ＶＭ＃１〜ＶＭ＃５は１つのＰＭ２で動作するＶＭ２１を表す。また、矢印はＬＭ回避期間を示し、折線は毎日のＶＭ２１の負荷の傾向を示す。負荷は、例えばＣＰＵ使用率、メモリ使用量、ディスクの１秒間のＩ／Ｏリクエスト数、ネットワーク６の１秒間の送信及び受信のパケット数である。
【００２２】
図１に示すように、実施例に係るクラウドシステムは、ＶＭ＃１とＶＭ＃２、及び、ＶＭ＃３とＶＭ＃４がそれぞれ似ているので、似たＶＭ同士をグルーピングする。ここで、実施例に係るクラウドシステムは、似ているか否かを、ＬＭ回避期間、ＬＭ回避期間の負荷の傾向で判断する。例えば、ＶＭ＃５は、ＶＭ＃３及びＶＭ＃４とＬＭ回避期間が同じであるが、ＬＭ回避期間の負荷の傾向が違うので、ＶＭ＃３及びＶＭ＃４と同じグループにグルーピングされない。
【００２３】
そして、実施例に係るクラウドシステムは、同じグループでは、ＬＭの成功の条件（負荷等）も同じと仮定する。例えば、ＶＭ＃３の時点ｔ１、時点ｔ２でＬＭが成功した記録がＬＭ作業ログにあれば、実施例に係るクラウドシステムは、ＶＭ＃４の時点ｔ３、時点ｔ４等の負荷が同じ時点でもＬＭが成功する確率が高いとする。
【００２４】
このように、実施例に係るクラウドシステムは、似たＶＭ同士をグルーピングし、同じグループで負荷が近い時点でのＬＭの実績に基づいて、ＬＭ回避期間中に行うＬＭが利用者の業務に影響を与えるか否かを確認する。したがって、実施例に係るクラウドシステムは、ＬＭの実績が少ないＶＭ２１についても、ＬＭが利用者の業務に影響を与えるか否かを確認することができる。
【００２５】
なお、同じグループにグルーピングされるＶＭ２１は、ＬＭ回避期間とＬＭ回避期間の負荷の傾向が同じである他に、利用者が同じであり、生成元のソフトウェアイメージが同じである必要がある。ここで、ソフトウェアイメージとは、ディスクにインストールされた状態のソフトウェアであり、ＶＭ２１は、ＶＭ２１についての複数のソフトウェアイメージの中から選択されたソフトウェアイメージから生成される。ソフトウェアイメージには、例えば、データベースサーバ用のＶＭ２１のソフトウェアイメージ、Ｗｅｂサーバ用のＶＭ２１のソフトウェアイメージがある。以下の説明では、Ｖ＃１〜Ｖ＃５は、利用者が同じであり、生成元のソフトウェアイメージが同じであるとする。
【００２６】
次に、実施例に係るクラウドシステムの構成について説明する。図２は、実施例に係るクラウドシステムの構成を示す図である。図２に示すように、実施例に係るクラウドシステム１は、３台のＰＭ２と、ＰＭ３と、ストレージ４と、操作端末５とを有する。３台のＰＭ２と、ＰＭ３と、操作端末５とは、ネットワーク６で接続される。なお、クラウドシステム１は、３台より少ない、あるいは多い数のＰＭ２を有してもよい。
【００２７】
ＰＭ２は、コンピュータである。ＰＭ２では、３台のＶＭ２１と、仮想化ソフトウェア２２とが動作する。ＶＭ２１は、仮想のコンピュータである。ＶＭ２１では、利用者の業務が処理される。仮想化ソフトウェア２２は、ＰＭ２を仮想化するソフトウェアである。仮想化ソフトウェア２２は、ＶＭ２１を制御する。仮想化ソフトウェア２２は、他のＰＭ２の仮想化ソフトウェア２２と連携してＬＭを行う。なお、ＰＭ２は、３台より少ない、あるいは多い数のＶＭ２１を動作させてもよい。
【００２８】
ＰＭ３は、コンピュータである。ＰＭ３では、監視部３１と、クラウドコントローラ３２と、メンテナンス調整部３３とが動作する。
【００２９】
監視部３１は、ＶＭ２１のシステム統計ログを収集する。システム統計ログには、例えばＣＰＵ使用率のログ、メモリ使用量のログ、ディスクの１秒間のＩ／Ｏリクエスト数のログ、ネットワーク６の１秒間の送信及び受信のパケット数のログ等の負荷ログがある。
【００３０】
クラウドコントローラ３２は、クラウドシステム１を制御する。クラウドコントローラ３２は、仮想化ソフトウェア２２にＬＭを指示し、ＬＭ作業ログを収集する。
【００３１】
メンテナンス調整部３３は、ＰＭ２のメンテナンススケジュールを作成し、作成したメンテナンススケジュールを基に利用者と調整を行い、全ての利用者から承認を得ると、メンテナンススケジュールを確定する。メンテナンス調整部３３は、ＬＭ回避期間短縮部６０とスケジュール作成部７０とを有する。
【００３２】
ＬＭ回避期間短縮部６０は、ＶＭ毎に、利用者からＬＭ回避要望を受け付け、可能であればＬＭ回避期間を短縮し、ＬＭ回避期間をスケジュール作成部７０に渡す。スケジュール作成部７０は、ＶＭ毎のＬＭ回避期間に基づいてＬＭ及びＰＭ２のメンテナンスのスケジュールを作成する。
【００３３】
なお、監視部３１とクラウドコントローラ３２とメンテナンス調整部３３は、ＶＭ２１で動作してもよい。あるいは、監視部３１とクラウドコントローラ３２とメンテナンス調整部３３は、異なるＰＭ３で動作してもよい。あるいは、監視部３１とクラウドコントローラ３２とメンテナンス調整部３３の一部が別のＰＭ３で動作してもよい。
【００３４】
ストレージ４は、監視部３１により収集されたシステム統計ログ４１、クラウドコントローラ３２により収集されたＬＭ作業ログ４２、スケジュール作成部７０により作成されたメンテナンススケジュール４３を記憶する。また、ストレージ４は、利用者により入力されたＬＭ回避要望４４を記憶する。
【００３５】
操作端末５は、クラウドシステム１の管理者がＰＭ２及びＰＭ３を操作する場合に用いる端末である。
【００３６】
次に、ＬＭ回避期間短縮部６０の詳細について説明する。図３は、利用者にＬＭ回避要望４４を入力させる画面の例を示す図である。図３に示すように、ＬＭ回避期間短縮部６０は、画面３６を表示装置に表示し、ＬＭ回避要望４４の対象となるＶＭ２１と、ＬＭ回避要望が日次であるか週次であるかそれ以外であるかを利用者に選択させる。そして、利用者が「次へ」を押下すると、ＬＭ回避期間短縮部６０は、利用者の選択に基づいて画面３７を表示し、ＬＭを禁止する期間又はＬＭを許可する期間を入力させる。そして、利用者が「登録」を押下すると、ストレージ４にＬＭ回避要望４４として格納する。
【００３７】
図４は、ＬＭ回避期間短縮部６０の機能構成を示す図である。図４に示すように、ＬＭ回避期間短縮部６０は、負荷モデル作成部６１と、グルーピング部６２と、成功率算出部６３と、短縮部６４と、記憶部６５とを有する。
【００３８】
負荷モデル作成部６１は、ＬＭ回避要望４４を受け付け、ＬＭ回避要望４４が指定されたＶＭ２１について、システム統計ログ４１を用いて、ＬＭ回避期間にもかかわらず負荷の低い低負荷期間があるか否かを判定する。ここで、負荷モデル作成部６１は、ＬＭ回避期間でない期間の負荷は低いと仮定し、ＬＭ回避期間でない期間の負荷の平均値μと分散σに基づいて低負荷閾値を計算し、ＬＭ回避期間で負荷が低負荷閾値以下である期間を低負荷期間とする。低負荷閾値は、例えばμ＋３σである。
【００３９】
図５は、Ｖ＃３のシステム統計ログ４１の一例を示す図である。図５は、Ｖ＃３の各時刻の負荷を示す。例えば、ｄａｙ＃１の０時に測定された負荷は５であり、１時に測定された負荷は７０であり、２時に測定された負荷は８０である。図５では、２日間の負荷だけが示されているが、負荷モデル作成部６１は、平均値μと分散σの計算にはより多くの日数の負荷を用いてもよい。
【００４０】
図５では、１時〜６時がＬＭ回避期間である。負荷モデル作成部６１は、ＬＭ回避期間でない期間である０時と７時〜２３時の負荷の平均値μと分散σを計算する。図５では、点線で囲まれた負荷が平均値μと分散σの計算に用いられる。
【００４１】
また、負荷モデル作成部６１は、ＬＭ回避期間の負荷の平均を計算し、ＶＭ２１のＬＭ回避期間の負荷モデルとして記憶部６５に格納する。図６は、ＬＭ回避期間の負荷モデルの例を示す図である。図６は、図５に基づいて作成され、Ｖ＃３のＬＭ回避期間の負荷モデルである。図６に示すように、１時〜６時の負荷の平均値がＬＭ回避期間の負荷モデルである。
【００４２】
そして、負荷モデル作成部６１は、平均値μと分散σ、及び、ＬＭ回避期間の負荷モデルに基づいて、ＬＭ回避期間に低負荷期間があるか否かを判定する。例えば、低負荷閾値＝μ＋３σ＝５であるとすると、図６に示す負荷モデルでは３時及び４時の負荷の平均値が低負荷閾値以下であるので、負荷モデル作成部６１は、Ｖ＃３には、３時〜４時に低負荷期間があると判定する。
【００４３】
グルーピング部６２は、負荷モデル作成部６１によりＬＭ回避期間に低負荷期間があると判定された場合に、低負荷期間があると判定された対象ＶＭ２１を含むグループを作成する。ここで、対象ＶＭ２１とは、ＬＭ回避期間に低負荷期間があるか否かの判定の対象となったＶＭ２１である。グルーピング部６２は、対象ＶＭ２１と利用者が同じであり、同じソフトウェアイメージから生成され、ＬＭ回避期間が同じであり、ＬＭ回避期間の負荷モデルが類似するＶＭ２１を同じグループのＶＭ２１とする。
【００４４】
グルーピング部６２は、ＬＭ回避期間の負荷モデルが類似するか否かの判断を、例えば、ＬＭ回避期間の負荷モデルをベクトルとし、ベクトル同士のコサイン類似度を計算して行う。そして、グルーピング部６２は、コサイン類似度を用いてＶＭ２１のクラスタリングを行うことで、対象ＶＭ２１を含むグループを作成する。クラスタリングのアルゴリズムとしては、例えばｋ−ｍｅａｎｓ法がある。
【００４５】
図７は、グルーピングの例を示す図である。図７に示すように、Ｖ＃３とＶ＃４は、ＬＭ回避期間が同じで、ＬＭ回避期間の負荷モデルが類似するので、Ｖ＃３とＶ＃４は同じグループにグルーピングされる。
【００４６】
また、グルーピング部６２は、グループのＬＭ回避期間の負荷モデルを作成して記憶部６５に格納する。図８は、Ｖ＃３グループのＬＭ回避期間の負荷モデルの例を示す図である。ここで、Ｖ＃３グループとは、対象ＶＭ２１であるＶ＃３を含むグループである。図８では、図７に示したＶ＃３とＶ＃４の負荷の平均値を用いて、Ｖ＃３グループのＬＭ回避期間の負荷モデルが作成される。
【００４７】
成功率算出部６３は、対象ＶＭ２１を含むグループのＶＭ２１について、ＬＭ作業ログ４２とシステム統計ログ４１を突き合わせることで、負荷とＬＭの成否の対応付けを行い、負荷とＬＭの成否の対応付けに基づいて、負荷毎にＬＭの成功率を計算する。
【００４８】
図９は、ＬＭ作業ログ４２とシステム統計ログ４１の突き合わせを説明するための図である。例えば、ＬＭ作業ログ４２において、○月○日の１３：５０にＶＭ＃３がＰＭ＃２にＬＭされ、○月○日の１３：５１にＶＭ＃３のＰＭ２を確認するとＰＭ＃２であるので、○月○日の１３：５０のＬＭは成功している。また、システム統計４１によれば、○月○日の１３：５０に近い○月○日の１４時の負荷は５％であるので、負荷の５％とＬＭの成功が対応付けられる。
【００４９】
成功率算出部６３は、このような突き合わせを対象ＶＭ２１を含むグループのＶＭ２１のＬＭについて行うことで、負荷毎にＬＭの成功率を計算する。そして、成功率算出部６３は、例えば成功率が９０％以上である負荷を特定して記憶部６５に格納する。図９では、ＬＭの成功率が９０％以上の成功負荷閾値として５％が特定される。すなわち、５％以下の負荷の場合には、ＬＭの成功率が９０％以上である。なお、９０％は成功率閾値の一例であり、成功率閾値は他の値でもよい。成功率閾値を１００％とすると、ＬＭが全て成功した成功負荷閾値が特定される。
【００５０】
短縮部６４は、成功率算出部６３により特定された成功負荷閾値以下の除外期間を対象ＶＭ２１を含むグループの負荷モデルに基づいて特定し、特定した除外期間をＬＭ回避期間から除外することで、ＬＭ回避期間を短縮する。図１０は、除外期間の例を示す図である。図１０に示すように、Ｖ＃３グループの負荷モデルから負荷が５％以下の期間として３時〜４時が除外期間として特定される。図１１は、ＬＭ回避期間の短縮例を示す図である。図１１に示すように、ＶＭ＃３及びＶＭ＃４のＬＭ回避期間が１時〜６時から１時〜３時と５時〜６時に短縮される。
【００５１】
また、短縮部６４は、短縮したＬＭ回避期間に基づくＬＭの実施について、利用者に許可を求め、利用者の許可が得られると、ＬＭの実施時間を確定する。図１２は、短縮したＬＭ回避期間に基づくＬＭの実施について、利用者に許可を求める画面の例を示す図である。図１２に示すように、画面３８は、ＶＭ＃３について利用者によるＬＭ回避要望４４は１時〜６時であったが、ＬＭを３時〜４時に実施してもよいか否かの回答を利用者から受け付ける。利用者が希望すれば、画面３９が表示され、ＬＭが実施されるときの負荷は５％以下であり、ＬＭ回避要望４４の期間の負荷とほぼ同じであることが示される。
【００５２】
記憶部６５は、対象ＶＭ２１のＬＭ回避期間の負荷モデル、対象ＶＭ２１を含むグループの負荷モデル、ＬＭの成功率が成功率閾値以上である負荷等を記憶する。
【００５３】
次に、メンテナンス調整部３３による処理のフローについて説明する。図１３は、メンテナンス調整部３３によるスケジュール作成処理のフローを示すフローチャートである。図１３に示すように、メンテナンス調整部３３は、ＬＭ回避期間以外の対象ＶＭ２１の負荷の平均及び分散を算出し、算出した平均及び分散に基づいて、対象ＶＭ２１のＬＭ回避期間に低負荷期間があるか否かを判定する（ステップＳ１）。
【００５４】
そして、対象ＶＭ２１のＬＭ回避期間に低負荷期間がある場合に、メンテナンス調整部３３は、各ＶＭ２１について、ＬＭ回避期間の負荷モデルを作成し（ステップＳ２）、作成した負荷モデルの類似度でＶＭ２１をグルーピングする（ステップＳ３）。なお、同じグループに含まれるＶＭ２１は、利用者が同じで、生成元のソフトウェアイメージが同じであり、ＬＭ回避期間が同じである。
【００５５】
そして、メンテナンス調整部３３は、対象ＶＭ２１を含むグループについて、ＬＭ作業ログ４２とシステム統計ログ４１を突き合わせ、負荷毎のＬＭ成功率を算出する（ステップＳ４）。そして、メンテナンス調整部３３は、対象ＶＭ２１を含むグループのＬＭ回避期間の負荷モデルからＬＭ成功率が成功率閾値以上の期間を特定し（ステップＳ５）、ＬＭ回避期間を短縮する（ステップＳ６）。
【００５６】
そして、メンテナンス調整部３３は、短縮したＬＭ回避期間に基づくＬＭのスケジュールについて利用者の承認が得られると、メンテナンススケジュールを作成する（ステップＳ７）。
【００５７】
このように、メンテナンス調整部３３は、ＬＭ回避期間を短縮することで、ＰＭ２で動作する全ＶＭ２１のＬＭに要する時間を短縮することができる。
【００５８】
図１４は、メンテナンス調整部３３によるスケジュール調整処理のフローを示すフローチャートである。図１４に示すように、メンテナンス調整部３３は、利用者にＬＭ予定を提示し（ステップＳ１１）、ＬＭ予定を利用者が許可したか否かを判定する（ステップＳ１２）。
【００５９】
そして、利用者が許可しなかった場合には、メンテナンス調整部３３は、許可済みのＬＭ予定を動かさないで再スケジュールし（ステップＳ１３）、ステップＳ１１に戻る。一方、利用者が許可した場合には、メンテナンス調整部３３は、全ての利用者が許可したか否かを判定し（ステップＳ１４）、全ての利用者が許可した場合には、スケジュール調整処理を終了し、許可していない利用者がいる場合には、ステップＳ１１に戻る。
【００６０】
このように、メンテナンス調整部３３は、利用者に許可を得ることで、利用者の同意の上でＰＭ２で動作する全ＶＭ２１のＬＭに要する時間を短縮することができる。
【００６１】
図１５は、実施例に係るＬＭ回避期間短縮による効果を説明するための図である。図１５に示すように、従来は、ＶＭ＃１とＶＭ＃２のＬＭが１時に開始され、ＶＭ＃３とＶＭ＃４のＬＭが６時に開始されるとすると、全体のＬＭ時間は約５時間である。一方、実施例に係るＬＭ回避期間短縮に基づくＬＭでは、ＶＭ＃１とＶＭ＃２のＬＭが１時に開始され、ＶＭ＃３とＶＭ＃４のＬＭが３時に開始されるとすると、全体のＬＭ時間は約２時間である。したがって、実施例に係るＬＭ回避期間短縮により、全体のＬＭ時間を短縮することができる。
【００６２】
次に、ＰＭ３のハードウェア構成について説明する。図１６は、ＰＭ３のハードウェア構成を示す図である。図１６に示すように、ＰＭ３は、メインメモリ５１と、ＣＰＵ（Central  Processing  Unit）５２と、ＬＡＮ（Local  Area  Network）インタフェース５３と、ＨＤＤ（Hard  Disk  Drive）５４とを有する。また、ＰＭ３は、スーパーＩＯ（Input  Output）５５と、ＤＶＩ（Digital  Visual  Interface）５６と、ＯＤＤ（Optical  Disk  Drive）５７とを有する。
【００６３】
メインメモリ５１は、プログラムやプログラムの実行途中結果等を記憶するメモリである。ＣＰＵ５２は、メインメモリ５１からプログラムを読み出して実行する中央処理装置である。ＣＰＵ５２は、メモリコントローラを有するチップセットを含む。
【００６４】
ＬＡＮインタフェース５３は、コンピュータ５０をＬＡＮ経由で他のコンピュータに接続するためのインタフェースである。ＨＤＤ５４は、プログラムやデータを格納するディスク装置であり、スーパーＩＯ５５は、マウスやキーボード等の入力装置を接続するためのインタフェースである。ＤＶＩ５６は、液晶表示装置を接続するインタフェースであり、ＯＤＤ５７は、ＤＶＤの読み書きを行う装置である。
【００６５】
ＬＡＮインタフェース５３は、ＰＣＩエクスプレス（ＰＣＩｅ）によりＣＰＵ５２に接続され、ＨＤＤ５４及びＯＤＤ５７は、ＳＡＴＡ（Serial  Advanced  Technology  Attachment）によりＣＰＵ５２に接続される。スーパーＩＯ５５は、ＬＰＣ（Low  Pin  Count）によりＣＰＵ５２に接続される。
【００６６】
そして、ＰＭ３においてメンテナンス調整部３３として動作するメンテナンス調整プログラムは、ＰＭ３により読み出し可能な記録媒体の一例であるＤＶＤに記憶され、ＯＤＤ５７によってＤＶＤから読み出されてＰＭ３にインストールされる。あるいは、メンテナンス調整プログラムは、ＬＡＮインタフェース５３を介して接続された他のコンピュータシステムのデータベース等に記憶され、これらのデータベースから読み出されてＰＭ３にインストールされる。そして、インストールされたメンテナンス調整プログラムは、ＨＤＤ５４に記憶され、メインメモリ５１に読み出されてＣＰＵ５２によって実行される。
【００６７】
上述してきたように、実施例では、負荷モデル作成部６１が、対象ＶＭ２１のＬＭ回避期間に低負荷期間があるか否かを低負荷閾値を用いて判定する。そして、対象ＶＭ２１のＬＭ回避期間に低負荷期間がある場合に、グルーピング部６２が、ＬＭ回避期間の負荷モデルの類似度でＶＭ２１をグルーピングする。そして、成功率算出部６３が、対象ＶＭ２１を含むグループのＬＭの実績から、負荷の値毎のＬＭ成功率を算出する。そして、短縮部６４が、ＬＭ成功率が成功率閾値以上の除外期間を特定する。したがって、ＬＭ回避期間短縮部６０は、利用者の業務に影響を与えないことが確認された期間を除外期間として特定することができる。
【００６８】
また、実施例では、短縮部６４は、ＬＭ成功率が成功率閾値以上の負荷の閾値として成功負荷閾値を特定し、対象ＶＭ２１を含むグループのＬＭ回避期間の負荷モデルから負荷が成功負荷閾値以下の期間を除外期間として特定する。したがって、ＬＭ回避期間短縮部６０は、除外期間を適切に特定することができる。
【００６９】
また、実施例では、短縮部６４は、成功率閾値として１００％を用いることで、過去の実績においてＬＭの失敗のない期間を除外期間として特定するので、信頼性の高い除外期間を特定することができる。
【００７０】
また、実施例では、負荷モデル作成部６１は、対象ＶＭ２１のＬＭ回避期間以外の負荷の平均及び分散を計算し、計算した平均及び分散に基づいて低負荷閾値を特定する。したがって、負荷モデル作成部６１は、ＬＭ回避期間に低負荷期間があるか否かを正確に判定することができる。
【００７１】
また、実施例では、グルーピング部６２は、ＬＭ回避期間の複数の時点の負荷のベクトルの類似度に基づいてＶＭ２１をクラスタリングすることでグループを作成するので、ＶＭ２１を正確にグループ分けすることができる。
【００７２】
また、実施例では、ＬＭ回避期間を用いる場合について説明したが、メンテナンス調整部３３は、ＬＭ回避期間の代わりにＬＭ許容期間を用いてもよい。すなわち、メンテナンス調整部３３は、ユーザに指定されたＬＭ許容期間を拡張してもよい。
【００７３】
また、実施例では、ＬＭ回避期間短縮部６０は、特定の対象ＶＭ２１についてＬＭ回避期間に負荷が低い期間があるか否かを判定し、ＬＭ回避期間に負荷が低い期間がある場合に、対象ＶＭ２１を含むグループを作成した。しかしながら、ＬＭ回避期間短縮部６０は、まずＶＭ２１をグルーピングし、グループの負荷に基づいてＬＭ回避期間に負荷が低い低負荷期間があるか否かを判定し、低負荷期間がある場合に、過去の実績に基づいて低負荷期間を除外期間としてもよい。
【符号の説明】
【００７４】
１    クラウドシステム
２    ＰＭ
３    ＰＭ
４    ストレージ
５    操作端末
６    ネットワーク
２１    ＶＭ
２２    仮想化ソフトウェア
３１    監視部
３２    クラウドコントローラ
３３    メンテナンス調整部
３６，３７，３８，３９    画面
４１    システム統計ログ
４２    ＬＭ作業ログ
４３    メンテナンススケジュール
４４    ＬＭ回避要望
５１    メインメモリ
５２    ＣＰＵ
５３    ＬＡＮインタフェース
５４    ＨＤＤ
５５    スーパーＩＯ
５６    ＤＶＩ
５７    ＯＤＤ
６０    ＬＭ回避期間短縮部
６１    負荷モデル作成部
６２    グルーピング部
６３    成功率算出部
６４    短縮部
６５    記憶部
７０    スケジュール作成部
【図１】
2020086990.tif 000003
【図２】
2020086990.tif 000004
【図３】
2020086990.tif 000005
【図４】
2020086990.tif 000006
【図５】
2020086990.tif 000007
【図６】
2020086990.tif 000008
【図７】
2020086990.tif 000009
【図８】
2020086990.tif 000010
【図９】
2020086990.tif 000011
【図１０】
2020086990.tif 000012
【図１１】
2020086990.tif 000013
【図１２】
2020086990.tif 000014
【図１３】
2020086990.tif 000015
【図１４】
2020086990.tif 000016
【図１５】
2020086990.tif 000017
【図１６】
2020086990.tif 000018
【図１７】
2020086990.tif 000019
【図１８】
2020086990.tif 000020