(57)【要約】【課題】プライマリクラウドで提供したサービスレベルの実績値又は更新されたプリファレンス情報に応じて、サービスレベルアグリーメントを動的に決定することにより、セカンダリクラウドも含めてサービスを選択して提供するプライマリクラウドサーバ、サービスを提供する方法及びコンピュータプログラムを提供する。【解決手段】ユーザに対して第一のサービスレベルアグリーメントに基づいて提供した第一のサービスの所定期間内におけるサービスレベルの実績値を取得し、サービスレベルの実績値に基づいて、第一のサービスレベルアグリーメントと異なる第二のサービスレベルアグリーメントを決定する。サービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した第二のサービスレベルアグリーメントを満たす第二のサービスを選択して、第一のサービスとともに提供する。【選択図】図７
2011118451.tif 000002
【特許請求の範囲】
【請求項１】
サービス選択の優先度を記憶手段に記憶する第一の情報記憶部と、
ユーザに対して第一のサービスレベルアグリーメントに基づいて提供した第一のサービスの所定期間内におけるサービスレベルの実績値を取得する取得部と、
所定期間内に取得した前記サービスレベルの実績値に基づいて、前記第一のサービスレベルアグリーメントと異なる第二のサービスレベルアグリーメントを決定する決定部と、
記憶してある前記サービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択部と
を備えるクラウドシステム。
【請求項２】
前記取得部は、所定期間内に提供した前記第一のサービスのサービスレベルの実績値を取得し、
前記決定部は、所定期間内に取得した前記サービスレベルの実績値と所定期間内に用いたサービスレベルアグリーメントで設定したサービスレベルの計画値との比率に基づいて、前記第二のサービスレベルアグリーメントを決定する請求項１に記載のクラウドシステム。
【請求項３】
ユーザに対して第一のサービスを提供するための第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度を含むプリファレンス情報を記憶手段に記憶する第二の情報記憶部と、
記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及び／又はサービス選択の優先度が更新された場合、更新された前記第一のサービスレベルアグリーメントの各項目に対する制約条件を、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件とマージし、第二のサービスレベルアグリーメントを決定する決定部と、
更新された前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択部と、
前記第一のサービス及び選択した前記第二のサービスを提供するサービス提供部と
を備えるクラウドシステム。
【請求項４】
記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かを判断する判断部を備える請求項３に記載のクラウドシステム。
【請求項５】
サービスレベルに対応付けて提供することが可能なサービスを識別する情報であるサービスリストを記憶手段に記憶する第三の情報記憶部を備え、
前記選択部は、記憶してある前記サービスリストを照会し、前記第二のサービスレベルアグリーメントを満たすサービスレベルを有する第二のサービスを抽出し、抽出した第二のサービスの中から、記憶してある前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて第二のサービスを選択する請求項１乃至４のいずれか一項に記載のクラウドシステム。
【請求項６】
サービス選択の優先度を記憶手段に記憶する工程と、
ユーザに対して第一のサービスレベルアグリーメントに基づいて提供した第一のサービスの所定期間内におけるサービスレベルの実績値を取得する工程と、
所定期間内に取得した前記サービスレベルの実績値に基づいて、前記第一のサービスレベルアグリーメントと異なる第二のサービスレベルアグリーメントを決定する工程と、
記憶してある前記サービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する工程と
を含むクラウド制御方法。
【請求項７】
所定期間内に提供した前記第一のサービスのサービスレベルの実績値を取得し、
所定期間内に取得した前記サービスレベルの実績値と所定期間内に用いたサービスレベルアグリーメントで設定したサービスレベルの計画値との比率に基づいて、前記第二のサービスレベルアグリーメントを決定する請求項６に記載のクラウド制御方法。
【請求項８】
ユーザに対して第一のサービスを提供するための第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度を含むプリファレンス情報を記憶手段に記憶する工程と、
記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及び／又はサービス選択の優先度が更新された場合、更新された前記第一のサービスレベルアグリーメントの各項目に対する制約条件を、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件とマージし、第二のサービスレベルアグリーメントを決定する工程と、
更新された前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する工程と、
前記第一のサービス及び選択した前記第二のサービスを提供する工程と
を含むクラウド制御方法。
【請求項９】
記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かを判断する工程を含む請求項８に記載のクラウド制御方法。
【請求項１０】
サービスレベルに対応付けて提供することが可能なサービスを識別する情報であるサービスリストを記憶手段に記憶する工程と、
記憶してある前記サービスリストを照会し、前記第二のサービスレベルアグリーメントを満たすサービスレベルを有する第二のサービスを抽出し、抽出した第二のサービスの中から、記憶してある前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて第二のサービスを選択する工程と
を含む請求項６乃至９のいずれか一項に記載のクラウド制御方法。
【請求項１１】
ユーザが使用するクライアント及びセカンダリクラウドがサービスを提供するセカンダリクラウドサーバとデータ通信することが可能に接続されているプライマリクラウドサーバの動作を制御するコンピュータにて実行することが可能なコンピュータプログラムにおいて、
前記コンピュータを、
サービス選択の優先度を記憶手段に記憶する第一の情報記憶手段、
ユーザに対して第一のサービスレベルアグリーメントに基づいて提供した第一のサービスの所定期間内におけるサービスレベルの実績値を取得する取得手段、
所定期間内に取得した前記サービスレベルの実績値に基づいて、前記第一のサービスレベルアグリーメントと異なる第二のサービスレベルアグリーメントを決定する決定手段、及び
記憶してある前記サービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択手段
として機能させるコンピュータプログラム。
【請求項１２】
ユーザが使用するクライアント及びセカンダリクラウドがサービスを提供するセカンダリクラウドサーバとデータ通信することが可能に接続されているプライマリクラウドサーバの動作を制御するコンピュータにて実行することが可能なコンピュータプログラムにおいて、
前記コンピュータを、
ユーザに対して第一のサービスを提供するための第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度を含むプリファレンス情報を記憶手段に記憶する第二の情報記憶手段、
記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及び／又はサービス選択の優先度が更新された場合、更新された前記第一のサービスレベルアグリーメントの各項目に対する制約条件を、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件とマージし、第二のサービスレベルアグリーメントを決定する決定手段、及び
更新された前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択手段
として機能させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザとプライマリクラウドとの間で締結されたサービスレベルアグリーメントを遵守しつつ、プライマリクラウドで提供したサービスレベルの実績値又は更新されたプリファレンス情報に基づいて、サービスレベルアグリーメントを動的に決定してサービスを提供することができるクラウドシステム、クラウド制御方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
インターネット技術の急速な発展に伴い、クラウドサーバにより各種のサービスを提供するクラウドサービスが多々提供されている。また、複数のクラウドサービスを統合して新たなクラウドサービスを提供することも可能となる。
【０００３】
クラウドサービスを提供する場合、ユーザとクラウドサービスプロバイダとの間では、サービスレベルの取り決めが行われ、提供されるサービスに対してユーザが対価を支払う。しかし、複数のクラウドサービスを統合する場合、ユーザと直接取り決めを行うプライマリクラウドサービスプロバイダ（以下、プライマリクラウド）と、統合されるセカンダリクラウドサービスプロバイダ（以下、セカンダリクラウド）との間でも、新たにサービスレベルの取り決めを行う。例えば特許文献１では、オーダーレコード等に基づいてサービスレベルアグリーメントをセカンダリクラウドに適合するように更新して、セカンダリクラウドのサービスの提供を受けることができるマネジメントシステムが開示されている。
【０００４】
複数のクラウドサービスを統合した一つのサービスを提供するためには、クラウドサービス間でサービスのポータビリティが要求される。すなわち、プライマリクラウドは、ユーザとの間の取り決めであるサービスレベルアグリーメントを遵守しつつ、最適なサービスを、セカンダリクラウドを含めて選択する必要がある。
【０００５】
例えば特許文献２では、通信システムにおいて、サービスレベルの質を過去、現在又は予測される条件に基づいて動的に変更することを可能なシステムが開示されており、変更されたサービスレベルの質に基づいて適切なセカンダリクラウドを選択することにより、統合されたサービスを動的に変更しつつ提供することができる要素技術が開示されている。また、特許文献３では、端末装置に発生した障害の状況に応じてサービスレベルを変更することができるＳＬＡ（サービスレベルアグリーメント）監視システムが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２００９−５０３７３３号公報
【特許文献２】特開２００９−２０７１４０号公報
【特許文献３】特開２００８−０５９０２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、サービスレベルの取り決めであるサービスレベルアグリーメントの有効期間（契約期間）内に達成状況が変化する、リソースの使用状況が変化する、管理コストが変化する等のサービスの提供に直接影響する変化が生じた場合であっても、現状ではサービスの提供開始時に取り決めたサービスレベルアグリーメントに従って割り当てられたサービス、又は該サービスレベルアグリーメントを満たすセカンダリクラウドしか利用し続けることができないことから、最適なサービスを統合して提供することができないという問題点があった。
【０００８】
また、プライマリクラウドの管理コスト、環境コスト等の管理指針は、プリファレンス情報として適宜更新することが可能な情報であり、更新されたプリファレンス情報により最適なサービスを、セカンダリクラウドを含めて動的に選択できることが好ましい。
【０００９】
本発明は斯かる事情に鑑みてなされたものであり、プライマリクラウドで提供したサービスレベルの実績値又は更新されたプリファレンス情報に基づいて、サービスレベルアグリーメントを動的に決定することにより、セカンダリクラウドも含めてサービスを選択して提供するクラウドシステム、クラウド制御方法及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために第１発明に係るクラウドシステムは、サービス選択の優先度を記憶手段に記憶する第一の情報記憶部と、ユーザに対して第一のサービスレベルアグリーメントに基づいて提供した第一のサービスの所定期間内におけるサービスレベルの実績値を取得する取得部と、所定期間内に取得した前記サービスレベルの実績値に基づいて、前記第一のサービスレベルアグリーメントと異なる第二のサービスレベルアグリーメントを決定する決定部と、記憶してある前記サービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択部とを備える。
【００１１】
また、第２発明に係るクラウドシステムは、第１発明において、前記取得部は、所定期間内に提供した前記第一のサービスのサービスレベルの実績値を取得し、前記決定部は、所定期間内に取得した前記サービスレベルの実績値と所定期間内に用いたサービスレベルアグリーメントで設定したサービスレベルの計画値との比率に基づいて、前記第二のサービスレベルアグリーメントを決定する。
【００１２】
次に上記目的を達成するために第３発明に係るクラウドシステムは、ユーザに対して第一のサービスを提供するための第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度を含むプリファレンス情報を記憶手段に記憶する第二の情報記憶部と、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及び／又はサービス選択の優先度が更新された場合、更新された前記第一のサービスレベルアグリーメントの各項目に対する制約条件を、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件とマージし、第二のサービスレベルアグリーメントを決定する決定部と、更新された前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択部と、前記第一のサービス及び選択した前記第二のサービスを提供するサービス提供部とを備える。
【００１３】
また、第４発明に係るクラウドシステムは、第３発明において、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かを判断する判断部を備える。
【００１４】
また、第５発明に係るクラウドシステムは、第１乃至第４発明のいずれか１つにおいて、サービスレベルに対応付けて提供することが可能なサービスを識別する情報であるサービスリストを記憶手段に記憶する第三の情報記憶部を備え、前記選択部は、記憶してある前記サービスリストを照会し、前記第二のサービスレベルアグリーメントを満たすサービスレベルを有する第二のサービスを抽出し、抽出した第二のサービスの中から、記憶してある前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて第二のサービスを選択する。
【００１５】
次に上記目的を達成するために第６発明に係るクラウド制御方法は、サービス選択の優先度を記憶手段に記憶する工程と、ユーザに対して第一のサービスレベルアグリーメントに基づいて提供した第一のサービスの所定期間内におけるサービスレベルの実績値を取得する工程と、所定期間内に取得した前記サービスレベルの実績値に基づいて、前記第一のサービスレベルアグリーメントと異なる第二のサービスレベルアグリーメントを決定する工程と、記憶してある前記サービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する工程とを含む。
【００１６】
また、第７発明に係るクラウド制御方法は、第６発明において、所定期間内に提供した前記第一のサービスのサービスレベルの実績値を取得し、所定期間内に取得した前記サービスレベルの実績値と所定期間内に用いたサービスレベルアグリーメントで設定したサービスレベルの計画値との比率に基づいて、前記第二のサービスレベルアグリーメントを決定する。
【００１７】
次に上記目的を達成するために第８発明に係るクラウド制御方法は、ユーザに対して第一のサービスを提供するための第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度を含むプリファレンス情報を記憶手段に記憶する工程と、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及び／又はサービス選択の優先度が更新された場合、更新された前記第一のサービスレベルアグリーメントの各項目に対する制約条件を、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件とマージし、第二のサービスレベルアグリーメントを決定する工程と、更新された前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する工程と、前記第一のサービス及び選択した前記第二のサービスを提供する工程とを含む。
【００１８】
また、第９発明に係るクラウド制御方法は、第８発明において、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かを判断する工程を含む。
【００１９】
また、第１０発明に係るクラウド制御方法は、第６乃至第９発明のいずれか１つにおいて、サービスレベルに対応付けて提供することが可能なサービスを識別する情報であるサービスリストを記憶手段に記憶する工程と、記憶してある前記サービスリストを照会し、前記第二のサービスレベルアグリーメントを満たすサービスレベルを有する第二のサービスを抽出し、抽出した第二のサービスの中から、記憶してある前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて第二のサービスを選択する工程とを含む。
【００２０】
次に上記目的を達成するために第１１発明に係るコンピュータプログラムは、ユーザが使用するクライアント及びセカンダリクラウドがサービスを提供するセカンダリクラウドサーバとデータ通信することが可能に接続されているプライマリクラウドサーバの動作を制御するコンピュータにて実行することが可能なコンピュータプログラムにおいて、前記コンピュータを、サービス選択の優先度を記憶手段に記憶する第一の情報記憶手段、ユーザに対して第一のサービスレベルアグリーメントに基づいて提供した第一のサービスの所定期間内におけるサービスレベルの実績値を取得する取得手段、所定期間内に取得した前記サービスレベルの実績値に基づいて、前記第一のサービスレベルアグリーメントと異なる第二のサービスレベルアグリーメントを決定する決定手段、及び記憶してある前記サービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択手段として機能させる。
【００２１】
次に上記目的を達成するために第１２発明に係るコンピュータプログラムは、ユーザが使用するクライアント及びセカンダリクラウドがサービスを提供するセカンダリクラウドサーバとデータ通信することが可能に接続されているプライマリクラウドサーバの動作を制御するコンピュータにて実行することが可能なコンピュータプログラムにおいて、前記コンピュータを、ユーザに対して第一のサービスを提供するための第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度を含むプリファレンス情報を記憶手段に記憶する第二の情報記憶手段、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件、及び／又はサービス選択の優先度が更新された場合、更新された前記第一のサービスレベルアグリーメントの各項目に対する制約条件を、記憶してある前記第一のサービスレベルアグリーメントの各項目に対する制約条件とマージし、第二のサービスレベルアグリーメントを決定する決定手段、及び更新された前記第一のサービスレベルアグリーメントのサービス選択の優先度に基づいて、プライマリクラウド及びセカンダリクラウドが提供するサービスの中から、決定した前記第二のサービスレベルアグリーメントを満たす第二のサービスを選択する選択手段として機能させる。
【発明の効果】
【００２２】
本発明によれば、ユーザに対して実際に提供されたサービスのサービスレベルの実績値に基づいて、第二のサービスレベルアグリーメントを決定することができ、プライマリクラウドとユーザとの間で締結された第一のサービスレベルアグリーメントを遵守しつつ新たに決定した第二のサービスレベルアグリーメントを満たす第二のサービスを、セカンダリクラウドを含めて動的に選択して提供することが可能となる。
【００２３】
また、本発明によれば、プライマリクラウドとユーザとの間で締結された第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かに応じて、第一のサービスレベルアグリーメントとは異なる第二のサービスレベルアグリーメントを決定することができ、プライマリクラウドの管理指針であるプリファレンス情報として制約条件及び／又はサービス選択の優先度が更新される都度、更新された制約条件及び／又はサービス選択の優先度に基づく第二のサービスを、セカンダリクラウドを含めて動的に選択して提供することが可能となる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施の形態１に係るクラウドシステムの構成例を示すブロック図である。
【図２】本発明の実施の形態１に係るプライマリクラウドサーバを、ＣＰＵを用いて構成した例を示すブロック図である。
【図３】本発明の実施の形態１に係るプライマリクラウドサーバの機能ブロック図である。
【図４】従来のプライマリクラウドサーバにおけるサービスレベルアグリーメントの考え方を模式的に説明するグラフである。
【図５】本発明の実施の形態１に係るプライマリクラウドサーバにおけるサービスレベルアグリーメント調整の考え方を模式的に説明するグラフである。
【図６】本発明の実施の形態１に係るプライマリクラウドサーバにおけるサービスレベルアグリーメント調整の考え方を模式的に説明するグラフである。
【図７】本発明の実施の形態１に係るプライマリクラウドサーバのＣＰＵの処理手順を示すフローチャートである。
【図８】本発明の実施の形態１に係るプライマリクラウドサーバのサービスリスト記憶部１３２に記憶してあるデータ構成の例示図である。
【図９】サービスレベルアグリーメントＳＬＡ（Ｐ）を更新する手順の具体例を示すグラフである。
【図１０】本発明の実施の形態２に係るプライマリクラウドサーバを、ＣＰＵを用いて構成した例を示すブロック図である。
【図１１】本発明の実施の形態２に係るプライマリクラウドサーバの機能ブロック図である。
【図１２】本発明の実施の形態２に係るプライマリクラウドサーバのプリファレンス情報記憶部に記憶されているデータの例示図である。
【図１３】本発明の実施の形態２に係るプライマリクラウドサーバのＣＰＵの処理手順を示すフローチャートである。
【図１４】本発明の実施の形態２に係るプライマリクラウドサーバのサービスリスト記憶部に記憶してあるデータ構成の例示図である。
【発明を実施するための形態】
【００２５】
以下、本発明の実施の形態におけるプライマリクラウドで提供したサービスレベルの実績値又は更新されたプリファレンス情報に基づいて、サービスレベルアグリーメントを動的に決定することにより、セカンダリクラウドを含めてサービスを選択して提供することができるクラウドシステムについて、図面に基づいて具体的に説明する。以下の実施の形態は、特許請求の範囲に記載された発明を限定するものではなく、実施の形態の中で説明されている特徴的事項の組み合わせの全てが解決手段の必須事項であるとは限らないことは言うまでもない。
【００２６】
また、本発明は多くの異なる態様にて実施することが可能であり、実施の形態の記載内容に限定して解釈されるべきものではない。実施の形態を通じて同じ要素には同一の符号を付している。
【００２７】
以下の実施の形態では、コンピュータシステムにコンピュータプログラムを導入した、クラウドシステムについて説明するが、当業者であれば明らかな通り、本発明はその一部をコンピュータで実行することが可能なコンピュータプログラムとして実施することができる。したがって、本発明は、クラウド制御装置を含むクラウドシステムというハードウェアとしての実施の形態、ソフトウェアとしての実施の形態、又はソフトウェアとハードウェアとの組み合わせの実施の形態をとることができる。コンピュータプログラムは、ハードディスク、ＤＶＤ、ＣＤ、光記憶装置、磁気記憶装置等の任意のコンピュータで読み取ることが可能な記録媒体に記録することができる。
【００２８】
本発明の実施の形態によれば、ユーザに対して実際に提供されたサービスのサービスレベルの実績値に基づいて、第二のサービスレベルアグリーメントを決定することができ、プライマリクラウドとユーザとの間で締結された第一のサービスレベルアグリーメントを遵守しつつ新たに決定した第二のサービスレベルアグリーメントを満たす第二のサービスを、セカンダリクラウドを含めて動的に選択して提供することが可能となる。
【００２９】
また、本発明の実施の形態によれば、プライマリクラウドとユーザとの間で締結された第一のサービスレベルアグリーメントの各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かに応じて、第一のサービスレベルアグリーメントとは異なる第二のサービスレベルアグリーメントを決定することができ、プライマリクラウドの管理指針であるプリファレンス情報として制約条件及び／又はサービス選択の優先度が更新される都度、更新された制約条件及び／又はサービス選択の優先度に基づく第二のサービスを、セカンダリクラウドを含めて動的に選択して提供することが可能となる。
【００３０】
（実施の形態１）
図１は、本発明の実施の形態１に係るクラウドシステムの構成例を示すブロック図である。本発明の実施の形態１に係るクラウドシステムは、動作を制御するクラウド制御装置２と一体となっているプライマリクラウドサーバ１が、複数のクライアント３、３、・・・と、ネットワークを介してデータ通信することが可能に接続されており、また、プライマリクラウドサーバ１が提供するサービス（第一のサービス）とは異なるサービスを提供する複数のセカンダリクラウドサーバ５、５、・・・と、ネットワークを介してデータ通信することが可能に接続されている。
【００３１】
プライマリクラウドサーバ１を用いるプライマリクラウドは、ハードウェア、ソフトウェア、アプリケーション等のＩＴリソースをサービスとしてユーザに対して提供する。プライマリクラウドは、ユーザに対して、割り当てることが可能なサービス、サービスレベルアグリーメントＳＬＡ（Ｕ）及びサービス料金、管理コスト等のコストを提示し、ユーザは、クライアント３から選択したサービス要求をプライマリクラウドサーバ１へ送信する。すなわちサービス要求にはサービスレベルアグリーメントＳＬＡ（Ｕ）が含まれる。同様に、セカンダリクラウドは、プライマリクラウドに対して、割り当てることが可能なサービス、サービスレベルアグリーメントＳＬＡ（Ｐ）及びサービス料金、管理コスト等のコストを提示し、プライマリクラウドは、プライマリクラウドサーバ１から選択したサービス要求をセカンダリクラウドサーバ５、５、・・・へ送信する。すなわちサービス要求にはサービスレベルアグリーメントＳＬＡ（Ｐ）が含まれる。プライマリクラウドサーバ１は、サービスレベルアグリーメントＳＬＡ（Ｕ）を遵守しつつ、ユーザに対してサービスを提供する。
【００３２】
なお、サービス料金とは、サービスを利用するためのコストを意味しており、例えば処理数ごとの利用料金等を示している。また、管理コストとは、サービスを提供する場合に、提供するサービスの品質を維持するために必要なコストを意味している。
【００３３】
図２は、本発明の実施の形態１に係るプライマリクラウドサーバ１（クラウド制御装置２）を、ＣＰＵを用いて構成した例を示すブロック図である。図２に示すように、プライマリクラウドサーバ１は、少なくともＣＰＵ（中央演算装置）１１、メモリ１２、記憶装置１３、Ｉ／Ｏインタフェース１４、ビデオインタフェース１５、可搬型ディスクドライブ１６、通信インタフェース１７及び上述したハードウェアを接続する内部バス１８で構成されている。
【００３４】
ＣＰＵ１１は、内部バス１８を介してプライマリクラウドサーバ１の上述したようなハードウェア各部と接続されており、上述したハードウェア各部の動作を制御するとともに、記憶装置１３に記憶しているコンピュータプログラム１００に従って、種々のソフトウェア的機能を実行する。メモリ１２は、ＳＲＡＭ、ＳＤＲＡＭ等の揮発性メモリで構成され、コンピュータプログラム１００の実行時にロードモジュールが展開され、コンピュータプログラム１００の実行時に発生する一時的なデータ等を記憶する。
【００３５】
記憶装置１３は、内蔵される固定型記憶装置（ハードディスク）、ＲＯＭ等で構成されている。記憶装置１３に記憶しているコンピュータプログラム１００は、プログラム及びデータ等の情報を記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体９０から、可搬型ディスクドライブ１６によりダウンロードされ、実行時には記憶装置１３からメモリ１２へ展開して実行される。もちろん、通信インタフェース１７を介して、接続されている外部のコンピュータからダウンロードされたコンピュータプログラムであっても良い。
【００３６】
また記憶装置１３は、プリファレンス情報記憶部１３１、サービスリスト記憶部１３２及びサービスレベル実績値記憶部１３３を備えている。プリファレンス情報記憶部１３１には、ユーザに対してサービス（第一のサービス）を提供するためのサービスレベルアグリーメントＳＬＡ（Ｕ）（第一のサービスレベルアグリーメント）の各項目に対する制約条件、及びサービス選択の優先度を含むプリファレンス情報を記憶する。
【００３７】
サービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件は、例えば月次、日次等の所定期間内における所定の特性値の平均値が一定値以下である、直近の所定期間内における所定の特性値が一定値以下である、完了予定時刻までに所定の計算処理を完了する等の制約条件である。すなわち、サービス提供の可用性、パフォーマンス、ＣＰＵの演算処理量等の指標を示す情報を制約条件として記憶する。これらの情報は、サービスの提供状況によって変化する項目だからである。
【００３８】
また、サービス選択の優先度は、例えばサービス料金が一番安価である、処理量が一番大量である等のサービスを選択する基準を示す情報を意味しており、複数の制約・コスト関数により定義付けしても良い。
【００３９】
サービスリスト記憶部１３２には、サービスレベルに対応付けて提供することが可能なサービスを識別する情報であるサービスリストを記憶する。また、サービスレベル実績値記憶部１３３には、後述するように、実際に提供したサービスのサービスレベルの実績値を記憶する。
【００４０】
通信インタフェース１７は内部バス１８に接続されており、インターネット、ＬＡＮ、ＷＡＮ等の外部のネットワークに接続されることにより、クライアント３、３、・・・、セカンダリクラウドサーバ５、５、・・・等とデータ送受信を行うことが可能となっている。
【００４１】
Ｉ／Ｏインタフェース１４は、キーボード２１、マウス２２等のデータ入力媒体と接続され、データの入力を受け付ける。また、ビデオインタフェース１５は、ＣＲＴモニタ、ＬＣＤ等の表示装置２３と接続され、所定の画像を表示する。
【００４２】
以下、上述した構成のプライマリクラウドサーバ１の動作について説明する。図３は、本発明の実施の形態１に係るプライマリクラウドサーバ１の機能ブロック図である。図３において、サービスレベル取得部３０１は、実際に提供したサービスのサービスレベルに関する実績値を取得し、サービスレベル実績値記憶部１３３へ履歴データとして記憶する。例えばサービスの提供を開始した時点から、所定のサンプリング時間ごとにサービスレベルの実績値を取得して記憶する。
【００４３】
サービスレベルアグリーメント決定部３０２は、取得したサービスレベルの実績値に基づいて、プライマリクラウドが別個に締結するべきサービスレベルアグリーメントＳＬＡ（Ｐ）（第二のサービスレベルアグリーメント）を決定する。より具体的には、所定期間内のサービスレベルの実績値と所定期間内のサービスレベルの計画値との比率に基づいて、サービスレベルアグリーメントＳＬＡ（Ｐ）を更新する。
【００４４】
所定期間内のサービスレベルの計画値は、プリファレンス情報記憶部１３１にて、サービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件として記憶されている。
【００４５】
図４は、従来のプライマリクラウドサーバにおけるサービスレベルアグリーメントの考え方を模式的に説明するグラフである。図４に示すように、サービスの提供を開始する時刻ｔ１からサービスレベルアグリーメントが適切であるか否かを判定する時刻ｔ２までの間、ユーザは一定のサービスレベルＳＬ０にてサービスレベルアグリーメントＳＬＡ（Ｕ）を締結する場合、サービス領域４１のサービスが提供されることを期待する。しかし、実際に提供されるサービスのサービスレベルが計画したサービスレベルＳＬ０より高いＳＬ１であった場合、ユーザはサービスレベルアグリーメントＳＬＡ（Ｕ）しか期待していないにもかかわらず、サービス領域４２の分だけ過剰に提供することになり、プライマリクラウドとしては無駄なコストの発生を余儀なくされるという問題がある。
【００４６】
図５及び図６は、本発明の実施の形態１に係るプライマリクラウドサーバ１におけるサービスレベルアグリーメント調整の考え方を模式的に説明するグラフである。図５は、実際に提供されるサービスのサービスレベルの実績値が、計画値よりも低い場合を、図６は、実際に提供されるサービスのサービスレベルの実績値が、計画値よりも高い場合を、それぞれ示している。
【００４７】
図５では、サービスの提供を開始する時刻ｔ１からサービスレベルアグリーメントが適切であるか否かを判定する時刻ｔ２までの間、ユーザは一定のサービスレベルＳＬ０にてサービスレベルアグリーメントＳＬＡ（Ｕ）を締結している。しかし、時刻ｔ２に到達するまでの所定の時刻ｔ３において、それまでの契約期間内に実際に提供されたサービスのサービスレベル（実績値）が計画したサービスレベルＳＬ０（計画値）より低くなっており、契約期間の終了時において、サービスの提供がサービスレベルアグリーメントＳＬＡ（Ｕ）よりも低くなると判定することができる。
【００４８】
そこで、プライマリクラウドサーバ１の動作を制御するクラウド制御装置２は、サービスレベルアグリーメントを、サービスレベルアグリーメントＳＬＡ（Ｕ）よりも高いサービスレベルを有するサービスレベルアグリーメントＳＬＡ（Ｐ）へと更新する。すなわち、所定期間内のサービスレベルの実績値と所定期間内のサービスレベルの計画値との比率に基づいて、サービスレベルアグリーメントＳＬＡ（Ｐ）を高く更新することにより、契約期間の終了時において、当初計画したサービスレベルまでサービスを提供することができるよう改善することができる。
【００４９】
同様に図６では、サービスの提供を開始する時刻ｔ１からサービスレベルアグリーメントが適切であるか否かを判定する時刻ｔ２までの間、ユーザは一定のサービスレベルＳＬ０にてサービスレベルアグリーメントＳＬＡ（Ｕ）を締結している。しかし、時刻ｔ２に到達するまでの所定の時刻ｔ３において、それまでの契約期間内に実際に提供されたサービスのサービスレベルが計画したサービスレベルＳＬ０より高くなっており、契約期間の終了時において、サービスの提供がサービスレベルアグリーメントＳＬＡ（Ｕ）よりも過剰になると判定することができる。
【００５０】
そこで、プライマリクラウドサーバ１の動作を制御するクラウド制御装置２は、サービスレベルアグリーメントを、サービスレベルアグリーメントＳＬＡ（Ｕ）よりも低いサービスレベルを有するサービスレベルアグリーメントＳＬＡ（Ｐ）へと更新する。すなわち、所定期間内のサービスレベルの実績値と所定期間内のサービスレベルの計画値との比率に基づいて、サービスレベルアグリーメントＳＬＡ（Ｐ）を低く更新することにより、契約期間の終了時において、当初計画したサービスレベルまでサービスを提供することができるよう改善することができる。
【００５１】
なお、サービスレベルアグリーメント決定部３０２にてサービスレベルアグリーメントＳＬＡ（Ｐ）を更新するタイミングは、一定時間間隔であることに限定されるものではなく、例えば外部の監視システムからのイベント受信時、所定の時期にスケジューリングされた時刻等、特に限定されるものではない。
【００５２】
また、図５及び図６の例のように、サービスの提供を開始する時刻ｔ１からサービスレベルアグリーメントが適切であるか否かを判定する時刻ｔ２までの間のサービスレベルの実績値に基づいて、該サービスレベルアグリーメントの契約期間の終了時までのサービスレベルアグリーメントＳＬＡ（Ｐ）を決定することに限定されるものでもない。例えば月次単位でサービスレベルアグリーメントが更新される場合、月初から現在までに提供されたサービスレベルの実績値に基づいて、月末までのサービスレベルアグリーメントＳＬＡ（Ｐ）を決定しても良いし、一定時間前、例えば１２時間前から現在までに提供されたサービスレベルの実績値に基づいて、一定時間後、例えば６時間後までのサービスレベルアグリーメントＳＬＡ（Ｐ）を決定しても良い。後者は、サービスレベルアグリーメントＳＬＡ（Ｐ）が移動平均法で決定される場合に有効な方法である。
【００５３】
図３に戻って、サービス選択部３０３は、プリファレンス情報記憶部１３１に記憶してあるサービスレベルアグリーメントＳＬＡ（Ｕ）のサービス選択の優先度に基づいて、決定したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスをプライマリクラウド及びセカンダリクラウドが提供するサービスの中から選択する。サービス選択の優先度は、複数の制約条件及び目的コスト関数の組み合わせとして記憶しておく。
【００５４】
具体的には、例えばＣＯ2 コストを最小化するよう、ｍｉｎ(ＣＯ2  コスト)という目的コスト関数として記憶する。同様に、サービス料金を最小化するよう、ｍｉｎ(サービス料金)という目的コスト関数として記憶しても良いし、管理コストを最小化するよう、ｍｉｎ(管理コスト)という目的コスト関数として記憶しても良い。
【００５５】
なお、サービスレベルに対応付けて提供することが可能なサービスを識別する情報であるサービスリストをサービスリスト記憶部１３２に記憶しておき、サービスリストを照会することにより、新たに決定したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスレベルを有するサービス（第二のサービス）を抽出しても良い。サービスリストには、プライマリクラウドで提供することが可能なサービスの詳細だけでなく、セカンダリクラウドで提供することが可能なサービスの詳細に関する情報も記憶しているので、提供することが可能な複数のサービス（第二のサービス）を選択することができる。
【００５６】
サービスリストに記憶される各セカンダリクラウドから提供されるサービスの詳細に関する情報は、動的に更新されても良いし、定期的に更新されても良い。サービスリストの項目には、サービスレベルアグリーメントの定義に必要な属性、目的コスト関数等を追加することもできる。
【００５７】
そして、抽出した複数のサービスの中から、記憶してあるサービスレベルアグリーメントＳＬＡ（Ｕ）のサービス選択の優先度に基づいて、例えば優先度が最も高いサービス（第二のサービス）を選択する。選択するサービスは、プライマリクラウドで提供することが可能なサービスであっても良いし、セカンダリクラウドで提供することが可能なサービスであっても良い。
【００５８】
サービス提供部３０４は、選択したサービスを提供する。もちろん、プライマリクラウドで提供することが可能なサービスだけでなく、セカンダリクラウドで提供することが可能なサービスが選択された場合には、セカンダリクラウドサーバに対してサービスの提供を指示する。
【００５９】
選択されたサービスを提供することにより、実際に提供されたサービスのサービスレベルの実績値に基づいて更新されたサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスを、サービスレベルアグリーメントＳＬＡ（Ｕ）で要求されるサービスレベルを維持しながら提供することが可能となる。
【００６０】
図７は、本発明の実施の形態１に係るプライマリクラウドサーバ１のＣＰＵ１１の処理手順を示すフローチャートである。プライマリクラウドサーバ１のＣＰＵ１１は、ユーザが使用するクライアント３から、サービス要求情報を受信する（ステップＳ７０１）。具体的には、ユーザとプライマリクラウドとの間で締結したいサービスレベルアグリーメントＳＬＡ（Ｕ）の内容に関する情報を含むサービス要求情報を受信する。
【００６１】
以下、サービス要求情報として、サービスの種類が「データ解析」、サービスの提供期間が「２００８年４月１日から２００９年８月３１日まで」、そしてサービスレベルアグリーメントＳＬＡ（Ｕ）として、パフォーマンスが「７００万処理／週」、可用性が「９９．９９％以上」を受信した場合を例に挙げて、処理の流れとともに説明する。
【００６２】
ＣＰＵ１１は、プリファレンス情報記憶部１３１に記憶されているプリファレンス情報をロードし（ステップＳ７０２）、サービスレベルアグリーメントＳＬＡ（Ｕ）とは別個に締結するべきサービスレベルアグリーメントＳＬＡ（Ｐ）を決定する（ステップＳ７０３）。サービスレベルアグリーメントＳＬＡ（Ｐ）は、サービス要求情報として受信したサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件を、ロードしたプリファレンス情報とマージすることにより決定する。
【００６３】
例えば、プリファレンス情報記憶部１３１に、プリファレンス情報として記憶してあるサービスレベルアグリーメントの各項目に対する制約条件が、セキュリティが「中位より大きい」であり、サービス選択の優先度が、管理コストが「最小」である場合、サービス要求情報に含まれるサービスレベルアグリーメントＳＬＡ（Ｕ）と、プリファレンス情報に含まれるサービスレベルアグリーメントの各項目に対する制約条件とをマージして、新たなサービスレベルアグリーメントＳＬＡ（Ｐ）を、パフォーマンスが「７００万処理／週」、可用性が「９９．９９％以上」、セキュリティが「中位以上」と決定する。
【００６４】
ＣＰＵ１１は、決定したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスを選択して（ステップＳ７０４）、サービスを提供する（ステップＳ７０５）。これにより、記憶してあるプリファレンス情報に基づいたサービスを提供することができる。
【００６５】
図８は、本発明の実施の形態１に係るプライマリクラウドサーバ１のサービスリスト記憶部１３２に記憶してあるデータ構成の例示図である。サービスリスト記憶部１３２には、サービスを識別するサービスＩＤに対応付けて、サービスの種類、サービス料金、可用性、パフォーマンス、管理コストの他、利用可能であるか否か、ＣＯ2 コスト、セキュリティレベル等のサービスを選択するために必要な情報をリスト化して記憶してある。
【００６６】
本実施の形態１では、決定したサービスレベルアグリーメントＳＬＡ（Ｐ）が、パフォーマンスが「７００万処理／週」、可用性が「９９．９９％以上」、セキュリティが「中位以上」であり、すべてを満たすサービスはサービスＩＤ‘３’しか存在しないことから、サービスＩＤ‘３’を選択する。
【００６７】
図７に戻って、プライマリクラウドサーバ１のＣＰＵ１１は、ユーザとの間で締結されたサービスレベルアグリーメントＳＬＡ（Ｕ）の契約期間内であるか否かを判断し（ステップＳ７０６）、ＣＰＵ１１が、契約期間内であると判断した場合（ステップＳ７０６：ＹＥＳ）、ＣＰＵ１１は、サービスレベルアグリーメントＳＬＡ（Ｐ）の更新時刻に到達したか否かを判断する（ステップＳ７０７）。ＣＰＵ１１が、サービスレベルアグリーメントＳＬＡ（Ｐ）の更新時刻に到達したと判断した場合（ステップＳ７０７：ＹＥＳ）、ＣＰＵ１１は、履歴データとしてサービスレベル実績値記憶部１３３に記憶してあるサービスレベルの実績値を取得し（ステップＳ７０８）、締結するべきサービスレベルアグリーメントＳＬＡ（Ｐ）を更新する（ステップＳ７０９）。
【００６８】
例えば、サービスレベルの実績値を日次単位で取得する場合であって、週末においてサービスレベルアグリーメントＳＬＡ（Ｕ）を遵守することが可能なサービスレベルアグリーメントＳＬＡ（Ｐ）に更新する。図９は、サービスレベルアグリーメントＳＬＡ（Ｐ）を更新する手順の具体例を示すグラフである。図９の例では、サービスレベルアグリーメントＳＬＡ（Ｐ）の更新間隔を１週間とし、サービスレベルの実績値を日次単位で取得しているものとする。
【００６９】
図９に示すように、サービスの提供を開始する時刻ｔ１から１日後までのサービスレベルの実績値を取得する。図９の例では、ユーザに対して実際に提供されたサービスＩＤ‘３’のサービスのパフォーマンスの実績値として２２０万処理が取得されたとする。更新されたサービスレベルアグリーメントＳＬＡ（Ｐ）では、パフォーマンスが「７００万処理／週」、すなわちパフォーマンス「１００万処理／日」であったことから、実績値からは１２０万処理／日もサービスを過剰に提供していることがわかる。
【００７０】
しかも、図９に示すようにパフォーマンスは増加傾向にあることから、サービスレベルアグリーメントＳＬＡ（Ｐ）の更新時刻である７日後までの残り６日間で残りの４８０万処理を実行すれば足り、８０万処理／日でサービスを実行すれば良い。そこで、サービスレベルアグリーメントＳＬＡ（Ｐ）のパフォーマンス「１００万処理／日」を、パフォーマンス「７０万処理／日」へ更新するよう決定する。なお、サービスレベルアグリーメントＳＬＡ（Ｐ）のパフォーマンス「８０万処理／日」としなかったのは、実績値がサービスレベルアグリーメントＳＬＡ（Ｐ）の計画値より大きいサービスレベルとなる傾向にあることがわかっており、比例計算により約１０万処理／日の過剰処理を想定しているからである。
【００７１】
図７に戻って、プライマリクラウドサーバ１のＣＰＵ１１は、更新したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスを再選択して（ステップＳ７１０）、サービスを提供する（ステップＳ７１１）。これにより、サービスを提供した実績値に基づいてサービスを提供することができる。ＣＰＵ１１が、サービスレベルアグリーメントＳＬＡ（Ｐ）の更新時刻に到達していないと判断した場合（ステップＳ７０７：ＮＯ）、ＣＰＵ１１は、ステップＳ７０６へ処理を戻し、上述した処理を繰り返す。ＣＰＵ１１が、契約期間が終了したと判断した場合（ステップＳ７０６：ＮＯ）、ＣＰＵ１１は、処理を終了する。
【００７２】
本実施の形態１では、更新したサービスレベルアグリーメントＳＬＡ（Ｐ）が、パフォーマンスが「７０万処理／日」、可用性が「９９．９９％以上」、セキュリティが「中位以上」であり、すべてを満たすサービスは、プライマリクラウドのサービスＩＤ‘２’、‘３’とセカンダリクラウドのサービスＩＤ‘Ａ１’との３つである。サービス選択の優先度が、管理コストが「最小」であるサービスを優先することから、セカンダリクラウドのサービスＩＤ‘Ａ１’を選択する。そして、契約期間内は、例えば週末ごとにサービスレベルアグリーメントを遵守しているか否かを判定する場合、サービスレベルの実績値に基づいて、サービスレベルアグリーメントを日次単位で更新することにより、週末へ向けてサービスレベルアグリーメントを確実に遵守するよう調整することができる。
【００７３】
以上のように本実施の形態１によれば、ユーザに対して実際に提供されたサービスのサービスレベルの実績値に基づいて、サービスレベルアグリーメントＳＬＡ（Ｐ）を決定することができ、プライマリクラウドとユーザとの間で締結されたサービスレベルアグリーメントＳＬＡ（Ｕ）を遵守しつつ新たに決定したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスを、セカンダリクラウドを含めて動的に選択して提供することが可能となる。
【００７４】
（実施の形態２）
本発明の実施の形態２に係るクラウドシステムの構成、及びプライマリクラウドサーバ１（クラウド制御装置２）の構成は実施の形態１と同様であることから、同一の符号を付することにより詳細な説明を省略する。本実施の形態２は、プリファレンス情報を更新する都度、サービスレベルアグリーメントを動的に更新する点で、実施の形態１と相違する。
【００７５】
図１０は、本発明の実施の形態２に係るプライマリクラウドサーバ１（クラウド制御装置２）を、ＣＰＵを用いて構成した例を示すブロック図である。図１０に示すように、実施の形態２に係るプライマリクラウドサーバ１の構成は、サービスレベル実績値記憶部１３３を有していない点を除いて、実施の形態１と同様である。
【００７６】
図１１は、本発明の実施の形態２に係るプライマリクラウドサーバ１の機能ブロック図である。図１１において、プリファレンス情報監視部１１０１は、プリファレンス情報記憶部１３１に記憶されているサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件、及びサービス選択の優先度を監視し、所定のサンプリング時間ごとに読み出す。判断部１１０２は、プリファレンス情報記憶部１３１に記憶されているサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かを、所定のサンプリング時間ごとに判断する。具体的には、前回のサンプリング時間に読み出したサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件、及びサービス選択の優先度と、今回読み出したサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件、及びサービス選択の優先度とが、それぞれ一致しているか否かを判断する。
【００７７】
サービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件は、実施の形態１と同様、例えば月次、日次等の所定期間内における所定の特性値の平均値が一定値以下である、直近の所定期間内における所定の特性値が一定値以下である、完了予定時刻までに所定の計算処理を完了する等の制約条件である。すなわち、サービス提供の可用性、パフォーマンス、ＣＰＵの演算処理量等の指標を示す情報を制約条件として記憶する。これらの情報は、サービスの提供状況によって変化する項目だからである。
【００７８】
また、サービス選択の優先度は、例えばサービス料金が一番安価である、処理量が一番大量である等のサービスを選択する基準を示す情報を意味しており、複数の制約・コスト関数により定義付けしても良い。
【００７９】
図１２は、本発明の実施の形態１に係るプライマリクラウドサーバ１のプリファレンス情報記憶部１３１に記憶されているデータの例示図である。図１２（ａ）は、記憶されているサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件の一例を、図１２（ｂ）は、サービス選択の優先度の一例を、それぞれ示している。
【００８０】
図１２（ａ）に示すように、サービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件としては、サービスの提供場所、可用性の下限、ＣＯ2 コストの上限、あるいはバックアップの有無等に関する情報を記憶する。また、図１２（ｂ）に示すように、サービス選択の優先度は、目的コスト関数として記憶しておき、ＣＯ2 コスト、管理コスト、サービス料金、・・・等の複数の引数に基づく目的コスト関数を記憶する。そして、記憶してある目的コスト関数が最小となるサービスを選択するようにしてある。もちろん、図１２（ｂ）のように、それぞれの引数の重み付けをしても良いし、単純な総和であっても良い。
【００８１】
図１１に戻って、サービスレベルアグリーメント決定部１１０３は、判断部１１０２でプリファレンス情報が更新されたと判断した場合、更新されたサービスレベルアグリーメントの各項目に対する制約条件を、記憶してあるサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件とマージし、新たに締結するべきサービスレベルアグリーメントＳＬＡ（Ｐ）（第二のサービスレベルアグリーメント）を決定する。更新されたサービスレベルアグリーメントの各項目に対する制約条件を、記憶してあるサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件とマージするとは、例えば処理性能の上乗せ、サービス品質の向上、サービス提供場所の追加等を意味する。
【００８２】
処理性能の上乗せとは、例えばサービスレベルアグリーメントＳＬＡ（Ｕ）で定義されている平均処理数を、サービスレベルアグリーメントＳＬＡ（Ｐ）で要求されたレベルまで上乗せすることを意味する。サービス品質の向上とは、例えばサービスレベルアグリーメントＳＬＡ（Ｕ）で定義されている可用性を、サービスレベルアグリーメントＳＬＡ（Ｐ）で要求されたレベルまで向上することを意味する。サービス提供場所の追加とは、サービスレベルアグリーメントＳＬＡ（Ｕ）で定義されているサービスの提供場所に、サービスレベルアグリーメントＳＬＡ（Ｐ）で要求されたサービスの提供場所を追加することを意味する。
【００８３】
サービス選択部１１０４は、更新されたサービスレベルアグリーメントＳＬＡ（Ｕ）のサービス選択の優先度に基づいて、決定したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービス（第二のサービス）をプライマリクラウド及びセカンダリクラウドが提供するサービスの中から選択する。サービス選択の優先度は、複数の制約条件及び目的コスト関数の組み合わせとして記憶しておく。
【００８４】
具体的には、例えばＣＯ2 コストを最小化するよう、ｍｉｎ(ＣＯ2 コスト）という目的コスト関数として記憶する。同様に、サービス料金を最小化するよう、ｍｉｎ(サービス料金)という目的コスト関数として記憶しても良いし、管理コストを最小化するよう、ｍｉｎ(管理コスト)という目的コスト関数として記憶しても良い。
【００８５】
なお、サービスレベルに対応付けて提供することが可能なサービスを識別する情報であるサービスリストをサービスリスト記憶部１３２に記憶しておき、サービスリストを照会することにより、新たなサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスレベルを有するサービス（第二のサービス）を抽出しても良い。サービスリストには、プライマリクラウドで提供することが可能なサービスの詳細だけでなく、セカンダリクラウドで提供することが可能なサービスの詳細に関する情報も記憶しているので、提供することが可能なサービス（第二のサービス）を選択することができる。
【００８６】
サービスリストに記憶される各セカンダリクラウドから提供されるサービスの詳細に関する情報は、動的に更新されても良いし、定期的に更新されても良い。サービスリストの項目には、サービスレベルアグリーメントＳＬＡ（Ｐ）の定義に必要な属性、目的コスト関数等を追加することもできる。
【００８７】
そして、抽出した複数のサービスの中から、記憶してあるサービスレベルアグリーメントＳＬＡ（Ｕ）のサービス選択の優先度に基づいてサービス（第二のサービス）を選択する。選択するサービスは、プライマリクラウドで提供することが可能なサービスであっても良いし、セカンダリクラウドで提供することが可能なサービスであっても良い。
【００８８】
サービス提供部１１０５は、選択したサービスを提供する。ここで、サービスの提供とは、サービスレベルアグリーメントＳＬＡ（Ｕ）の更新、サービスレベルアグリーメントＳＬＡ（Ｐ）に応じた他のサービスへの切り替え、サービスレベルアグリーメントＳＬＡ（Ｐ）に応じたサービスの追加、削除等を意味する。もちろん、プライマリクラウドで提供することが可能なサービスだけでなく、セカンダリクラウドで提供することが可能なサービスが選択された場合には、セカンダリクラウドサーバに対してサービスの提供を指示する。
【００８９】
サービスを提供することにより、更新されたサービスレベルアグリーメントの各項目に対する制約条件に基づいて新たに決定したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスを、サービスレベルを維持しながら提供することが可能となる。
【００９０】
図１３は、本発明の実施の形態２に係るプライマリクラウドサーバ１のＣＰＵ１１の処理手順を示すフローチャートである。プライマリクラウドサーバ１のＣＰＵ１１は、ユーザが使用するクライアント３から、サービス要求情報を受信する（ステップＳ１３０１）。具体的には、ユーザとプライマリクラウドとの間で締結したいサービスレベルアグリーメントＳＬＡ（Ｕ）の内容に関する情報を含むサービス要求情報を受信する。
【００９１】
以下、サービス要求情報として、サービスの種類が「データ解析」、サービスの提供期間が「２００８年４月１日から２００９年８月３１日まで」、そしてサービスレベルアグリーメントＳＬＡ（Ｕ）として、パフォーマンスが「７００万処理／週以上」、可用性が「９９．９９％以上」を受信した場合を例に挙げて、処理の流れとともに説明する。
【００９２】
ＣＰＵ１１は、プリファレンス情報記憶部１３１に記憶されているプリファレンス情報をロードし（ステップＳ１３０２）、新たに締結するべきサービスレベルアグリーメントＳＬＡ（Ｐ）を決定する（ステップＳ１３０３）。サービスレベルアグリーメントＳＬＡ（Ｐ）は、サービス要求情報として受信したサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件を、ロードしたプロファレンス情報とマージすることにより決定する。
【００９３】
例えば、プリファレンス情報としてプリファレンス情報記憶部１３１に記憶されているサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件が、セキュリティが「中位より大きい」、サービス選択の優先度が、管理コストが「最小」である場合、サービス要求情報に含まれるサービスレベルアグリーメントＳＬＡ（Ｕ）と、プリファレンス情報に含まれるサービスレベルアグリーメントの各項目に対する制約条件とをマージして、サービスレベルアグリーメントＳＬＡ（Ｐ）を、パフォーマンスが「７００万処理／週以上」、可用性が「９９．９９％以上」、セキュリティが「中位より大きい」と決定する。
【００９４】
ＣＰＵ１１は、決定したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスを選択して（ステップＳ１３０４）、サービスを提供する（ステップＳ１３０５）。これにより、記憶してあるプリファレンス情報に基づいたサービスを提供することができる。
【００９５】
図１４は、本発明の実施の形態２に係るプライマリクラウドサーバ１のサービスリスト記憶部１３２に記憶してあるデータ構成の例示図である。サービスリスト記憶部１３２には、サービスを識別するサービスＩＤに対応付けて、サービスの種類、サービス料金、可用性、パフォーマンス、管理コストの他、利用可能であるか否か、ＣＯ2 コスト、セキュリティレベル等のサービスを選択するために必要な情報をリスト化して記憶してある。
【００９６】
本実施の形態２では、決定したサービスレベルアグリーメントＳＬＡ（Ｐ）が、パフォーマンスが「７００万処理／週以上」、可用性が「９９．９９％以上」、セキュリティが「中位より大きい」であり、すべてを満たすサービスは、プライマリクラウドのサービスＩＤ‘３’になる。
【００９７】
図１３に戻って、プライマリクラウドサーバ１のＣＰＵ１１は、ユーザとの間で締結されたサービスレベルアグリーメントＳＬＡ（Ｕ）の契約期間内であるか否かを判断し（ステップＳ１３０６）、ＣＰＵ１１が、契約期間内であると判断した場合（ステップＳ１３０６：ＹＥＳ）、ＣＰＵ１１は、プリファレンス情報が更新されたか否かを判断する（ステップＳ１３０７）。ＣＰＵ１１が、プリファレンス情報が更新されたと判断した場合（ステップＳ１３０７：ＹＥＳ）、ＣＰＵ１１は、更新されたプリファレンス情報をリロードし（ステップＳ１３０８）、サービスレベルアグリーメントＳＬＡ（Ｐ）を更新する（ステップＳ１３０９）。
【００９８】
サービスレベルアグリーメントＳＬＡ（Ｐ）は、サービス要求情報として受信したサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件を、リロードしたプロファレンス情報とマージすることにより更新する。
【００９９】
例えば、プリファレンス情報記憶部１３１に記憶してあるプリファレンス情報を日次単位で最適化する場合であって、プリファレンス情報のうち、サービスレベルアグリーメントの各項目に対する制約条件が、セキュリティが「中位以上」、サービス料金が「５００＄／処理単位より小さい」に更新され、サービス選択の優先度が、ＣＯ2 コストが「最小」に更新された場合を想定する。この場合、サービスレベルアグリーメントＳＬＡ（Ｐ）のパフォーマンス「７００万処理／週以上」を、日次単位に換算してパフォーマンス「１００万処理／日以上」とし、サービス要求情報に含まれるサービスレベルアグリーメントＳＬＡ（Ｕ）と、更新されたプリファレンス情報に含まれるサービスレベルアグリーメントの各項目に対する制約条件とを再度マージする。これにより、サービスレベルアグリーメントＳＬＡ（Ｐ）を、パフォーマンスが「１００万処理／日以上」、可用性が「９９．９９％以上」、セキュリティが「中位以上」、サービス料金が「５００＄／処理単位より小さい」と新たに決定して更新する。
【０１００】
ＣＰＵ１１は、更新したサービスレベルアグリーメントＳＬＡ（Ｐ）を満たすサービスを再選択して（ステップＳ１３１０）、サービスを提供する（ステップＳ１３１１）。これにより、更新されたプリファレンス情報を反映したサービスを提供することができる。ＣＰＵ１１が、プリファレンス情報が更新されていないと判断した場合（ステップＳ１３０７：ＮＯ）、ＣＰＵ１１は、ステップＳ１３０６へ処理を戻し、上述した処理を繰り返す。ＣＰＵ１１が、契約期間が終了したと判断した場合（ステップＳ１３０６：ＮＯ）、ＣＰＵ１１は、処理を終了する。
【０１０１】
本実施の形態２では、更新したサービスレベルアグリーメントＳＬＡ（Ｐ）の各項目に対する制約条件が、パフォーマンスが「１００万処理／日以上」、可用性が「９９．９９％以上」、セキュリティが「中位以上」であるので、すべてを満たすサービスは、プライマリクラウドのサービスＩＤ‘３’と、セカンダリクラウドのサービスＩＤ‘Ａ２’との２つである。一方、プリファレンス情報の更新により、サービス選択の優先度が、ＣＯ2 コストが「最小」に更新されているので、ＣＯ2 コストの少ないセカンダリクラウドのサービスＩＤ‘Ａ２’を選択する。
【０１０２】
以上のように本実施の形態２によれば、プライマリクラウドとユーザとの間で締結されたサービスレベルアグリーメントＳＬＡ（Ｕ）の各項目に対する制約条件、及びサービス選択の優先度が更新されたか否かに応じて、サービスレベルアグリーメントとは異なるサービスレベルアグリーメントＳＬＡ（Ｐ）を決定することができ、プライマリクラウドの管理指針であるプリファレンス情報として制約条件及び／又はサービス選択の優先度が更新される都度、更新された制約条件及び／又はサービス選択の優先度に基づく第二のサービスを、セカンダリクラウドを含めて動的に選択して提供することが可能となる。
【０１０３】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨の範囲内であれば多種の変更、改良等が可能である。例えば、クラウド制御装置２は、プライマリクラウドサーバ１と一体ではなく、別個のコンピュータとしてプライマリクラウドサーバ１とデータ送受信することが可能に接続されている構成であっても良い。また、プラットフォーム提供サービス、プライベートクラウドにおいて提供されるサービス、ユーザ管理サービス、データ提供サービス、アプリケーション開発環境の提供サービス、セキュリティサービス、データベースサービス等、あらゆるクラウドサービスに本発明は適用することができる。
【符号の説明】
【０１０４】
１  プライマリクラウドサーバ
２  クラウド制御装置
３  クライアント
５  セカンダリクラウドサーバ
１１  ＣＰＵ
１２  メモリ
１３  記憶装置
１４  Ｉ／Ｏインタフェース
１５  ビデオインタフェース
１６  可搬型ディスクドライブ
１７  通信インタフェース
１８  内部バス
２３  表示装置
９０  可搬型記録媒体
１００  コンピュータプログラム
１３１  プリファレンス情報記憶部
１３２  サービスリスト記憶部
１３３  サービスレベル実績値記憶部
【図１】
2011118451.tif 000003
【図２】
2011118451.tif 000004
【図３】
2011118451.tif 000005
【図４】
2011118451.tif 000006
【図５】
2011118451.tif 000007
【図６】
2011118451.tif 000008
【図７】
2011118451.tif 000009
【図８】
2011118451.tif 000010
【図９】
2011118451.tif 000011
【図１０】
2011118451.tif 000012
【図１１】
2011118451.tif 000013
【図１２】
2011118451.tif 000014
【図１３】
2011118451.tif 000015
【図１４】
2011118451.tif 000016