(57)【特許請求の範囲】
【請求項１】
複数の物理ハードウェアと、該複数の物理ハードウェアにそれぞれ電力を供給する複数の無停電電源装置とがネットワークを介して通信可能に接続されるとともに、前記複数の物理ハードウェアのいずれかで動作可能な複数の仮想ハードウェアを備えた仮想化システムであって、
前記複数の物理ハードウェアのいずれか一つは、前記仮想ハードウェアとして、仮想化統合プラットフォームを管理する第１の管理手段を備え、
前記第１の管理手段を備える物理ハードウェアまたは該物理ハードウェアで動作する仮想ハードウェアのいずれかは、前記第１の管理手段と連動する第２の管理手段であって、前記複数の無停電電源装置のいずれかに電源異常が発生した場合、該電源異常が発生した無停電電源装置が電力を供給する物理ハードウェアで動作する仮想ハードウェアを停止して別の物理ハードウェアへ移動させる第２の管理手段を備え、
前記物理ハードウェアは、
前記仮想ハードウェアの動作を制御する仮想ハードウェア制御手段を有し、
前記第２の管理手段は、
前記仮想ハードウェア制御手段および前記無停電電源装置のいずれか一方の状態を前記ネットワークを介して監視し、監視結果に基づいて当該仮想化システムの可用性を確認し、該可用性を保持することができないと判断した場合、前記第１の管理手段を除く前記仮想ハードウェアを停止し、
前記無停電電源装置は、
前記第２の管理手段が当該仮想化システムの可用性を保持することができないと判断した場合、前記第１の管理手段および該第１の管理手段を含む前記物理ハードウェアが有する前記仮想ハードウェア制御手段を停止させる信号を、前記ネットワークを介して該物理ハードウェアへ送信する停止処理手段を有することを特徴とする仮想化システム。
【請求項２】
前記無停電電源装置は、
電源異常が発生した場合、出力を停止する予告通知を電力の供給対象である前記物理ハードウェアに対して送信し、
前記第２の管理手段は、
前記無停電電源装置の状態を監視し、前記予告通知の送信元である前記無停電電源装置の数が所定数を上回った場合、前記可用性を保持することができないと判断することを特徴とする請求項１に記載の仮想化システム。
【請求項３】
前記第２の管理手段は、
前記仮想ハードウェア制御手段の状態を監視し、前記ネットワークを介した疎通確認を行うことができない前記仮想ハードウェア制御手段の数が所定数を上回った場合、前記可用性を保持することができないと判断することを特徴とする請求項１に記載の仮想化システム。
【請求項４】
前記第２の管理手段は、
前記電源異常が発生した無停電電源装置の電源異常が解消した場合、異常発生後に前記別の物理ハードウェアへ移動させた仮想ハードウェアを停止して異常発生前に動作していた仮想ハードウェアへ移動させることを特徴とする請求項１〜３のいずれか一項に記載の仮想化システム。
【請求項５】
前記第１の管理手段は、前記第２の管理手段を含むことを特徴とする請求項１〜４のいずれか一項に記載の仮想化システム。
【請求項６】
前記第１の管理手段を除く前記仮想ハードウェアは、互いに異なる物理ハードウェアが備える前記仮想ハードウェアとＨＡクラスタを構成することを特徴とする請求項１〜５のいずれか一項に記載の仮想化システム。
【請求項７】
前記無停電電源装置は、
前記停止処理手段を含み、前記ネットワークに接続するＬＡＮポートが設けられたオプションカードを有することを特徴とする請求項１〜６のいずれか一項に記載の仮想化システム。
【請求項８】
複数の物理ハードウェアと、該複数の物理ハードウェアにそれぞれ電力を供給する複数の無停電電源装置とがネットワークを介して通信可能に接続されるとともに、前記複数の物理ハードウェアのいずれかで動作可能な複数の仮想ハードウェアを備え、前記複数の物理ハードウェアのいずれか一つが、前記仮想ハードウェアとして、仮想化統合プラットフォームを管理する第１の管理手段を有し、前記第１の管理手段を備える物理ハードウェアまたは該物理ハードウェアで動作する仮想ハードウェアのいずれかが、前記第１の管理手段と連動する第２の管理手段であって、前記複数の無停電電源装置のいずれかに電源異常が発生した場合、該電源異常が発生した無停電電源装置が電力を供給する物理ハードウェアで動作する仮想ハードウェアを停止して別の物理ハードウェアへ移動させる第２の管理手段を有する仮想化システムが行う制御方法であって、
前記第２の管理手段が、前記物理ハードウェアが有し、前記仮想ハードウェアの動作を制御する仮想ハードウェア制御手段および前記無停電電源装置のいずれか一方の状態を前記ネットワークを介して監視し、監視結果に基づいて当該仮想化システムの可用性を確認するステップと、
前記第２の管理手段が前記可用性を保持することができないと判断した場合、前記第２の管理手段が、前記第１の管理手段を除く前記仮想ハードウェアを停止するステップと、
前記無停電電源装置が、前記第１の管理手段および該第１の管理手段を含む前記物理ハードウェアが有する前記仮想ハードウェア制御手段を停止させる信号を、前記ネットワークを介して該物理ハードウェアへ送信するステップと、
を含むことを特徴とする制御方法。
【請求項９】
複数の物理ハードウェアと、該複数の物理ハードウェアにそれぞれ電力を供給する複数の無停電電源装置とがネットワークを介して通信可能に接続されるとともに、前記複数の物理ハードウェアのいずれかで動作可能な複数の仮想ハードウェアを備え、前記複数の物理ハードウェアのいずれか一つが、前記仮想ハードウェアとして、仮想化統合プラットフォームを管理する第１の管理手段を有し、前記第１の管理手段を備える物理ハードウェアまたは該物理ハードウェアで動作する仮想ハードウェアのいずれかが、前記第１の管理手段と連動する第２の管理手段であって、前記複数の無停電電源装置のいずれかに電源異常が発生した場合、該電源異常が発生した無停電電源装置が電力を供給する物理ハードウェアで動作する仮想ハードウェアを停止して別の物理ハードウェアへ移動させる第２の管理手段を有する仮想化システムに、
前記第２の管理手段が、前記物理ハードウェアが有し、前記仮想ハードウェアの動作を制御する仮想ハードウェア制御手段および前記無停電電源装置のいずれか一方の状態を前記ネットワークを介して監視し、監視結果に基づいて当該仮想化システムの可用性を確認するステップと、
前記第２の管理手段が前記可用性を保持することができないと判断した場合、前記第２の管理手段が、前記第１の管理手段を除く前記仮想ハードウェアを停止するステップと、
前記無停電電源装置が、前記第１の管理手段および該第１の管理手段を含む前記物理ハードウェアが有する前記仮想ハードウェア制御手段を停止させる信号を、前記ネットワークを介して該物理ハードウェアへ送信するステップと、
を実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物理ハードウェアおよび該物理ハードウェアに電源を供給する無停電電源装置を備え、該物理ハードウェア上で仮想ハードウェアが動作可能な仮想化システム、制御方法、および制御プログラムに関する。
【背景技術】
【０００２】
近年、スマートフォンやタブレットなどの普及に伴い、インターネット環境が身近なものとなっている。インターネットでは通信速度が大幅に向上し、単なるメッセージを送信する手段としての利用よりも、コンテンツを取り扱う手段としての利用がメインとなりつつある。このため、インターネット上では常時莫大なデータが取り扱われている。
【０００３】
このようなビッグデータ化に伴い、データを取り扱うサーバでは、取り扱い可能な情報量の増加、堅牢なセキュリティ、障害時でもサービスを提供し続けられる高可用性等の多種多様な要求に応える必要が生じている。そうした多種多様な要求を満たすには、個々の要求に特化したサーバをインターネット上で用意しなければならず、サーバ台数が増加する傾向にある。特に高可用性の要求に対してはサーバの冗長化も必要となるため、サーバの配置スペースや消費電力が顕著に増加する傾向にある。
【０００４】
一方、サーバが備える各種デバイスの性能は日々向上している。例えば、ＣＰＵ（Central  Processing  Unit）では、処理速度の向上や並列処理を可能とするマルチコア化などが進み、演算で取り扱うアドレス空間を３２ビットから６４ビットへ拡張させたアーキテクチャが標準となりつつある。また、メモリでは低価格化や高密度化による容量の増加に伴い、搭載メモリ容量が増加してきている。
【０００５】
上述したように多種多様な要求に応えるべくサーバの台数を増加させる場合、個々のサーバの性能が向上している現状では、サーバの性能を十分に活かし切ることができず、無駄が生じてしまうことも多い。こうした背景から、コンピュータリソースの有効活用やサーバ運用コストの削減を実現することができる仮想化システムが注目されてきている（例えば、特許文献１を参照）。
【０００６】
仮想化システムは、１台の物理ハードウェアから仮想的なハードウェア（仮想ハードウェア）を作り出し、それらのハードウェアから仮想サーバを作成、配置することにより、複数のサーバを配置した場合と同様の効果を得るための技術である。この技術では、物理ハードウェアの資源を使って仮想サーバを作成するため、資源の有効活用とサーバの省スペース化を同時に実現することができる。
【０００７】
このような仮想化システムとして、ＯＳ（Operating  System）を仮想化させる“ＯＳ仮想化方式”と、ＨＷ（ハードウェア）を仮想化させる“ＨＷ仮想化方式”の２つの方式がよく用いられる。
【０００８】
ＯＳ仮想化方式では、ホストＯＳ上に仮想ＯＳを動作させるために、ホストＯＳ上のリソースを分割して仮想ＯＳに割り当てる構成を有する。ＯＳ仮想化方式は、ホストＯＳの影響を受けやすい一方、ゲストＯＳの管理を行いやすい。このため、ＯＳ仮想化方式は拡張性に乏しいものの、比較的小規模なシステムには容易に導入することができる。
【０００９】
ＨＷ仮想化方式では、ハードウェアを管理する専用のカーネルが存在する。このカーネルは、ハイパーバイザまたは仮想マシンモニタと称される。ＨＷ仮想化方式では、ハイパーバイザが、ハードウェアを管理しながら各仮想ホスト側へ仮想ハードウェアを提供する役割を担う。このようなＨＷ仮想化方式では、ホストＯＳが必要ないため、それぞれの仮想サーバ間の影響は少なく、大規模なシステムにも導入することができる。
【００１０】
最近では、クラウドコンピューティングの普及により、大規模な仮想化システムが必要となってきており、この意味でＨＷ仮想化方式が主流となってきている。しかしながら、ＨＷ仮想化方式では、同一システム内に多くのハイパーバイザが存在する場合が多く、仮想サーバの管理がより一層、難しいという問題がある。この問題を解決するため、ハイパーバイザを管理する仮想化統合プラットフォームとしての管理ソフトが登場している。管理ソフトは、複数のハイパーバイザおよび各ハイパーバイザ上で動作する仮想サーバの情報を収集して管理を行うものであり、ＨＷ仮想化方式による仮想化システムでは導入されることが多い。このような管理ソフトとして、例えばVMware（登録商標）社のVMware  vCenter  Server（登録商標）などが知られている（例えば、非特許文献１を参照）。
【００１１】
ＨＷ仮想化方式では、クラスタ構成を構築することがある。高可用性を目的としたクラスタシステムはＨＡ（High  Availability）クラスタと称され、運用系とスタンバイ系でハートビートと呼ばれる互いに死活監視する動作を行う。ＨＡクラスタが構築されたＨＷ仮想化方式の仮想化システムでは、ハイパーバイザ同士でハートビートを行い、互いに死活監視を行う。
【００１２】
死活監視によって異常が検出されると、仮想化システムは、他のスタンバイ系物理ハードウェア上のハイパーバイザへ仮想サーバを移動させるフェイルオーバ動作を行う。こうしたフェイルオーバ動作はvMotion（登録商標）またはマイグレーション（migration）と呼ばれる（例えば、非特許文献２を参照）。このvMotion（登録商標）やマイグレーションは、サービスを停止することなく仮想サーバを自動的に移動させる事ができるため、運用側にとってはメリットがとても大きい。
【００１３】
vMotion（登録商標）またはマイグレーションは、仮想化統合プラットフォームとしての管理ソフトによって任意のタイミングで実行させることもできる。例えば、最初は小規模なシステムを構築して運用を開始し、運用を重ねるにつれてシステムが大きくなった場合には、物理ハードウェアリソースが枯渇してしまうことがある。そのような場合には、上記管理ソフトがvMotion（登録商標）またはマイグレーションを動作させることによってメンテナンス対応の物理ハードウェア上で動作する仮想サーバを退避させ、保守完了後にもとの物理ハードウェア上に仮想サーバを戻せば、サービスを停止することなくメンテナンスを行うことができる。
【００１４】
また、ＨＡクラスタが構築されたＨＷ仮想化方式の仮想化システムでは、夜間バッチ処理などで特定の仮想サーバが高負荷となり、その物理ハードウェアリソースが枯渇した場合、物理ハードウェア上に他の仮想サーバを移動させ、さらなる物理ハードウェアリソースを確保することも可能である。こうした負荷分散機能には、ＤＲＳ（Distributed  Resource  Scheduler：分散資源スケジューラ）やＤＰＭ（Distributed  Power  Management）などがある。仮想サーバはＩＰ（Internet  Protocol）アドレスやＭＡＣ（Media  Access  Control）アドレスを変更せずに物理ハードウェア上を移動するため、ネットワークも仮想的に作成される。
【００１５】
以上のように、近年の仮想化システムは導入するメリットが大きくなってきているが、こうした仮想化システムを構築するには、次の３つの制約事項に注意しなければならない。
１．仮想サーバの移動にはデータ領域（ストレージ）は含まれないため、ネットワークを介した別の場所に共有ストレージを配置しておく必要がある。
２．共有ストレージは仮想サーバからアクセス可能であり、クラスタ構成をした場合は、運用系およびスタンバイ系からアクセス可能である必要がある。
３．仮想化統合プラットフォームとしての管理ソフトは複数同時の監視処理を実施するため、ハードウェア上の制約として、ＣＰＵのコアが２つ以上必要とする事が多く、前記のＨＡクラスタ構成内に納めることができない。
【００１６】
ところで、仮想化システムを構成する各サーバではＯＳが動作しているため、システムを停止させる時にはサーバを安全に停止してから、電源を停止させる必要がある。サーバ動作中にサーバの電源を停止させた場合、データの消失やハードウェアの破損などが発生する可能性があるため、必ずシャットダウン処理（サーバ停止処理）を実施してから、電源を停止させる必要がある。
【００１７】
重要なデータやサービスが動作するサーバでは、電源異常発生時のデータの消失やハードウェアの破損などの事態を防ぐために、無停電電源装置から電源の供給を受けることが多い（例えば、特許文献２を参照）。無停電電源装置は、電源異常発生時でもバックアップ運転を行うため、サーバの電源が急に停止することはない。しかしながら、電源異常発生時に無停電電源装置から供給する電源は、無停電電源装置自身が備えるバッテリから供給されるため、バックアップ時間は有限である。したがって、この場合にはバッテリの電源が無くなるまでにサーバを安全に停止させる必要がある。そこで、無停電電源装置を備えたシステムでは、所定時間以上バックアップ運転が継続した場合、無停電電源装置を停止させるとともにサーバのＯＳを自動的に停止させるシャットダウン連動機能を有しているものが多い。
【００１８】
シャットダウン連動機能を実現する方式には複数の方式がある。その１つの方式として、無停電電源装置にＲＳ２３２Ｃによる通信を行うＣＯＭポートを設ける方式がある。この方式では、サーバに無停電電源装置の管理ソフトをインストールし、無停電電源装置と常時通信を行うことで、サーバ側で無停電電源装置の状態を監視する。無停電電源装置に電源異常が発生すると、サーバ内のタイマーによって電源異常の継続時間を計測する。この継続時間が所定時間を超えると、サーバ自身をシャットダウンさせ、無停電電源装置に対しても出力を停止する指令を送信する。この方式では、無停電電源装置とサーバが一対一の関係となるため、複数台のサーバをシャットダウンさせるには、別の手段が必要となる。
【００１９】
シャットダウン連動機能を実現する別の方式として、無停電電源装置にイーサネット（登録商標）のインタフェースであるＬＡＮ（Local  Area  Network）ポートを設ける方式がある。イーサネット（登録商標）は１対多の接続（バス接続）が可能であり、複数台のサーバで無停電電源装置の状態を監視することができる。一般に、ＬＡＮポートは、コストとの関係からオプションカードとして無停電電源装置に増設される場合が多い。この場合、無停電電源装置に増設するオプションカードには、無停電電源装置の状態を監視するためのＣＰＵ（Central  Proccessing  Unit）が設けられるため、無停電電源装置の状態を監視するサーバが不要となる。この方式では、電源異常が発生すると、オプションカード内でその継続時間が計測され、継続時間が予め設定されていた時間を超えたタイミングでＯＳのシャットダウンが開始される。
【００２０】
ＬＡＮポートを設ける方式の場合、シャットダウンさせるサーバに予めシャットダウン専用ソフトウェアをインストールしておくとともに、オプションカードにシャットダウンさせるサーバのＩＰアドレスを設定しておくのが一般的である。なお、最近では、シャットダウンさせるサーバがＮＡＳ（Network  Attached  Storage）や組み込み機器である場合が増えており、各サーバにシャットダウンソフトをインストールできない場合もある。このような場合には、各ＯＳ標準で実装されている通信プロトコルを使った方式を無停電電源装置に実装させておけばよい。
【先行技術文献】
【特許文献】
【００２１】
【特許文献１】特開２０１１−１６４７３２号公報
【特許文献２】特開２０１２−３８１５７号公報
【非特許文献】
【００２２】
【非特許文献１】ヴイエムウェア株式会社、＠ＩＴ、"ＶＭｗａｒｅ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ３  徹底入門  実践編（１５）"、［online］、平成２１年６月９日、［平成２６年１月２０日検索］、インターネット〈URL：http://www.atmarkit.co.jp/ait/articles/0906/09/news116.html〉
【非特許文献２】ヴイエムウェア株式会社、＠ＩＴ、"ＶＭｗａｒｅ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ３  徹底入門（３）"、［online］、平成２０年８月１８日、［平成２６年１月２０日検索］、インターネット〈URL：http://www.atmarkit.co.jp/ait/articles/0808/18/news108.html〉
【発明の概要】
【発明が解決しようとする課題】
【００２３】
上述したように、ＨＷ仮想化方式によって構築された仮想化システムでは、より効率的に管理、運用するため、各ハイパーバイザを監視する機能を有する仮想化統合プラットフォームとしての管理ソフトを導入しているケースが多く、システムが複雑化する傾向にある。さらに、ＨＡクラスタだけでなく、vMotion（登録商標）やマイグレーション動作、ＤＲＳ、ＤＰＭなどによって、仮想サーバが物理ハードウェア上を移動するため、実際にどの物理ハードウェアでどの仮想サーバが動作しているか否かを外部から把握することは難しい。
【００２４】
こうした仮想化システム上の物理ハードウェアの電源として無停電電源装置を導入する場合、無停電電源装置は、１または複数のサーバをシャットダウンさせる機能を有しているものの、仮想化統合プラットフォームとしての管理ソフトが行うような高可用性による物理ハードウェアの動的移動を想定していない。このため、無停電電源装置を含むシステムにおいて、高可用性を有している場合に電源異常が発生すると、システム内のどのサーバをシャットダウンさせるかの判断が行うことができず、連動したシャットダウン動作を行うことができない。
【００２５】
本発明は、上記に鑑みてなされたものであって、高可用性を有している場合であっても電源供給側とのシャットダウン連動機能を実現することができる仮想化システム、制御方法および制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２６】
上述した課題を解決し、目的を達成するために、本発明に係る仮想化システムは、複数の物理ハードウェアと、該複数の物理ハードウェアにそれぞれ電力を供給する複数の無停電電源装置とがネットワークを介して通信可能に接続されるとともに、前記複数の物理ハードウェアのいずれかで動作可能な複数の仮想ハードウェアを備えた仮想化システムであって、前記複数の物理ハードウェアのいずれか一つは、前記仮想ハードウェアとして、仮想化統合プラットフォームを管理する第１の管理手段を備え、前記第１の管理手段を備える物理ハードウェアまたは該物理ハードウェアで動作する仮想ハードウェアのいずれかは、前記第１の管理手段と連動する第２の管理手段であって、前記複数の無停電電源装置のいずれかに電源異常が発生した場合、該電源異常が発生した無停電電源装置が電力を供給する物理ハードウェアで動作する仮想ハードウェアを停止して別の物理ハードウェアへ移動させる第２の管理手段を備えることを特徴とする。
【００２７】
本発明に係る仮想化システムは、上記発明において、前記第２の管理手段は、前記電源異常が発生した無停電電源装置の電源異常が解消した場合、異常発生後に前記別の物理ハードウェアへ移動させた仮想ハードウェアを停止して異常発生前に動作していた仮想ハードウェアへ移動させることを特徴とする。
【００２８】
本発明に係る仮想化システムは、上記発明において、前記第１の管理手段は、前記第２の管理手段を含むことを特徴とする。
【００２９】
本発明に係る仮想化システムは、上記発明において、前記物理ハードウェアは、前記仮想ハードウェアの動作を制御する仮想ハードウェア制御手段を有し、前記第２の管理手段は、前記ネットワークを介して前記仮想ハードウェア制御手段の状態を監視することを特徴とする。
【００３０】
本発明に係る仮想化システムは、上記発明において、前記第２の管理手段は、前記ネットワークを介した疎通確認を行うことができない前記仮想ハードウェア制御手段の数が所定数を上回った場合、前記第１の管理手段を備える物理ハードウェアを停止することを特徴とする。
【００３１】
本発明に係る仮想化システムは、上記発明において、前記第２の管理手段は、定期的に前記無停電電源装置の状態を監視し、監視結果に基づいて当該仮想化システムの可用性を確認することを特徴とする。
【００３２】
本発明に係る仮想化システムは、上記発明において、前記第２の管理手段は、当該仮想化システムの可用性を確認した結果、該可用性を保持することができないと判断した場合、前記第１の管理手段を除く前記仮想ハードウェアを停止することを特徴とする。
【００３３】
本発明に係る仮想化システムは、上記発明において、前記第１の管理手段を除く前記仮想ハードウェアは、互いに異なる物理ハードウェアが備える前記仮想ハードウェアとＨＡクラスタを構成することを特徴とする。
【００３４】
本発明に係る仮想化システムは、上記発明において、前記無停電電源装置は、電源異常が発生した場合、電力の供給対象である前記物理ハードウェアが有する前記仮想ハードウェア制御手段を、前記ネットワークを介して停止させる信号を送信する停止処理手段を有することを特徴とする。
【００３５】
本発明に係る仮想化システムは、上記発明において、前記無停電電源装置は、前記停止処理手段を含み、前記ネットワークに接続するＬＡＮポートが設けられたオプションカードを有することを特徴とする。
【００３６】
本発明に係る制御方法は、複数の物理ハードウェアと、該複数の物理ハードウェアにそれぞれ電力を供給する複数の無停電電源装置とがネットワークを介して通信可能に接続されるとともに、前記複数の物理ハードウェアのいずれかで動作可能な複数の仮想ハードウェアを備えた仮想化システムが行う制御方法であって、仮想化統合プラットフォームを管理する第１の管理手段を備える物理ハードウェアへ電源を供給する無停電電源装置に電源異常が発生した場合、該物理ハードウェアで動作する仮想ハードウェアを停止して別の物理ハードウェアへ移動させるステップを含むことを特徴とする。
【００３７】
本発明に係る制御プログラムは、複数の物理ハードウェアと、該複数の物理ハードウェアにそれぞれ電力を供給する複数の無停電電源装置とがネットワークを介して通信可能に接続されるとともに、前記複数の物理ハードウェアのいずれかで動作可能な複数の仮想ハードウェアを備えた仮想化システムに、仮想化統合プラットフォームを管理する第１の管理手段を備える物理ハードウェアへ電源を供給する無停電電源装置に電源異常が発生した場合、該物理ハードウェアで動作する仮想ハードウェアを停止して別の物理ハードウェアへ移動させるステップを実行させることを特徴とする。
【発明の効果】
【００３８】
本発明によれば、高可用性を有している場合であっても電源供給側とのシャットダウン連動機能を実現することができる。
【図面の簡単な説明】
【００３９】
【図１】図１は、本発明の実施の形態１に係る仮想化システムの機能構成を示すブロック図である。
【図２】図２は、本発明の実施の形態１に係る仮想化システムを模式的に示す図である。
【図３】図３は、本発明の実施の形態１に係る仮想化システムにおいて、電源異常が発生した場合の処理の流れを示すフローチャートである。
【図４】図４は、第１の管理手段の移動を模式的に示す図である。
【図５】図５は、仮想サーバの自動的な切り替え（第１サーバの電源異常発生時）を模式的に示す図である。
【図６】図６は、仮想サーバの自動的な切り替え（第２サーバの電源異常発生時）を模式的に示す図である。
【図７】図７は、第１の管理手段の復帰を模式的に示す図である。
【図８】図８は、本発明の実施の形態２に係る仮想化システムの構成を模式的に示す図である。
【図９】図９は、本発明の実施の形態２に係る仮想化システムにおいて、システムが停止する状況を模式的に示す図である。
【発明を実施するための形態】
【００４０】
以下、添付図面を参照して、本発明を実施するための形態（以下、「実施の形態」という）を説明する。
【００４１】
（実施の形態１）
図１は、本発明の実施の形態１に係る仮想化システムの機能構成を示すブロック図である。図２は、本実施の形態１に係る仮想化システムを模式的に示す図である。これらの図に示す仮想化システム１は、ＨＷ仮想化方式によって仮想化されたシステムであって、物理ハードウェアが無停電電源装置（Uninterruptible  Power  Supply。以下、ＵＰＳという）によって電力の供給を受けるシステムである。
【００４２】
仮想化システム１は、物理ハードウェアである第１サーバ２ａ、第２サーバ２ｂと、第１サーバ２ａ、第２サーバ２ｂに対してそれぞれ電力を供給する第１ＵＰＳ３ａ、第２ＵＰＳ３ｂと、を備える。第１サーバ２ａ、第２サーバ２ｂ、第１ＵＰＳ３ａ、第２ＵＰＳ３ｂは、ネットワークＮＷを介して相互に通信可能に接続されている。本実施の形態１において、ネットワークＮＷは、ネットワーク機器４によって構成される。
【００４３】
第１サーバ２ａは、ＣＰＵ等を用いて構成され、第１サーバ２ａ全体の動作を統括して制御する制御部５ａと、ＲＯＭやＲＡＭ等を用いて構成され、制御部５ａが第１サーバ２ａの処理を実行する際に読み出す各種プログラムやデータ等を使用可能な状態で記憶する記憶部６ａと、ネットワークＮＷを介して外部機器との通信を行う通信部７ａとを備える。なお、記憶部６ａが記憶するプログラムは、コンピュータ読み取り可能な記録媒体に記録することも可能である。プログラムの記録部または記録媒体への記録は、コンピュータまたは記録媒体を製品として出荷する際に行ってもよいし、通信ネットワークを介したダウンロードにより行ってもよい。
【００４４】
記憶部６ａは、ＨＷ仮想化方式において仮想ハードウェアの動作を制御する仮想ハードウェア制御手段としての機能を備えたハイパーバイザ６１ａと、ハイパーバイザ６１ａの制御のもとで動作可能な仮想サーバ６２ａ、６３ａ、６４ａ、６５ａと、ハイパーバイザ６１ａの制御のもとで動作可能な仮想化統合プラットフォームとしての管理ソフトであって第１の管理手段としての機能を備えた管理ソフトであるＶＣＳ（Virtual  Center  Server）６６とを有する。ハイパーバイザ６１ａは、１つのハードウェア資源を分散して複数の仮想ハードウェア（仮想サーバ６２ａ、６３ａ、６４ａ、６５ａおよびＶＣＳ６６）として使用するための制御を行う。仮想サーバ６２ａ、６３ａ、６４ａ、６５ａおよびＶＣＳ６６では、互いに独立なＯＳが起動する。
【００４５】
ＶＣＳ６６は、自身と連動可能な第２の管理手段としての機能を備えたＵＰＳ管理ソフト６７（サーバシャットダウンソフト）を有する（図２では「Ｕ」と記載）。ＵＰＳ管理ソフト６７は専用アプリケーションであり、ＶＣＳ６６上のサービスアプリケーションとして動作する。この専用アプリケーションの設定は、ＶＣＳ６６上のプラグインとして動作する設定ツールから行う。このため、本実施の形態１では、第１の管理手段が第２の管理手段を含む構成を有する。ＶＣＳ６６は、第１サーバ２ａ上で動作する仮想サーバと第２サーバ２ｂ上で動作する仮想サーバとの間で構築されるＨＡクラスタの管理を行う。このため、自身は非ＨＡとして構成される。なお、ＵＰＳ管理ソフト６７は、第１サーバ２ａ等の物理ハードウェアにインストールすることも可能である。
【００４６】
ＵＰＳ管理ソフト６７は、第１ＵＰＳ３ａ、第２ＵＰＳ３ｂから専用プロトコル（シャットダウン指令）を受信可能であり、専用プロトコル送信元のＩＰアドレスに応じたバッチファイルを実行する機能を有する。ＵＰＳ管理ソフト６７は、専用プロトコル（シャットダウン指令）を受信すると、入力系統に電源異常が発生したＵＰＳを特定し、どのサーバ上で動作するハイパーバイザが停止するかを判断する。ＵＰＳ管理ソフト６７が動作するハイパーバイザ６１ａが停止した場合、ＵＰＳ管理ソフト６７は、専用プロトコルを受信するとただちにバッチファイルを実行し、別のハイパーバイザ６１ｂ上に自身を含むＶＣＳ６６を移動させる。
【００４７】
ＵＰＳ管理ソフト６７は、ネットワークＮＷを介して第１ＵＰＳ３ａ、第２ＵＰＳ３ｂの状態を定期的に監視し、可用性を保持することができるか否かを判断する機能を有する。具体的に、ＵＰＳ管理ソフト６７は、仮想化システム１で可用性を保持することができるか否かについて、電源異常による出力停止（シャットダウン）の予告通知を受信したＵＰＳの数により判断する。仮想化システム１はＵＰＳを２つ備えているので、ＵＰＳ管理ソフト６７は、予告通知を受信したＵＰＳの数が１以下である場合、システムの可用性を保持することができると判断する一方、予告通知を受信したＵＰＳの数が２である（１を上回る）場合、システムの可用性を保持することができないと判断する。なお、予告通知を受信したＵＰＳの数は、記憶部６ａの所定の記憶領域に格納される。
【００４８】
また、ＵＰＳ管理ソフト６７は、仮想化システム１内のハイパーバイザ６１ａ、６１ｂのＩＰアドレスを登録可能であり、それらのハイパーバイザ６１ａ、６１ｂの状態をネットワークの疎通確認によって監視する機能を有する。ＵＰＳ管理ソフト６７が監視を行う際には、ＩＣＭＰ（Internet  Control  Message  Protocol）などのネットワーク疎通確認に加えて、ＳＮＭＰ（Simple  Network  Management  Protocol）のＭＩＢ（Management  Information  Base）を用いた監視を行うことが好ましい。これにより、ＵＰＳがバックアップ運転中でＵＰＳの出力が停止する可能性がある場合であっても可用性を保持することが可能となる。なお、ＳＮＭＰのＭＩＢとしては、ＲＦＣ（Request  For  Comments）で規定されたＭＩＢ、日本電機工業会（ＪＥＭＡ）で規定されたＭＩＢ、ベンダー独自のプライベートＭＩＢなどがあるが、ＵＰＳの状態が判断できるものであれば、どのＭＩＢを使用しても構わない。
【００４９】
第２サーバ２ｂは、ＣＰＵ等を用いて構成され、第２サーバ２ｂ全体の動作を統括して制御する制御部５ｂと、ＲＯＭやＲＡＭ等を用いて構成され、制御部５ｂが第２サーバ２ｂの処理を実行する際に読み出す各種プログラムやデータ等を記憶する記憶部６ｂと、ネットワークＮＷを介して外部機器との通信を行う通信部７ｂとを備える。記憶部６ｂは、ハイパーバイザ６１ｂと、ハイパーバイザ６１ｂの制御のもとで動作可能な仮想サーバ６２ｂ、６３ｂ、６４ｂ、６５ｂと、を有する。仮想サーバ６２ｂ、６３ｂ、６４ｂ、６５ｂは、第２サーバ２ｂで動作する仮想ハードウェアである。
【００５０】
仮想化システム１では、ＨＡクラスタが構築されている。具体的には、仮想サーバ６２ａ、６３ａ、６４ｂ、６５ｂがプライマリとして構成され運用系として動作するとともに、仮想サーバ６２ｂ、６３ｂ、６４ａ、６５ａが仮想サーバ６２ａ、６３ａ、６４ｂ、６５ｂの各セカンダリとして構成されスタンバイ系として待機している。図２では、動作中の仮想サーバ（仮想サーバ６２ａ、６３ａ、６４ｂ、６５ｂ）を太枠で記載し、待機中の仮想サーバ（仮想サーバ６２ｂ、６３ｂ、６４ａ、６５ａ）を細枠で記載している。この記載方法は、以下で説明する模式図においても同様である。
【００５１】
第１ＵＰＳ３ａは、入力系統８ａを介して電力の供給を受けることによって電力を内部に蓄電しつつ、第１サーバ２ａおよびネットワーク機器４へ電力を供給する。第１ＵＰＳ３ａは、ＣＰＵ等から構成され、電力の供給を制御する電力制御部９ａと、ＲＯＭおよびＲＡＭを用いて構成され、第１ＵＰＳ３ａの入力系統８ａに異常が発生した場合（第１ＵＰＳ３ａに電源異常が発生した場合）に停止対象とするハイパーバイザ６１ａを記憶する記憶部１０ａと、ネットワーク機器４（ネットワークＮＷ）を介して外部機器との通信を行う通信部１１ａと、通信部１１ａおよびネットワーク機器４を介して第１ＵＰＳ３ａの入力電圧や出力電圧などの測定情報、第１ＵＰＳ３ａの運転状態などを示すステータス情報をモニタ監視する監視部１２ａと、第１ＵＰＳ３ａに電源異常が発生した場合に通信部１１ａおよびネットワーク機器４を介してＵＰＳ管理ソフト６７にハイパーバイザ６１ａおよび仮想サーバ６２ａ、６３ａ、６４ａ、６５ａの停止処理を実行させる停止処理部１３ａと、を有する。
【００５２】
第１ＵＰＳ３ａは、入力系統８ａからの電力の供給が断たれた場合であっても、電力制御部９ａの制御のもと、供給対象への電力供給を継続するバックアップ運転機能を有する。
【００５３】
第２ＵＰＳ３ｂは、入力系統８ｂを介して電力の供給を受けることによって電力を内部に蓄電しつつ、第２サーバ２ｂおよびネットワーク機器４へ電力を供給する。第２ＵＰＳ３ｂは、ＣＰＵ等から構成され、電力の供給を制御する電力制御部９ｂと、ＲＯＭおよびＲＡＭを用いて構成され、第２ＵＰＳ３ｂの入力系統８ｂに異常が発生した場合（第２ＵＰＳ３ｂに電源異常が発生した場合）に停止対象とするハイパーバイザ６１ｂを記憶する記憶部１０ｂと、ネットワーク機器４を介して外部機器との通信を行う通信部１１ｂと、通信部１１ｂおよびネットワーク機器４を介して第２ＵＰＳ３ｂの測定情報およびステータス情報をモニタ監視する監視部１２ｂと、第２ＵＰＳ３ｂに電源異常が発生した場合に通信部１１ｂおよびネットワーク機器４を介してＵＰＳ管理ソフト６７にハイパーバイザ６１ｂおよび仮想サーバ６２ｂ、６３ｂ、６４ｂ、６５ｂの停止処理を実行させる停止処理部１３ｂと、を有する。
【００５４】
第２ＵＰＳ３ｂは、入力系統８ｂからの電力の供給が断たれた場合であっても、電力制御部９ｂの制御のもと、供給対象への電力供給を継続するバックアップ運転機能を有する。
【００５５】
第１ＵＰＳ３ａ、第２ＵＰＳ３ｂには、ＬＡＮポートを有するオプションカード３１ａ、３１ｂがそれぞれ実装されている。オプションカード３１ａは、記憶部１０ａ、通信部１１ａ、監視部１２ａ、停止処理部１３ａの機能を有する。同様に、オプションカード３１ｂは、記憶部１０ｂ、通信部１１ｂ、監視部１２ｂ、停止処理部１３ｂの機能を有する。オプションカード３１ａ、３１ｂは、例えばＷｅｂ／ＳＮＭＰカードである。
【００５６】
オプションカード３１ａは、２つの方法で第１サーバ２ａをシャットダウンすることができる。第１の方法は、第１サーバ２ａを専用プロトコル（専用通信）によってシャットダウンする方法である。第２の方法は、オプションカード３１ａに実装された通信プロトコルを使用することにより、ネットワーク機器４を介してハイパーバイザ６１ａにログインし、ハイパーバイザ６１ａの内部コマンドを実行して第１サーバ２ａをシャットダウンする方法である。
【００５７】
オプションカード３１ａに実装される通信プロトコルは、ｒｓｈ、ｔｅｌｎｅｔ、ｓｓｈなどである。ｒｓｈは、従来知られているレガシーな通信プロトコルであり、ネットワーク経由でローカルのプログラムおよびコマンド、シェルスクリプトを実行可能な機能を有する。ｔｅｌｎｅｔは、対話型のターミナルを有し、ネットワーク経由でローカルのプログラムおよびコマンド、シェルスクリプトを実行する機能を有する。ｓｓｈは、ｔｅｌｎｅｔのネットワーク通信を暗号化して通信し、通信途中のパケットデータの盗聴における脅威を防止する機能を有する。
【００５８】
オプションカード３１ａは、ＵＰＳ管理ソフト６７に上述したバッチファイルを実行させる際、まずＵＰＳ管理ソフト６７に対して第１ＵＰＳ３ａの出力を停止（シャットダウン）する予告通知を行う。バッチファイルには、予告通知送信元であるオプションカード３１ａのＩＰアドレスに応じた設定が施されている。予告通知送信元がオプションカード３１ａである場合には、第１ＵＰＳ３ａがバックアップしている第１サーバ２ａ上で動作する仮想ハードウェアを別の場所へ移動させる内容が記載されている。例えば、vMotion（登録商標）の環境下では、バッチファイルに“Move-VM”などのコマンドセットが記載されている。
【００５９】
オプションカード３１ｂは、オプションカード３１ａと同様、第２サーバ２ｂをシャットダウンする方法として、専用プロトコル（専用通信）によるシャットダウン方法と、ｒｓｈ、ｔｅｌｎｅｔ、ｓｓｈ等の通信プロトコルを用いたシャットダウン方法とを実行可能である。
【００６０】
なお、第１ＵＰＳ３ａ、第２ＵＰＳ３ｂが予めオプションカード３１ａ、３１ｂの機能をそれぞれ具備した構成とすることも可能である。
【００６１】
ネットワーク機器４は、イーサネット（登録商標）用のハブであり、オプションカード３１ａ、３１ｂ、第１サーバ２ａ、第２サーバ２ｂの各ＬＡＮポートに接続したＬＡＮケーブルを接続して、相互に通信可能とする装置である。ネットワーク機器４は、第１ＵＰＳ３ａ、第２ＵＰＳ３ｂを冗長電源として電力の供給を受ける。ネットワーク機器４には、他の外部ストレージも接続可能である。
【００６２】
図３は、以上の構成を有する仮想化システム１において、電源異常が発生した場合の処理の流れを示すフローチャートである。以下では、代表的な例として、最初に第１ＵＰＳ３ａに電源異常が発生する場合の処理の流れを説明する。
【００６３】
第１ＵＰＳ３ａに電源異常が発生すると（ステップＳ１：Ｙｅｓ）、第１ＵＰＳ３ａは入力異常を検出し、電力制御部９ａの制御のもと、バックアップ運転への切り替えを行う（ステップＳ２）。第１ＵＰＳ３ａに電源異常が発生しない場合（ステップＳ１：Ｎｏ）、仮想化システム１はステップＳ１を繰り返す。
【００６４】
オプションカード３１ａは、第１ＵＰＳ３ａがバックアップ運転に切り替わったことを認識すると、そのバックアップ運転の継続時間の計測を開始する（ステップＳ３）。
【００６５】
バックアップ運転の継続時間が所定の時間だけ経過すると（ステップＳ４：Ｙｅｓ）、オプションカード３１ａは、ＶＣＳ６６内のＵＰＳ管理ソフト６７に対し、ネットワーク機器４を介して第１ＵＰＳ３ａの出力を停止する予告通知を送信する（ステップＳ５）。バックアップ運転の継続時間が所定の時間経過していない場合（ステップＳ４：Ｎｏ）、仮想化システム１はステップＳ４を繰り返す。
【００６６】
ＵＰＳ管理ソフト６７がオプションカード３１ａからネットワーク機器４を介して送信されてくる予告通知を受信した時点で、予告通知を受信したＵＰＳの数は１である。したがって、ＵＰＡ管理ソフト６７は、ステップＳ５の後で最初に監視および可用性確認を行うタイミングにおいて、仮想化システム１の可用性を保持することができると判断する（ステップＳ６）。なお、上述したように、ＵＰＳ管理ソフト６７は、図３のフローチャートに記載しないタイミングでも定期的に監視と可用性の確認を行っている。このため、例えばステップＳ６の後で第１ＵＰＳ３ａが復旧した場合、ＵＰＳ管理ソフト６７は、予告通知を受信したＵＰＳの数から第１ＵＰＳ３ａの分を削減する処理を行う。
【００６７】
続いて、ＵＰＳ管理ソフト６７は、送信元のＩＰアドレスに基づいて予め設定されたバッチファイルを実行することにより、自身を含むＶＣＳ６６を第２サーバ２ｂへ移動させる（ステップＳ７）。図４は、ＶＣＳ６６の第２サーバ２ｂへの移動を模式的に示す図である。第２サーバ２ｂへ移動したＵＰＳ管理ソフト６７は、引き続きネットワーク機器４を介して第１ＵＰＳ３ａ、第２ＵＰＳ３ｂの状態を定期的に監視する。
【００６８】
ＶＣＳ６６の移動が完了した後、オプションカード３１ａは、ハイパーバイザ６１ａの停止処理を通信プロトコルｒｓｈ、ｔｅｌｎｅｔ、ｓｓｈのいずれかによって実行する（ステップＳ８）。この際、通信プロトコルは、ネットワーク機器４を介してハイパーバイザ６１ａの内部コマンドを実行する。
【００６９】
ステップＳ８において、例えばvMotion（登録商標）の環境下では、仮想サーバが移動する間はハイパーバイザ６１ａを停止することができないため、移動に要する時間を予め見積もっておき、その分を遅延時間として設定しておく必要がある。この場合のシャットダウン用のシェルスクリプトは、例えば以下のように設定される。
#!/bin/ash
shutdown.sh
poweroff
このシェルスクリプトのファイル名をdoshutdown.shとすると、オプションカード３１ａでは、例えば以下のような設定がなされている。
遅延時間：３秒
ユーザ名／パスワード：root/****
スクリプト：nohup/vmfs/volumes/UPS/doshutdown.sh
この設定では、遅延時間が３秒である場合を想定している。なお、シェルスクリプトは、ハイパーバイザ６１ａから実行可能な場所に配置しておけばよく、例えばネットワーク機器４を介して接続される外部ストレージに配置しておけばよい。
【００７０】
ステップＳ８の後、仮想サーバ６２ａ、６３ａは停止し、それぞれ第２サーバ２ｂのハイパーバイザ６１ｂ上で動作するセカンダリの仮想サーバ６２ｂ、６３ｂへ自動的に切り替わる（ステップＳ９）。これにより、動作中の仮想サーバの第１サーバ２ａから第２サーバ２ｂへの移動が完了する。図５は、仮想サーバの自動的な切り替えを模式的に示す図である。
【００７１】
続いて、第２ＵＰＳ３ｂにも電源異常が発生した場合（ステップＳ１０：Ｙｅｓ）を説明する。この場合、第２ＵＰＳ３ｂは、電力制御部９ｂの制御のもとでバックアップ運転への切り替えを行う（ステップＳ１１）。オプションカード３１ｂは、第２ＵＰＳ３ｂがバックアップ運転に切り替わったことを認識すると、バックアップ運転の継続時間の計測を開始する（ステップＳ１２）。
【００７２】
バックアップ運転の継続時間が所定の時間だけ経過すると（ステップＳ１３：Ｙｅｓ）、オプションカード３１ａは、ＶＣＳ６６内のＵＰＳ管理ソフト６７に対し、ネットワーク機器４を介して第２ＵＰＳ３ｂの出力を停止する予告通知を送信する（ステップＳ１４）。バックアップ運転の継続時間が所定の時間経過していない場合（ステップＳ１３：Ｎｏ）、仮想化システム１はステップＳ１３を繰り返す。
【００７３】
ステップＳ１４の後、ＵＰＳ管理ソフト６７は、仮想化システム１の可用性を確認する（ステップＳ１５）。まず、ＵＰＳ管理ソフト６７が仮想化システム１の可用性を確認した結果、システムの可用性を保持することができないと判断した場合（ステップＳ１５：Ｎｏ）を説明する。これは、ＵＰＳ管理ソフト６７が確認する時点で予告通知を受信したＵＰＳの数が２である場合に相当する。この場合、ＵＰＳ管理ソフト６７は、システム全体停止用のバッチファイルを実行することにより、仮想化システム１全体の仮想サーバを停止（シャットダウン）する処理を行う（ステップＳ１６）。このステップＳ１６で使用されるバッチファイルには、仮想化システム１全体の仮想ハードウェアを停止させる処理が記載されている。ＵＰＳ管理ソフト６７は、ＶＣＳ６６を除く動作中の全ての仮想サーバ６２ｂ、６３ｂ、６４ｂ、６５ｂを停止させる。
【００７４】
続いて、オプションカード３１ｂが、所定の通信プロトコルにより、ネットワーク機器４を介してＶＣＳ６６およびハイパーバイザ６１ｂを停止させる（ステップＳ１７）。ＶＣＳ６６の停止処理は、仮想化システム１内の全ての仮想サーバを停止させる処理を行うバッチファイルの最後の処理として実行される。この後、オプションカード３１ｂは、所定の通信プロトコルにより、ネットワーク機器４を介してハイパーバイザ６１ｂを停止させる。これにより、仮想化システム１は完全に停止する。
【００７５】
ステップＳ１７を実行するために、オプションカード３１ｂには、全体停止用の設定として、全ての仮想サーバ、ＶＣＳ６６およびハイパーバイザ６１ｂの停止時間を含むような遅延時間を設定しておく必要がある。オプションカード３１ａに対しても同様の設定をしておく必要があることはいうまでもない。
【００７６】
次に、ステップＳ１５でＵＰＳ管理ソフト６７が仮想化システム１の可用性を確認した結果、システムの可用性を保持することができると判断した場合（ステップＳ１５：Ｙｅｓ）を説明する。これは、ステップＳ１５でＵＰＳ管理ソフト６７が確認する時点で第１ＵＰＳ３１ａが正常な状態に復旧している場合（予告通知を受信したＵＰＳの数が１である場合）に相当する。この場合、仮想化システム１では、仮想サーバ６２ｂ、６３ｂ、６４ｂ、６５ｂが停止し、仮想サーバ６２ａ、６３ａ、６４ａ、６５ａへ自動的に切り替わる（ステップＳ１８）。これにより、動作中の仮想サーバの第２サーバ２ｂから第１サーバ２ａへの移動が完了する。
【００７７】
続いて、ＵＰＳ管理ソフト６７は、自身を含むＶＣＳ６６を第１サーバ２ａ上へ移動させる（ステップＳ１９）。これにより、ＶＣＳ６６は元の場所に復帰する。図６は、ステップＳ１９が終了した時点での仮想サーバの動作状況を模式的に示す図である。図６では、全ての仮想サーバが第１サーバ２ａ上で動作している。
【００７８】
ＶＣＳ６６の移動が完了した後、オプションカード３１ｂは、ハイパーバイザ６１ｂの停止処理を通信プロトコルｒｓｈ、ｔｅｌｎｅｔ、ｓｓｈのいずれかによって実行する（ステップＳ２０）。この際、通信プロトコルは、ネットワーク機器４を介してハイパーバイザ６１ｂの内部コマンドを実行する。ステップＳ２０の後、仮想化システム１は一連の処理を終了する。
【００７９】
次に、ステップＳ１０で第２ＵＰＳ３ｂに電源異常が発生していない場合（ステップＳ１０：Ｎｏ）を説明する。この場合において、第１ＵＰＳ３ａが正常状態に復旧しているとき（ステップＳ２１：Ｙｅｓ）、仮想化システム１では、ＤＲＳ等の負荷分散機能によって仮想サーバ６２ｂ、６３ｂが停止し、第１サーバ２ａのハイパーバイザ６１ａ上で動作するプライマリの仮想サーバ６２ａ、６３ａへ自動的に切り替わる（ステップＳ２２）。これにより、動作中の一部の仮想サーバの第２サーバ２ｂから第１サーバ２ａへの移動が完了する。第１ＵＰＳ３ａの正常状態への復旧は、ＵＰＳ管理ソフト６７の監視機能によって検知される。この際、ＵＰＳ管理ソフト６７は、予告通知を受信したＵＰＳの数を変更する。なお、ステップＳ２１において、第１ＵＰＳ３ａが復旧していない場合（ステップＳ２１：Ｎｏ）、仮想化システム１はステップＳ１０へ戻る。
【００８０】
ステップＳ２２の後、ＵＰＳ管理ソフト６７は、自身を含むＶＣＳ６６を第１サーバ２ａ上へ移動させる（ステップＳ２３）。これにより、ＶＣＳ６６は元の場所に復帰する。図７は、ＶＣＳ６６の第１サーバ２ａへの復帰を模式的に示す図である。ステップＳ２３の後、仮想化システム１は一連の処理を終了する。
【００８１】
以上説明した一連の処理によれば、電源異常時のＨＡクラスタ動作で仮想サーバが物理ハードウェア間（ここでは第１サーバ２ａと第２サーバ２ｂとの間）を動的に移動可能なシステムにおいても、ＵＰＳがバックアップ対象とする物理ハードウェアを安全に停止させるとともに、仮想化システムをそのまま継続して動作させることが可能となる。したがって、高可用性を有している場合であっても、ＵＰＳによって安全に保護される仮想化システムを提供することができる。
【００８２】
ここまで、仮想化システム１において、最初に第１ＵＰＳ３ａに電源異常が発生した場合を説明したが、仮想化システム１で別のパターンの電源異常が発生した場合にも同様の処理を行うのはもちろんである。例えば、最初に第２ＵＰＳ３ｂに電源異常が発生した場合には、仮想サーバ６４ｂ、６５ｂが停止してハイパーバイザ６１ａ上で動作するセカンダリの仮想サーバ６４ａ、６５ａへ自動的に切り替わった後、ハイパーバイザ６１ｂを停止するようにすればよい。この後、第２ＵＰＳ３ｂが復旧したとき、仮想化システム１では、負荷分散機能により仮想サーバ６４ａ、６５ａがプライマリの仮想サーバ６４ｂ、６５ｂへ自動的に切り替わる。
【００８３】
以上説明した本発明の実施の形態１によれば、高可用性を有する仮想化システムにおいて、１つのサーバは、仮想化統合プラットフォームを管理するＶＣＳを備え、このＶＣＳまたはこのＶＣＳを備えるサーバは、ＶＣＳと連動し、複数の無停電電源装置のいずれかに電源異常が発生した場合、該電源異常が発生した無停電電源装置が電力を供給するサーバで動作する仮想ハードウェアを停止して別のサーバへ移動させるＵＰＳ管理ソフトを備えるため、高可用性を有している場合であっても電源供給側とのシャットダウン連動機能を実現することができる。
【００８４】
また、本実施の形態１によれば、複数のハイパーバイザを有し、システム異常時には、サーバ（物理ハードウェア）間の移動を実施する大規模仮想化システムにおいて、必要なタイミングに応じて仮想サーバのシャットダウンが可能であり、そのシャットダウンに応じた電源ＯＮ／ＯＦＦの連動するシステムの構築が可能となる。
【００８５】
また、本実施の形態１によれば、システムの規模に応じた台数のハイパーバイザに対応可能であり、ＨＷ仮想化方式の汎用的な仮想サーバ環境において無停電電源装置のサーバ電源を適切に管理することができる。
【００８６】
また、本実施の形態１によれば、ＶＣＳがＵＰＳ管理ソフトを有しているため、より高い連動性を実現することができる。
【００８７】
また、本実施の形態１によれば、異なるサーバで動作する仮想サーバがＨＡクラスタを構成しているため、一段と可用性を向上させることができる。
【００８８】
本実施の形態１は、３つ以上のＵＰＳを備えた仮想化システムとして実現することも可能である。この場合、ＵＰＳ管理ソフトは、予告通知を受信したＵＰＳの数に基づいて可用性を保持することができるか否かを判断する。この仮想化システムでは、予告通知を受信したＵＰＳの数が所定数を上回った場合にシステム全体を停止する一方、その所定数以下の場合には、可用性を保持することができると判断し、ＶＣＳがさらに別の仮想サーバ上へ移動する。
【００８９】
（実施の形態２）
図８は、本発明の実施の形態２に係る仮想化システムを模式的に示す図である。同図に示す仮想化システム２１は、ｎ（＞２）個の物理ハードウェアである第１サーバ２２−１、第２サーバ２２−２、・・・、第ｎサーバ２２−ｎと、各サーバにそれぞれ電力を供給する第１ＵＰＳ２３−１、第２ＵＰＳ２３−２、・・・、第ｎＵＰＳ２３−ｎと、を備える。各サーバおよび各ＵＰＳは、図示しないネットワーク機器（ハブ）を介して相互に通信可能に接続されている。なお、各サーバは、実施の形態１で説明した第１サーバ２ａ等と同様、制御部、記憶部、および通信部を備える。また、各ＵＰＳは、実施の形態１で説明した第１ＵＰＳ３ａと同様、電力制御部、記憶部、通信部、監視部、および停止処理部を備える。
【００９０】
第ｍサーバ２２−ｍ（ｍ＝１、２、・・・ｎ）は、ネットワーク制御手段としての機能を有するハイパーバイザ２４−ｍと、ハイパーバイザ２４−ｍの制御のもとで動作可能な仮想サーバ２５−ｍ、２６−ｍとを有する。また、第１サーバ２２−１のハイパーバイザ２４−１上では、第１の管理手段としての機能を備えたＶＣＳ２７が動作可能である。ＶＣＳ２７は、第２の管理手段としての機能を備えたＵＰＳ管理ソフト２８（図８では「Ｕ」と記載）を記憶する。なお、仮想化システム２１は、実施の形態１の仮想化システム１とは異なり、仮想サーバ間でＨＡクラスタを構成していない。
【００９１】
ＶＣＳ２７は、全てのＵＰＳ（第ｍＵＰＳ２３−ｍ）、全てのハイパーバイザ（ハイパーバイザ２４−ｍ）、全ての仮想サーバ（仮想サーバ２５−ｍ、２６−ｍ）のリストを記憶している。ＶＣＳ２７では、このリストに基づいて、システムの運用に必要な最小のハイパーバイザの動作台数が設定される。このハイパーバイザの動作台数は、システムの運用に必要とされる正常な出力状態のＵＰＳの台数と等しくなるように設定される。システムの運用においてＵＰＳの出力状態が正常であることが必要とされる台数と等しくなるように設定される。ＵＰＳ管理ソフト２８は、第ｍＵＰＳ２３−ｍの状態をＩＣＭＰおよびＳＮＭＰのＭＩＢによって定期的に監視する。
【００９２】
本実施の形態２において、ＵＰＳ管理ソフト２８が監視した結果、ハイパーバイザの動作台数がシステムの運用に必要最小限の動作台数を下回った場合、換言すれば、疎通確認を行うことができないハイパーバイザの数が所定数を上回った場合、仮想化システム２１は、システム全体を停止する処理を実行する。例えば、仮想化システム２１において、システムの運用に必要なハイパーバイザの必要最小限の動作台数が２台である場合において、図９に示すように、１台のサーバ上（図９では第２サーバ２２−２上）にすべての仮想サーバがvMotion（登録商標）またはマイグレーション等によって移動してきたとき、仮想化システム２１は、システム全体を停止する処理を実行する。
【００９３】
これに対し、ＵＰＳ管理ソフト２８が監視した結果、ハイパーバイザの動作台数がシステムの運用に必要最小限の動作台数以上である場合、換言すれば、疎通確認を行うことができないハイパーバイザの数が所定数以下である場合、正常にvMotion（登録商標）またはマイグレーション等の移動が実施され、システム全体の停止処理は行われない。
【００９４】
以上説明した本発明の実施の形態２によれば、実施の形態１と同様、高可用性を有している場合であっても電源供給側とのシャットダウン連動機能を実現することができる。
【００９５】
また、本実施の形態２によれば、冗長化した大規模仮想化システムにおいて、仮想サーバを動的移動させるシステムにおいても、無停電電源装置に電源を保護させ、可用性を保持することができない場合にはシステム全体を安全に停止させることが可能となる。
【００９６】
ここまで、本発明を実施するための形態を説明してきたが、本発明は、上述した２つの実施の形態によってのみ限定されるべきものではない。例えば、本明細書で記載したフローチャートにおける処理の順序はあくまでも一例に過ぎず、本発明を実施する際に矛盾のない範囲で変更することが可能である。このように、本発明は、ここでは記載していない様々な実施の形態等を含みうるものである。
【符号の説明】
【００９７】
１、２１  仮想化システム
２ａ、２２−１  第１サーバ
２ｂ、２２−２  第２サーバ
３ａ、２３−１  第１無停電電源装置（ＵＰＳ）
３ｂ、２３−２  第２無停電電源装置（ＵＰＳ）
４  ネットワーク機器
５ａ、５ｂ  制御部
６ａ、６ｂ、１０ａ、１０ｂ  記憶部
７ａ、７ｂ  通信部
８ａ、８ｂ  入力系統
９ａ、９ｂ  電力制御部
１１ａ、１１ｂ  通信部
１２ａ、１２ｂ  監視部
１３ａ、１３ｂ  停止処理部
２２−３  第３サーバ
２２−ｎ  第ｎサーバ
２４−１、２４−２、２４−３、２４−ｎ、６１ａ、６１ｂ  ハイパーバイザ
２５−１、２６−１、２５−２、２６−２、２５−３、２６−３、２５−ｎ、２６−ｎ、６２ａ、６２ｂ、６３ａ、６３ｂ、６４ａ、６４ｂ、６５ａ、６５ｂ  仮想サーバ
２７、６６  ＶＣＳ
２８、６７  ＵＰＳ管理ソフト
３１ａ、３１ｂ  オプションカード
ＮＷ  ネットワーク
【要約】
【課題】高可用性を有している場合であっても電源供給側とのシャットダウン連動機能を実現する。
【解決手段】複数の物理ハードウェアと、該複数の物理ハードウェアにそれぞれ電力を供給する複数の無停電電源装置とがネットワークを介して通信可能に接続されるとともに、複数の物理ハードウェアのいずれかで動作可能な複数の仮想ハードウェアを備え、複数の物理ハードウェアのいずれか一つは、仮想化統合プラットフォームを管理する第１の管理手段を備え、第１の管理手段を備える物理ハードウェアまたは該物理ハードウェアで動作する仮想ハードウェアのいずれかは、第１の管理手段と連動する第２の管理手段であって、複数の無停電電源装置のいずれかに電源異常が発生した場合、該電源異常が発生した無停電電源装置が電力を供給する物理ハードウェアで動作する仮想ハードウェアを停止して別の物理ハードウェアへ移動させる第２の管理手段を備える。
【選択図】図２【図１】
0005601428.tif 000002
【図２】
0005601428.tif 000003
【図３】
0005601428.tif 000004
【図４】
0005601428.tif 000005
【図５】
0005601428.tif 000006
【図６】
0005601428.tif 000007
【図７】
0005601428.tif 000008
【図８】
0005601428.tif 000009
【図９】
0005601428.tif 000010