(57)【要約】  仮想マシンを複数実行する物理マシン環境において、発生する障害が影響する仮想マシンを特定すること、仮想マシンに障害情報を通知すること、障害情報の通知と同期させ仮想マシン内構成制御機能と物理マシン内構成制御機能間で構成制御権限を排他できるようにする発明である。  物理マシンは、障害種別判断部と障害種別管理テーブルを有し、物理マシン側の障害検知部、及び仮想マシン側の障害検知部により検知された障害が影響する仮想マシンを特定する。障害種別判断部は障害に影響する仮想マシンへ障害情報を通知し、それと連動して物理マシン内構成制御部の当該仮想マシンへの構成制御を無効化する。当該障害が仮想マシン内の構成制御部で制御できないと判断した場合は、物理マシン内の構成制御部の構成制御権が有効化し、当該仮想マシンに対する構成制御が実施される。
2015072004.tif 000002
【特許請求の範囲】
【請求項１】
障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて記憶する障害種別管理記憶部と、
前記障害情報を受信した際、前記障害種別管理記憶部に記憶された前記障害依存情報に基づいて障害の影響範囲を特定する障害種別判断部と、
前記構成制御ルールに基づいて、前記影響範囲に対して制御するように通知し、
前記影響範囲に物理マシンが含まれていた場合、構成制御を実行する仮想化構成制御部を備えた物理マシンと、
前記影響範囲に第一の仮想マシンが含まれていた場合、前記通知を受信し、構成制御を実行する第一の仮想側構成制御部を備えた第一の仮想マシンと、
を備えることを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
第二の仮想マシンを更に備え、
前記障害情報が前記物理マシンの障害情報であった場合、
前記障害種別判断部は、前記第一の仮想マシン及び前記第二の仮想マシンの前記障害による影響範囲を特定し、
前記仮想化構成制御部は、前記第一の仮想マシン及び前記第二の仮想マシンに、前記通知をし、
前記第一の仮想マシンの前記第一の仮想側構成制御部及び、前記第二の仮想マシンの前記第二の仮想側構成制御部は、構成制御を実行する計算機システム。
【請求項３】
請求項２に記載の計算機システムであって、
前記物理マシンは、
前記第一の仮想マシン又は前記第二の仮想マシンのいずれか一つ又は、両方に、前記制御通知を送信した場合、前記第一の仮想マシン及び前記第二の仮想マシンの構成制御のタイムアウトを監視し、前記タイムアウトを検知したら、前記物理マシン側構成制御部によって、タイムアウトを検知した仮想マシンの構成制御を実施することを特徴とする計算機システム。
【請求項４】
請求項３に記載の計算機システムであって、
更に第三の仮想マシンを備え、
前記物理マシンの障害種別管理記憶部は、前記第一の仮想マシン及び前記第二の仮想マシンは、前記第一の仮想側構成制御部又は、前記第二の仮想側構成制御部を有する仮想マシンであり、前記第三の仮想マシンは、構成制御部を有していない仮想マシンである事を更に記憶し、
前記物理マシンは、前記第一の仮想側構成制御部又は、前記第二の仮想側構成制御部を有する前記第一の仮想マシン又は前記第二の仮想マシンに制御通知をすることを特徴とする計算機システム。
【請求項５】
請求項４に記載の計算機システムであって、
前記物理マシンは、前記第一の仮想マシン又は前記第二の仮想マシンに制御通知を送信した場合、前記物理マシンの当該仮想マシンに対する構成制御部を無効にすることを特徴とする計算機システム。
【請求項６】
請求項２に記載の計算機システムであって、
前記第一の仮想マシン及び第二の仮想マシンは障害検知部を有し、
前記障害検知部で検知された障害情報を前記物理マシンの前記障害種別判断部へ通知し、
前記物理マシンの前記障害種別判断部は、
前記障害情報から障害の範囲を検知し、
前記仮想化構成制御部は、
構成制御を実行することを特徴とする計算機システム。
【請求項７】
請求項６に記載の計算機システムであって、
物理マシンを複数備え、
前記物理マシンは、前記他の物理マシンの状況を取得し、
前記状況が構成制御可能である場合に、
前記仮想化構成制御部は、構成制御を実行することを特徴とする計算機システム。
【請求項８】
物理マシンは、
障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて予め障害種別管理記憶部に記憶し、
前記障害情報を受信した際、前記障害種別管理記憶部に記憶された前記障害依存情報に基づいて障害の影響範囲を特定し、
前記構成制御ルールに基づいて、前記影響範囲に対して制御するように通知し、
前記影響範囲に物理マシンが含まれていた場合、構成制御を実行し、
第一の仮想マシンは、
前記影響範囲に第一の仮想マシンが含まれていた場合、前記通知を受信し、構成制御を実行する
ことを特徴とする計算機制御方法。
【請求項９】
障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて記憶する障害種別管理記憶部と、
前記障害情報を受信した際、前記障害種別管理記憶部に記憶された前記障害依存情報に基づいて障害の影響範囲を特定する障害種別判断部と、
前記構成制御ルールに基づいて、前記影響範囲に対して制御するように通知し、
前記影響範囲に物理マシンが含まれていた場合、構成制御を実行する仮想化構成制御部を備えた物理マシンと、
前記影響範囲に第一の仮想マシンが含まれていた場合、前記通知を受信し、構成制御を実行する第一の仮想側構成制御部を備えた第一の仮想マシンと、
を備えることを特徴とする計算機制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機、計算機制御方法、および計算機制御プログラムに関するものである。
【背景技術】
【０００２】
従来、クライアントやサーバや、サーバ用マシンの多重系は物理マシンに各々構築され、物理マシン間は物理ネットワークによって通信経路を確立する構成になっている。特許文献１には、システム定義に沿って運用されているシステムから得られる状況情報に、その状況情報で特定される状況に関係するシステム定義の項目を関連させた稼動情報を記憶し、他のシステムを稼動する際に、稼動情報に基づいてシステムを稼動させる見積もりを算出する技術が開示されている。これにより、発生した障害などの情報とその関連部位を管理することができる。【０００３】
また、特許文献２には、クラスタマネージャは、仮想マシンの機能を利用し、各ゲストOSの起動、停止の制御、サービスの状態監視を行い、サービス障害を検知すると、予め設定されたフェイルオーバポリシーに従って該当サービスを障害から復旧する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2007-157026号公報
【特許文献２】特開2008-52407号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年は、物理マシン用に開発した業務アプリや、システム管理アプリを仮想マシンにおいても稼動させたいというニーズがある。また、新規仮想マシンの構築では仮想マシン管理を物理マシンに任せ、構成制御に関わる仮想マシン内機能の開発工数の低減を実施したいというニーズがある。仮想マシンを集約する環境では、これら個別のポリシーを持った仮想マシンを共存させる事が必要となる。【０００６】
しかしながら、特許文献１に記載の技術は、その稼動情報を複数の構成制御部へ情報提供すること、その同一の稼動情報に対し、複数の構成制御部が個別の判断基準にて構成制御判断をすることが困難である。【０００７】
しかしながら特許文献２に記載の技術は、仮想マシンの機能を利用し、障害を復旧する技術であるため、別のポリシーをもった複数の仮想マシンが混在する環境では、それぞれのポリシーに応じた構成制御をすることは困難である。すなわち、単一のポリシーによってサービスの状況情報を障害と認定する方式であるため、複数のゲスト・ホストの構成制御部が個別に構成制御を判断すること、また複数の障害判定結果に優先順位をつけて構成制御を実行することなどが困難である。例えば、同一の故障部位であっても関係する仮想マシンとそうでない仮想マシン。可用性を重視し多重系ネットワークの方系が故障しても稼動している系を活用し業務を継続するポリシーと、安全性を重視し、多重系ネットワークから来た情報のコンペアが成立できない状況になると稼動しているネットワークの系があっても業務を停止させ、計算機の系を切り替えてしまうポリシーなど同一の障害情報に対する複数の制御判断が発生し、それを調停する必要が出てくる。【０００８】
また、障害に対する構成制御を判断する仮想マシン内の部位の障害という2重障害の検知ができない問題や、障害に対するログ処理やメモリダンプなど仮想マシン内の生死監視機能を停止させないと処理できない処理が実行されたときに、他系の仮想マシンや当該仮想マシンを稼動させている物理マシンが、仮想マシンが稼動していないと誤認識して構成制御を実行してしまう不具合が生じる。
【課題を解決するための手段】
【０００９】
物理マシンは、障害種別判断部と障害種別管理テーブルを有し、物理マシン側の障害検知部、及び仮想マシン側の障害検知部により検知された障害が影響する仮想マシンを特定する。障害種別判断部は障害に影響する仮想マシンへ障害情報を通知し、それと連動して物理マシン内構成制御部の当該仮想マシンへの構成制御を無効化する。当該障害が仮想マシン内の構成制御部で制御できないと判断した場合は、物理マシン内の構成制御部の構成制御権が有効化し、当該仮想マシンに対する構成制御が実施される。
【発明の効果】
【００１０】
本発明によれば、別のポリシーをもった複数の仮想マシンが混在する環境下でも、それぞれのポリシーに応じた構成制御が可能になる。
【図面の簡単な説明】
【００１１】
【図１】実施例１のシステム構成図。
【図２】システム構成情報テーブル176の例図。
【図３】障害情報管理テーブル142の例図。
【図４】システム構成情報テーブル143を示した図。
【図５】障害種別判断部が作成する障害種別管理テーブル142の例図。
【図６】発生障害情報テーブル141。
【図７】仮想化サーバシステム700の起動を示すシーケンス図。
【図８】仮想環境制御部150の初期化を示すシーケンス図。
【図９】障害種別判断部151の起動を示すシーケンス図。
【図１０】仮想化構成制御部152の起動を示すシーケンス図。
【図１１】障害時における仮想側構成制御部124A1、および物理マシン側仮想化構成制御部152による権限連携処理フローチャート図。
【図１２】障害種別判断部151による障害部位解析および、仮想マシンへの障害依存解析処理について示したシーケンス図。
【図１３】仮想マシンへの障害通知要否判断および、仮想マシンへの障害通知処理を示したシーケンス図。
【図１４】実施例２のシステム構成図。
【図１５】実施例２の障害情報管理テーブル177。
【図１６】実施例２の障害種別管理テーブル142。
【図１７】実施例２の障害種別管理テーブル142-2。
【図１８】実施例２の発生障害情報テーブル141。
【図１９】物理マシン側仮想化構成制御部152による権限連携フローチャート図。
【図２０】仮想マシンで検出された障害に対する、障害種別判断部151による障害部位解析および、仮想マシンへの障害依存解析の例を示すシーケンス図。
【図２１】別仮想マシンへの障害情報の通知方式であるフローチャート図。
【図２２】実施例３のシステム構成図。
【図２３】制御命令キューの例図（１）。
【図２４】制御命令キューの例図（２）。
【図２５】システム構成情報テーブル176の例図。
【発明を実施するための形態】
【００１２】
以下の実施例において、同一の構造部を持ち、同一の符号を付した部分は、原則として同一の動作を行うため、重複する説明を省略する。
【実施例１】
【００１３】
−−−システム構成−−−
実施例１は、本発明の特長である物理マシン・仮想マシン各々に構成制御部、およびそのルールが存在する複雑な構成をサポートする一例である。実施例１は、仮想マシン121A1は仮想側構成制御部124A1を有し、仮想マシン121B1は仮想側構成制御部を有しない仮想マシン双方をサポートするための実施例である。【００１４】
図１は、実施例１のシステム構成図である。【００１５】
仮想化サーバシステム700は、物理マシン100を備えており、これらはLAN300及び400により、外部システムと連結している。【００１６】
物理マシン100は、仮想マシン121A1を稼動させる物理マシンの構成の一例である。物理マシン100は、プロセッサ170と、メモリ110と、ディスクインタフェース171、通信インタフェース172、及び173とを有している。これらの装置は通信路174で接続されている。ここでは具体的にバスを通信路174として説明する。【００１７】
物理マシン100は、マシン外部に、記憶媒体175を有している。記憶媒体175には、システム構成情報テーブル176、障害情報管理テーブル177の初期値を記録している。
メモリ110は、仮想サーバを稼動させるために必要な、仮想環境制御部150と、障害種別判断部151と、仮想化構成制御部152、仮想NIC(Network Interface Card)153A、153Bを有しており、また仮想ディスク154が含まれる。【００１８】
また、メモリ110は、ディスクインタフェース171に対応したディスクインタフェースドライバ161、通信インタフェース172に対応した通信インタフェースドライバ162、通信インタフェース173に対応した通信インタフェースドライバ163が含まれる。【００１９】
また、物理マシンでのハードウェアでの障害や物理マシン上で稼動するソフトウェア障害を検知する物理マシン障害検知部160を有する。【００２０】
また、メモリ110には、仮想マシンと物理マシンが情報を共有するためのインタフェースとして、仮想マシン・物理マシン共有用情報インタフェース130を有する。仮想マシン・物理マシン共有用情報インタフェース130は、仮想マシン・物理マシン共有用メモリ区画140を活用し情報を送受信するが、通信経路や仮想デバイスが活用される場合もある。【００２１】
仮想マシン・物理マシン共有用メモリ区画140は、発生障害情報テーブル141、障害種別管理テーブル142、システム構成情報テーブル143が含まれる。
メモリ110には、仮想マシン用論理区画120A1があり、物理マシン200のメモリ210に存在する、仮想マシン用論理区画220A2と対を成した多重系を構成する。なお、多重系とは、同一の目的の処理を実行する機能を複数個持つことをいう。例えば、物理マシンなら物理マシンが２つ存在することをいう。多重系を構成する仮想マシンを稼動させる物理マシン100は、物理マシン200と多重系を構成している。
仮想マシン用論理区画120A1は、仮想デバイスドライバ122A1、仮想マシン121A1、仮想側構成制御部124A1、仮想マシン障害検知部125A1、業務アプリ126A1を有する。
また、仮想マシン論理区画120B1は業務アプリのみを搭載した一般的な仮想マシンや、他社アーキテクチャを採用した仮想マシンの例として示している。仮想マシン用論理区画120B1は、仮想デバイスドライバ122B1、仮想マシン121B1、業務アプリ126B1を有する。
仮想マシン用論理区画120B1は、物理マシン200のメモリ210に存在する、仮想マシン用論理区画220A2と対を成した多重系とすることもできる。
物理マシン100のメモリ110には一般的に、物理マシン用のオペレーティングシステムを有している場合もあるし、ハイパーバイザーやマイクロカーネルが存在する場合もある。
メモリ110には、ディスクインタフェースドライバ161、通信インタフェースドライバ162や163、物理マシン障害検知部160、仮想マシン・物理マシン共有用情報インタフェース130、仮想マシン・物理マシン共有用メモリ区画140、発生障害情報テーブル141、障害種別管理テーブル142、システム構成情報テーブル143、仮想環境制御部150、障害種別判断部151、仮想化構成制御部152、などの各処理はプロセッサ170で実行する事により実現できるが、これらは各処理を行なう処理部として集積回路化するなどしてハードウェアで実現する事ができる。【００２２】
以下、説明を簡単にするために、物理マシンについては、各制御部及び処理部の処理はメモリ上に展開されるプログラムによって実現するが、これらは各プログラムをプロセッサ170が実行する事で実現される各処理部を処理の主体として説明する。【００２３】
−−−システム構成情報テーブル−−−
図２及び図２５は、システム構成情報テーブル176の本実施例における実施形態である。
システム構成情報テーブルでは、システムの構成に関わる各種パラメータを保持している。仮想サーバシステムの識別子とそれに含まれる物理マシンの対応情報を有する表(176-1)と、物理マシン識別子と当該物理マシンで稼動させる仮想マシン識別子の対応情報(176-2)と、物理マシンの多重系構成を識別する識別子と当該要素である物理マシンの対応情報(176-3)と、仮想マシンの多重系構成を識別する識別子と当該要素である仮想マシンの対応情報(176-4)と、物理マシン識別子と当該構成要素項目の対応情報(176-5)と、各種モジュールが通信をする際に使用する通信IF項目とIF識別子の対応情報(176-6)と、物理デバイスと仮想デバイスの対応情報(176-7)と、各種デバイスと当該対応ドライバの対応情報(176-8)と、仮想化構成制御部152が仮想マシンを監視する周期やタイムアウト等の定義情報(176-9)を有する。例えば定義情報には、仮想側、および物理側複数存在する構成制御部の連携のために、仮想側構成制御権限移譲タイムアウトを有する。また、多重系にて同時に検知する障害により相殺が発生しないようにするための多重系相殺防止用構成制御遅延時間を有する。【００２４】
−−−障害情報管理テーブル−−−
図３は、一般的にシステムが定義する障害の例を示した障害情報管理テーブル図である。【００２５】
各インタフェースベンダ等が作成した障害識別子の例である。通信インタフェースの障害識別子の管理テーブル(177-1)と、ディスクインタフェースの障害識別子の管理テーブル(177-2)を示す。これら識別子は各ベンダにより作成されるため障害情報を管理するためにはシステム構成情報と対応可能な識別子を付与する事が必要となる。【００２６】
−−−システム構成情報テーブル−−−
図４は、システム構成情報テーブルを示した図である。【００２７】
システム構成情報テーブルは、静的なシステム構成情報（176）を有する領域(143-1)及び、仮想化構成制御部(152)により常に更新されている動的なシステム構成情報(143-2)を有する。
物理マシンと仮想マシン双方の状態が常に仮想化構成制御部152により更新される。図における物理マシン100および200自身の状態は仮想マシン識別子欄がNULLになっている。【００２８】
−−−障害種別管理テーブル−−−
図5は、障害種別判断部が作成する障害種別管理テーブルを示した図である。【００２９】
障害種別判断部は、システム構成情報テーブル(177)及び、障害情報管理テーブル(178)から必要な情報を取得し、障害の部位の特定と障害に対する構成制御権利の所在が物理マシン側にあるか仮想マシン側になるかの情報と障害を仮想マシン毎に通知する必要性があるか否かと障害に対する処理内容とを管理する。【００３０】
−−−障害種別管理テーブル−−−
図６は、障害発生情報を仮想マシン及び物理マシン間で共有する発生障害情報テーブル(141)を示した図である。テーブルには、障害の送達先が納めてある宛先は仮想マシン側の他、物理マシン側も指定可能である。共有情報として障害識別子、内容、障害対象のシステム構成定義内識別子が含まれている。【００３１】
−−−起動シーケンス−−−
図７は、仮想化サーバシステム700の起動を示すシーケンス図である。
仮想化サーバシステム700の起動は、物理マシン100を起動する（S701）。その後、仮想環境制御部150を起動する（S702）。同様に、物理マシン200を起動する（S703）。その後、仮想環境制御部250を起動する（S704）
−−−起動シーケンス−−−
図８は、仮想環境制御部150の初期化を示すシーケンス図である。仮想環境制御部150は、ディスクインタフェース171用のディスクインタフェースドライバ161、通信インタフェース172用の通信インタフェースドライバ162、通信インタフェース173用の通信インタフェースドライバ163をメモリ110に展開し物理マシンが稼働に必要な初期化を実施する（S150-01）。【００３２】
仮想環境制御部150は、記憶媒体175より、システム構成情報テーブル176のテーブル176-6より初期値を読み込み、仮想マシン・物理マシン共有用情報インタフェース130、及び仮想マシン・物理マシン共有用メモリ区画140を起動する（S150-02）。
仮想環境制御部150はシステム構成情報テーブル177の情報をシステム構成情報テーブル143内の143-1に展開する（S150-03）。その後、仮想環境制御部150は障害種別判断部151を起動する（S151-01）本ステップの詳細は図９にて説明する。仮想環境制御部150は仮想化構成制御部152を起動する（S152-01）本ステップの詳細は図１０にて説明する。【００３３】
−−−起動シーケンス−−−
図９は、障害種別判断部151の起動を示すシーケンス図である。
障害種別判断部151は、システム構成情報テーブル(143-1内176)と、記憶媒体175より、障害情報管理テーブル177を読み、障害種別管理テーブル142を作成する（S151-02）。【００３４】
−−−起動シーケンス−−−
図１０は、仮想化構成制御部152の起動を示すシーケンス図である。ここでは、仮想化構成制御部152の起動時に仮想マシンも起動する例を示す。【００３５】
仮想化構成制御部152は、物理マシン・仮想マシン状態管理用テーブル143-2を生成し、物理、仮想マシンの多重系ペアの情報収集を開始する（S152-02）。仮想化構成制御部152は、仮想マシン121A1の起動に必要なパラメータをシステム構成情報テーブル143-1より取得する（S152-03）。その後、仮想化構成制御部152は、仮想環境制御部150に仮想マシンの起動121A1の起動を指示する（S152-04）。仮想環境制御部152は、143-1内のテーブル176-9より起動時誤認識防止用監視タイムアウトを読み込み、仮想マシン121A1の監視を開始する（S152-05）。仮想環境制御部150は、システム構成情報テーブル143の情報を基に、仮想デバイスドライバ122A1を仮想マシン論理区画120A1に展開し、仮想マシンが稼働に必要な初期化を実施する（S152-06）。仮想環境制御部150は、システム構成情報テーブル143の情報を基に、ディスクインタフェース171とディスクインタフェースドライバ161、仮想ディスク154と、仮想デバイスドライバ122A1を関連づける（S152-07）。
仮想環境制御部150は、システム構成情報テーブル143の情報を基に、通信インタフェース172と通信インタフェースドライバ162、仮想NIC153Aと仮想デバイスドライバ122A1を関連づける（S152-08）。【００３６】
仮想デバイスドライバ122A1は、デバイスの種類ごとに個別に存在するが、説明では簡単化のために同一の仮想デバイスドライバ122A1に関連づけている。【００３７】
仮想環境制御部150は、仮想マシン121A1を起動する（S152-09）。仮想マシン121A1内、仮想側構成制御部124A1仮想マシン障害検知部125A1、業務アプリ126A1が順次立ち上がる（S152-10）。仮想側構成制御部124A1が、物理マシン側の仮想化構成制御152の問い合わせに応答し始める（S152-1１）。仮想環境制御部152は、143-1内のテーブル176-9より常時監視タイムアウト及び常時監視周期を読み込み、仮想マシン121A1の監視を開始し、システム構成情報テーブル143-2の周期、及びイベントでの更新を開始する（S152-1２）。【００３８】
−−−権限連携処理シーケンス−−−
図１１は、障害時における仮想側構成制御部124A1、および物理マシン側仮想化構成制御部152による権限連携処理を示す。本説明では、物理マシン上でしか検知できない障害を検知した場合の処理について通信インタフェース172で検知された障害を例とする。【００３９】
物理マシン障害検知部160より、通信インタフェース172の障害が障害種別判断部に通知される（S150-10）。障害種別判断部による障害部位解析および、仮想マシンへの障害依存を解析（S151-10）本ステップの詳細は図１２にて説明する。仮想マシンへの障害通知要否判断および、仮想マシンへの障害を通知（S151-20）本ステップの詳細は図１３にて説明する。障害種別判断部151は、仮想マシンに障害を通知するために障害発生情報テーブル141に登録した情報と同様の情報を、仮想化構成制御部152へ通知する。（S150-11）。仮想化構成制御部152は、構成制御権限が仮想マシン124A1に委譲されたと判断し、仮想側構成制御権限移譲タイムアウト監視を実施（S150-12）。仮想化構成制御部152による、仮想側構成制御部応答確認を実施する（S150-13）。このとき、障害受理通知や物理側での仮想マシン監視の無効化、主従系モード変更要求などがあれば、仮想マシン124A1に対する、物理マシン側の仮想化構成制御部権限の無効化継続する(S150-15)。この処理により、仮想マシン側で業務のデータの引継ぎ処理を実施した後構成制御を実施する事や、仮想マシン監視プロセスや業務プロセス等を停止して障害発生時の状況情報の保存処理を仮想マシン側の判断にて実施する事が可能となる。【００４０】
障害発生時は、必ずしも仮想側構成制御部124A1にて構成制御が実施できるとは限らない。仮想側構成制御が不可能状態について、仮想側構成制御権限委譲タイムアウトを迎えた事により検知する例を示す。仮想側構成制御権限委譲タイムアウトに達した場合（S150-1NO）、仮想化構成制御部152は、仮想マシン124A1が構成制御権を行使できる状態にないとみなし、物理マシン側の仮想化構成制御部の権限を有効化する（S150-17）。仮想化構成制御部152は、タイムアウトを迎えた障害情報を元に、障害種別管理テーブル142-2の構成制御ルールを参照し、構成制御を実施する（S150-18）。【００４１】
障害情報は致命的な情報や、業務アプリケーションにとって影響のない障害もある。例えば制御系ではネットワーク等冗長構成をなしているため、障害が発生しても業務を継続する事ができる。このような場合には仮想側構成制御部は、仮想化構成制御部152の権限を有効へ戻す事ができる。仮想側構成制御部124A1の構成制御完了通知により、物理マシン側の仮想化構成制御部152の権限を有効化する（S150-16）。【００４２】
−−−障害依存解析処理シーケンス−−−
図１２は、障害種別判断部による障害部位解析および、仮想マシンへの障害依存解析処理について示したシーケンス図である。
障害種別判断部151は、障害情報に含まれる障害識別子と、システム構成定義内識別子情報より、障害種別管理テーブル142-1を検索する（S151-11）。障害種別判断部151は、障害種別管理テーブル142-1より、“障害対象”及び”障害レベル”を参照し、物理マシン側の仮想化構成制御部152でのみ処理可能なレベルであるか否かを判断する。（S151-12）。【００４３】
“障害レベル”が物理となっている場合（S151-13がNO）、当該障害は、仮想マシン内では認識もしくは、判断、制御できない問題である障害と定める。仮想化構成制御部152が構成制御の権限を行使し、障害管理テーブル142-1の”構成制御ルール”に基づいた構成制御を実施する（S151-14）。”障害レベル“が選択可（仮想・物理）となっている場合（S151-13がYES）、当該障害は仮想マシン側、物理マシン側双方で判断できるレベルであると定め、障害種別判断部151は、障害種別管理テーブル142-2の”障害依存”をリンク１からリンクｎにかけて、仮想マシン識別子を取得するまで検索し、当該障害に影響する仮想マシンを特定する（S151-15）。障害種別判断部151は、仮想マシン間障害依存項目を参照し、当該障害が仮想マシンに全体に影響する障害であるか否かを判断する（S151-16）。【００４４】
−−−仮想マシンへの障害通知要否判断シーケンス−−−
図１３は、仮想マシンへの障害通知要否判断および、仮想マシンへの障害通知処理を示したシーケンス図である。障害種別判断部151は、”仮想マシンへの障害通知要否”に従い、発生障害情報テーブル141に、”宛先”として仮想マシン障害検知部(125A1)を、“送信元”として（障害種別判断部）151@（物理マシン）100を、”障害発生時刻”に障害発生時刻を、”障害種別”に障害種別を、”内容”に障害の内容を、“障害対象システム構成定義内識別子”に（通信インタフェース）172に関連付けた仮想マシン側識別子153Aを、仮想マシン・物理マシン共有用情報インタフェース130を介して登録する（S151-21）。
仮想マシン側で物理通信インタフェースのシステム構成定義内識別子172を認識できる場合は、172を登録することも可能である。
ここで“仮想マシンへの障害通知要否”が、（要）となっている場合は、当該仮想マシン側にある仮想側構成制御部124A1が構成制御の権限を有する事を意味する。逆に“仮想マシンへの障害通知要否”が、（否）となっている場合は、当該仮想マシンに対しては、物理マシン側の仮想化構成制御部252が構成制御の権限を有する事を意味する。【００４５】
処理“仮想マシンへの通知要”欄全ての仮想マシンに対し送信判断(S151-21)を行ったか確認する（S151-22がYES）。
【実施例２】
【００４６】
実施例２では、仮想マシンで検知した障害を物理マシンや他の仮想マシンと共有する方法を説明する。。信頼性を向上させるために、稼動部分が含まれるディスクなどを極力使用しないようにプログラムされることが多く、その反面障害検知が遅れる場合がある。ディスク障害などは、読み書きを実施したプログラムが最初に検知するため、この情報を物理マシンや他の仮想マシンと共有するディスク障害の例を示す。【００４７】
−−−システム構成−−−
図１４は、図１の構成に加え、仮想マシン121B1も仮想化構成制御部224B1を有する。【００４８】
−−−障害情報管理テーブル−−−
図１５は障害情報管理テーブル177の仮想ディスク障害に対する実施例２における追加情報である。障害識別子には物理マシン内での障害識別子と仮想マシン内での障害識別子対応情報を管理している。【００４９】
−−−障害種別管理テーブル−−−
図１６は障害種別管理テーブル142の実施例２における追加情報である。障害識別子には物理マシン内での障害識別子と仮想マシン内での障害識別子対応情報を管理している。
図１７は障害種別管理テーブル142-2の実施例２における情報である。【００５０】
−−−発生障害情報テーブル−−−
図１８は発生障害情報テーブル141の実施例２における情報である。
一行目が仮想マシン121A1側の仮想化構成制御部124A1から、障害判断部151への障害通知例であり、障害識別子は仮想マシン内で識別できるE-Bが設定されている。
二行目は、障害判断部151が、142-1bを参照して物理マシンでの障害に対応付け、他仮想マシン121B1の仮想マシン障害検知部125B1への障害通知例である。【００５１】
−−−権限連携処理シーケンス−−−
図１９は仮想マシンで検出した障害を物理マシンや他の仮想マシンと共有する例における仮想側構成制御部および物理マシン側仮想化構成制御部による権限連携例である。
仮想マシン障害検知部125A1より、仮想ディスクの154の障害が仮想側構成制御部124A1に通知される（S124A1-01）。仮想側構成制御部124A1は、仮想マシン・物理マシン共有情報インタフェースを介して仮想化構成制御部152に、物理マシン側の仮想化構成制御部権限の無効化を要求（S124A1-02）。仮想側構成制御部124A1は、発生障害情報テーブル141bに、”宛先”として物理マシン障害種別判断部(151)@物理マシン(100)を、“送信元”として（仮想側構成制御部）124A1@（仮想マシン）121A1を、”障害発生時刻”に障害発生時刻を、”障害種別”に障害種別を、”内容”に障害の内容を、“障害対象システム構成定義内識別子”に（仮想ディスク）154を、仮想マシン・物理マシン共有用情報インタフェース130を介して登録する（S124A1-03）。仮想マシン・物理マシン共有用情報インタフェース130を介して障害情報を取得する（S151-30）。障害種別判断部による障害部位解析および、
仮想マシンへの障害依存解析する（S151-40）本ステップの詳細は図２０にて説明する。
仮想マシンへの障害通知要否判断および、仮想マシンへの障害通知する（S151-50）本ステップの詳細は図２１にて説明する。【００５２】
−−−障害依存解析処理シーケンス−−−
図２０は、仮想マシンで検出された障害に対する、障害種別判断部による障害部位解析および、仮想マシンへの障害依存解析の例を示すシーケンスである。【００５３】
障害種別判断部151は、障害情報に含まれる障害識別子と、システム構成定義内識別子情報より、障害種別管理テーブル142-1bを検索する（S151-41）。障害種別判断部151は、障害種別管理テーブル142-1bより、“障害対象”及び”障害レベル”を参照し、物理マシン側の仮想化構成制御部152でのみ処理可能なレベルであるか否かを判断する（S151-42）。障害種別判断部151は、障害種別管理テーブル142-2bの”障害依存”をリンク１からリンクｎにかけて、仮想マシン識別子を取得するまで検索し、当該障害に影響する仮想マシンを特定する（S151-15）。障害種別判断部151は、仮想マシン間障害依存項目を参照し、当該障害が仮想マシンに全体に影響する障害であるか否かを判断する（S151-16）。【００５４】
−−−仮想マシンへの障害通知要否判断シーケンス−−−
図２１は、仮想マシンで検出された障害に対する、障害種別判断部による障害部位解析により、共通部位障害である事が認識されたときの、別仮想マシンへの障害情報の通知方式に対する例である。【００５５】
障害種別判断部151は、障害通知元である121A1以外の仮想マシンに対し、”仮想マシンへの障害通知要否”に従い、発生障害情報テーブル141bに、”宛先”として仮想マシン障害検知部(125B1)@仮想マシン(121B1)を、“送信元”として（障害種別判断部）151@（物理マシン）100を、”障害発生時刻”に障害発生時刻を、”障害種別”に障害種別を、”内容”に障害の内容を、“障害対象システム構成定義内識別子”に（仮想ディスク）154を、仮想マシン・物理マシン共有用情報インタフェース130を介して登録する（S151-51）。
障害通知元である121A1以外の“仮想マシンへの通知要”欄全ての仮想マシンに対し送信判断を行ったか確認する（S151-52）。
【実施例３】
【００５６】
実施例３では、本発明の特長である物理マシン・仮想マシン各々に構成制御のルールが存在する複雑な構成をサポートに加え、各仮想マシンを監視する監視卓からも物理マシンに対する、起動や停止などの構成制御の操作がなされる例を示す。【００５７】
−−−システム構成−−−
図２２は、図１４の構成に加え、物理マシン100と物理マシン200と仮想マシン121A1と仮想マシン221A2を監視する監視卓A500と、物理マシン100と物理マシン200と仮想マシン121B1と仮想マシン221B2を監視する監視卓A600を有する。監視卓500と600は自らが管理する仮想マシンの状態のみを知っており、他の仮想マシンの状態を知らない状況での構成制御の管理例である。本問題は、別々の顧客にハードウェアリソースを仮想化にて提供する場合等に発生する問題である。【００５８】
仮想マシン・物理マシン共有メモリ区画には、構成制御命令を管理するための制御命令キュー144を有する。【００５９】
図２３は、障害検知により機械的に仮想側構成制御部124A1が構成制御を判断発行した構成制御命令と、監視卓B600よりホストに対する制御命令が発行された場合の制御命令キューを表した図である。【００６０】
図２４は、仮想化構成制御部152および252の調停により制御命令が調停された後の制御命令キューを示す。【００６１】
本機能により、仮想計算機121A1から221A2への構成制御と、物理マシン200への構成制御は調停され、監視卓600からの物理マシン200の停止命令は拒絶される。【００６２】
実施例１ないし３における、構成制御のルール設定における拡張機能を示す。オペレータは障害種別判断部151および252へ、142の書き換え命令を出すことによって、構成制御ルールの変更や追加、削除、仮想マシン毎の構成制御ルールの設定等が可能となる。【００６３】
さらに、実施例１ないし３における、仮想マシン内の仮想側構成制御部124A1が、構成制御が不可能な状態であると判定する方法の拡張機能を示す。仮想化構成制御部152は、仮想マシン・物理マシン共有用情報インタフェース130に対し、発生障害情報テーブルが消化されていない情報。つまり、仮想マシンにより障害情報が取得できる状態にない情報を受ける事で仮想マシン内の仮想側構成制御部124A1が、構成制御が不可能な状態であると判定する事が可能である。また、発生障害情報テーブルの情報そのものを仮想マシン・物理マシン共有用情報インタフェース130を介して取得する事でも仮想マシン内の仮想側構成制御部124A1が、構成制御が不可能な状態であると判定する事が可能である。【００６４】
実施例１ないし３における、物理マシンは100と物理マシン200、仮想マシン120A１と仮想マシン220A1、仮想マシン120B1と仮想マシン220B1は物理的に離れているため、自マシン内に存在する動的なシステム構成情報(143-2)のうち、相手のマシンの情報が最新であるとは限らない。そのため、構成制御を2段階に分けることが可能である。
図１１に示す構成制御処理を構成制御計画案とし、構成制御受け入れを行う物理マシン200に送信する。物理マシン200内の仮想化構成制御部252が受理するメッセージを、物理マシン100の仮想加工性制御部152に送信することで構成制御計画案が最終決定することも可能である。【００６５】
また、仮想化構成制御部252が受理しない、もしくは応答しない場合は、構成制御を実施せず処理を継続することも可能である。【００６６】
すなわち、物理マシンは、障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて記憶する障害種別管理記憶部と、障害情報を受信した際、障害種別管理記憶部に記憶された障害依存情報に基づいて障害の影響範囲を特定する障害種別判断部と、構成制御ルールに基づいて、影響範囲に対して制御するように通知し、影響範囲に物理マシンが含まれていた場合、構成制御を実行する仮想化構成制御部を備え、第１の仮想マシンは、影響範囲に第一の仮想マシンが含まれていた場合、通知を受信し、構成制御を実行する第一の仮想側構成制御部を備える。【００６７】
また、第２の仮想マシンを更に備えた場合は、障害情報が物理マシンの障害情報であった場合、障害種別判断部は、第一の仮想マシン及び第二の仮想マシンの障害による影響範囲を特定し、仮想化構成制御部は、第一の仮想マシン及び第二の仮想マシンに、通知をし、第一の仮想マシンの第一の仮想側構成制御部及び、第二の仮想マシンの第二の仮想側構成制御部は、構成制御を実行しても良い。【００６８】
また、物理マシンは、第一の仮想マシン又は第二の仮想マシンのいずれか一つ又は、両方に、制御通知を送信した場合、第一の仮想マシン及び第二の仮想マシンの構成制御のタイムアウトを監視し、タイムアウトを検知したら、物理マシン側構成制御部によって、タイムアウトを検知した仮想マシンの構成制御を実施しても良い。【００６９】
また、更に第３の仮想マシンを備え、物理マシンの障害種別管理記憶部は、第１の仮想マシン及び第２の仮想マシンは、第１の仮想側構成制御部又は、第２の仮想側構成制御部を有する仮想マシンであり、第３の仮想マシンは、構成制御部を有していない仮想マシンである事を更に記憶し、物理マシンは、第１の仮想側構成制御部又は、第２の仮想側構成制御部を有する第１の仮想マシン又は第２の仮想マシンに制御通知をしても良い。【００７０】
また、物理マシンは、第１の仮想マシン又は第２の仮想マシンに制御通知を送信した場合、物理マシンの当該仮想マシンに対する構成制御部を無効にしても良い。【００７１】
また、第１の仮想マシン及び第２の仮想マシンは障害検知部を有し、障害検知部で検知された障害情報を物理マシンの障害種別判断部へ通知し、物理マシンの障害種別判断部は、障害情報から障害の範囲を検知し、仮想化構成制御部は、構成制御を実行しても良い。【００７２】
また、物理マシンを複数備え、物理マシンは、他の物理マシンの状況を取得し、状況が構成制御可能である場合に、仮想化構成制御部は、構成制御を実行しても良い。【００７３】
以上により、本発明によれば、物理マシン用に開発した業務アプリや、システム管理アプリを仮想マシンにおいても稼動させることが可能となる。物理マシン上でしか検知できない障害情報は、障害が影響する仮想マシンを特定したのち影響する仮想マシンにのみ障害を通知する事が可能となる。また、仮想マシン内で検知した障害も物理マシン上で障害が影響する別の仮想マシンが特定され、障害を通知することが可能となる。【００７４】
仮想マシン内にて構成制御を実施する場合は、物理マシン側の当該仮想マシンに対する構成制御を無効化する事を可能とし、これにより障害情報の通知と同期させて仮想マシン内構成制御機能と物理マシン内構成制御機能間で構成制御権限の排他が可能となる。
また、新規仮想マシンの構築では仮想マシン管理を物理マシンに任せる設定も可能となる。このように、個別のポリシーを持った仮想マシンを共存させる事が可能となる。
【符号の説明】
【００７５】
７００  仮想化サーバシステム
１００、２００  物理マシン
３００、４００  ＬＡＮ
１７０、２７０  プロセッサ
１１０，２１０  メモリ
１７１、２７１  ディスクインタフェース
１７２、１７３、２７２、２７３  通信インタフェース
１７４、２７４  通信路
１７５、２７５  記憶媒体
１７６  システム構成情報テーブル
１７７  障害情報管理テーブル
１５０、２５０  仮想環境制御部
１５１、２５１  障害種別判断部
１５２、２５２  仮想化構成制御部
１５３Ａ、１５３Ｂ、２５３Ａ、２５３Ｂ  仮想ＮＩＣ
１５４、２５４  仮想ディスク
１６１、２６２  ディスクインタフェースドライバ
１６２、１６３、２６２、２６３  通信インタフェース
１６０、２６０  物理マシン障害検知部
１３０、２３０  仮想マシン・物理マシン共有用情報インタフェース
１４０、２４０  仮想マシン・物理マシン共有用メモリ区画
１４１、２４１  発生障害情報テーブル
１４２、２４２  障害種別管理テーブル
１４３、２４３  システム構成情報テーブル
１２０、２２０  仮想マシン用論理区画
１２１、２２１  物理マシン
１２２、２２２  仮想デバイスドライバ
１２４、２２４  仮想側構成制御部
１２５、２２５  仮想マシン障害検知部
１２６、２２６  業務アプリ
１４４、２４４  制御命令キュー
５００、６００  監視卓
【図１】
2015072004.tif 000003
【図２】
2015072004.tif 000004
【図３】
2015072004.tif 000005
【図４】
2015072004.tif 000006
【図５】
2015072004.tif 000007
【図６】
2015072004.tif 000008
【図７】
2015072004.tif 000009
【図８】
2015072004.tif 000010
【図９】
2015072004.tif 000011
【図１０】
2015072004.tif 000012
【図１１】
2015072004.tif 000013
【図１２】
2015072004.tif 000014
【図１３】
2015072004.tif 000015
【図１４】
2015072004.tif 000016
【図１５】
2015072004.tif 000017
【図１６】
2015072004.tif 000018
【図１７】
2015072004.tif 000019
【図１８】
2015072004.tif 000020
【図１９】
2015072004.tif 000021
【図２０】
2015072004.tif 000022
【図２１】
2015072004.tif 000023
【図２２】
2015072004.tif 000024
【図２３】
2015072004.tif 000025
【図２４】
2015072004.tif 000026
【図２５】
2015072004.tif 000027
【手続補正書】
【提出日】平成28年4月8日(2016.4.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
物理マシンと第一の仮想マシンと、を備えた計算機システムであって、
前記物理マシンは、
障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて記憶する障害種別管理記憶部と、
前記障害情報を受信した際、前記障害種別管理記憶部に記憶された前記障害依存情報に基づいて障害の影響範囲を特定する障害種別判断部と、を備え、
前記構成制御ルールに基づいて、前記影響範囲に対して制御するように通知し、
前記影響範囲に物理マシンが含まれていた場合、構成制御を実行する仮想化構成制御部を備え、
前記第一の仮想マシンは、前記影響範囲に前記第一の仮想マシンが含まれていた場合、前記通知を受信し、構成制御を実行する第一の仮想側構成制御部を備えることを特徴とする計算機システム。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項２
【補正方法】変更
【補正の内容】
【請求項２】
請求項１に記載の計算機システムであって、
第二の仮想マシンを更に備え、
前記第二の仮想マシンは、前記影響範囲に前記第二の仮想マシンが含まれていた場合、前記通知を受信し、構成制御を実行する第二の仮想側構成制御部を備え、
前記障害情報が前記物理マシンの障害情報であった場合、
前記障害種別判断部は、前記第一の仮想マシン及び前記第二の仮想マシンの前記障害による影響範囲を特定し、
前記仮想化構成制御部は、前記第一の仮想マシン及び前記第二の仮想マシンに、前記通知をし、
前記第一の仮想マシンの前記第一の仮想側構成制御部及び、前記第二の仮想マシンの前記第二の仮想側構成制御部は、構成制御を実行する計算機システム。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項３
【補正方法】変更
【補正の内容】
【請求項３】
請求項２に記載の計算機システムであって、
前記物理マシンは、
前記第一の仮想マシン又は前記第二の仮想マシンのいずれか一つ又は、両方に、制御通知を送信した場合、前記第一の仮想マシン及び前記第二の仮想マシンの構成制御のタイムアウトを監視し、前記タイムアウトを検知したら、前記仮想化構成制御部によって、前記タイムアウトを検知した仮想マシンの構成制御を実施することを特徴とする計算機システム。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項６
【補正方法】変更
【補正の内容】
【請求項６】
請求項２に記載の計算機システムであって、
前記第一の仮想マシン及び前記第二の仮想マシンは障害検知部を有し、
前記障害検知部で検知された障害情報を前記物理マシンの前記障害種別判断部へ通知し、
前記物理マシンの前記障害種別判断部は、
前記障害情報から障害の範囲を検知し、
前記仮想化構成制御部は、
構成制御を実行することを特徴とする計算機システム。
【手続補正５】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項７
【補正方法】変更
【補正の内容】
【請求項７】
請求項６に記載の計算機システムであって、
物理マシンを複数備え、
前記物理マシンは、他の物理マシンの状況を取得し、
前記状況が構成制御可能である場合に、
前記仮想化構成制御部は、構成制御を実行することを特徴とする計算機システム。
【手続補正６】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項８
【補正方法】変更
【補正の内容】
【請求項８】
物理マシンは、
障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて予め障害種別管理記憶部に記憶し、
前記障害情報を受信した際、前記障害種別管理記憶部に記憶された前記障害依存情報に基づいて障害の影響範囲を特定し、
前記構成制御ルールに基づいて、前記影響範囲に対して制御するように通知し、
前記影響範囲に前記物理マシンが含まれていた場合、構成制御を実行し、
第一の仮想マシンは、
前記影響範囲に前記第一の仮想マシンが含まれていた場合、前記通知を受信し、構成制御を実行することを特徴とする計算機制御方法。
【手続補正７】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項９
【補正方法】変更
【補正の内容】
【請求項９】
物理マシンと、第一の仮想マシンと、を含む計算機システムを制御する計算機制御プログラムであって、
前記物理マシンは、障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて保持し、
前記計算機制御プログラムは、
前記物理マシンに、
前記物理マシンが前記障害情報を受信した際、前記障害依存情報に基づいて障害の影響範囲を特定させ、
前記構成制御ルールに基づいて、前記影響範囲に対して制御するように通知させ、
前記影響範囲に前記物理マシンが含まれていた場合、構成制御を実行させ、
前記第一の仮想マシンに、
前記影響範囲に前記第一の仮想マシンが含まれていた場合、前記通知を受信させ、構成制御を実行させることを特徴とする計算機制御プログラム。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
【図１】実施例１のシステム構成図。
【図２】システム構成情報テーブル176の例図。
【図３】障害情報管理テーブル177の例図。
【図４】システム構成情報テーブル143を示した図。
【図５】障害種別判断部が作成する障害種別管理テーブル142の例図。
【図６】発生障害情報テーブル141。
【図７】仮想化サーバシステム700の起動を示すシーケンス図。
【図８】仮想環境制御部150の初期化を示すシーケンス図。
【図９】障害種別判断部151の起動を示すシーケンス図。
【図１０】仮想化構成制御部152の起動を示すシーケンス図。
【図１１】障害時における仮想側構成制御部124A1、および物理マシン側仮想化構成制御部152による権限連携処理フローチャート図。
【図１２】障害種別判断部151による障害部位解析および、仮想マシンへの障害依存解析処理について示したシーケンス図。
【図１３】仮想マシンへの障害通知要否判断および、仮想マシンへの障害通知処理を示したシーケンス図。
【図１４】実施例２のシステム構成図。
【図１５】実施例２の障害情報管理テーブル177。
【図１６】実施例２の障害種別管理テーブル142。
【図１７】実施例２の障害種別管理テーブル142-2。
【図１８】実施例２の発生障害情報テーブル141。
【図１９】物理マシン側仮想化構成制御部152による権限連携フローチャート図。
【図２０】仮想マシンで検出された障害に対する、障害種別判断部151による障害部位解析および、仮想マシンへの障害依存解析の例を示すシーケンス図。
【図２１】別仮想マシンへの障害情報の通知方式であるフローチャート図。
【図２２】実施例３のシステム構成図。
【図２３】制御命令キューの例図（１）。
【図２４】制御命令キューの例図（２）。
【図２５】システム構成情報テーブル176の例図。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
仮想マシン・物理マシン共有用メモリ区画140は、発生障害情報テーブル141、障害種別管理テーブル142、システム構成情報テーブル143が含まれる。
メモリ110には、仮想マシン用論理区画120A1があり、物理マシン200のメモリ210に存在する、仮想マシン用論理区画220A2と対を成した多重系を構成する。なお、多重系とは、同一の目的の処理を実行する機能を複数個持つことをいう。例えば、物理マシンなら物理マシンが２つ存在することをいう。多重系を構成する仮想マシンを稼動させる物理マシン100は、物理マシン200と多重系を構成している。
仮想マシン用論理区画120A1は、仮想デバイスドライバ122A1、仮想マシン121A1、仮想側構成制御部124A1、仮想マシン障害検知部125A1、業務アプリ126A1を有する。
また、仮想マシン用論理区画120B1は業務アプリのみを搭載した一般的な仮想マシンや、他社アーキテクチャを採用した仮想マシンの例として示している。仮想マシン用論理区画120B1は、仮想デバイスドライバ122B1、仮想マシン121B1、業務アプリ126B1を有する。
仮想マシン用論理区画120B1は、物理マシン200のメモリ210に存在する、仮想マシン用論理区画220A2と対を成した多重系とすることもできる。
物理マシン100のメモリ110には一般的に、物理マシン用のオペレーティングシステムを有している場合もあるし、ハイパーバイザーやマイクロカーネルが存在する場合もある。
メモリ110には、ディスクインタフェースドライバ161、通信インタフェースドライバ162や163、物理マシン障害検知部160、仮想マシン・物理マシン共有用情報インタフェース130、仮想マシン・物理マシン共有用メモリ区画140、発生障害情報テーブル141、障害種別管理テーブル142、システム構成情報テーブル143、仮想環境制御部150、障害種別判断部151、仮想化構成制御部152、などの各処理はプロセッサ170で実行する事により実現できるが、これらは各処理を行なう処理部として集積回路化するなどしてハードウェアで実現する事ができる。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
仮想環境制御部150は、記憶媒体175より、システム構成情報テーブル176のテーブル176-6より初期値を読み込み、仮想マシン・物理マシン共有用情報インタフェース130、及び仮想マシン・物理マシン共有用メモリ区画140を起動する（S150-02）。
仮想環境制御部150はシステム構成情報テーブル176の情報をシステム構成情報テーブル143内の143-1に展開する（S150-03）。その後、仮想環境制御部150は障害種別判断部151を起動する（S151-01）本ステップの詳細は図９にて説明する。仮想環境制御部150は仮想化構成制御部152を起動する（S152-01）本ステップの詳細は図１０にて説明する。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００３５
【補正方法】変更
【補正の内容】
【００３５】
仮想化構成制御部152は、物理マシン・仮想マシン状態管理用テーブル143-2を生成し、物理、仮想マシンの多重系ペアの情報収集を開始する（S152-02）。仮想化構成制御部152は、仮想マシン121A1の起動に必要なパラメータをシステム構成情報テーブル143-1より取得する（S152-03）。その後、仮想化構成制御部152は、仮想環境制御部150に仮想マシン121A1の起動を指示する（S152-04）。仮想環境制御部150は、143-1内のテーブル176-9より起動時誤認識防止用監視タイムアウトを読み込み、仮想マシン121A1の監視を開始する（S152-05）。仮想環境制御部150は、システム構成情報テーブル143の情報を基に、仮想デバイスドライバ122A1を仮想マシン用論理区画120A1に展開し、仮想マシンが稼働に必要な初期化を実施する（S152-06）。仮想環境制御部150は、システム構成情報テーブル143の情報を基に、ディスクインタフェース171とディスクインタフェースドライバ161、仮想ディスク154と、仮想デバイスドライバ122A1を関連づける（S152-07）。
仮想環境制御部150は、システム構成情報テーブル143の情報を基に、通信インタフェース172と通信インタフェースドライバ162、仮想NIC153Aと仮想デバイスドライバ122A1を関連づける（S152-08）。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
仮想環境制御部150は、仮想マシン121A1を起動する（S152-09）。仮想マシン121A1内、仮想側構成制御部124A1、仮想マシン障害検知部125A1、業務アプリ126A1が順次立ち上がる（S152-10）。仮想側構成制御部124A1が、物理マシン側の仮想化構成制御部152の問い合わせに応答し始める（S152-1１）。仮想環境制御部150は、143-1内のテーブル176-9より常時監視タイムアウト及び常時監視周期を読み込み、仮想マシン121A1の監視を開始し、システム構成情報テーブル143-2の周期、及びイベントでの更新を開始する（S152-1２）。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
物理マシン障害検知部160より、通信インタフェース172の障害が障害種別判断部に通知される（S150-10）。障害種別判断部による障害部位解析および、仮想マシンへの障害依存を解析（S151-10）本ステップの詳細は図１２にて説明する。仮想マシンへの障害通知要否判断および、仮想マシンへの障害を通知（S151-20）本ステップの詳細は図１３にて説明する。障害種別判断部151は、仮想マシンに障害を通知するために発生障害情報テーブル141に登録した情報と同様の情報を、仮想化構成制御部152へ通知する。（S150-11）。仮想化構成制御部152は、構成制御権限が仮想マシン121A1に委譲されたと判断し、仮想側構成制御権限移譲タイムアウト監視を実施（S150-12）。仮想化構成制御部152による、仮想側構成制御部応答確認を実施する（S150-13）。このとき、障害受理通知や物理側での仮想マシン監視の無効化、主従系モード変更要求などがあれば、仮想マシン121A1に対する、物理マシン側の仮想化構成制御部権限の無効化継続する(S150-15)。この処理により、仮想マシン側で業務のデータの引継ぎ処理を実施した後構成制御を実施する事や、仮想マシン監視プロセスや業務プロセス等を停止して障害発生時の状況情報の保存処理を仮想マシン側の判断にて実施する事が可能となる。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
障害発生時は、必ずしも仮想側構成制御部124A1にて構成制御が実施できるとは限らない。仮想側構成制御が不可能状態について、仮想側構成制御権限委譲タイムアウトを迎えた事により検知する例を示す。仮想側構成制御権限委譲タイムアウトに達した場合（S150-1NO）、仮想化構成制御部152は、仮想マシン121A1が構成制御権を行使できる状態にないとみなし、物理マシン側の仮想化構成制御部の権限を有効化する（S150-17）。仮想化構成制御部152は、タイムアウトを迎えた障害情報を元に、障害種別管理テーブル142-2の構成制御ルールを参照し、構成制御を実施する（S150-18）。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
実施例２では、仮想マシンで検知した障害を物理マシンや他の仮想マシンと共有する方法を説明する。信頼性を向上させるために、稼動部分が含まれるディスクなどを極力使用しないようにプログラムされることが多く、その反面障害検知が遅れる場合がある。ディスク障害などは、読み書きを実施したプログラムが最初に検知するため、この情報を物理マシンや他の仮想マシンと共有するディスク障害の例を示す。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００４７
【補正方法】変更
【補正の内容】
【００４７】
−−−システム構成−−−
図１４は、図１の構成に加え、仮想マシン121B1も仮想化構成制御部124B1を有する。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００５０
【補正方法】変更
【補正の内容】
【００５０】
−−−発生障害情報テーブル−−−
図１８は発生障害情報テーブル141の実施例２における情報である。
一行目が仮想マシン121A1側の仮想側構成制御部124A1から、障害種別判断部151への障害通知例であり、障害識別子は仮想マシン内で識別できるE-Bが設定されている。
二行目は、障害種別判断部151が、142-1bを参照して物理マシンでの障害に対応付け、他仮想マシン121B1の仮想マシン障害検知部125B1への障害通知例である。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】００６１
【補正方法】変更
【補正の内容】
【００６１】
本機能により、仮想マシン121A1から221A2への構成制御と、物理マシン200への構成制御は調停され、監視卓600からの物理マシン200の停止命令は拒絶される。
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】００６４
【補正方法】変更
【補正の内容】
【００６４】
実施例１ないし３における、物理マシンは100と物理マシン200、仮想マシン121A１と仮想マシン220A1、仮想マシン121B1と仮想マシン220B1は物理的に離れているため、自マシン内に存在する動的なシステム構成情報(143-2)のうち、相手のマシンの情報が最新であるとは限らない。そのため、構成制御を2段階に分けることが可能である。
図１１に示す構成制御処理を構成制御計画案とし、構成制御受け入れを行う物理マシン200に送信する。物理マシン200内の仮想化構成制御部252が受理するメッセージを、物理マシン100の仮想化構成制御部152に送信することで構成制御計画案が最終決定することも可能である。
【手続補正２０】
【補正対象書類名】明細書
【補正対象項目名】００６６
【補正方法】変更
【補正の内容】
【００６６】
すなわち、物理マシンは、障害情報と、障害が影響する範囲である障害依存情報と、構成制御ルールを対応づけて記憶する障害種別管理記憶部と、障害情報を受信した際、障害種別管理記憶部に記憶された障害依存情報に基づいて障害の影響範囲を特定する障害種別判断部と、構成制御ルールに基づいて、影響範囲に対して制御するように通知し、影響範囲に物理マシンが含まれていた場合、構成制御を実行する仮想化構成制御部を備え、第一の仮想マシンは、影響範囲に第一の仮想マシンが含まれていた場合、通知を受信し、構成制御を実行する第一の仮想側構成制御部を備える。
【手続補正２１】
【補正対象書類名】明細書
【補正対象項目名】００６７
【補正方法】変更
【補正の内容】
【００６７】
また、第二の仮想マシンを更に備えた場合は、障害情報が物理マシンの障害情報であった場合、障害種別判断部は、第一の仮想マシン及び第二の仮想マシンの障害による影響範囲を特定し、仮想化構成制御部は、第一の仮想マシン及び第二の仮想マシンに、通知をし、第一の仮想マシンの第一の仮想側構成制御部及び、第二の仮想マシンの第二の仮想側構成制御部は、構成制御を実行しても良い。
【手続補正２２】
【補正対象書類名】明細書
【補正対象項目名】００６９
【補正方法】変更
【補正の内容】
【００６９】
また、更に第三の仮想マシンを備え、物理マシンの障害種別管理記憶部は、第１の仮想マシン及び第二の仮想マシンは、第一の仮想側構成制御部又は、第二の仮想側構成制御部を有する仮想マシンであり、第三の仮想マシンは、構成制御部を有していない仮想マシンである事を更に記憶し、物理マシンは、第一の仮想側構成制御部又は、第二の仮想側構成制御部を有する第一の仮想マシン又は第二の仮想マシンに制御通知をしても良い。
【手続補正２３】
【補正対象書類名】明細書
【補正対象項目名】００７０
【補正方法】変更
【補正の内容】
【００７０】
また、物理マシンは、第一の仮想マシン又は第二の仮想マシンに制御通知を送信した場合、物理マシンの当該仮想マシンに対する構成制御部を無効にしても良い。
【手続補正２４】
【補正対象書類名】明細書
【補正対象項目名】００７１
【補正方法】変更
【補正の内容】
【００７１】
また、第一の仮想マシン及び第二の仮想マシンは障害検知部を有し、障害検知部で検知された障害情報を物理マシンの障害種別判断部へ通知し、物理マシンの障害種別判断部は、障害情報から障害の範囲を検知し、仮想化構成制御部は、構成制御を実行しても良い。
【国際調査報告】
2015072004.tif 000028
2015072004.tif 000029
2015072004.tif 000030
2015072004.tif 000031