(57)【要約】  クラウドサービスの障害に対する復旧スケジュールを計算機資源の種類や提供サービスごとに記憶する復旧スケジュール記憶手段８１と、各利用者がクラウドサービスを利用する際に使用する計算機資源または提供サービスを定めた資源利用プロフィールを記憶する資源利用プロフィール記憶手段８２とを備え、復旧時間予測手段８３により資源利用プロフィールと復旧スケジュールに基づいて各利用者に対してサービスが復旧する時間を予測し、復旧時間提示手段８４により予測されたサービス復旧時間を利用者に提示する。
2013035243.tif 000002
【特許請求の範囲】
【請求項１】
クラウドサービスで提供される複数種類の計算機資源または当該クラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の当該計算機資源または当該提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、当該計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段と、
各利用者が前記クラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールを当該利用者ごとに記憶する資源利用プロフィール記憶手段と、
利用者が前記クラウドサービスを利用する際に使用する計算機資源または提供サービスを前記資源利用プロフィールから特定し、前記復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、当該利用者が利用するクラウドサービスの復旧時間を予測する復旧時間予測手段と、
予測されたサービス復旧時間を前記利用者に提示する復旧時間提示手段とを備えた
ことを特徴とするクラウドサービス復旧時間予測システム。
【請求項２】
各計算機資源または提供サービスの障害状況を記憶する障害状況記憶手段と、
前記障害状況を調査して前記障害状況記憶手段に記憶させる障害状況調査手段と、
前記障害状況記憶手段に記憶された障害状況に基づいて復旧スケジュールを生成し、当該復旧スケジュールを復旧スケジュール記憶手段に記憶させる復旧スケジュール生成手段とを備えた
請求項１記載のクラウドサービス復旧時間予測システム。
【請求項３】
複数の利用者で共有され当該利用者間で排他的に利用される計算機資源の予約開始時間を、当該計算機資源の利用者と対応づけた情報である予約情報を資源予約情報記憶手段に記憶する資源予約情報登録手段を備え、
前記資源予約情報登録手段は、前記資源予約情報記憶手段に記憶されている予約情報に基づいて、各利用者が利用する前記計算機資源が予約可能か否か判断し、前記復旧スケジュールに基づいて、予約可能な前記計算機資源の復旧時刻を予約開始時刻とする前記予約情報を資源予約情報記憶手段に記憶し、
復旧時間予測手段は、復旧スケジュールおよび前記予約情報に基づいて、利用者が利用するクラウドサービスの復旧時間を予測する
請求項１または請求項２記載のクラウドサービス復旧時間予測システム。
【請求項４】
計算機資源間の依存関係または利用者による資源復旧要求に基づく復旧スケジュールの制約条件を規定した復旧スケジュール制約情報を記憶する復旧スケジュール制約情報記憶手段と、
前記復旧スケジュール制約情報が示す制約のもとで、目的とする指標を最大化または最小化する復旧スケジュールの候補を探索し、当該復旧スケジュールで資源復旧スケジュール記憶手段に記憶された対応する復旧スケジュールを更新する復旧スケジュール最適化手段を備え、
復旧時間予測手段は、更新された復旧スケジュールに基づいて、利用者が利用するクラウドサービスの復旧時間を予測する
請求項１から請求項３のうちのいずれか１項に記載のクラウドサービス復旧時間予測システム。
【請求項５】
クラウドサービスで提供される複数種類の計算機資源または当該クラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の復旧時間を予測するクラウドサービス復旧時間予測方法であって、
各利用者が前記クラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールを当該利用者ごとに記憶する資源利用プロフィール記憶手段を参照し、当該資源利用プロフィール記憶手段に記憶された当該資源利用プロフィールから、利用者が前記クラウドサービスを利用する際に使用する計算機資源または提供サービスを特定し、
前記計算機資源または前記提供サービスで障害が発生した場合の当該計算機資源または当該提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、当該計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段から抽出し、
抽出した前記復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、当該利用者が利用するクラウドサービスの復旧時間を予測し、
予測されたサービス復旧時間を前記利用者に提示する
ことを特徴とするクラウドサービス復旧時間予測方法。
【請求項６】
各計算機資源または提供サービスの障害状況を調査して障害状況記憶手段に記憶させ、
前記障害状況記憶手段に記憶された障害状況に基づいて復旧スケジュールを生成し、
前記復旧スケジュールを復旧スケジュール記憶手段に記憶させる
請求項５記載のクラウドサービス復旧時間予測方法。
【請求項７】
複数の利用者で共有され当該利用者間で排他的に利用される計算機資源の予約開始時間を、当該計算機資源の利用者と対応づけた情報である予約情報を資源予約情報記憶手段に記憶する際、当該資源予約情報記憶手段に記憶されている前記予約情報に基づいて、各利用者が利用する前記計算機資源が予約可能か否か判断し、復旧スケジュールに基づいて、予約可能な前記計算機資源の復旧時刻を予約開始時刻とする予約情報を前記資源予約情報記憶手段に記憶し、
復旧スケジュールおよび前記資源予約情報記憶手段に記憶された予約情報に基づいて、利用者が利用するクラウドサービスの復旧時間を予測する
請求項５または請求項６記載のクラウドサービス復旧時間予測方法。
【請求項８】
計算機資源間の依存関係または利用者による資源復旧要求に基づく復旧スケジュールの制約条件を規定した復旧スケジュール制約情報が示す制約のもとで、目的とする指標を最大化または最小化する復旧スケジュールの候補を探索し、
前記復旧スケジュールで資源復旧スケジュール記憶手段に記憶された対応する復旧スケジュールを更新し、
更新された復旧スケジュールに基づいて、利用者が利用するクラウドサービスの復旧時間を予測する
請求項５から請求項７のうちのいずれか１項に記載のクラウドサービス復旧時間予測方法。
【請求項９】
クラウドサービスで提供される複数種類の計算機資源または当該クラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の復旧時間を予測するコンピュータに適用されるクラウドサービス復旧時間予測用プログラムであって、
前記コンピュータに、
各利用者が前記クラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールを当該利用者ごとに記憶する資源利用プロフィール記憶手段を参照し、当該資源利用プロフィール記憶手段に記憶された当該資源利用プロフィールから、利用者が前記クラウドサービスを利用する際に使用する計算機資源または提供サービスを特定し、前記計算機資源または前記提供サービスで障害が発生した場合の当該計算機資源または当該提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、当該計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段から抽出し、抽出した前記復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、当該利用者が利用するクラウドサービスの復旧時間を予測する復旧時間予測処理、および、
予測されたサービス復旧時間を前記利用者に提示する復旧時間提示処理
を実行させるためのクラウドサービス復旧時間予測用プログラム。
【請求項１０】
コンピュータに、
各計算機資源または提供サービスの障害状況を調査して障害状況記憶手段に記憶させる障害状況調査処理、および、
前記障害状況記憶手段に記憶された障害状況に基づいて復旧スケジュールを生成し、当該復旧スケジュールを復旧スケジュール記憶手段に記憶させる復旧スケジュール生成処理を実行させる
請求項９記載のクラウドサービス復旧時間予測用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の計算機資源の故障を伴うシステム障害時に、サービス利用者ごとにサービス復旧時間を予測するクラウドサービス復旧時間予測システム、クラウドサービス復旧時間予測方法およびクラウドサービス復旧時間予測用プログラムに関する。
【背景技術】
【０００２】
仮想マシンやストレージなどの計算機資源をネットワークを介して利用者に提供するクラウドサービスが近年広く利用されている。クラウドサービスの利用者は、計算機資源をサービス提供者から借りることにより、計算機資源の所有や管理のコストを抑えることができる。特許文献１には、このようなクラウドサービスの実施形態の一例が記載されている。【０００３】
クラウドサービスの利用者増加に伴い、サービス障害により影響を受ける利用者の数も大きくなっている。大規模なクラウドサービスでは、一部のシステム障害によって数十万人の利用者に影響を与えることもある。しかし、利用者は、クラウドサービスの構成や管理方式、発生した障害の詳細は把握できないため、障害復旧の処理を直接制御することはできない。利用者は、クラウドサービスの提供者によって障害が取り除かれ、サービスが再び利用可能になるまで待機しなければならない。【０００４】
障害復旧に関する詳細な状況を把握できないことは、利用者の不安を助長する要因となる。このため、利用者からの問い合わせや利用者による再試行などのアクセスが殺到する可能性がある。利用者からの急激なアクセス増加は、システムの性能低下や機能喪失など、新たなトラブルを招く。このようなサービス障害に伴う利用者のストレスを緩和するため、一部のクラウドサービスでは、ダッシュボードと呼ばれるＷｅｂサイトが設けられている。このＷｅｂサイトを介して、サービス復旧に向けた取り組みが利用者に公開される。【０００５】
特許文献２には、利用者から受け付けた障害情報に基づいて、障害情報を公開するためのＷｅｂページを生成して公開する方法が記載されている。障害発生時にＷｅｂで素早く情報を公開することにより、障害によって影響を受ける利用者のストレスを軽減できる。【０００６】
また、特許文献３には、ネットワークの障害情報をユーザへ通知する障害通知方法が記載されている。特許文献３に記載された障害通知方法は、テレビ会議アプリケーションなどの通信を伴うシステムの障害発生時に、ユーザのアプリケーション予約状況に基づいて利用者毎にメールなどを用いて障害情報を通知する。この方法では、利用者のアプリケーション予約期間と、障害発生から復旧までの期間の時間的な重なりに基づいて、利用者への影響を判断して障害情報を通知する。【０００７】
また、特許文献４には、ネットワークサービスを利用できなくなった場合に必要な情報を利用者に通知する方法が記載されている。特許文献４に記載された方法では、サーバ機が、ネットワークサービスで提供される資源を利用しているクライアント機の識別情報、該当する資源を利用しているクライアント機で動作しているプログラムの種類、および、該当するクライアント機のプログラムの利用者の種類を管理している。そして、サーバ機の資源に所定の問題が発生したことによりネットワークサービスを提供できなくなった場合、ネットワークサービスで提供される資源に基づくネットワークサービスの情報をクライアント機に対して通知する。【０００８】
なお、非特許文献１では、Ｇｏｏｇｌｅ（登録商標）ＡｐｐＥｎｇｉｎｅで提供されるクラウドサービスの現在の状態が公開されている。また、非特許文献２では、Ａｍａｚｏｎ（登録商標）ＥＣ２で提供されるクラウドサービスの現在の状態が公開されている。クラウドサービスに障害発生した時には、このＷｅｂサイトで障害発生箇所やサービス復旧予定時刻などが公開される。サービス復旧状況に合わせてこれらの情報が更新されるため、利用者は、このサイトを参照してサービス再開時にむけて備えることができる。【０００９】
また、特許文献５には、複数のストレージ装置間で非同期リモートコピーを行うストレージシステムにおいて、データ復旧可能時刻を監視する方法が記載されている。特許文献５に記載された方法では、第１のストレージ装置のバッファに滞留している最新またはそれに準ずるデータを所定の時間間隔で時刻情報とともに蓄積しておく。そして、蓄積した情報と、所定時刻における、最古またはそれに準ずるデータと、滞留しているデータ数のうち少なくとも１つの情報とに基づき、所定時刻を基準にして、第２のストレージ装置に記憶されたデータを用いて復旧できる時刻を算出する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１０−１４６１９８号公報
【特許文献２】特開２００２−１０８７２８号公報
【特許文献３】特開２００４−３６４１５４号公報
【特許文献４】特開２００７−４１６４６号公報
【特許文献５】特開２０１０−１４６１９８号公報
【非特許文献】
【００１１】
【非特許文献１】Google、“Google AppEngine”、［online］、［平成２３年８月１９日検索］、インターネット〈URL：http://code.google.com/status/appengine〉
【非特許文献２】Amazon、“amazon web service SERVICE HEALTH DASHBOARD”、［online］、［平成２３年８月１９日検索］、インターネット〈URL：http://status.aws.amazon.com/〉
【発明の概要】
【発明が解決しようとする課題】
【００１２】
一般に、利用者が必要とする計算機資源の種類や量は、利用者ごとに異なる。そのため、特許文献２に記載された方法を用いて公開される障害情報や、非特許文献１および非特許文献２で公開される情報は、必ずしも各利用者にとって適切な情報ではない。【００１３】
例えば、非特許文献１および非特許文献２で公開される情報は、サービス全体の復旧時間に関する情報である。この場合、仮にサービスの一部が復旧し、一部のサービス利用者がサービスを利用可能な状況になったとしても、各サービス利用者は、その状況を把握できない。すなわち、サービス利用者は、クラウドサービスの障害時にサービス提供者から公開される復旧予測時間情報にしたがい、全てのサービスの復旧時まで待機しなければならない。【００１４】
一方、一部の資源の復旧時間予測に基づいてサービス復旧時間が公開される場合、全ての利用者がその時点でサービスの利用を再開できるとは限らない。一般に各利用者が必要とする計算機資源の種類や量は異なるため、一部の資源が利用可能となっただけでは、利用を再開できない場合がある。すなわち、一部の資源の復旧時間予測が公開されても、各利用者は必要とする全ての資源が復旧するまでサービスの利用を再開できない。【００１５】
このように、複数種類の計算機資源に障害が発生するクラウドサービスの障害に対し、特許文献２に記載された方法では、利用者ごとに異なる復旧時間（具体的には、サービスを利用再開できる時刻）を提示できない問題がある。【００１６】
また、クラウドサービスで提供されるサービスが、必ずしも事前に予約を必要とするサービスとは限らない。そのため、利用者が予約をせずに利用するサービスで障害が発生した場合、特許文献３に記載された方法では対応できない。【００１７】
また、特許文献４に記載された方法では、障害が発生した資源を利用しているクライアントに、ネットワークサービスが利用できないことを通知する。しかし、特許文献４には、サービスが復旧するまでの予想時間をどのように算出するか記載されておらず、その具体的な予測方法は不明である。【００１８】
そこで、本発明は、複数種類の計算機資源を用いて提供されるクラウドサービスの障害によって利用者の要求するサービスが利用できなくなった場合に、クラウドサービスが復旧する時間を利用者ごとに予測できるクラウドサービス復旧時間予測システム、クラウドサービス復旧時間予測方法およびクラウドサービス復旧時間予測用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明によるクラウドサービス復旧時間予測システムは、クラウドサービスで提供される複数種類の計算機資源またはそのクラウドサービスで提供されるサービスである提供サービスで障害が発生した場合のその計算機資源またはその提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、その計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段と、各利用者がクラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールをその利用者ごとに記憶する資源利用プロフィール記憶手段と、利用者がクラウドサービスを利用する際に使用する計算機資源または提供サービスを資源利用プロフィールから特定し、復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、その利用者が利用するクラウドサービスの復旧時間を予測する復旧時間予測手段と、予測されたサービス復旧時間を利用者に提示する復旧時間提示手段とを備えたことを特徴とする。【００２０】
本発明によるクラウドサービス復旧時間予測方法は、クラウドサービスで提供される複数種類の計算機資源またはそのクラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の復旧時間を予測するクラウドサービス復旧時間予測方法であって、各利用者がクラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールをその利用者ごとに記憶する資源利用プロフィール記憶手段を参照し、その資源利用プロフィール記憶手段に記憶されたその資源利用プロフィールから、利用者がクラウドサービスを利用する際に使用する計算機資源または提供サービスを特定し、計算機資源または提供サービスで障害が発生した場合のその計算機資源またはその提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、その計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段から抽出し、抽出した復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、その利用者が利用するクラウドサービスの復旧時間を予測し、予測されたサービス復旧時間を利用者に提示することを特徴とする。【００２１】
本発明によるクラウドサービス復旧時間予測用プログラムは、クラウドサービスで提供される複数種類の計算機資源またはそのクラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の復旧時間を予測するコンピュータに適用されるクラウドサービス復旧時間予測用プログラムであって、コンピュータに、各利用者がクラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールをその利用者ごとに記憶する資源利用プロフィール記憶手段を参照し、その資源利用プロフィール記憶手段に記憶されたその資源利用プロフィールから、利用者がクラウドサービスを利用する際に使用する計算機資源または提供サービスを特定し、計算機資源または提供サービスで障害が発生した場合のその計算機資源またはその提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、その計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段から抽出し、抽出した復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、その利用者が利用するクラウドサービスの復旧時間を予測する復旧時間予測処理、および、予測されたサービス復旧時間を利用者に提示する復旧時間提示処理を実行させることを特徴とする。
【発明の効果】
【００２２】
本発明によれば、複数種類の計算機資源を用いて提供されるクラウドサービスの障害によって利用者の要求するサービスが利用できなくなった場合に、クラウドサービスが復旧する時間を利用者ごとに予測できる。
【図面の簡単な説明】
【００２３】
【図１】クラウドサービスの構成全体の例を示す説明図である。
【図２】復旧スケジュールを生成する処理の例を示すフローチャートである。
【図３】利用者ごとにサービス復旧時間を予測して提示する手順の例を示すフローチャートである。
【図４】本発明の第２の実施形態のクラウドサービス復旧時間予測システムの例を示す説明図である。
【図５】利用者ごとにサービス復旧時間を予測して提示する手順の他の例を示すフローチャートである。
【図６】本発明の第３の実施形態のクラウドサービス復旧時間予測システムの例を示す説明図である。
【図７】復旧スケジュールを生成する処理の例を示すフローチャートである。
【図８】逐次探索処理の例を示すフローチャートである。
【図９】第１の実施例のクラウドサービスが提供する計算機資源およびサービスの一例を示す説明図である。
【図１０】クラウドサービス利用者の資源プロフィールの一部を示す説明図である。
【図１１】障害状況データの一例を示す説明図である。
【図１２】資源復旧スケジュールの例を示す説明図である。
【図１３】利用者ごとにサービスの復旧予定時刻を求めた結果の例を示す説明図である。
【図１４】仮想マシンの予約情報の一例を示す説明図である。
【図１５】利用者ごとにサービスの復旧予定時刻を求めた結果の他の例を示す説明図である。
【図１６】本発明によるクラウドサービス復旧時間予測システムの最小構成の例を示すブロック図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施形態を図面を参照して説明する。
【００２５】
実施形態１．
図１は、本発明の第１の実施形態のクラウドサービス復旧時間予測システムを含むクラウドサービスの構成全体の例を示す説明図である。図１に例示するクラウドサービスでは、クラウドサービス提供部１と、復旧時刻予測システム２と、クラウドサービスクライアント３とを備えている。図１に例示する復旧時刻予測システム２が、本発明の第１の実施形態のクラウドサービス復旧時間予測システムに対応する。クラウドサービス提供部１と、復旧時刻予測システム２と、クラウドサービスクライアント３とは、通信ネットワーク網（図示せず）を介して相互に接続される。
【００２６】
クラウドサービス提供部１は、仮想マシン１０１と、ストレージ１０２と、サービス提供部１０３とを備える。仮想マシン１０１、ストレージ１０２およびサービス提供部１０３を用いて利用者に各種サービスが提供される。以下の説明では、クラウドサービス提供部１が備える仮想マシン１０１およびストレージ１０２のことを、計算機資源と記すこともある。
【００２７】
なお、図１に示す例では、クラウドサービス提供部１が、仮想マシン１０１、ストレージ１０２およびサービス提供部１０３をそれぞれ６つ備えている場合を示す。ただし、仮想マシン１０１、ストレージ１０２およびサービス提供部１０３の個数は、６つに限定されない。仮想マシン１０１、ストレージ１０２およびサービス提供部１０３の個数は、それぞれ、１つずつであってもよく、２つ以上５つ以下であってもよく、７つ以上であってもよい。また、仮想マシン１０１、ストレージ１０２およびサービス提供部１０３の個数は、それぞれ同一でなくてもよい。また、クラウドサービス提供部１は、利用者に各種サービスを提供するために、その他同様の計算機資源を備えていてもよい。
【００２８】
また、クラウドサービス提供部１は、仮想マシン１０１、ストレージ１０２などの計算機資源を利用者に対して提供するための専用のインタフェース（図示せず）を備える。専用のインタフェースとして、例えば、仮想マシン１０１の生成や削除を行うためのインタフェースや、ストレージを追加するためのインタフェースなどが挙げられる。
【００２９】
クラウドサービスの利用者は、クラウドサービスクライアント３の機能を利用して専用インタフェースにアクセスし、クラウドサービス内の仮想マシン１０１やストレージ１０２を利用する。
【００３０】
サービス提供部１０３は、計算機資源の他に利用者が利用可能なサービスを提供する。サービス提供部１０３が提供するサービスとして、例えば、プライベートなネットワークアクセスを提供するＶＰＮ（Virtual Private Network ）サービス、トラフィックの負荷分散を行う負荷分散サービス、クラウドサービス内の特定の仮想マシンの状態や性能を監視する監視サービス、トラフィックの増減に合わせて仮想マシンのインスタンス数を増減させるスケールアップサービス、資源へのアクセスを制限するための認証認可サービスなどが挙げられる。
【００３１】
クラウドサービスの利用者は、クラウドサービスクライアント３の機能を利用して、サービス提供部１０３が提供するサービスを利用し、クラウドサービス提供部１内にアプリケーションシステム（図示せず）を構築する。クラウドサービスの利用者は、利用する計算機資源の種類および量、利用するサービスをクラウドサービスに登録し、利用状況に応じて利用料をサービス提供者に支払う。クラウドサービス提供者は、各利用者が利用する計算機資源や利用するサービスの情報を、後述する資源利用プロフィール記憶部２０６に記憶する。
【００３２】
復旧時間予測システム２は、障害状況調査手段２０１と、障害状況記憶部２０２と、復旧スケジュール生成手段２０３と、資源復旧スケジュール記憶部２０４と、復旧時間予測手段２０５と、資源利用プロフィール記憶部２０６と、復旧時間提示手段２０７とを含む。
【００３３】
障害状況調査手段２０１は、クラウドサービス提供部１内の計算機資源やサービス提供部１０３の障害状況を調査する。具体的には、障害状況調査手段２０１は、複数種類の計算機資源損失を伴うクラウドサービスの障害時に、各計算機資源またはサービスの障害状況を調査する。そして、障害状況調査手段２０１は、調査結果を障害状況記憶部２０２に記憶する。
【００３４】
障害状況記憶部２０２は、クラウドサービス提供部１内の障害状況を記憶する。障害状況は、障害状況調査手段２０１により、障害状況記憶部２０２に随時記憶される。
【００３５】
復旧スケジュール生成手段２０３は、障害状況記憶部２０２に記憶された障害状況に応じて、各計算機資源および提供サービスに対する復旧スケジュールを生成する。そして、復旧スケジュール生成手段２０３は、生成した復旧スケジュールを資源復旧スケジュール記憶部２０４に記憶する。
【００３６】
ここで復旧スケジュールとは、クラウドサービス提供部１が提供する複数種類の計算機資源またはサービス提供部３が提供するサービス（以下、提供サービスと記すこともある。）で障害が発生した場合に、その計算機資源または提供サービスを復旧させるためのスケジュールである。
【００３７】
復旧スケジュールは、一般的に知られた方法を用いて作成される。例えば、計算機資源の障害ごとに復旧にかかる時間や、障害の組合せごとの復旧順序を予め設定しておいてもよい。この場合、復旧スケジュール生成手段２０３は、障害状況記憶部２０２に障害状況が登録されたタイミングで、その障害状況から計算機資源の障害を特定し、特定した計算機資源に基づいて、予め設定しておいた復旧にかかる時間および復旧順序から復旧スケジュールを生成してもよい。また、例えば、ストレージの復旧スケジュールを作成する場合、復旧スケジュール生成手段２０３は、特許文献５に記載された方法を用いて復旧スケジュールを生成してもよい。
【００３８】
ただし、復旧スケジュール生成手段２０３が復旧スケジュールを生成する方法は、上記方法に限定されない。例えば、入力手段（図示せず）を介して管理者等が障害状況に応じて作成した各計算機資源および提供サービスの復旧手順が入力された場合、復旧スケジュール生成手段２０３は、入力された復旧手順を、復旧スケジュールとして利用してもよい。
【００３９】
資源復旧スケジュール記憶部２０４は、計算機資源の種類および提供サービスごとに復旧スケジュールを記憶する。
【００４０】
資源利用プロフィール記憶部２０６は、各利用者がクラウドサービスを利用する際に使用する計算機資源（具体的には、計算機資源の種類および量）を定めた資源利用プロフィールを記憶する。資源利用プロフィールは、管理者等により、予め資源利用プロフィール記憶部２０６に記憶される。ここで、計算機資源の量には、仮想マシン１０１の数や、ストレージ１０２で割り当てられる容量などが含まれる。
【００４１】
復旧時間予測手段２０５は、計算機資源または提供サービスごとの復旧スケジュール、および、資源利用プロフィール記憶部２０６に格納された資源利用プロフィールに基づき、利用者ごとのサービス復旧時間を予測する。具体的には、復旧時間予測手段２０５は、利用者がクラウドサービスを利用する際に使用する計算機資源または提供サービスを、資源利用プロフィールから特定する。そして、復旧時間予測手段２０５は、復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測する。
【００４２】
復旧時間予測手段２０５は、予測した各計算機資源および各提供サービスが復旧する時間のうち、最も遅い時間を利用者が利用するクラウドサービスの復旧時間と予測してもよい。
【００４３】
復旧時間提示手段２０７は、予測されたサービス復旧時間を利用者に提示する。提示する方法として、例えば、Ｗｅｂを使ったアナウンスや、メールやインスタントメッセージ等を使ったユーザへの通知などが挙げられる。なお、復旧時間の提示には、間接的に他の装置に復旧時間を送信することも含まれる。
【００４４】
障害状況調査手段２０１と、復旧スケジュール生成手段２０３と、復旧時間予測手段２０５と、復旧時間提示手段２０７とは、プログラム（クラウドサービス復旧時間予測用プログラム）に従って動作するコンピュータのＣＰＵによって実現される。例えば、プログラムは、復旧時間予測システム内の記憶部（図示せず）に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、障害状況調査手段２０１、復旧スケジュール生成手段２０３、復旧時間予測手段２０５および復旧時間提示手段２０７として動作してもよい。また、障害状況調査手段２０１と、復旧スケジュール生成手段２０３と、復旧時間予測手段２０５と、復旧時間提示手段２０７とは、それぞれが専用のハードウェアで実現されていてもよい。
【００４５】
また、障害状況記憶部２０２と、資源復旧スケジュール記憶部２０４と、資源利用プロフィール記憶部２０６とは、例えば、磁気ディスク等により実現される。
【００４６】
次に、本実施形態の復旧時間予測システム２の動作を説明する。クラウドサービスを稼働させているデータセンタに災害や停電等が発生すると、災害の程度に応じて複数の計算機資源および提供サービスに障害が発生する。例えば、データセンタの一区画で電源が失われた場合、その区画内で稼働しているサーバ、およびサーバ内で稼働していた仮想マシンが停止する。さらに、この場合、区画内にあるストレージ装置、および各種提供サービスも停止する。この障害により、仮想マシンやストレージ装置、提供サービスを利用していた利用者は、クラウドサービスを利用できない状態になる。クラウドサービス提供者は、障害の発生を検知すると、クラウドサービスの復旧処理を開始する。復旧時間予測システム２は、クラウドサービス復旧処理の過程で、障害の影響を受けた利用者ごとに復旧時間の予測を行う。
【００４７】
図２は、各計算機資源および提供サービスの障害状況を調査して復旧スケジュールを生成する処理の例を示すフローチャートである。復旧時間予測システム２では、はじめに、障害状況調査手段２０１が、クラウドサービス提供部１内で障害によって停止した物理サーバや仮想サーバ、ストレージ装置、各種サービスを特定し、被害状況を調査する（ステップＳ１０００）。各計算機資源の被害状況の例として、物理的な損傷により交換が必要な状態、物理的な損傷はないが論理的な不整合を生じている可能性がある状態、一部のデータを損失している可能性がある状態、サービスとして一部の機能を提供できない状態、などが挙げられる。
【００４８】
障害状況調査手段２０１は、調査結果を障害状況記憶部２０２に記憶する（ステップＳ１００１）。障害状況調査手段２０１は、例えば、障害によって発生するアラートメッセージを集約して自動的に調査結果をまとめても良い。また、クラウドサービスの管理者が、現場の被害状況やログデータなどを確認することによって障害状況の調査を行ってもよい。また、障害状況調査手段２０１は、定期的に計算機資源や提供サービスの状況を監視し、異常を検知した時点で障害が発生したと判断してもよい。障害状況記憶部２０２には、復旧処理中、継続的に参照処理や更新処理が繰り返し行われ、各時点での最新の障害状況が格納されるものとする。
【００４９】
次に、復旧スケジュール生成手段２０３は、障害状況を参照して、各計算機資源および提供サービスの復旧スケジュールを生成する（ステップＳ１００２）。そして、復旧スケジュール生成手段２０３は、資源復旧スケジュール記憶部２０４の復旧スケジュールを更新する（ステップＳ１００３）。
【００５０】
復旧手順（復旧スケジュール）は、資源の種類や被害の状況、および復旧に必要な人員や資源の備蓄状況などによって異なる。想定されるこれらの障害内容に対する復旧時間や手順を予め設定しておき、復旧スケジュール生成手段２０３が、これらの情報に基づいて復旧スケジュールを作成してもよい。
【００５１】
また、計算機資源を管理する管理者によって作成された資源の種類や提供サービスごとの復旧スケジュールが入力される場合、復旧スケジュール生成手段２０３は、入力された復旧スケジュールを資源復旧スケジュール記憶部２０４に記憶してもよい。例えば、仮想マシン資源の復旧スケジュールは、仮想マシンを提供するサーバクラスタを管理する専門の管理者グループによって作成される。同様に、ストレージの復旧スケジュールは、ストレージ管理専門の管理者グループによって生成される。復旧スケジュール生成手段２０３は、生成した復旧スケジュールを、これらの管理者によって作成された復旧スケジュールに置き換えてもよい。
【００５２】
図３は、復旧スケジュールおよび資源利用プロフィールに基づいて、利用者ごとにサービス復旧時間を予測して提示する手順の例を示すフローチャートである。復旧時間予測手段２０５は、まずクラウドサービスの全利用者のリストを資源利用プロフィール記憶部２０６から取得する（ステップＳ２０００）。なお、復旧時間予測手段２０５は、障害によって影響を受けたユーザに限定して利用者のリストを取得してもよい。復旧時間予測手段２０５は、取得した利用者のリストから利用者を一人ずつ選択し（ステップＳ２００１）、復旧予測時刻を調べる。具体的には、復旧時間予測手段２０５は、資源利用プロフィール記憶部２０６を参照して、選択した利用者Ｕｉの資源利用プロフィールを取得する（ステップＳ２００２）。
【００５３】
この資源利用プロフィールには、利用者が要求する計算機資源のリストが含まれており、この資源のリストから、資源の種類（以下、資源タイプＲｊと記す。）が特定される。そこで、復旧時間予測手段２０５は、資源利用プロフィールから資源タイプＲｊを選択する（ステップＳ２００３）。資源タイプＲｊは、例えば、仮想マシンやストレージ、各種提供サービスを示す。また、資源タイプＲｊは、上記内容に加え、ある計算機資源が共有資源か否かを示す情報を示していてもよい。
【００５４】
次に、復旧時間予測手段２０５は、資源復旧スケジュール記憶部２０４を参照し、選択した資源タイプＲｊの資源復旧スケジュールを参照する（ステップＳ２００４）。この資源復旧スケジュールには、各時点で復旧する資源や、資源の量、資源内の部分を示す情報などが記載される。そこで、復旧時間予測手段２０５は、資源利用プロフィールに記載された利用者の要求する資源が復旧して利用可能になる復旧予定時刻Ｔｊを予測する（ステップＳ２００５）。なお、復旧時間予測手段２０５は、予測結果をメモリ（図示せず）等に記録してもよい。
【００５５】
復旧時間予測手段２０５は、資源利用プロフィールに記載された全ての資源タイプＲｊに対して復旧予定時刻Ｔｊを予測したか否かを判断する（ステップＳ２００６）。全ての資源タイプＲｊの復旧予定時刻Ｔｊを予測していない場合（ステップＳ２００６におけるＮＯ）、復旧時間予測手段２０５は、ステップＳ２００３からステップＳ２００６の処理を繰り返す。
【００５６】
一方、全ての資源タイプＲｊの復旧予定時刻Ｔｊを予測した場合（ステップＳ２００６におけるＹＥＳ）、復旧時間予測手段２０５は、復旧予定時刻Ｔｊの最大値を求める。復旧時間予測手段２０５は、この復旧予定時刻Ｔｊの最大値を利用者Ｕｉの復旧予定時刻とする（ステップＳ２００７）。なお、復旧時間予測手段２０５は、復旧予定時刻をメモリ（図示せず）等に記録してもよい。
【００５７】
復旧時間予測手段２０５は、利用者リストに含まれる全ての利用者について復旧予定時刻を予測したか否か判断する（ステップＳ２００８）。全ての利用者について復旧予定時刻を予測していない場合（ステップＳ２００８におけるＮＯ）、復旧時間予測手段２０５は、ステップＳ２００１からステップＳ２００８までの処理を繰り返す。一方、全ての利用者について復旧予定時刻を予測した場合（ステップＳ２００８におけるＹＥＳ）、復旧時間提示手段２０７は、予測した復旧予定時刻を利用者に提示する（ステップＳ２００９）。
【００５８】
以上のように、本実施形態によれば、復旧時間予測手段２０５が、利用者がクラウドサービスを利用する際に使用する計算機資源または提供サービスを資源利用プロフィールから特定する。さらに、復旧時間予測手段２０５は、復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測する。これにより、復旧時間予測手段２０５は、その利用者が利用するクラウドサービスの復旧時間を予測する。そして、復旧時間提示手段２０７が、予測されたサービス復旧時間を利用者に提示する。そのため、複数種類の計算機資源を用いて提供されるクラウドサービスの障害によって利用者の要求するサービスが利用できなくなった場合に、クラウドサービスが復旧する時間を利用者ごとに予測できる。
【００５９】
すなわち、本実施形態では、復旧時間予測手段２０５が、利用者の資源利用プロフィールと各計算機資源または提供サービスの復旧スケジュールを参照して、利用者ごとにサービス復旧時間を予測する。よって、クラウドサービスの障害時に、利用者ごとに異なるサービス復旧時間を提示することができる。
【００６０】
また、障害状況調査手段２０１が、各計算機資源または提供サービスの障害状況を調査して、障害状況記憶部２０２に記憶させてもよい。そして、復旧スケジュール生成手段２０３が、障害状況記憶部２０２に記憶された障害状況に基づいて復旧スケジュールを生成し、その復旧スケジュールを資源復旧スケジュール記憶部２０４に記憶させてもよい。このように、障害が発生したタイミングで自動的に復旧スケジュールを作成することで、より迅速に障害対応することが可能になる。
【００６１】
実施形態２．
次に、本発明の第２の実施形態のクラウドサービス復旧時間予測システムを説明する。なお、本実施形態におけるクラウドサービス復旧時間予測システムも、図１に例示するクラウドサービスと同様の構成に含まれるものとする。図４は、本発明の第２の実施形態のクラウドサービス復旧時間予測システムの例を示す説明図である。なお、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。本実施形態における復旧時間予測システム２は、第１の実施形態の復旧時間予測システム２の構成に加え、資源予約情報記憶部２０８を含む。
【００６２】
クラウドサービス提供部１の計算機資源の中には、複数の利用者で共有されているが、利用者間で排他的に利用される種類の資源もある。このような種類の資源として、例えば、どの利用者も使うことのできる共有された仮想マシンなどが挙げられる。排他的に共有される計算機資源は、全ての利用者が同時に利用できるわけではない。そのため、特定の利用者のみに利用を許可する予約機能が必要になる。本実施形態の復旧時間予測システム２は、この予約機能を実現するために用いられる予約情報を参照して復旧時間の予測を行う。
【００６３】
資源予約情報記憶部２０８は、各計算機資源の利用に関する予約情報を記憶する。予約情報は、複数の利用者で共有され、利用者間で排他的に利用される計算機資源の予約開始時間を、その計算機資源の利用者と対応づけた情報である。資源予約情報記憶部２０８は、例えば、磁気ディスク等により実現される。すなわち、予約情報には、利用者が計算機資源の予約を開始する時刻（予約開始時刻）を示す情報が含まれる。
【００６４】
復旧時間予測手段２０５は、利用者の資源利用プロフィールから、その利用者が利用する計算機資源または提供サービスを特定する。復旧時間予測手段２０５は、予約情報に基づいて、複数の利用者で排他的に利用される計算機資源が予約可能か否か判断する。復旧時間予測手段２０５は、復旧スケジュールに基づいて、予約可能な計算機資源の復旧時刻を予約開始時刻とする予約情報を資源予約情報記憶部２０８に記憶する。そして、復旧時間予測手段２０５は、復旧スケジュールおよび予約情報から、利用者が計算機資源を予約可能な時間を特定する。
【００６５】
具体的には、復旧時間予測手段２０５は、利用者が利用する計算機資源または提供サービスのうち、最も早く復旧すると想定されるものおよびその復旧時刻を復旧スケジュールから特定する。さらに、復旧時間予測手段２０５は、特定した時刻に対応する計算機資源または提供サービスの予約情報を参照する。その計算機資源または提供サービスが予約可能な場合、復旧時間予測手段２０５は、復旧時刻を予約開始時間とする予約情報を資源予約情報記憶部２０８に登録する。一方、復旧する計算機資源または提供サービスが予約できない場合、復旧時間予測手段２０５は、復旧する時刻が次に早い計算機資源または提供サービスに対して、上記処理を繰り返す。復旧時間予測手段２０５は、計算機資源または提供サービスが予約可能か否かを、対象とする計算機資源に対する予約情報が登録されているか否かに基づいて判断してもよい。
【００６６】
復旧時間予測手段２０５は、復旧スケジュールおよび予約情報に基づいて、利用者が利用するクラウドサービスの復旧時間を予測する。具体的には、復旧時間予測手段２０５は、予測した各計算機資源および各提供サービスの復旧時間と、利用者が利用する各計算機資源および各提供サービスの予約時間のうち、最も遅い時間を利用者が利用するクラウドサービスの復旧時間と予測してもよい。言い換えると、復旧時間予測手段２０５は、予約情報が登録された計算機資源または提供サービスについては、その予約情報に含まれる予約開始時刻に復旧するものと判断して、サービス復旧時間を予測する。
【００６７】
次に、本実施形態の復旧時間予測システム２の動作を説明する。図５は、利用者ごとにサービス復旧時間を予測して提示する手順の他の例を示すフローチャートである。
【００６８】
復旧時間予測手段２０５は、まず、クラウドサービスの全利用者のリストを資源利用プロフィール記憶部２０６から取得する（ステップＳ３０００）。そして、復旧時間予測手段２０５は、優先度の高い利用者から順番に資源の予約と復旧時間の予測を行うため、利用者のリストを優先度に基づいてソートする（ステップＳ３００１）。利用者の優先度は、利用者のサービス契約形態や利用頻度、期間などに応じて決定されるものとする。復旧時間予測手段２０５は、ソートした利用者のリストから最も優先度の高い利用者Ｕｉを選び（ステップＳ３００２）、その利用者の資源利用プロフィールを取得する（ステップＳ３００３）。
【００６９】
次に、復旧時間予測手段２０５は、資源利用プロフィールから資源タイプＲｊを選択する（ステップＳ３００４）。そして、復旧時間予測手段２０５は、資源復旧スケジュール記憶部２０４を参照し、選択した資源タイプＲｊの資源復旧スケジュールを参照する（ステップＳ３００５）。そして、復旧時間予測手段２０５は、資源タイプＲｊが共有資源か否かを判断する（ステップＳ３００６）。
【００７０】
資源タイプＲｊが共有資源を示さない場合（ステップＳ３００６におけるＮＯ）、復旧時間予測手段２０５は、資源タイプＲｊに対応する資源復旧スケジュールを参照し、利用者の要求する資源が復旧して利用可能になる復旧予定時刻Ｔｊを予測する。なお、復旧時間予測手段２０５は、予測結果をメモリ（図示せず）等に記録してもよい（ステップＳ３００７）。
【００７１】
資源タイプＲｊが共有資源を示さない場合とは、例えば、資源タイプＲｊが利用者Ｕｉ専用の資源を示す場合や、排他制御の必要がない共有資源を示す場合などである。具体的には、利用者のデータを記録したストレージボリュームがこの資源タイプＲｊに該当する。また、複数の利用者で共有して利用される監視機能や、負荷分散機能などのサービスなども、この資源タイプＲｊに該当する。
【００７２】
一方、資源タイプＲｊが共有資源を示す場合（ステップＳ３００６におけるＹＥＳ）、復旧時間予測手段２０５は、まず、資源予約情報記憶部２０８を参照し、その資源タイプＲｊの予約情報を取得する（ステップＳ３００８）。資源タイプＲｊが共有資源を示す場合とは、複数の利用者で共有され、排他的に利用されるタイプの資源を示す場合などである。
【００７３】
次に、復旧時間予測手段２０５は、資源タイプＲｊの資源復旧スケジュールを参照し、資源の復旧後、利用者が要求する資源の予約ができる最短の時刻を復旧予定時刻Ｔｊと予測する。これは、利用者が要求する資源の予約ができる時点で、復旧した資源を利用できるようになることが予測されるためである。このとき、復旧時間予測手段２０５は、別の利用者によって利用することが予約されている資源は予約できないと判断する。なお、復旧時間予測手段２０５は、予測結果をメモリ（図示せず）等に記録してもよい（ステップＳ３００９）。
【００７４】
復旧時間予測手段２０５は、利用者Ｕｉが要求する資源のタイプと量に応じて予約情報を作成し、資源予約情報記憶部２０８に予約情報を記憶する（ステップＳ３０１０）。復旧時間予測手段２０５は、例えば、要求する計算機資源に利用者Ｕｉを対応づけて記憶することで、その利用者Ｕｉが対応する計算機資源を予約したものとしてもよい。
【００７５】
復旧時間予測手段２０５は、資源利用プロフィールに記載された全ての資源タイプＲｊに対して復旧予定時刻Ｔｊを予測したか否かを判断する（ステップＳ３０１１）。全ての資源タイプＲｊの復旧予定時刻Ｔｊを予測していない場合（ステップＳ３０１１におけるＮＯ）、復旧時間予測手段２０５は、ステップＳ３００４からステップＳ３０１１の処理を繰り返す。
【００７６】
一方、全ての資源タイプＲｊの復旧予定時刻Ｔｊを予測した場合（ステップＳ３０１１におけるＹＥＳ）、復旧時間予測手段２０５は、復旧予定時刻Ｔｊの最大値を求める。復旧時間予測手段２０５は、この復旧予定時刻Ｔｊの最大値を利用者Ｕｉの復旧予定時刻とする（ステップＳ３０１２）。なお、復旧時間予測手段２０５は、復旧予定時刻をメモリ（図示せず）等に記録してもよい。
【００７７】
復旧時間予測手段２０５は、利用者リストに含まれる全ての利用者について復旧予定時刻を予測したか否か判断する（ステップＳ３０１３）。全ての利用者について復旧予定時刻を予測していない場合（ステップＳ３０１３におけるＮＯ）、復旧時間予測手段２０５は、ステップＳ３００２からステップＳ３０１３までの処理を繰り返す。
【００７８】
一方、全ての利用者について復旧予定時刻を予測した場合（ステップＳ３０１３におけるＹＥＳ）、復旧時間提示手段２０７は、予測した復旧予定時刻を利用者に提示する（ステップＳ２００９）。すなわち、復旧時間予測手段２０５がソートした利用者リストに基づいて順番に利用者の利用する計算機資源の復旧時間を予測し、全ての利用者について復旧時間の予測を終えたら、復旧時間提示手段２０７が予測結果を利用者ごとに提示する。
【００７９】
以上のように、本実施形態によれば、復旧時間予測手段２０５が、資源予約情報記憶部２０８に予約情報を記憶する。具体的には、復旧時間予測手段２０５は、資源予約情報記憶部２０８に記憶されている予約情報に基づいて、各利用者が利用する計算機資源が予約可能か否か判断する。また、復旧時間予測手段２０５は、復旧スケジュールに基づいて、予約可能な計算機資源の復旧時刻を予約開始時刻とする予約情報を資源予約情報記憶部２０８に記憶する。そして、復旧時間予測手段２０５は、復旧スケジュールおよび予約情報に基づいて、利用者が利用するクラウドサービスの復旧時間を予測する。
【００８０】
すなわち、本実施形態では、復旧時間予測手段２０５が、複数の利用者で共有され、排他的に利用される計算機資源について、資源予約情報記憶部２０８に復旧する資源の予約情報を記録する。そのため、各利用者の要求する資源の種類と量が確実に利用可能となる時刻をサービス復旧時刻として予測し、その予測結果を利用者に提示できる。
【００８１】
具体的には、本実施形態では、復旧時間予測手段２０５が、別の利用者によって予約された計算機資源は復旧していても利用できないことを考慮して復旧予定時刻の予測を行う。そのため、復旧予定時刻後に他の利用者が先に利用してしまったために、利用者がサービスの利用を再開できなくなるという問題を回避できる。
【００８２】
実施形態３．
次に、本発明の第３の実施形態のクラウドサービス復旧時間予測システムを説明する。なお、本実施形態におけるクラウドサービス復旧時間予測システムも、図１に例示するクラウドサービスと同様の構成に含まれるものとする。図６は、本発明の第３の実施形態のクラウドサービス復旧時間予測システムの例を示す説明図である。なお、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。本実施形態における復旧時間予測システム２は、第１の実施形態の復旧時間予測システム２の構成に加え、復旧スケジュール最適化手段２０９と、復旧スケジュール制約情報記憶部２１０とを含む。
【００８３】
復旧スケジュール制約情報記憶部２１０は、資源復旧スケジュールに対する要求や制約情報を記憶する。具体的には、復旧スケジュール制約情報記憶部２１０は、計算機資源間の依存関係または利用者による資源復旧要求に基づく資源復旧スケジュールの制約条件を規定した復旧スケジュール制約情報を記憶する。復旧スケジュール制約情報の例として、各利用者の復旧時間のデッドラインや優先度などが挙げられる。復旧スケジュール制約情報は、管理者等により、予め復旧スケジュール制約情報記憶部２１０に記憶される。
【００８４】
復旧スケジュール最適化手段２０９は、復旧スケジュール制約情報に基づいて、各計算機資源またはサービスの復旧スケジュールを最適化する復旧スケジュールを生成する。復旧スケジュール最適化手段２０９は、資源復旧スケジュールの生成に際し、復旧スケジュール制約情報と共に、資源利用プロフィール記憶部２０６および資源復旧スケジュール記憶部２０４に記憶された情報を参照する。
【００８５】
具体的には、復旧スケジュール最適化手段２０９は、復旧スケジュール制約情報が示す制約のもとで、目的とする指標（以下、目的指標と記すこともある。）を最大化または最小化する復旧スケジュールの候補（組み合わせ）を探索する。
【００８６】
目的指標を最大化するか最小化するかは、目的指標の性質によって異なる。例えば、目的指標が「所定の期間内におけるサービス復旧利用者数」であれば、その値を最大化させることが最適化することであるといえる。また、例えば、目的指標が「復旧時間」であれば、その値を最小化させることが最適化することであるといえる。
【００８７】
そして、復旧スケジュール最適化手段２０９は、探索した復旧スケジュールで資源復旧スケジュール記憶部２０４に記憶された対応する復旧スケジュールを更新する。すると、復旧時間予測手段２０５は、更新された復旧スケジュールに基づいて、利用者が利用するサービスの復旧時間を予測する。
【００８８】
目的とする指標の例として、全利用者の平均復旧時間、特定の利用者グループの復旧時間の最悪値、復旧にかかるサービス提供者のコストなどが挙げられる。この指標は、サービス提供者からの入力や、事前に設定された情報に基づいて、管理者等により予め決定される。
【００８９】
復旧スケジュール最適化手段２０９が復旧スケジュールを最適化する処理の一例を示す。まず、復旧スケジュール最適化手段２０９は、資源利用プロフィールをもとに、利用者が利用する計算機資源を特定する。そして、復旧スケジュール最適化手段２０９は、復旧スケジュールをもとに、特定した計算機資源を復旧させるスケジュール（復旧させる順序）を特定する。復旧スケジュール最適化手段２０９は、例えば、復旧スケジュール内で計算機資源を復旧させる順序を入れ替えた組み合わせを、復旧スケジュールの候補とする。復旧スケジュール最適化手段２０９は、復旧スケジュールの候補が復旧スケジュール制約情報の示す制約を満たしているか否か判断する。復旧スケジュールの候補が複数存在する場合、復旧スケジュール最適化手段２０９は、その候補の中から最適な候補を選択し、選択した候補で復旧スケジュールを更新する。
【００９０】
復旧スケジュール最適化手段２０９は、障害状況が調査された後や、各資源復旧スケジュールが生成された後、または、障害復旧処理の途中で、サービス提供者の必要に応じて、復旧スケジュールの最適化処理を実行する。
【００９１】
障害状況調査手段２０１と、復旧スケジュール生成手段２０３と、復旧時間予測手段２０５と、復旧時間提示手段２０７と、復旧スケジュール最適化手段２０９とは、プログラム（クラウドサービス復旧時間予測用プログラム）に従って動作するコンピュータのＣＰＵによって実現される。また、障害状況調査手段２０１と、復旧スケジュール生成手段２０３と、復旧時間予測手段２０５と、復旧時間提示手段２０７と、復旧スケジュール最適化手段２０９とは、それぞれが専用のハードウェアで実現されていてもよい。
【００９２】
次に、本実施形態における復旧スケジュール最適化手段２０９が復旧スケジュールを生成する動作を説明する。図７は、復旧スケジュールを作成する処理の例を示すフローチャートである。
【００９３】
復旧スケジュール最適化手段２０９は、サービス提供者からの入力、または、事前に設定された情報に基づいて最適化の目的指標を決定する（ステップＳ４０００）。ここでは、全サービス利用者の平均復旧時間を目的指標とする。そして、最適化の方法として、この平均復旧時間を最小化する復旧スケジュールを決定する方法を例に説明する。
【００９４】
復旧スケジュール生成手段２０３は、障害状況を参照して、各計算機資源および提供サービスの復旧スケジュールを生成する（ステップＳ４００１）。なお、この復旧スケジュールは、管理者等によって作成されたものであってもよい。その後、復旧スケジュール生成手段２０３は、生成した復旧スケジュールを資源復旧スケジュール記憶部２０４に記憶する。
【００９５】
次に、復旧スケジュール最適化手段２０９は、資源利用プロフィール記憶部２０６および復旧スケジュール制約情報記憶部２１０から復旧スケジュールの生成に必要な情報を取得する。具体的には、復旧スケジュール最適化手段２０９は、資源利用プロフィール記憶部２０６から資源利用プロフィールを取得し（ステップＳ４００２）、復旧スケジュール制約情報記憶部２１０から復旧スケジュール制約情報を取得する（ステップＳ４００３）。
【００９６】
復旧スケジュール最適化手段２０９は、与えられた復旧スケジュール制約情報の範囲で実現可能な復旧スケジュールを探索し、目的指標を最適化する復旧スケジュールの組み合わせを探索する（ステップＳ４００４）。復旧スケジュール最適化手段２０９は、最適化問題の解法として一般的に利用される方法を用いて復旧スケジュールの組み合わせを探索する。ここでは、最も単純な探索方法の例として、逐次探索を用いる場合を例に説明する。
【００９７】
図８は、逐次探索処理の例を示すフローチャートである。計算機資源の復旧スケジュールは一通りとは限られない。計算機資源を復旧する順番を入れ替えた組み合わせなど、様々な復旧スケジュールが考えられる。そこで、復旧スケジュール最適化手段２０９は、初めに、障害状況に基づいて実現可能な復旧スケジュールの組み合わせ候補を列挙する（図８におけるステップＳ５０００）。ここで列挙した復旧スケジュールの組み合わせ候補が、最適化を行う際の探索の範囲（探索空間）になる。
【００９８】
復旧スケジュール最適化手段２０９は、復旧スケジュールの候補Ｓｊを選択する（ステップＳ５００１）。そして、復旧時間予測手段２０５が全利用者のサービス復旧時間を予測する（ステップＳ５００２）。なお、サービス復旧時間を予測する方法は、第１の実施形態で説明した方法と同様である。
【００９９】
復旧スケジュール最適化手段２０９は、予測結果に基づいて、目的指標の値Ｖｉを計算する（ステップＳ５００３）。ここでは、平均復旧時間を目的指標としている。そこで、復旧スケジュール最適化手段２０９は、利用者ごとに予測された復旧時間の平均値を算出して、目的指標の値Ｖｉを計算する。
【０１００】
次に、復旧スケジュール最適化手段２０９は、候補Ｓｊが復旧スケジュール制約情報記憶部２１０に記憶された全ての復旧スケジュール制約情報を満たすか否かを判断する（ステップＳ５００４）。
【０１０１】
例えば、「優先度の高いユーザ集団の復旧時間がＴ以内（例えば、Ｖｉ≦Ｔ）」という制約の場合、復旧スケジュール最適化手段２０９は、予測された復旧時間がこの制約を満たすか否かを判断する。
【０１０２】
候補Ｓｊが復旧スケジュール制約情報記憶部２１０に記憶された全ての復旧スケジュール制約情報を満たす場合、復旧スケジュール最適化手段２０９は、候補Ｓｊを復旧スケジュールの候補（以下、最適復旧スケジュール候補と記載することもある。）とする。なお、復旧スケジュール最適化手段２０９は、最適復旧スケジュール候補をメモリ（図示せず）等に記録してもよい（ステップＳ５００５）。
【０１０３】
復旧スケジュール最適化手段２０９は、復旧スケジュールの候補の探索を終了するか否かを判断する（ステップＳ５００６）。復旧スケジュール最適化手段２０９は、例えば、探索終了条件を満たしているか否かを判断して、復旧スケジュールの候補の探索を終了するか否かを判断してもよい。復旧スケジュールの候補の探索を終了しないと判断した場合（ステップＳ５００６におけるＮＯ）、ステップＳ５００１からステップＳ５００６までの処理が繰り返される。一方、復旧スケジュールの候補の探索を終了すると判断した場合（ステップＳ５００６におけるＹＥＳ）、最適化処理が終了する。
【０１０４】
すなわち、ステップＳ５００１からステップＳ５００５までの処理が、異なるＳｊに対して繰り返し行われる。そして、探索終了条件に達した時点で、復旧スケジュールの候補の探索が終了する。探索終了の条件として、例えば、全ての候補を探索する場合や、一定数の探索を終了した段階で打ち切りとする場合などが挙げられる。
【０１０５】
復旧スケジュール最適化手段２０９は、探索の結果得られた復旧スケジュールの候補の中から、最良の復旧スケジュールを決定し、資源復旧スケジュール記憶部２０４に記憶された復旧スケジュールを更新する（図７におけるステップＳ４００５）。ここでは、平均復旧時間を最適化の目的指標としている。そこで、復旧スケジュール最適化手段２０９は、探索の結果、候補として挙げられた復旧スケジュールの中から、平均復旧時間が最小になる復旧スケジュールを最良の復旧スケジュールとして決定する。
【０１０６】
以上のように、本実施形態では、復旧スケジュール最適化手段２０９が、復旧スケジュール制約情報が示す制約のもとで、目的とする指標を最大化または最小化する復旧スケジュールの候補を探索する。また、復旧スケジュール最適化手段２０９は、その復旧スケジュールで資源復旧スケジュール記憶部２０４に記憶された対応する復旧スケジュールを更新する。そして、復旧時間予測手段２０５は、更新された復旧スケジュールに基づいて、利用者が利用するクラウドサービスの復旧時間を予測する。
【０１０７】
すなわち、本実施形態では、復旧スケジュール制約情報記憶部２１０に記憶された復旧スケジュール制約情報に基づき、復旧スケジュール最適化手段２０９が、必要に応じて最良の資源復旧スケジュールを更新する。そのため、サービス復旧に対する利用者の要求や制約を満たす復旧時間を予測できる。
【実施例１】
【０１０８】
以下、具体的な実施例により本発明を説明するが、本発明の範囲は以下に説明する内容に限定されない。【０１０９】
図９は、本実施例のクラウドサービス提供部１が提供する計算機資源およびサービスの一例を示す説明図である。本実施例のクラウドサービス提供部１は、ｎ台の仮想マシン（仮想マシン１〜仮想マシンｎ）、２＊ｍ個のストレージボリューム（ボリューム１１〜ボリューム２ｍ）、および監視サービス、ＶＰＮサービス、負荷分散サービスを利用者に提供している。ただしｎとｍは、正数とする。また、クラウドサービス提供部１が提供するサービスのことを付加サービスと記すこともある。【０１１０】
このクラウドサービス提供部１でサイト規模の障害が発生し、複数の計算機資源で障害が発生した状況を考える。サイト障害により、ｋ台の仮想マシン（仮想マシン１〜仮想マシンｋ）、ｍ個のストレージボリューム（ボリューム２１〜ボリューム２ｍ）、および、全ての付加サービスが停止したと仮定する。【０１１１】
図１０は、クラウドサービス利用者の資源プロフィールの一部を示す説明図である。障害発生時点で、図１０に例示するクラウドサービス利用者の資源プロフィールが資源利用プロフィール記憶部２０６に記憶されているものとする。資源プロフィールには、各利用者が必要とする仮想マシンのタイプと数、ストレージ領域、および付加サービスが含まれている。図１０に示す例では、利用者Ａは、標準タイプの仮想マシン１台と、ストレージボリュームのボリューム１１を利用し、さらに、監視サービスを利用している。【０１１２】
クラウドサービスによってはスペックや機能が異なる仮想マシンを用意していることもある。そのため、必要とする仮想マシンのタイプが資源利用プロフィールに含まれていてもよい。ただし、第１の実施例では、説明を単純にするため、全ての仮想マシンが標準タイプの仮想マシンであることを前提とする。また、障害によって利用者Ａ〜利用者Ｆの利用していた仮想マシンが影響を受けたことを前提とする。【０１１３】
はじめに、障害状況調査手段２０１が、障害による計算機資源の損害状況を調査し、調査した障害状況を、障害状況記憶部２０２に記録する。図１１は、障害状況データの一例を示す説明図である。障害状況データには、クラウドサービス提供部１で利用される計算機資源の故障個所を示す情報が含まれる。また、障害状況データは、必要に応じて、故障原因や復旧手順に関する情報を含む。これらの障害状況データは、資源復旧スケジュールの作成に利用される。【０１１４】
図１２は、資源復旧スケジュールの例を示す説明図である。ここで、資源復旧スケジュールは、復旧作業を計画する担当者によって、計算機資源の損害状況や復旧作業にかかる工数等を考慮して設計されたものとする。復旧スケジュール生成手段２０３は、作成された資源復旧スケジュールを資源復旧スケジュール記憶部２０４に記憶する。ここでは、個々の計算機資源および付加サービスが復旧する予定の時刻が資源復旧スケジュール記憶部２０４に記憶される。【０１１５】
例えば、図１２に例示する仮想マシンの復旧スケジュールには、１２：００に復旧作業が開始され、１２：３０には標準タイプの仮想マシンが４台利用可能になり、１３：００にはさらに追加で４台の仮想マシンが利用可能になる予定が示されている。【０１１６】
全ての計算機資源および付加サービスの資源復旧スケジュールが決定されると、復旧時間予測手段２０５は、復旧スケジュールおよび資源利用プロフィールを参照して、利用者ごとにサービス復旧時間を予測する。ここでは、図３に例示するフローチャートの手順に従って、サービス復旧時間が予測されるとする。【０１１７】
はじめに、復旧時間予測手段２０５は、利用者Ａを選択し、利用者Ａの資源利用プロフィールを参照する。図１０に例示する資源利用プロフィールから、利用者Ａが仮想マシン、ストレージおよび監視サービスを利用していることが判別できる。【０１１８】
復旧時間予測手段２０５は、まず、仮想マシンの復旧スケジュールを参照する。図１２に例示する復旧スケジュールでは、標準タイプの仮想マシンは、１２：３０の時点で４台利用可能になることが示されている。そのため、復旧時間予測手段２０５は、利用者Ａの利用する仮想マシンの復旧予定時刻を１２：３０と予測する。【０１１９】
復旧時間予測手段２０５は、次に、ストレージの復旧スケジュールを参照する。図１２に例示する復旧スケジュールから、利用者Ａの利用するボリューム２１は、１２：２０に復旧予定であることがわかる。そのため、復旧時間予測手段２０５は、利用者Ａの利用するストレージの復旧予定時刻を１２：２０と予測する。【０１２０】
同様に、復旧時間予測手段２０５は、監視サービスの復旧スケジュールを参照する。図１２に例示する復旧スケジュールから、監視サービスは、１２：３０に復旧予定であることがわかる。そのため、復旧時間予測手段２０５は、利用者Ａの利用する監視サービスの復旧予定時刻を１２：３０と予測する。【０１２１】
復旧時間予測手段２０５は、以上の結果から、各計算機資源またはサービスの復旧時間の中から最大値を求める。ここでは、復旧時間予測手段２０５は、利用者Ａについて、サービス復旧予定時刻が１２：３０であると判定できる。【０１２２】
復旧時間予測手段２０５は、他の利用者についても同様に、各利用者の資源利用プロフィールに基づいて、サービスの復旧予定時刻を求める。図１３は、利用者ごとにサービスの復旧予定時刻を求めた結果の例を示す説明図である。【０１２３】
最後に、復旧時間提示手段２０７は、予測されたサービス復旧時間を利用者に提示する。このような処理を行うことで、本発明の目的を達成できる。
【実施例２】
【０１２４】
第１の実施例では、利用者Ａ〜Ｆが標準タイプの仮想マシンを利用することを前提としていた。第２の実施例では、この標準タイプの仮想マシンが複数の利用者で共有され、排他的に利用されるタイプの資源であるものとする。すなわち、第２の実施例では、より正確な復旧時間の予測を行うため、仮想マシンの予約を考慮した復旧時間の予測を行う。仮想マシンの予約を考慮することで、より正確な復旧時間の予測が可能になる。なお、第２の実施例は、第２の実施形態に対応する。【０１２５】
図１４は、仮想マシンの予約情報の一例を示す説明図である。ここでは、図５に例示するフローチャートの手順に従い、サービス復旧時間が予測されるとする。また、本実施例では、利用者Ａから利用者Ｆへの順番で計算機資源を利用する予約が行われるとする。【０１２６】
図１２に例示する復旧スケジュールによれば、１２：３０の時点で４台の仮想マシンが復旧する。この仮想マシンは、利用者Ａ、利用者Ｂおよび利用者Ｃのみ利用可能である。また、図１２に例示する復旧スケジュールによれば、１３：００の時点でさらに４台の仮想マシンが復旧する。この仮想マシンは、利用者Ｃ、利用者Ｄおよび利用者Ｅによって予約される。【０１２７】
予約情報に基づいて復旧時間を予測すると、仮想マシンの復旧予測時間が変化する。そのため、本実施例における方法で予測したサービス復旧時間と、第１の実施例における方法で予測したサービス復旧時間とは異なる。図１５は、利用者ごとにサービスの復旧予定時刻を求めた結果の他の例を示す説明図である。【０１２８】
図１５に例示するサービス復旧予定時刻と図１３に例示するサービス復旧予定時刻とを比較すると、利用者Ｅと利用者Ｆのサービス復旧予定時刻が変化していることが分かる。このように、予約情報も参照して復旧時間の予測を行うことにより、より詳細で確実な復旧時間を各利用者に提示できる。【０１２９】
次に、本発明の最小構成例を説明する。図１６は、本発明によるクラウドサービス復旧時間予測システムの最小構成の例を示すブロック図である。本発明によるクラウドサービス復旧時間予測システムは、クラウドサービス（例えば、クラウドサービス提供部１）で提供される複数種類の計算機資源（例えば、仮想マシン１０１、ストレージ１０２）またはそのクラウドサービスで提供されるサービスである提供サービス（例えば、サービス提供部１０３）で障害が発生した場合のその計算機資源または提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、その計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段８１（例えば、資源復旧スケジュール記憶部２０４）と、各利用者がクラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールをその利用者ごとに記憶する資源利用プロフィール記憶手段８２（例えば、資源利用プロフィール記憶部２０６）と、利用者がクラウドサービスを利用する際に使用する計算機資源または提供サービスを資源利用プロフィールから特定し、復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、その利用者が利用するクラウドサービスの復旧時間を予測する復旧時間予測手段８３（例えば、復旧時間予測手段２０５）と、予測されたサービス復旧時間を利用者に提示する復旧時間提示手段８４（例えば、復旧時間提示手段２０７）とを備えている。【０１３０】
そのような構成により、複数種類の計算機資源を用いて提供されるクラウドサービスの障害によって利用者の要求するサービスが利用できなくなった場合に、クラウドサービスが復旧する時間を利用者ごとに予測できる。【０１３１】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。【０１３２】
（付記１）クラウドサービスで提供される複数種類の計算機資源または当該クラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の当該計算機資源または当該提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、当該計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段と、各利用者が前記クラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールを当該利用者ごとに記憶する資源利用プロフィール記憶手段と、利用者が前記クラウドサービスを利用する際に使用する計算機資源または提供サービスを前記資源利用プロフィールから特定し、前記復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、当該利用者が利用するクラウドサービスの復旧時間を予測する復旧時間予測手段と、予測されたサービス復旧時間を前記利用者に提示する復旧時間提示手段とを備えたことを特徴とするクラウドサービス復旧時間予測システム。【０１３３】
（付記２）各計算機資源または提供サービスの障害状況を記憶する障害状況記憶手段と、前記障害状況を調査して前記障害状況記憶手段に記憶させる障害状況調査手段と、前記障害状況記憶手段に記憶された障害状況に基づいて復旧スケジュールを生成し、当該復旧スケジュールを復旧スケジュール記憶手段に記憶させる復旧スケジュール生成手段とを備えた付記１記載のクラウドサービス復旧時間予測システム。【０１３４】
（付記３）複数の利用者で共有され当該利用者間で排他的に利用される計算機資源の予約開始時間を、当該計算機資源の利用者と対応づけた情報である予約情報を資源予約情報記憶手段に記憶する資源予約情報登録手段を備え、前記資源予約情報登録手段は、前記資源予約情報記憶手段に記憶されている予約情報に基づいて、各利用者が利用する前記計算機資源が予約可能か否か判断し、前記復旧スケジュールに基づいて、予約可能な前記計算機資源の復旧時刻を予約開始時刻とする前記予約情報を資源予約情報記憶手段に記憶し、復旧時間予測手段は、復旧スケジュールおよび前記予約情報に基づいて、利用者が利用するクラウドサービスの復旧時間を予測する付記１または付記２記載のクラウドサービス復旧時間予測システム。【０１３５】
（付記４）計算機資源間の依存関係または利用者による資源復旧要求に基づく復旧スケジュールの制約条件を規定した復旧スケジュール制約情報を記憶する復旧スケジュール制約情報記憶手段と、前記復旧スケジュール制約情報が示す制約のもとで、目的とする指標を最大化または最小化する復旧スケジュールの候補を探索し、当該復旧スケジュールで資源復旧スケジュール記憶手段に記憶された対応する復旧スケジュールを更新する復旧スケジュール最適化手段を備え、復旧時間予測手段は、更新された復旧スケジュールに基づいて、利用者が利用するクラウドサービスの復旧時間を予測する付記１から付記３のうちのいずれか１つに記載のクラウドサービス復旧時間予測システム。【０１３６】
（付記５）クラウドサービスで提供される複数種類の計算機資源または当該クラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の復旧時間を予測するクラウドサービス復旧時間予測方法であって、各利用者が前記クラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールを当該利用者ごとに記憶する資源利用プロフィール記憶手段を参照し、当該資源利用プロフィール記憶手段に記憶された当該資源利用プロフィールから、利用者が前記クラウドサービスを利用する際に使用する計算機資源または提供サービスを特定し、前記計算機資源または前記提供サービスで障害が発生した場合の当該計算機資源または当該提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、当該計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段から抽出し、抽出した前記復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、当該利用者が利用するクラウドサービスの復旧時間を予測し、予測されたサービス復旧時間を前記利用者に提示することを特徴とするクラウドサービス復旧時間予測方法。【０１３７】
（付記６）各計算機資源または提供サービスの障害状況を調査して障害状況記憶手段に記憶させ、前記障害状況記憶手段に記憶された障害状況に基づいて復旧スケジュールを生成し、前記復旧スケジュールを復旧スケジュール記憶手段に記憶させる付記５記載のクラウドサービス復旧時間予測方法。【０１３８】
（付記７）複数の利用者で共有され当該利用者間で排他的に利用される計算機資源の予約開始時間を、当該計算機資源の利用者と対応づけた情報である予約情報を資源予約情報記憶手段に記憶する際、当該資源予約情報記憶手段に記憶されている前記予約情報に基づいて、各利用者が利用する前記計算機資源が予約可能か否か判断し、復旧スケジュールに基づいて、予約可能な前記計算機資源の復旧時刻を予約開始時刻とする予約情報を前記資源予約情報記憶手段に記憶し、復旧スケジュールおよび前記資源予約情報記憶手段に記憶された予約情報に基づいて、利用者が利用するクラウドサービスの復旧時間を予測する付記５または付記６記載のクラウドサービス復旧時間予測方法。【０１３９】
（付記８）計算機資源間の依存関係または利用者による資源復旧要求に基づく復旧スケジュールの制約条件を規定した復旧スケジュール制約情報が示す制約のもとで、目的とする指標を最大化または最小化する復旧スケジュールの候補を探索し、前記復旧スケジュールで資源復旧スケジュール記憶手段に記憶された対応する復旧スケジュールを更新し、更新された復旧スケジュールに基づいて、利用者が利用するクラウドサービスの復旧時間を予測する付記５から付記７のうちのいずれか１つに記載のクラウドサービス復旧時間予測方法。【０１４０】
（付記９）クラウドサービスで提供される複数種類の計算機資源または当該クラウドサービスで提供されるサービスである提供サービスで障害が発生した場合の復旧時間を予測するコンピュータに適用されるクラウドサービス復旧時間予測用プログラムであって、前記コンピュータに、各利用者が前記クラウドサービスを利用する際に使用する計算機資源を定めた資源利用プロフィールを当該利用者ごとに記憶する資源利用プロフィール記憶手段を参照し、当該資源利用プロフィール記憶手段に記憶された当該資源利用プロフィールから、利用者が前記クラウドサービスを利用する際に使用する計算機資源または提供サービスを特定し、前記計算機資源または前記提供サービスで障害が発生した場合の当該計算機資源または当該提供サービスを復旧させるスケジュールを規定した復旧スケジュールを、当該計算機資源の種類または提供サービスごとに記憶する復旧スケジュール記憶手段から抽出し、抽出した前記復旧スケジュールに基づいて、特定された全ての計算機資源または提供サービスが復旧する時間を予測することにより、当該利用者が利用するクラウドサービスの復旧時間を予測する復旧時間予測処理、および、予測されたサービス復旧時間を前記利用者に提示する復旧時間提示処理を実行させるためのクラウドサービス復旧時間予測用プログラム。【０１４１】
（付記１０）コンピュータに、各計算機資源または提供サービスの障害状況を調査して障害状況記憶手段に記憶させる障害状況調査処理、および、前記障害状況記憶手段に記憶された障害状況に基づいて復旧スケジュールを生成し、当該復旧スケジュールを復旧スケジュール記憶手段に記憶させる復旧スケジュール生成処理を実行させる付記１０記載のクラウドサービス復旧時間予測用プログラム。【０１４２】
（付記１１）コンピュータに、複数の利用者で共有され当該利用者間で排他的に利用される計算機資源の予約開始時間を、当該計算機資源の利用者と対応づけた情報である予約情報を資源予約情報記憶手段に記憶する際、当該資源予約情報記憶手段に記憶されている前記予約情報に基づいて、各利用者が利用する前記計算機資源が予約可能か否か判断し、復旧スケジュールに基づいて、予約可能な前記計算機資源の復旧時刻を予約開始時刻とする予約情報を前記資源予約情報記憶手段に記憶する資源予約情報登録処理を実行させ、復旧時間予測処理で、復旧スケジュールおよび前記資源予約情報記憶手段に記憶された予約情報に基づいて、利用者が利用するクラウドサービスの復旧時間を予測させる付記９または付記１０記載のクラウドサービス復旧時間予測用プログラム。【０１４３】
（付記１２）コンピュータに、計算機資源間の依存関係または利用者による資源復旧要求に基づく復旧スケジュールの制約条件を規定した復旧スケジュール制約情報が示す制約のもとで、目的とする指標を最大化または最小化する復旧スケジュールの候補を探索し、当該復旧スケジュールで資源復旧スケジュール記憶手段に記憶された対応する復旧スケジュールを更新する復旧スケジュール最適化処理を実行させ、復旧時間予測処理で、更新された復旧スケジュールに基づいて、利用者が利用するクラウドサービスの復旧時間を予測させる付記９から付記１１のうちのいずれか１つに記載のクラウドサービス復旧時間予測用プログラム。【０１４４】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。【０１４５】
この出願は、２０１１年９月８日に出願された日本特許出願２０１１−１９６０６４を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１４６】
本発明は、複数の計算機資源の故障を伴うシステム障害時に、サービス利用者ごとにサービス復旧時間を予測するクラウドサービス復旧時間予測システムに好適に適用される。
【符号の説明】
【０１４７】
１  クラウドサービス提供部
１０１  仮想マシン
１０２  ストレージ
１０３  サービス提供部
２  復旧時間予測システム
２０１  障害状況調査手段
２０２  障害状況記憶部
２０３  復旧スケジュール生成手段
２０４  資源復旧スケジュール記憶部
２０５  復旧時間予測手段
２０６  資源利用プロフィール記憶部
２０７  復旧時間提示手段
２０８  資源予約情報記憶部
２０９  復旧スケジュール最適化手段
２１０  復旧スケジュール制約情報記憶部
３  クラウドサービスクライアント
【図１】
2013035243.tif 000003
【図２】
2013035243.tif 000004
【図３】
2013035243.tif 000005
【図４】
2013035243.tif 000006
【図５】
2013035243.tif 000007
【図６】
2013035243.tif 000008
【図７】
2013035243.tif 000009
【図８】
2013035243.tif 000010
【図９】
2013035243.tif 000011
【図１０】
2013035243.tif 000012
【図１１】
2013035243.tif 000013
【図１２】
2013035243.tif 000014
【図１３】
2013035243.tif 000015
【図１４】
2013035243.tif 000016
【図１５】
2013035243.tif 000017
【図１６】
2013035243.tif 000018
【国際調査報告】
2013035243.tif 000019
2013035243.tif 000020
2013035243.tif 000021
2013035243.tif 000022