(57)【要約】【課題】ホストＯＳがゲストＯＳのシステム情報を採取することができる仮想計算機システムを提供する。【解決手段】ホスト仮想計算機１が、ゲスト仮想計算機１についてのシステム情報を退避する退避位置であって、ホスト仮想計算機１が使用するログ部３２における退避位置を予め定めるゲスト格納定義１１２を備える。仮想計算機モニタ２が、ゲスト仮想計算機１を監視して、ゲスト仮想計算機１に発生した障害を検出するパニック監視管理部２１と、パニック監視管理部２１によりゲスト仮想計算機１における障害が検出された場合、ゲスト格納定義１１２に基づいて、退避位置からシステム情報を採取するログ採取部２２とを備える。【選択図】図２
2010086181.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと記憶装置とを含むハードウェアと、各々が前記ＣＰＵ上で動作するプログラムからなる複数の仮想計算機と、前記ＣＰＵ上で動作し前記複数の仮想計算機の制御を行う仮想計算機モニタとを備える仮想計算機システムであって、
前記複数の仮想計算機が、当該仮想計算機システムを制御するホスト仮想計算機と、アプリケーションプログラムを実行するゲスト仮想計算機とを備え、
前記ホスト仮想計算機が、前記ゲスト仮想計算機についてのシステム情報を退避する退避位置であって、前記ホスト仮想計算機が使用する前記記憶装置における退避位置を予め定めるシステム情報退避情報を備え、
前記仮想計算機モニタが、前記ゲスト仮想計算機を監視して、前記ゲスト仮想計算機に発生した障害を検出する監視手段と、前記監視手段により前記ゲスト仮想計算機における障害が検出された場合、前記システム情報退避情報に基づいて、前記退避位置から前記システム情報を採取する採取手段とを備える
ことを特徴とする仮想計算機システム。
【請求項２】
前記ホスト仮想計算機が、前記システム情報退避情報とリンクされ、前記ゲスト仮想計算機の動作環境を定義する環境定義情報を備え、
前記採取手段が、前記環境定義情報に基づいて、前記環境定義情報にリンクされたシステム情報退避情報を参照する
ことを特徴とする請求項１記載の仮想計算機システム。
【請求項３】
前記システム情報退避情報が、更に、前記ゲスト仮想計算機についてのシステム情報を格納する格納位置であって、前記ゲスト仮想計算機が使用する前記記憶装置における格納位置を含む
ことを特徴とする請求項１記載の仮想計算機システム。
【請求項４】
前記システム情報退避情報が、更に、前記ゲスト仮想計算機についてのメモリダンプを取得するか否かについての指示情報を含み、
前記採取手段が、前記システム情報退避情報に基づいて、前記指示情報を実行した後に、前記システム情報を採取する
ことを特徴とする請求項１記載の仮想計算機システム。
【請求項５】
ＣＰＵと記憶装置とを含むハードウェアと、各々が前記ＣＰＵ上で動作するプログラムからなる複数の仮想計算機と、前記ＣＰＵ上で動作し前記複数の仮想計算機の制御を行う仮想計算機モニタとを備え、前記複数の仮想計算機が、当該仮想計算機システムを制御するホスト仮想計算機と、アプリケーションプログラムを実行するゲスト仮想計算機とを備える仮想計算機システムの管理方法であって、
前記ホスト仮想計算機が、前記ゲスト仮想計算機についてのシステム情報を退避する退避位置であって、前記ホスト仮想計算機が使用する前記記憶装置における退避位置を予め定めるシステム情報退避情報を備える定義ステップと、
前記仮想計算機モニタが、前記ゲスト仮想計算機を監視して、前記ゲスト仮想計算機に発生した障害を検出する監視ステップと、
前記仮想計算機モニタが、前記監視ステップにおいて前記ゲスト仮想計算機における障害が検出された場合、前記システム情報退避情報に基づいて、前記退避位置から前記システム情報を採取する採取ステップとを備える
ことを特徴とする仮想計算機システムの管理方法。
【請求項６】
ＣＰＵと記憶装置とを含むハードウェアと、各々が前記ＣＰＵ上で動作するプログラムからなる複数の仮想計算機と、前記ＣＰＵ上で動作し前記複数の仮想計算機の制御を行う仮想計算機モニタとを備え、前記複数の仮想計算機が、当該仮想計算機システムを制御するホスト仮想計算機と、アプリケーションプログラムを実行するゲスト仮想計算機とを備える仮想計算機システムの管理プログラムであって、
前記仮想計算機システムであるコンピュータに、
前記ホスト仮想計算機が、前記ゲスト仮想計算機についてのシステム情報を退避する退避位置であって、前記ホスト仮想計算機が使用する前記記憶装置における退避位置を予め定めるシステム情報退避情報を備える定義ステップと、
前記仮想計算機モニタが、前記ゲスト仮想計算機を監視して、前記ゲスト仮想計算機に発生した障害を検出する監視ステップと、
前記仮想計算機モニタが、前記監視ステップにおいて前記ゲスト仮想計算機における障害が検出された場合、前記システム情報退避情報に基づいて、前記退避位置から前記システム情報を採取する採取ステップとを実行させる
ことを特徴とする仮想計算機システムの管理プログラム。
【請求項７】
ＣＰＵと記憶装置とを含むハードウェアと、各々が前記ＣＰＵ上で動作するプログラムからなる複数の仮想計算機と、前記ＣＰＵ上で動作し前記複数の仮想計算機の制御を行う仮想計算機モニタとを備え、前記複数の仮想計算機が、当該仮想計算機システムを制御するホスト仮想計算機と、アプリケーションプログラムを実行するゲスト仮想計算機とを備える仮想計算機システムの管理プログラムを記録するコンピュータ読み取り可能な記録媒体であって、
前記管理プログラムは、前記仮想計算機システムであるコンピュータに、
前記ホスト仮想計算機が、前記ゲスト仮想計算機についてのシステム情報を退避する退避位置であって、前記ホスト仮想計算機が使用する前記記憶装置における退避位置を予め定めるシステム情報退避情報を備える定義ステップと、
前記仮想計算機モニタが、前記ゲスト仮想計算機を監視して、前記ゲスト仮想計算機に発生した障害を検出する監視ステップと、
前記仮想計算機モニタが、前記監視ステップにおいて前記ゲスト仮想計算機における障害が検出された場合、前記システム情報退避情報に基づいて、前記退避位置から前記システム情報を採取する採取ステップとを実行させる
ことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想計算機システム及びその管理方法、プログラム並びに記録媒体に関し、特に、ホストＯＳがゲストＯＳのシステム情報を採取することができる仮想計算機システム及びその管理方法、プログラム並びに記録媒体に関する。
【背景技術】
【０００２】
仮想計算機システムにおいては、１台の実計算機システム（物理マシン）で仮想計算機モニタ（又はホストＯＳ（オペレーティングシステム））の制御の下で、複数の仮想計算機（ＶＭ：Virtual Machine）が動作する。そして、仮想計算機であるゲストＯＳ上で、各種のアプリケーションが動作する。
【０００３】
このような仮想計算機システムにおいて、ゲストＯＳで、致命的なエラーが発生して処理が停止する等の障害（以下、パニックという）が発生した場合、メモリの内容とログ情報とを取得して、当該障害の原因が調査される。
【０００４】
なお、仮想計算機システムにおいて、障害が発生したゲストＯＳが使用するメモリ状態を含め、同一のゲストＯＳをコピーして、別の仮想計算機実行環境を保存して、より効率的なデバッグ環境を実現する方法が知られている。
【特許文献１】特開平６−５２１３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
図７〜図８は、本発明の背景となる仮想計算機システムの説明図である。特に、図７は、仮想計算機システムの構成の一例を示す。図８（Ａ）は、図７の仮想計算機システムにおけるゲスト環境定義５１１１の一例を示す。図８（Ｂ）は、図７の仮想計算機システムにおけるシステム情報（システムログ）の収集処理フローを示す。
【０００６】
ステップＳ４１において、ゲストＯＳ５１２にパニックが発生すると、当該ゲストＯＳ５１２は停止する。パニック監視管理部５２１は、ステップＳ４２において、メモリダンプを取得する。即ち、パニック監視管理部５２１は、パニック発生を検出した後（Ｔ２０）、ゲストＯＳ５１２のメモリ部５１２１からその内容を読取り（Ｔ２１）、例えばホストＯＳ５１１における設定に従って、当該読み取った内容を実ハードウェア５３上のダンプ部５３１に保存する（Ｔ２２）。
【０００７】
この後、ステップＳ４３において、パニック監視管理部５２１は、パニックが発生した対象のゲストＯＳ５１２をリブートする（Ｔ２３）。このリブートの後、ステップＳ４４において、利用者は、ゲストＯＳ５１２のシステム情報（ログ等）を採取するため、端末５４Ｂを介して、ゲストＯＳ５１２にログインする（Ｔ２４）。このログインの後、ステップＳ４５において、例えば利用者の指示に従って、ログ採取操作部５１２３は、システム情報をログ部５１２２から採取して（Ｔ２５）、ダンプ及びログ解析環境部５２３に退避する。ゲスト環境定義５１１１は、ホストＯＳ５１１が備え、例えば、当該ゲストＯＳ５１２のシステム情報が格納されている格納位置（disk_1=physical_disk ..）を予め定める。
【０００８】
開示の仮想計算機によれば、以上のように、ゲストＯＳ５１２でパニックが発生した場合、その障害原因を解析するため、メモリダンプとゲストＯＳ５１２のシステム情報の採取が必要となる。このため、ゲストＯＳ５１２のメモリ部５１２１のメモリダンプを実行した後、ゲストＯＳ５１２をリブートし、利用者がゲストＯＳ５１２にログインして、利用者がゲストＯＳ５１２のシステム情報を採取する必要がある。従って、システム情報の採取までに時間を要し、システム情報を速やかに採取できずに、システム情報の中の障害調査に必要な情報が失われる場合がある。この結果、障害発生の原因を解明できないか、又は、当該解明のために多大な労力が必要となる。
【課題を解決するための手段】
【０００９】
本発明の一実施態様である仮想計算機システムは、ＣＰＵと記憶装置とを含むハードウェアと、各々がＣＰＵ上で動作するプログラムからなる複数の仮想計算機と、ＣＰＵ上で動作し複数の仮想計算機の制御を行う仮想計算機モニタとを備えるとともに、複数の仮想計算機が、当該仮想計算機システムを制御するホスト仮想計算機と、アプリケーションプログラムを実行するゲスト仮想計算機とを備え、ホスト仮想計算機が、システム情報退避情報を備え、システム情報退避情報は、ゲスト仮想計算機についてのシステム情報を退避する退避位置であって、ホスト仮想計算機が使用する記憶装置における退避位置を予め定めるとともに、仮想計算機モニタが、監視手段と、採取手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明の一実施態様である仮想計算機システム及びその管理方法によれば、ホスト仮想計算機がシステム情報退避情報を備える。従って、ゲスト仮想計算機における障害が検出された場合、ホスト仮想計算機は、システム情報退避情報に基づいて、退避位置から、ゲスト仮想計算機のシステム情報（システムログ）を採取することができる。
【００１１】
従って、ゲスト仮想計算機のシステム情報を得るために、ゲスト仮想計算機にログインする必要が無く、また、利用者がゲスト仮想計算機のシステム情報を採取する必要が無い。この結果、システム情報の採取までの時間を短縮して速やかに採取することができ、システム情報の中の障害調査に必要な情報が失われることを防止することができる。この結果、障害発生の原因を確実に解明することができ、当該解明のための労力を著しく軽減することができる。
【００１２】
本発明の一実施態様である仮想計算機システムの管理プログラム及び記録媒体によれば、当該管理プログラムにより、前述した構成の仮想計算機システム及びその管理方法を実現することができる。
【発明を実施するための最良の形態】
【００１３】
図１は、この仮想計算機システムの構成の一例を示す図である。仮想計算機システムは、仮想計算機（ＶＭ：Virtual Machine）１、仮想計算機モニタ（ＶＭＭ：Virtual Machine Monitor又はHypervisor）２、ハードウェア３を備える。ハードウェア３上で仮想計算機モニタ２及び仮想計算機１が動作する。ハードウェア３は、物理（又は実）ＣＰＵと、物理（又は実）記憶装置とを含む。記憶装置は、例えば、主記憶装置（主メモリ）と、例えば磁気ディスク装置のような周辺記憶装置とを含む。
【００１４】
仮想計算機システムは、複数の仮想計算機１を備える。即ち、ホストＯＳ（オペレーティングシステム即ち制御プログラム）１１、ゲストＯＳ１２、ドライバＯＳ１３が、各々、仮想計算機１である。各々の仮想計算機１は、各々のＯＳ１１〜１３がハードウェア３の１個の物理ＣＰＵ（図示省略）の制御権を獲得して当該物理ＣＰＵ上で実行されることにより実現される。即ち、仮想計算機１は、ＣＰＵ上で動作するプログラムからなる。仮想計算機モニタ２も同様にして実現される。
【００１５】
仮想計算機モニタ２は、この仮想計算機システムの全体を制御する。即ち、仮想計算機モニタ２は、複数の仮想計算機１の制御を行う。具体的には、仮想計算機モニタ２は、複数の仮想計算機１、即ち、ＯＳ１１〜１３のディスパッチ（物理ＣＰＵの制御権割当て）、ＯＳ１１〜１３が実行する特権命令のエミュレーション、物理ＣＰＵ等のハードウェア３の制御等を行う。
【００１６】
ホストＯＳ１１は、１個設けられ、仮想計算機（ドメイン）として動作し、仮想計算機モニタ２と共に、仮想計算機システム全体の管理を行う（制御する）。ホストＯＳ１１は、仮想計算機システムのブート時に起動され、ゲストＯＳ１２やドライバＯＳ１３の制御（起動及び停止等を含む全ての制御）を行う。ホストＯＳ１１は、同時に、ドライバＯＳ１３としても動作可能である。
【００１７】
ホストＯＳ１１は、表示装置等のコンソール又は端末４（４Ａ）を備える。ゲストＯＳ１２は、端末４Ｂを備える。利用者は、端末４Ｂを介して、ゲストＯＳ１２にログインすることができる。
【００１８】
ドライバＯＳ１３は、物理（又は実）入出力装置（Ｉ／Ｏ装置）５、６を制御するＯＳである。物理装置Ｉ／Ｏ装置５、６は、複数の種類、例えば、磁気ディスク装置５、ネットワーク６等からなる。ドライバＯＳ１３は、複数の種類の物理Ｉ／Ｏ装置５、６毎に、設けられる。物理Ｉ／Ｏ装置５、６の制御はドライバＯＳ１３が実行する。ドライバＯＳ１３は、ホストＯＳ１１上やゲストＯＳ１２上でも動作可能である。ドライバＯＳ１３がゲストＯＳ１２上で動作する場合、そのゲストＯＳ１２は、見かけ上ドライバＯＳ１３となる。
【００１９】
ゲストＯＳ１２は、物理Ｉ／Ｏ装置５、６を持たないＯＳである。ゲストＯＳ１２は、通常の（いわゆる）ＯＳと考えてよい。例えば、アプリケーションプログラムは、いずれかのゲストＯＳ１２上で動作する。即ち、ゲストＯＳ１２は、アプリケーションプログラムを実行する。ゲストＯＳ１２は、ドライバＯＳ１３に対してＩ／Ｏ命令の実行を依頼することにより、そのＩ／Ｏ命令の実行が可能となる。
【００２０】
図２は、主として、図１の仮想計算機システムの仮想計算機マネージャ７及びハードウェアの３の構成の一例を示す図である。なお、図２においては、仮想計算機１として、１つのゲストＯＳ１２のみを示す。また、以下においては、仮想計算機１がゲストＯＳ１２である場合について説明するが、仮想計算機１が他のＯＳ１１及び１３であっても同様である。なお、ホストＯＳ１１と仮想計算機モニタ２とにより、仮想計算機マネージャ７が構成される。
【００２１】
ホストＯＳ１１は、ゲストＯＳ１２毎に、当該ゲストＯＳ１２のゲスト環境定義１１１及びゲストシステム情報格納場所対応定義（以下、ゲスト格納定義）１１２を備える。ゲスト環境定義１１１及びゲスト格納定義１１２については、図３を参照して後述する。
【００２２】
ゲストＯＳ１２は、メモリ部１２１、ログ部１２２を備え、ハードウェア３は、物理ＣＰＵやダンプ部３１、ログ部３２（例えば、磁気ディスク装置）を備える。
【００２３】
仮想計算機モニタ２は、パニック監視管理部２１、ログ採取部２２、ダンプ及びログ解析環境部２３を備える。
【００２４】
パニック監視管理部２１は、ゲストＯＳ１２を監視して、ゲストＯＳ１２に発生した障害を検出する監視手段である。具体的には、パニック監視管理部２１は、ゲストＯＳ１２にパニックが発生したか否かを監視し、パニックが発生した場合、ゲストＯＳ１２のメモリ部１２１のメモリイメージをハードウェア３のダンプ部３１にコピーし、保存する。
【００２５】
ログ採取部２２は、ゲストＯＳ１２における障害が検出された場合、ゲスト格納定義１１２に基づいて、退避位置からシステム情報を採取する採取手段である。この採取処理において、ログ採取部２２は、ゲスト格納定義１１２に基づいて、ゲスト格納定義１１２の指示情報を実行した後に、システム情報を採取する。この際、ログ採取部２２は、ゲスト環境定義１１１を参照し、これに基づいて、当該ゲスト環境定義１１１にリンクされたゲスト格納定義１１２を参照する。そして、ログ採取部２２は、このゲスト格納定義１１２の退避位置に基づいて、当該退避位置から、当該ゲストＯＳ１２のシステム情報（システムログ）を読み出す。
【００２６】
ダンプ及びログ解析環境部２３は、ダンプ部３１に保管されたメモリ部１２１の内容と、ログ部３２に保管されたシステム情報（システムログ）の解析を行う。
【００２７】
ゲストＯＳ１２において、メモリ部１２１は、ゲストＯＳ１２のメモリイメージを記憶しているメモリ領域である。ログ部１２２は、ゲストＯＳ１２のシステム情報（ログ、設定ファイル等）を記憶するメモリ領域である。
【００２８】
ハードウェア３において、ダンプ部３１、ログ部３２は、例えば、磁気ディスク等の外部記憶装置である。仮想計算機マネージャ７は、ゲストＯＳ１２のメモリ部１２１のメモリイメージをダンプ部３１に保存する。仮想計算機マネージャ７（具体的には、ログ採取部２２）は、ゲストＯＳ１２のログ部１２２のシステム情報を採取し、ハードウェア３のログ部３２に保存する。
【００２９】
図３は、図２の仮想計算機システムにおけるゲスト環境定義１１１及びゲスト格納定義１１２の一例を示す図である。
【００３０】
ゲスト環境定義１１１は、ゲストＯＳ１２の動作環境を定義する環境定義情報である。ゲスト環境定義１１１において、ゲストの名前（guest_name）、物理ＣＰＵの数（cpu_num）、メモリ容量（memory）、ＭＡＣアドレス（mac_address）、複数のディスク（disk_N）が定義される。ゲスト環境定義１１１は、同一のゲストの名前（guest_name）をゲスト格納定義１１２において記述することにより、ゲスト格納定義１１２とリンクされる。
【００３１】
ゲスト格納定義１１２は、システム情報退避情報を含む。ゲスト格納定義１１２は、ゲストＯＳ１２についてのシステム情報を退避する退避位置であって、ホストＯＳ１１が使用する記憶装置における退避位置を予め定める。ゲスト格納定義１１２は、更に、ゲストＯＳ１２についてのシステム情報を格納する格納位置であって、ゲストＯＳ１２が使用する記憶装置における格納位置を含む。ゲスト格納定義１１２は、更に、ゲストＯＳ１２についてのメモリダンプを取得するか否かについての指示情報を含む。
【００３２】
ゲスト格納定義１１２は、ホストＯＳ１１からゲストＯＳ１２のシステム情報（ログ、設定ファイル）を採取するための情報である。システム情報は、例えば、ログ情報、設定ファイル等である。ゲスト格納定義１１２において、“ゲストＯＳｎの定義”、“ゲストＯＳｎの採取種別”が定義される。ここで、ｎは整数である。更に、ゲスト格納定義１１２には、ゲストＯＳｎのシステム情報格納場所として、“ディスクパーティション”、“ディスクパーティション内の番号”、“ディスクパーティション内のディレクトリ”、“ゲストＯＳｎのシステム情報退避場所”が定義される。
【００３３】
“ゲストＯＳｎの定義”には、ゲスト環境定義１１１のguest_namが設定される。“ゲストＯＳｎの採取種別”としては、collection_kindに、“dump”（ゲストＯＳ１２のメモリダンプ）、“sysinfo”（ゲストＯＳ１２のシステム情報の採取の指示情報）が設定される。“dump”は、ゲストＯＳ１２のメモリダンプを指示する情報である。“sysinfo”は、ゲストＯＳ１２のシステム情報の採取を指示する情報である。この設定には、“dump”、“sysinfo”のいずれか１つ、又は、両方を設定することができる。ゲスト格納定義１１２の“ディスクパーティション”（例えば、図３中の“disk1”）は、ゲスト環境定義１１１の“disk_1”に対応する物理ディスク及び論理ディスクを示す。
【００３４】
定義部分１２０には、“ディスクパーティション内のディレクトリ”、“ゲストＯＳｎのシステム情報退避場所”の定義の代わりに、ホストＯＳ１１からゲストＯＳ１２のシステム情報を採取するバッチファイル（コマンド）のパラメータ（“batch_file”）を指定するようにしても良い。
【００３５】
仮想計算機モニタ２は、ホストＯＳ１１のゲスト環境定義１１１、ゲスト格納定義１１２を参照する。なお、ログ採取部２２も、ゲスト環境定義１１１、ゲスト格納定義１１２を参照することができるようにしても良い。従って、パニック監視管理部２１がパニックの発生したゲストＯＳ１２のゲスト名をログ採取部２２に通知することにより、ログ採取部２２が、ゲスト名からゲスト環境定義１１１及びゲスト格納定義１１２を参照することができる。これにより、パニック監視管理部２１が、ゲスト環境定義１１１のゲスト名に対応するゲスト格納定義１１２の情報に基づいて、メモリダンプやシステム情報の採取し、採取した情報の格納場所（システム情報格納場所）を特定することができる。
【００３６】
図４は、図２の構成の仮想計算機システムにおけるパニック発生時の動作概要を示す図である。
【００３７】
ゲストＯＳ１２にパニックが発生すると、当該ゲストＯＳ１２は停止する。一方、パニック監視管理部２１が、ゲストＯＳ１２のパニックの発生を監視している。ゲストＯＳ１２にパニックが発生した場合（Ｔ１）、パニック監視管理部２１は、パニック発生を検出後、ゲストＯＳ１２のメモリ部１２１（メモリイメージ）を読取り（Ｔ２）、ホストＯＳ１１の自動又は手動設定により実ハードウェア３上のダンプ部３１に保存する（Ｔ３）。
【００３８】
この後、パニック監視管理部２１は、パニックが発生した対象のゲストＯＳ１２をリブートし（Ｔ４）、ログ採取部２２に当該ゲストＯＳ１２のログの採取を通知する（Ｔ５）。これに応じて、ログ採取部２２は、システム情報をログ部１２２から採取して（Ｔ６）、ログ部３２に保存する（Ｔ７）。
【００３９】
この後、利用者が、ダンプ及びログ解析環境部２３により、ダンプ部３１、ログ部３２の保存したデータから障害情報を解析する。
【００４０】
図５は、図２の仮想計算機システムにおける調査情報収集の処理フローを示す図である。
【００４１】
図２の仮想計算機システムにおいて、仮想計算機モニタ２に備えられたパニック監視管理部２１が、ゲストＯＳ１２のパニック発生を監視し、パニック発生を捕えることにより、本処理が開始される。又は、利用者が、端末４ＡからホストＯＳ１１にログインし、手動による指示によりメモリダンプ採取操作を開始することにより、本処理が開始される（ステップＳ１１）。図５の例では、ゲストＯＳ１２がメモリダンプ機能を備える場合において、当該メモリダンプ機能によりメモリダンプを行う。この場合、ゲストＯＳ１２内のディスクにメモリの内容が退避されるので、当該メモリダンプもホストＯＳ１１から採取する。
【００４２】
パニックの発生を監視したパニック監視管理部２１が、ゲストＯＳ１２のメモリ部１２１のメモリイメージを、ハードウェア３のダンプ部３１へメモリダンプ取得を実行するか否かを判断する（ステップＳ１２）。具体的には、パニック監視管理部２１がパニックの発生を監視し、パニックの発生を捕えた場合、又は、端末４Ａからの指示によりホストＯＳ１１が、仮想計算機マネージャ７に対し、メモリ部１２１のメモリダンプ取得の要求の通知を送った場合である。即ち、図５の例では、ゲストＯＳ１２のメモリダンプ採取機能を利用して、ホストＯＳ１１からの指示でメモリダンプが採取される。
【００４３】
ここで、ゲストＯＳ１２のメモリダンプには、一般的に、数ＧＢ単位（ゲストＯＳ１２に割当てたメモリサイズ）のディスク容量が必要である。しかし、メモリダンプの採取を選択しない場合、システム情報の採取のみを行うので、数十ＭＢ程度の容量を必要とするのみである。その結果、メモリダンプも採取した場合と比べて、デバック情報（システム情報のみ採取）の採取時間が短縮（数十分を数分程度に短縮）できる。
【００４４】
また、ゲストＯＳ１２のメモリダンプを取得には、一般に、時間（数十分）がかかる。このため、例えば、その間に障害調査用の資料（システム情報）を先に採取して、利用者（障害解析者）に提供できる。従って、仮想計算機システム上で動作する業務の復旧時間をより短縮できる。
【００４５】
ステップＳ１２において、パニック監視管理部２１が、ゲストＯＳ１２に対しメモリダンプ取得の指示を行った場合、ゲストＯＳ１２は、メモリ部１２１のメモリイメージをハードウェア３に備えられたダンプ部３１に保存する（ステップＳ１３）。一方、ステップＳ１２において、パニック監視管理部２１が、メモリダンプ取得を実行しないと判断した場合、ステップＳ１４の処理へ移行する。
【００４６】
次に、パニック監視管理部２１が、ゲストＯＳ１２のログ部１２２のシステム情報（ログ等）を採取するか否か判断する（ステップＳ１４）。ステップＳ１４において、パニック監視管理部２１は、システム情報を採取すると判断した場合、ステップＳ１５の処理へ移行し、採取しないと判断した場合、ステップＳ２２の処理へ移行する。
【００４７】
システム情報を採取する場合、パニック監視管理部２１が、対象のゲストＯＳ１２のシステム情報を採取するため、対象のゲストＯＳ１２に対して一時停止の指示を行う（ステップＳ１５）。この後、パニック監視管理部２１が、ログ採取部２２へゲストＯＳ１２のシステムログを採取するゲスト名等の情報を通知する（ステップＳ１６）。
【００４８】
次に、通知を受けたログ採取部２２が、ゲスト環境定義１１１から対象のゲストＯＳ１２のゲスト格納定義１１２を参照し、システム情報の退避場所を特定する（ステップＳ１７）。ログ採取部２２は、退避場所を特定した後、対象のゲストＯＳ１２のシステム情報格納場所（退避場所：ログ部３２、例えば、ディスク）をマウントする（ステップＳ１８）。
【００４９】
ログ採取部２２は、参照したゲスト格納定義１１２において、バッチファイル（コマンド）の実行が設定されているか否かを判断する（ステップＳ１９）。バッチファイルの実行が設定されている場合、ホストＯＳ１１から対象のゲストＯＳ１２のシステム情報を採取するバッチファイルを実行する（ステップＳ２０）。一方、バッチファイルの実行が設定されていない場合、ログ採取部２２が、ゲストＯＳ１２のログ部１２２にあるシステム情報（ログ、設定ファイル）を指定されたシステム情報格納場所（ログ部３２）へ複写する（ステップＳ２３）。
【００５０】
次に、ログ採取部２２が対象のゲストＯＳのシステム情報格納場所（ログ部３２）をアンマウントする（ステップＳ２１）。この後、パニック監視管理部２１が対象のゲストＯＳ１２を再開する（ステップＳ２２）。
【００５１】
従って、ゲストＯＳ１２のメモリダンプの取得と同時に障害調査に必要なシステム情報を、利用者が介在することなく、採取することができる。このため、システム情報を採取し忘れることを防止し、確実に採取することができる。また、ホストＯＳ１１から直接各ゲストＯＳ１２のシステム情報を採取することができる。このため、ホストＯＳ１１から全てのゲストＯＳ１２のシステム情報を、一括して、又は選択して、採取することができる。
【００５２】
図６は、図２の仮想計算機システムにおけるゲストＯＳ１２のシステム情報格納場所の検索処理フローを示す図である。仮想計算機モニタ２に備えられたログ採取部２２が、パニック監視管理部２１からゲスト名を通知されると、本処理は開始される。
【００５３】
ログ採取部２２が、パニック監視管理部２１から通知されたゲスト名に基づいて、ゲスト環境定義１１１を検索する（ステップＳ３１）。ログ採取部２２は、ゲスト環境定義１１１にゲストＯＳ１２のゲスト環境設定が行われていると判断した場合、次のステップＳ３３へ移行する。一方、ログ採取部２２は、ゲスト環境定義１１１にゲストＯＳ１２のゲスト環境設定が行われていないと判断した場合、本処理フローを終了する。
【００５４】
次に、ステップＳ３３において、ログ採取部２２がゲスト環境定義１１１のゲスト名（guest_nameパラメータ）から対象のゲストＯＳ１２のゲスト格納定義１１２を検索する。ステップＳ３４において、ログ採取部２２は、ゲスト格納定義１１２に対象のゲストＯＳ１２のシステム情報格納場所の定義があると判断した場合、次のステップＳ３５へ処理を移行する。一方、ログ採取部２２は、ゲスト格納定義１１２に対象のゲストＯＳ１２のシステム情報格納場所の定義がないと判断した場合、本処理フローを終了する。
【００５５】
ステップ３６において、ログ採取部２２は、ゲスト格納定義１１２のディスクパーティション（disk_partitionパラメータ）に指定されたディスク（diskN）がゲスト環境定義１１１に存在するか検査する。ログ採取部２２は、検査後、指定されたディスクがゲスト環境定義１１１に存在した場合、処理をステップＳ３７へ移行する。ログ採取部２２は、指定されたディスクがゲスト環境定義１１１に存在しない場合、処理を終了する。
【００５６】
次に、ログ採取部２２は、ゲストＯＳ１２のシステム情報格納情報として、ゲスト格納定義１１２からディスクパーティション内の番号（partition_numパラメータ）の情報を取得する（ステップＳ３７）。
【００５７】
ログ採取部２２は、ゲスト格納定義１１２にバッチファイル（batch_fileパラメータ）が存在するか否か検査する（ステップＳ３８）。バッチファイルが存在する場合、本処理フローは終了する。バッチファイルが存在しない場合、ログ採取部２２は、ゲストＯＳ１２のシステム情報格納場所として、ディスクパーティション内のディレクトリ（directoryパラメータ）、システム情報の退避場所（save_directoryパラメータ）の情報を取得する（ステップＳ３９）。この後、処理を終了する。
【００５８】
なお、ホストＯＳ１１でゲストＯＳ１２の異常を検出した場合、ホストＯＳ１１から手動で障害調査に必要なゲストＯＳ１２のシステム情報を採取及び退避するようにしても良い。即ち、ホストＯＳ１１から、利用者の指示入力に従って（手動で）、ゲストＯＳ１２のシステム情報を採取するようにしても良い。この場合、当該採取時に、ゲストＯＳ１２の動作を一時停止するようにしても良く、又は、ゲストＯＳ１２の動作を再開して採取するようにしても良い。
【００５９】
また、ゲストＯＳ１２が正常動作（動作異常やシステムパニック発生していない状態）している場合においても、ゲストＯＳ１２をリブートせずに、必要なときにシステム情報を採取するようにしても良い。この場合、前述したように、ゲストＯＳ１２のメモリダンプを行わず、ゲストＯＳ１２のシステム情報のみを採取することもできる。これにより、ゲストＯＳ１２のシステム復旧時間を短縮することができ、また、ホストＯＳ１１に殆ど負荷を与えることが無い。従って、他のゲストＯＳ１２の動作への影響も抑えることができる。
【００６０】
また、ネットワークを介する仮想計算機システムの場合、ホストＯＳ１１から各ゲストＯＳ１２のシステム情報を、ネットワークに大きな負荷を与えることなく、採取することができる。
【００６１】
また、ゲストＯＳ１２がメモリダンプ機能を備える場合、当該メモリダンプ機能によりメモリダンプを行うので、ゲストＯＳ１２が起動できない等ゲストＯＳ１２にログインできない状態でも、当該メモリダンプをホストＯＳ１１から採取することができる。
【図面の簡単な説明】
【００６２】
【図１】仮想計算機システムの構成の一例を示す図である。
【図２】仮想計算機マネージャ及びハードウェアの構成の一例を示す図である
【図３】ゲスト環境定義及びゲストシステム情報格納場所対応定義の一例を示す図である。
【図４】パニック発生時の動作概要を示す図である。
【図５】調査情報収集の処理フローを示す図である。
【図６】ゲストＯＳのシステム情報格納場所の検索処理フローを示す図である。
【図７】従来技術の構成の一例を示す図である。
【図８】従来技術のゲスト環境定義及びパニック発生時の調査情報収集の処理フローを示す図である。
【符号の説明】
【００６３】
１    仮想計算機
２    仮想計算機モニタ
３    ハードウェア
４    表示装置
５    磁気ディスク装置
６    ネットワーク
７    仮想計算機マネージャ
１１  ホストＯＳ
１２  ゲストＯＳ
１３  ドライバＯＳ
２１  パニック監視管理部
２２  ログ採取部
２３  ダンプ及びログ解析環境部
３１  ダンプ部
３２、１２２  ログ部
１１１  ゲスト環境定義
１１２  ゲストシステム情報格納場所対応定義
１２１  メモリ部
【図１】
2010086181.tif 000003
【図２】
2010086181.tif 000004
【図３】
2010086181.tif 000005
【図４】
2010086181.tif 000006
【図５】
2010086181.tif 000007
【図６】
2010086181.tif 000008
【図７】
2010086181.tif 000009
【図８】
2010086181.tif 000010