(57)【要約】【課題】本発明は、仮想マシンにおける性能低下を防止し通信ネットワークに障害が発生しても仮想マシンの運用管理が可能な仮想マシン運用管理システムを提供する。【解決手段】  仮想マシン運用管理システム１は、ホスト計算機３上で稼働する１以上の仮想マシン２０を運用管理する。仮想マシン２０が当該仮想マシン２０内で実行されている各プロセス３０の状態などを監視情報として監視する第１の監視手段６を備える。ホスト計算機３が第１の監視手段６と連携して動作し第１の監視手段６の監視情報を分析する第２の監視手段７を備える。【選択図】図１
2010134557.tif 000002
【特許請求の範囲】
【請求項１】
ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムであって、
前記仮想マシンが、当該仮想マシン内で実行されている各プロセスの状態を監視し監視情報として収集する第１の監視手段を備え、
前記ホスト計算機が、前記第１の監視手段と連携して作動し当該第１の監視手段が収集した監視情報を分析し異常の有無を判定する第２の監視手段を備えていることを特徴とした仮想マシン運用管理システム。
【請求項２】
請求項１に記載の仮想マシン運用管理システムにおいて、
前記第１の監視手段は、前記仮想マシンのプロセスの状態を監視し収集する仮想主制御部と、この仮想主制御部で収集された監視情報を記憶するプロセス管理テーブルとを備え、
前記仮想主制御部は、前記プロセス管理テーブルに記憶された前記プロセスの監視情報を前記仮想主制御部に併設された仮想ライブラリを介して前記ホスト計算機へ送り出す監視情報出力制御機能を備えていることを特徴とした仮想マシン運用管理システム。
【請求項３】
請求項２に記載の仮想マシン運用管理システムにおいて、
前記第２の監視手段は、システム全体の動作制御を管理する中核管理制御部と、この中核管理制御部に併設され前記仮想ライブラリを介して前記第１の監視手段から送り込まれる前記仮想マシンのプロセスの状態を記憶する仮想マシン状態通知テーブルとを備えて構成されていることを特徴とした仮想マシン運用管理システム。
【請求項４】
請求項３に記載の仮想マシン運用管理システムにおいて、
前記第１の監視手段の仮想主制御部は、前記仮想マシンのプロセスの状態を定期的に監視し収集する定期的状態監視機能を備えていることを特徴とした仮想マシン運用管理システム。
【請求項５】
請求項３に記載の仮想マシン運用管理システムにおいて、
前記第１の監視手段の仮想主制御部は、前記ホスト計算機側の第２の監視手段から前記仮想ライブラリを介して前記仮想マシンの運用状態の確認要請があった場合に前記監視情報出力制御機能を稼動させる構成としたことを特徴とする仮想マシン運用管理システム。
【請求項６】
請求項５に記載の仮想マシン運用管理システムにおいて、
前記第２の監視手段は、前記ホスト計算機上で稼動する仮想マシンの前記プロセスの状態を前記第１の監視手段の仮想ライブラリを介して前記第１の監視手段に要求する監視情報要求制御機能を備えていることを特徴とする仮想マシン運用管理システム。
【請求項７】
請求項６に記載の仮想マシン運用管理システムにおいて、
前記第２の監視手段は、前記中核管理制御部が監視情報要求制御機能を実行する構成とすると共に、この監視情報要求により前記仮想マシンから送られてくる前記プロセスの状態を前記仮想マシン状態通知テーブルが記憶する構成としたことを特徴とする仮想マシン運用管理システム。
【請求項８】
請求項３乃至請求項６のうちいずれか一項に記載の仮想マシン運用管理システムにおいて、
前記第２の監視手段の中核管理制御部は、
前記第１の監視手段から送り込まれる前記仮想マシンのプロセス情報を確認し且つ分析して当該仮想マシンの動作状態の異常の有無を判定する異常状態判定機能と、前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能とを備えていることを特徴とした仮想マシン運用管理システム。
【請求項９】
請求項３乃至請求項６のうちいずれか一項に記載の仮想マシン運用管理システムにおいて、
前記第１の監視手段の仮想主制御部は、
前記仮想マシンのプロセスにかかる監視情報を前記第２の監視手段側の仮想マシン状態通知テーブルに定期的に送り込んでその格納内容を更新するテーブル更新機能を有し、
前記第２の監視手段の中核管理制御部は、
前記仮想マシン状態通知テーブルの更新内容を定期的に確認する更新内容確認機能と、当該仮想マシン状態通知テーブルの更新がなされていない場合に前記仮想マシンの動作を異常と判定する異常状態判定機能と、前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能とを備えていることを特徴とした仮想マシン運用管理システム。
【請求項１０】
ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理方法であって、
前記仮想マシン内に設定された第１の監視手段が備えている仮想主制御部が前記仮想マシン内で実行されている各プロセスの状態を監視すると共にこれを監視情報として収集し、
次に、ホスト計算機内に設定された第２の監視手段が、前記第１の監視手段と連携して作動し当該第１の監視手段が収集した監視情報を取得し、
続いて、この取得した前記監視情報を前記第２の監視手段が分析すると共に前記仮想マシンの異常の有無を判定することを特徴とした仮想マシン運用管理方法。
【請求項１１】
請求項１０に記載の仮想マシン運用管理方法において、
前記監視情報の収集に際しては、前記第１の監視手段が備えている仮想主制御部が前記仮想マシンのプロセスの状態を監視し収集する構成とし、
次に、この収集された監視情報を前記仮想主制御部が前記第１の監視手段が備えているプロセス管理テーブルに格納制御し、
しかる後、前記プロセス管理テーブルに記憶された前記プロセスの監視情報を、前記仮想主制御部に併設された仮想ライブラリが前記第２の監視手段へ送り出す構成とし、
これにより前記第２の監視手段が前記監視情報を取得するようにしたことを特徴とした仮想マシン運用管理方法。
【請求項１２】
請求項１１に記載の仮想マシン運用管理方法において、
前記仮想マシンのプロセスの状態の監視および監視情報の収集は、前記仮想主制御部により定期的に実行されることを特徴とした仮想マシン運用管理方法。  
【請求項１３】
請求項１１に記載の仮想マシン運用管理方法において、
前記仮想主制御部による前記仮想マシンの運用状態の監視および監視情報の収集動作は、事前に、前記ホスト計算機側の第２の監視手段から前記仮想ライブラリを介して前記仮想マシンの運用状態の確認要請があった場合に実行する構成としたことを特徴とする仮想マシン運用管理方法。
【請求項１４】
請求項１１乃至請求項１３のうちいずれか一項に記載の仮想マシン運用管理方法において、
前記仮想ライブラリを介して前記第１の監視手段から前記第２の監視手段に送り込まれる監視情報を前記中核管理制御部が分析して前記仮想マシンの動作状態の異常有無を判定し、
この判定結果に従って前記中核管理制御部が前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定することを特徴とした仮想マシン運用管理方法。
【請求項１５】
請求項１１又は請求項１２に記載の仮想マシン運用管理方法において、
前記プロセス管理テーブルに記憶された監視情報を前記第２の監視手段に送り込むに際しては、前記仮想主制御部が前記仮想ライブラリを介して前記第２の監視手段側の仮想マシン状態通知テーブルに定期的に送り込んでその格納内容を更新し、
次に、前記第２の監視手段の中核管理制御部が前記仮想マシン状態通知テーブルの更新内容を定期的に確認すると共に当該仮想マシン状態通知テーブルの更新がなされていない場合に前記仮想マシンの動作を異常と判定し、
その後、この判定結果に基づいて前記中核管理制御部が機能して前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定することを特徴とした仮想マシン運用管理方法。
【請求項１６】
ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、
前記仮想マシン全体のプロセスの状態を監視し当該監視情報を収集する監視情報収集機能、
この監視情報収集機能が稼動して収集された監視情報を仮想マシン側のプロセス管理テーブルに記憶処理する情報記憶処理機能、
このプロセス管理テーブルに記憶された前記プロセスの監視情報を前記仮想マシンが備えている仮想ライブラリを介して前記ホスト計算機へ送り出す監視情報出力制御機能、
を前記仮想マシンの仮想主制御部として機能するコンピュータに実行させることを特徴とした仮想マシン運用管理プログラム。
【請求項１７】
請求項１６に記載の仮想マシン運用管理プログラムにおいて、
前記監視情報収集機能にあっては、
前記仮想マシンのプロセスの状態を定期的に監視し収集するように設定したことを特徴とする仮想マシン運用管理プログラム。
【請求項１８】
請求項１６に記載の仮想マシン運用管理プログラムにおいて、
前記監視情報出力制御機能にあっては、
前記ホスト計算機側から前記仮想ライブラリを介して前記仮想マシンの運用状態の確認要請があった場合にその出力処理を実行する構成としたことを特徴とする仮想マシン運用管理プログラム。
【請求項１９】
ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、
前記仮想マシン側からホスト計算機側に向けて前記仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを取り込んで前記監視情報を確認し且つ分析して当該仮想マシンの動作状態の異常の有無を判定する異常状態判定機能、
前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能、
を前記ホスト計算機が備えているコンピュータに実行させることを特徴とした仮想マシン運用管理プログラム。
【請求項２０】
請求項１９に記載の仮想マシン運用管理プログラムにおいて、
前記仮想マシンからの監視情報の受信に先立って前記仮想マシン側の仮想ライブラリを介して前記仮想マシン側に前記プロセスの状態の監視情報を要求する監視情報要求制御機能を前記ホスト計算機が備えているコンピュータに実行させることを特徴とした仮想マシン運用管理プログラム。
【請求項２１】
ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、
前記仮想マシンから当該仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを前記ホスト計算機側の仮想マシン状態通知テーブルに記憶すると共にそれ以前に記憶されている格納内容を更新するテーブル更新処理機能、
前記仮想マシン状態通知テーブルの更新内容を定期的に確認する更新内容確認機能、
この仮想マシン状態通知テーブルの更新がなされていない場合に前記仮想マシンの動作を異常と判定する異常状態判定機能、
前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能、
を前記ホスト計算機が備えているコンピュータに実行させることを特徴とした仮想マシン運用管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシン運用管理システム、仮想マシンの運用管理方法、及び仮想マシン管理運用プログラムに関する。
【背景技術】
【０００２】
ホスト計算機上でエミュレーションされる仮想マシンによる仮想サーバ環境では、物理サーバか仮想サーバかを意識することなく、仮想サーバを論理サーバとして扱うことを基本方針としている。すなわち、仮想サーバを用いたシステムでは、仮想サーバの動作、監視においても他の物理サーバと同等に扱うことが基本方針とされている。
そのため、仮想サーバを運用管理する場合においても、仮想サーバを構成するゲストＯＳ上に特定の運用管理ソフトウエアもしくは監視ソフトウエアをイントールするなど特定の運用管理製品または監視製品を導入する必要があった。
【０００３】
ここで、ＯＳは、オペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の略で基本ソフトウエアを意味する（以下、同じ）。
又、統合的に監視するためには統合監視用の他の物理サーバを別に用意し、当該統合監視用物理サーバ（運用管理サーバともいう）を通信ネットワークを介して仮想サーバ群と通信接続し、当該仮想サーバ群を監視する必要があった。
【０００４】
さらに、ゲストＯＳのリソースを管理する技術として例えば特許文献１が挙げられる。この特許文献１では、ハイパバイザが、ハイパバイザに割り当てられているリソースを管理するリソース管理テーブルと、各論理区画に対するリソースの割り当て／回収を行う割り当て／回収手段とを備える。各論理区画には、論理区画に割り当てられているリソース量の内の使用中のリソース量を監視するゲストリソース監視手段と、その監視結果に基づき割り当て／回収手段にリソースの追加／切離しを要求する追加／切離手段を有する。割り当て／回収手段は、追加／切離手段からの要求に従いリソース管理テーブルを調べ、割り当て要求の場合には予備リソースがあるときリソースを論理区画に割り当て、回収要求の場合にはリソース管理テーブルにリソースを予備リソースとして回収する。
【特許文献１】特開２００２−４１３０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このような上記関連技術の運用管理手法には様々な課題がある。    
先ず、特定の運用管理製品のマネージャー（管理側主管理部）に通知するため、仮想サーバに運用管理製品のエージェント（被管理側の管理処理実行部）を必ず導入しなければならなかった。
このため、エージェントを導入することにより、仮想サーバは業務以外にエージェントのためのＣＰＵ、メモリなどのリソースを余分に使用しなければならず、仮想マシンの性能が低下するという課題があった。
【０００６】
更に、マネージャーとエージェントと間で通信ネットワークを介したシステム構成となるため、通信ネットワークに何らかの障害が発生した場合、運用管理サーバは仮想サーバ群の状態を把握することができない状態が発生し、これがため、仮想マシンの監視が行えないという不都合があった。
【０００７】
又更に、例えば複数の分散構成を形態とするＷｅｂサーバを仮想サーバで実装した場合、サーバの可用性を高めるために負荷分散装置等の監視製品（運用監視装置の一例である運用監視サーバなど）から定期的にＷｅｂサーバの死活監視を行わなければならない。
つまり、仮想サーバ環境においてクラスタ、負荷分散、シングルサーバ等サーバの構成形態に関わらず、仮想サーバの可用性及び信頼性を高くするためには必ず特定の監視製品を購入し、または特定の仕組みを必ず組み込まなければならない。
このように、仮想マシン外にも専用のソフトを実装し、さらに仮想マシン内にエージェントを実装していた（ゲストＯＳ上に運用管理専用アプリケーションを実装する）ため仮想マシンの性能が低下するという課題があった。
【０００８】
加えて、特許文献１では、仮想マシン上のリソースを監視することはできるが、仮想マシン上で動作しているプロセスなどについては何ら考慮されておらず、仮想マシンの運用管理を行うことができないという課題があった。
【０００９】
本発明の目的は、上述の関連技術の課題を解決することにあり、仮想マシンにおける性能低下を防止し通信ネットワークに障害が発生しても、仮想マシンの運用管理を可能ならしめる仮想マシン運用管理システム、仮想マシンの運用管理方法、及び仮想マシン管理プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明の仮想マシン運用管理システムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムであって、前記仮想マシンが、当該仮想マシン内で実行されている各プロセスの状態を監視し監視情報として収集する第１の監視手段を備え、前記ホスト計算機が、前記第１の監視手段と連携して作動し当該第１の監視手段が収集した監視情報を分析し異常の有無を判定する第２の監視手段を備えていることを特徴としている。
【００１１】
本発明の仮想マシンの運用管理方法は、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理方法であって、前記仮想マシン内に設定された第１の監視手段が備えている仮想主制御部が前記仮想マシン内で実行されている各プロセスの状態を監視すると共にこれを監視情報として収集し、次に、ホスト計算機内に設定された第２の監視手段が、前記第１の監視手段と連携して作動し当該第１の監視手段が収集した監視情報を取得し、続いて、この取得した前記監視情報を前記第２の監視手段が分析すると共に前記仮想マシンの異常の有無を判定することを特徴としている。
【００１２】
本発明の仮想マシン運用管理プログラムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記仮想マシン全体のプロセスの状態を監視し当該監視情報を収集する監視情報収集機能、この監視情報収集機能が稼動して収集された監視情報を仮想マシン側のプロセス管理テーブルに記憶処理する情報記憶処理機能、このプロセス管理テーブルに記憶された前記プロセスの監視情報を前記仮想マシンが備えている仮想ライブラリを介して前記ホスト計算機へ送り出す監視情報出力制御機能、を前記仮想マシンの仮想主制御部として機能するコンピュータに実行させることを特徴としている。
【００１３】
本発明の仮想マシン運用管理プログラムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記仮想マシン側からホスト計算機側に向けて前記仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを取り込んで仮想マシン状態通知テーブルに記憶する監視情報格納処理機能、この仮想マシン状態通知テーブルに記憶された前記監視情報を定期的に確認し且つ分析して当該仮想マシンの動作状態の異常の有無を判定する異常状態判定機能、前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能、を前記ホスト計算機が備えているコンピュータに実行させることを特徴とした仮想マシン運用管理プログラム。
【００１４】
本発明の仮想マシン運用管理プログラムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記仮想マシンから当該仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを前記ホスト計算機側の仮想マシン状態通知テーブルに記憶すると共にそれ以前に記憶されている格納内容を更新するテーブル更新処理機能、前記仮想マシン状態通知テーブルの更新内容を定期的に確認する更新内容確認機能、この仮想マシン状態通知テーブルの更新がなされていない場合に前記仮想マシンの動作を異常と判定する異常状態判定機能、前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能、を前記ホスト計算機が備えているコンピュータに実行させることを特徴としている。
【発明の効果】
【００１５】
本発明によれば、仮想マシンを提供する環境のホスト側に仮想マシンを直接監視する仕組みを実装することで、仮想マシンにおける性能低下を防止し通信ネットワークに障害が発生しても、仮想マシンで動作するプロセスなどをも監視することができ、仮想マシン全体の可用性及び信頼性、監視機構の耐障害性を高めることができるという、関連技術にない優れた仮想マシン運用管理システム、仮想マシンの運用管理方法、及び仮想マシン運用管理プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１６】
〔第１の実施の形態〕
以下、本発明の第１の実施の形態を図１乃至図４に基づいて説明する。
〔仮想マシン運用管理システムの基本的構成〕
先ず、仮想マシン運用管理システムの基本的構成について説明する。図１に示すように、本第１実施形態の仮想マシン運用管理システム１は、ホスト計算機３上で稼働する１以上の仮想マシン２０、２１、２２をホスト計算機３側から運用管理し、仮想マシン上のプロセス３０などの状態を直接監視できるものである。
この仮想マシン運用管理システム１では、少なくとも１つの仮想マシン２０が、当該仮想マシン内で実行されている各プロセスの状態を監視し監視情報として収集する第１の監視手段６を備える。
又、前記ホスト計算機３が、前記第１の監視手段６と連携して作動し当該第１の監視手段６が収集した監視情報を分析し異常の有無を判定する第２の監視手段７を備えている。
【００１７】
このような仮想マシン運用管理システム１では、ホスト計算機３側の状態通知領域に仮想マシン２０自身が自ら状態を通知し、仮想マシン２０の稼動状況をホスト計算機３側が確認する場合、又は、仮想マシン２０の異常状態をホスト計算器３側が判断し制御する場合のいずれであってもよい。
【００１８】
又、このような仮想マシン運用管理システム１では、仮想マシン２０、２１、２２が動作する仮想サーバ環境が、仮想マシン２０、２１、２２上で動作するプロセスの状態、及び仮想マシン２０、２１、２２のＣＰＵ、メモリ、リソースの使用率等サーバの状態を監視する仕組みを仮想環境内だけで実現し、仮想環境を構成するサーバシステムの可用性及び信頼性の向上、監視機構の耐障害性を高める仕組みを特徴とする。
【００１９】
又、仮想マシン運用管理システム１では、仮想マシン２０、２１、２２上のプロセスの状態や仮想マシン２０、２１、２２のＣＰＵ、メモリ、ディスク等リソースの使用率などを仮想マシンの実行環境であるホスト側で直接監視及び管理、制御することにより、仮想サーバ環境全体の可用性、信頼性及び監視機構の耐障害性の向上を図ることができる。
【００２０】
仮想マシンを管理するホスト側に直接監視する仕組みを実装することにより、運用管理製品のマネージャー、エージェントを利用した監視の上記課題を解決することができる。
すなわち、仮想マシンを提供する環境のホスト側に仮想マシンを直接監視する仕組みを実装することで、仮想マシンにおける性能低下を防止し通信ネットワークに障害が発生しても、仮想マシンで動作するプロセスなどをも監視することができ、仮想マシン全体の可用性及び信頼性、監視機構の耐障害性を高めることができる。
【００２１】
（仮想マシン運用管理システムの全体構成）
次に、本実施形態の仮想マシン運用管理システムの具体的構成について、全体構成から説明し、続いて各部の詳細構成について説明する。
【００２２】
図１に示すように、本実施の形態の仮想マシン運用管理システム１は、ホスト計算機３と、このホスト計算機３と通信ネットワークＮＷを介して通信接続された運用管理装置２とを含む構成としている。
【００２３】
ホスト計算機３は、仮想マシン２０、２１、２２などの仮想サーバ環境を構成可能なエミュレータ機能（仮想マシン生成機能）を備える。この仮想マシン生成機能は例えばホストＯＳ１０などにより構成してよい。
又、仮想マシン運用管理システム１は、ホスト計算機３上で稼動する仮想マシン２０、２１、２２を備える。これらの各仮想マシン２０、２１、２２はそれぞれ例えばゲストＯＳ２０Ａ、ゲストＯＳ２１Ａ、ゲストＯＳ２２Ａに基づいて設定される。
【００２４】
運用管理装置２は、仮想マシン２０、２１、２２を監視することもでき、例えば運用管理サーバなどにて構成される。運用管理装置２は、仮想マシン２０、２１、及び２２と通信ネットワークＮＷを介して通信接続されている。
【００２５】
仮想マシン２０は、当該仮想マシン２０内で実行されている各プロセス３０の状態を監視し監視情報として収集する第１の監視手段６を備える。又、仮想マシン２０は、ホスト計算機３上で仮想マシン環境（仮想サーバ環境）が実現された仮想マシン群の一部を構成するものである。このため、他の仮想マシン２１、２２も同様の構成を有する。
一方、ホスト計算機３の計算機本体４は、前記第１の監視手段６と連携して作動し当該第１の監視手段６が収集した監視情報を分析し異常の有無を判定する第２の監視手段７を備えている。
【００２６】
第１の監視手段６は、仮想マシン２０のプロセス３０の状態を監視し収集する仮想主制御部３１と、この仮想主制御部３１で収集された監視情報を記憶するプロセス管理テーブル３３（プロセス管理記憶領域）と、前記仮想主制御部３１に併設された仮想ライブラリ３２とを備える。
【００２７】
仮想主制御部３１は、例えばゲストＯＳ２０Ａにおけるプログラム本体であるゲストＯＳカーネルなどにより構成してもよい。この場合、仮想マシン２０上で動作するプロセス３０をゲストＯＳカーネルがプロセス管理テーブル３３を用いて管理する。
【００２８】
仮想ライブラリ３２は、仮想主制御部３１で管理しているプロセス管理テーブル３３に状態を確認する機能を有する。
仮想主制御部３１は、プロセス３０の状態を確認し、プロセスの状態をプロセス管理テーブル３３に状態を保存する機能を有する。
【００２９】
第２の監視手段７は、システム全体の動作制御を管理する中核管理制御部１１と、この中核管理制御部１１に併設され仮想ライブラリ３２を介して前記第１の監視手段６から送り込まれる前記仮想マシン２０のプロセスの状態を記憶する仮想マシン状態通知テーブル１２（仮想マシン状態通知記憶領域）とを備えている。
【００３０】
中核管理制御部１１は、例えばホストＯＳ１０本体を実行するプログラム本体であるホストＯＳカーネルによりその制御機能が実行されるように構成されている。
仮想マシン状態通知テーブル１２は、仮想マシン２０、仮想マシン２１、仮想マシン２２の状態を確認するために使用する。
中核管理制御部１１は、本実施形態にあっては二つの機能を有する。中核管理制御部１１の一つ目の機能は、仮想ライブラリ３２に仮想マシン上のプロセス情報を確認する機能である。中核管理制御部１１の二つ目の機能は、仮想マシン状態通知テーブル１２を確認する機能である。
【００３１】
又、ホスト計算機３の計算機本体４は、ホスト計算機３に搭載されて仮想マシン環境を構成する機能を備え、種々の情報等を表示するための表示部（スクリーン）、この表示部の表示画面上（の各種入力欄等）にデータを操作入力するための操作入力部（例えばキーボード・マウス・各種ボタン・表示操作部＜画面上のボタン＞・タッチパネル等）、各種信号・データを送受信するための送受信部ないしは通信部（モデムなど）、各種プログラム・各種データを記憶しておく記憶部（例えばメモリ、ハードディスク等）、これらの制御を司る制御部（例えばＣＰＵ、ＭＰＵ、ＤＳＰ等）などを備えている。この制御部が前記中核管理制御部や仮想マシン生成機能を備えたものとなっている。又、記憶部の一部により前記各テーブルを構成してもよい。
【００３２】
ここで、本実施の形態の仮想主制御部３１と仮想ライブラリ３２とプロセス管理テーブル３３とからなる構成は、「第１の監視手段６」の一例である。
又、本実施の形態の中核管理制御部１１と仮想マシン状態通知テーブル１２とからなる構成は、「第２の監視手段７」の一例である。
さらに、プロセス管理テーブル３３は、プロセス管理記憶領域の一部に構成される。また、仮想マシン状態通知テーブル１２は、仮想マシン状態通知記憶領域の一部に構成される。
【００３３】
（仮想主制御部の詳細構成）
第１の監視手段６における仮想主制御部３１は、図３に示すように、前記仮想マシン全体のプロセスの状態を監視し当該監視情報を収集する監視情報収集機能３１ａを備える。
【００３４】
又、仮想主制御部３１は、この監視情報収集機能３１ａが稼動して収集された監視情報を仮想マシン側のプロセス管理テーブル３３に記憶処理する情報記憶処理機能３１ｂを備える。
【００３５】
更に、仮想主制御部３１は、このプロセス管理テーブル３３に記憶された前記プロセスの監視情報を前記仮想マシン２０が備えている仮想ライブラリ３２を介して前記ホスト計算機３の第２の監視手段７へ送り出す監視情報出力制御機能３１ｃを備える。
すなわち、監視情報出力制御機能３１ｃは、前記プロセス管理テーブル３３に記憶された前記プロセス３０などに関する監視情報を前記仮想主制御部３１に併設された仮想ライブラリ３２を介して前記ホスト側（ホスト計算機３の計算機本体４の第２の監視手段７側）へ送り出す。  
【００３６】
前記監視情報収集機能３１ａにあっては、前記仮想マシン２０のプロセスの状態を定期的に監視し収集するように設定してもよい。
前記監視情報出力制御機能３１ｃにあっては、前記ホスト計算機３の第２の監視手段７側から前記仮想ライブラリ３２を介して前記仮想マシン２０の運用状態の確認要請があった場合にその出力処理を実行する構成としてもよい。
【００３７】
又、仮想主制御部３１は、前記仮想マシン２０のプロセスの状態を定期的に監視し収集する定期的状態監視機能３１ｄを備えてよい。
【００３８】
更に、仮想主制御部３１は、前記ホスト計算機３の計算機本体４（ホストＯＳ１０）側の第２の監視手段７から前記仮想ライブラリ３２を介して前記仮想マシン２０の運用状態の確認要請があった場合に前記監視情報出力制御機能３１ｃを稼動させる構成としてもよい。
【００３９】
（中核管理制御部の詳細構成）
第２の監視手段７における中核管理制御部１１は、図３に示すように、前記ホスト計算機３の計算機本体４上で稼動する仮想マシン２０の前記プロセス３０などの状態を前記第１の監視手段６の仮想ライブラリ３２を介して前記第１の監視手段６に要求する監視情報要求制御機能１１ｂを備えている。
すなわち、この監視情報要求制御機能１１ｂでは、仮想マシン２０からの監視情報の受信に先立って前記仮想マシン２０側の仮想ライブラリ３２を介して前記仮想マシン２０側に前記プロセス３０の状態の監視情報を要求する。  
【００４０】
又、前記第２の監視手段７は、前記中核管理制御部１１が監視情報要求制御機能１１ｂを実行する構成とすると共に、この監視情報要求により前記仮想マシン２０から送られてくる前記プロセス３０の状態を前記仮想マシン状態通知テーブル１２が記憶する構成としてもよい。
【００４１】
更に、中核管理制御部１１は、前記第１の監視手段６から送り込まれる前記仮想マシン２０のプロセス情報を確認し且つ分析して当該仮想マシン２０の動作状態の異常の有無を判定する異常状態判定機能１１ｃを備える。
この異常状態判定機能１１ｃでは、前記プロセス３０の状態を前記仮想マシン状態通知テーブル１２が記憶する構成とした場合、この仮想マシン状態通知テーブル１２に記憶された前記監視情報を定期的に確認し且つ分析して当該仮想マシンの動作状態の異常の有無を判定してもよい。
【００４２】
又更に、中核管理制御部１１は、仮想マシン２０の動作が異常と判定された場合に稼動し前記仮想マシン２０の停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能１１ｄを備えている。
【００４３】
又、中核管理制御部１１は、前記仮想マシン２０側からホスト側（ホスト計算機３の計算機本体４の第２の監視手段７側）に向けて前記仮想マシン２０のプロセスにかかる監視情報が送り込まれた場合にこれを取り込んで仮想マシン状態通知テーブル１２に記憶する監視情報格納処理機能１１ａを備えてよい。
【００４４】
（動作処理手順について）
（全体の概略動作）
次に、上述のような構成を有する仮想マシン管理システムにおける全体の動作処理手順について、図２及び図４を参照しつつ説明する。
【００４５】
本第１実施形態に係る仮想マシンの運用管理における動作処理手順は、ホスト計算機３上で稼働する（エミュレーションされる）１以上の仮想マシン２０、２１、２２をホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記ホスト計算機３が備えたコンピュータが行うものを対象とする。  
【００４６】
本第１実施形態に係る仮想マシン２０、２１、２２の運用管理における全体の動作処理手順は、基本的手順として、先ず、前記仮想マシン２０（２１、２２についても同じ）内に設定された第１の監視手段６が備えている仮想主制御部３１が、前記仮想マシン２０内で実行されている各プロセスの状態を監視すると共にこれを監視情報として収集する（図４に示すステップＳ１：監視情報収集ステップないしは機能）。
次に、ホスト計算機３内に設定された第２の監視手段７が、前記第１の監視手段６と連携して作動し当該第１の監視手段６が収集した監視情報を取得する（図４に示すステップＳ２：監視情報取得ステップないしは機能）。
続いて、この取得した前記監視情報を前記第２の監視手段７が分析すると共に前記仮想マシン２０の異常の有無を判定する（図４に示すステップＳ３：異常状態判定ステップないしは機能）。
【００４７】
さらに、この仮想マシン２０の運用管理における動作処理手順では、前記監視情報の収集に際しては、前記第１の監視手段６が備えている仮想主制御部３１が、前記仮想マシン２０のプロセスの状態を監視し収集する。
次に、この収集された監視情報を前記仮想主制御部３１が、前記第１の監視手段６が備えているプロセス管理テーブル３３に格納制御する（図２に示すステップＳ１２：情報記憶処理ステップないしは機能）。
しかる後、前記プロセス管理テーブル３３に記憶された前記プロセスの監視情報を、前記仮想主制御部３１に併設された仮想ライブラリ３２が前記第２の監視手段７へ送り出す（図２に示すステップＳ１４、Ｓ１５、Ｓ１６からなるステップ：監視情報出力制御ステップないしは機能）。
これにより前記第２の監視手段７が前記監視情報を取得する。
【００４８】
又、この仮想マシンの運用管理における動作処理手順では、前記仮想マシン２０のプロセスの状態の監視および監視情報の収集は、前記仮想主制御部３１により定期的に実行される（図２に示すステップＳ１１：定期的状態監視ステップないしは機能）。  
【００４９】
更に、この仮想マシン２０の運用管理における動作処理手順では、前記仮想主制御部３１による前記仮想マシン２０の運用状態の監視および監視情報の収集動作は、事前に、前記ホスト計算機３側の第２の監視手段７から前記仮想ライブラリ３２を介して前記仮想マシン２０の運用状態の確認要請があった場合に実行する。
【００５０】
又更に、この仮想マシン２０の運用管理における動作処理手順では、前記仮想ライブラリ３２を介して前記第１の監視手段６から前記第２の監視手段７に送り込まれる監視情報を前記中核管理制御部１１が分析して前記仮想マシン２０の動作状態の異常有無を判定してもよい（異常状態判定ステップないしは機能）。
そして、この判定結果に従って前記中核管理制御部１１が前記仮想マシン２０の停止制御の可否及び停止制御後の再起動の可否を決定する（仮想マシン用動作可否判定ステップないしは機能）。
【００５１】
（詳細動作）
以下、これを更に詳述する。
まず、仮想マシン２０で動作するプロセス３０を監視する動作について説明する。
【００５２】
仮想マシン２０で動作する本体部である仮想主制御部３１（ゲストＯＳカーネル等）は、プロセス３０を定期的に監視し（図２に示すステップＳ１１：定期的状態監視ステップないしは機能）、その状況を示す監視情報をプロセス管理テーブル３３に定期的に保存する（図２に示すステップＳ１２：情報記憶処理ステップないしは機能）。これにより、プロセス管理テーブル３３には各プロセスのリソースの使用状況または仮想マシン２０の負荷状況の状態が保存される。
【００５３】
一方、ホスト側で動作する本体部である中核管理制御部１１（ホストＯＳカーネル等）は、仮想マシン２０のプロセス情報及び仮想マシン２０の負荷状況を確認するために、仮想マシン２０の仮想ライブラリ３２にプロセス情報及び負荷状況の確認依頼を行う（図２に示すステップＳ１３）。
【００５４】
仮想ライブラリ３２は、中核管理制御部１１からの確認依頼を受け、仮想主制御部３１にプロセス情報及び負荷状況の確認を行う（図２に示すステップＳ１４）。
【００５５】
仮想主制御部３１は、プロセス情報及び負荷状況の確認を行うために、プロセス管理テーブル３３の情報を確認し、仮想ライブラリ３２にその情報を通知する（図２に示すステップＳ１５）。
【００５６】
仮想ライブラリ３２は、仮想主制御部３１から得たプロセス情報及び負荷状況などの監視情報を中核管理制御部１１に情報を通知する（図２に示すステップＳ１６）。
【００５７】
中核管理制御部１１は、その情報を分析し、プロセスに異常が発生しもしくは仮想マシン２０に動作異常が発生したか否かを判断する（異常状態判定ステップないしは機能）。
そして、中核管理制御部１１は、この判定により仮想マシン２０を強制的に停止もしくは、再起動させた方が良いかを判断することが可能で、該行為を実行する（仮想マシン用動作可否判定ステップないしは機能）。
【００５８】
更に、この仮想マシン２０の運用管理における動作処理手順では、前記仮想ライブラリ３２を介して前記第１の監視手段６から前記第２の監視手段７に送り込まれる監視情報を、当該第２の監視手段７が有する中核管理制御部１１が当該中核管理制御部１１に併設された仮想マシン状態通知テーブル１２に格納してもよい（監視情報格納処理ステップないしは機能）。
この場合、この格納された監視情報を前記中核管理制御部１１が分析して前記仮想マシン２０の動作状態の異常有無を判定する（異常状態判定ステップないしは機能）。
そして、この判定結果に従って前記中核管理制御部１１が前記仮想マシン２０の停止制御の可否及び停止制御後の再起動の可否を決定する（仮想マシン用動作可否判定ステップないしは機能）。
【００５９】
（効果の説明）  
以上のように本実施の形態によれば、以下の効果を奏することができる。
第１の効果は、本システムを用いることにより仮想マシン上のプロセスの監視及び仮想マシン自身の監視の仕組みを仮想サーバ環境だけで実装できる。
その理由は、仮想マシンの監視を仮想環境のホスト側で直接監視することにより、特定の運用管理製品もしくは監視製品などの専用ソフトウエアを仮想マシンに導入する必要が無いためである。そのため、不要な運用製品のマネージャーのための物理管理サーバ、仮想マシンに導入するエージェントの必要性が無くなる。結果運用管理設備に対するコストを削減できる。
【００６０】
第２の効果は、第1の効果により、仮想マシンの負荷を軽減できる。
その理由は、仮想マシンに特定の運用管理システムのエージェントを導入する必要性が無くなるのでＣＰＵ、メモリ、ディスクリソースの使用率を軽減できるためである。
【００６１】
第３の効果は、統合監視を目的とした運用管理システムに比べて本システムを利用することにより仮想マシンの監視の仕組みを強化できる。その理由は、統合監視ではマネージャー、エージェントを用いたネットワークを介した構成が一般的である。そのため、通信ネットワークに障害が発生した場合仮想マシンの監視を行うことができない。しかし、仮想マシンと直接やり取りができるホストＯＳは通信ネットワーク障害の有無に関係無く仮想マシンの監視を行うことができるためである。
【００６２】
第４の効果は、仮想マシンのストール状態、異常状態を正確に検出でき確実に停止、再起動の処理を実行できる。その理由は、本システムにより仮想マシンは自分の状態を定期的にホスト側に通知するため、ホスト側は瞬時に仮想マシンの異常状態を検出できるためである。また、仮想マシンはホスト側で管理されているため直接仮想マシンに対し確実に停止、再起動の処理を実行できるためである。
【００６３】
ここで、図１に示すブロック図における一部の各ブロックは、コンピュータにより実行可能なプログラムにより機能化された状態を示すソフトウエアモジュール構成であってもよい。
【００６４】
すなわち、物理的構成は例えば一又は複数のＣＰＵ（或いは一又は複数のＣＰＵと一又は複数のメモリ）等ではあるが、各部（回路・手段）によるソフトウエア構成は、プログラムの制御によってＣＰＵが発揮する複数の機能を、それぞれ複数の部（手段）による構成要素として表現したものである。
【００６５】
ＣＰＵがプログラムによって実行されている動的状態（プログラムを構成する各手順を実行している状態）を機能表現した場合、ＣＰＵ内に各部（手段）が構成されることになる。プログラムが実行されていない静的状態にあっては、各手段の構成を実現するプログラム全体（或いは各手段の構成に含まれるプログラム各部）は、メモリなどの記憶領域に記憶されている。
【００６６】
以上に示した各部（手段）は、プログラムにより機能化されたコンピュータをプログラムの機能と共に実現し得るように構成しても、また、固有のハードウエアにより恒久的に機能化された複数の電子回路ブロックからなる装置で構成してもよい。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現でき、いずれかに限定されるものではない。
【００６７】
［第２の実施の形態］
次に、本発明にかかる第２の実施の形態について、図５乃至図６に基づいて説明する。以下には、前記第１の実施の形態の実質的に同様の構成に関しては説明を省略し、異なる部分についてのみ述べる。
【００６８】
本実施の形態では、図５に示すように、第２の監視手段７は、中核管理制御部１１と仮想マシン状態通知記憶領域としての仮想マシン状態通知テーブル１２とを備える。
そして、第１の監視手段６が、前記各プロセスの状態などの監視情報を前記仮想マシン状態通知記憶領域に定期的に書き込み更新する機能を備える。
又、中核管理制御部１１が、この更新がなされないことを確認した場合、前記仮想マシンを強制停止もしくは再起動させるかどうかを判断する機能を備える。
【００６９】
（詳細構成）
より詳細には、前記第１の監視手段６の仮想主制御部３１は、図６に示すように、前記仮想マシン２０のプロセスにかかる監視情報を前記第２の監視手段７側の仮想マシン状態通知テーブル１２に定期的に送り込んでその格納内容を更新するテーブル更新機能３１ｅを備える。
【００７０】
前記第２の監視手段７の中核管理制御部１１は、図６に示すように、前記仮想マシン状態通知テーブル１２の更新内容を定期的に確認する更新内容確認機能１１ｅを備える。
【００７１】
又、中核管理制御部１１は、当該仮想マシン状態通知テーブル１２の更新がなされていない場合に前記仮想マシン２０の動作を異常と判定する異常状態判定機能１１ｃを備えてよい。
【００７２】
更に、中核管理制御部１１は、前記仮想マシン２０の動作が異常と判定された場合に稼動し前記仮想マシン２０の停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能１１ｄを備えてよい。
【００７３】
中核管理制御部１１は、前記仮想マシンから当該仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを前記ホスト計算機側の仮想マシン状態通知テーブル１２に記憶すると共にそれ以前に記憶されている格納内容を更新するテーブル更新処理機能１１ｆを備えてよい。
その他の構成は、前述した第１実施形態の場合と同一となっている。
【００７４】
（動作処理手順）
次に、動作を図５に基づいて説明する。本第２実施の形態に係る仮想マシン２０の運用管理における動作処理手順では、前記プロセス管理テーブル３３に記憶された監視情報を前記第２の監視手段７に送り込むに際しては、前記仮想主制御部３１が前記仮想ライブラリ３２を介して前記第２の監視手段７側の仮想マシン状態通知テーブル１２に定期的に送り込んでその格納内容を更新し（図５に示すステップＳ２１、Ｓ２２からなるステップ：テーブル更新ステップないしは機能）。
次に、前記第２の監視手段７の中核管理制御部１１が前記仮想マシン状態通知テーブル１２の更新内容を定期的に確認する（図５に示すステップＳ２３：更新内容確認ステップないしは機能）と共に当該仮想マシン状態通知テーブル１２の更新がなされていない場合に前記仮想マシン２０の動作を異常と判定する（異常状態判定ステップないしは機能）。
その後、この判定結果に基づいて前記中核管理制御部１１が機能して前記仮想マシン２０の停止制御の可否及び停止制御後の再起動の可否を決定する（仮想マシン用動作可否判定ステップないしは機能）。
【００７５】
（詳細動作）
以下、この仮想マシン２０の動作状況を確認する動作について図５を参照して詳述する。
仮想主制御部３１は、仮想マシン２０が動作している間、仮想ライブラリ３２に要求を出力し（図５に示すステップＳ２１）、仮想ライブラリ３２は、ホスト側の仮想マシン状態通知テーブル１２に現在の状態及び時間を書き込む（図５に示すステップＳ２２）。この書き込む動作は短い間隔（例えばｍｓなど）で定期的に行う。
【００７６】
一方、ホスト側の中核管理制御部１１は、仮想マシン２０が動作開始した時点から仮想マシン状態通知テーブル１２の状態及び時間情報を定期的に確認する（図５に示すステップＳ２３：更新内容確認ステップないしは機能）。
【００７７】
仮想マシン状態通知テーブル１２の情報が仮想ライブラリ３２に定期的に更新されない場合には、中核管理制御部１１は仮想マシン２０の異常を検知する（異常状態判定ステップないしは機能）。
この結果、中核管理制御部１１は、仮想マシン２０を強制的に停止もしくは、再起動させた方が良いかを判断し、該行為を実行する（仮想マシン用動作可否判定ステップないしは機能）。
【００７８】
ここで、第１の監視手段が、図５に示すステップＳ２１、Ｓ２２からなるステップにより、テーブル更新ステップを実行する。
【００７９】
以上で説明したように、本第２の実施の形態によると、仮想マシン２０側が定期的にホスト側に監視情報を供給することにより、前述した第１の実施の形態と同様の作用効果を奏することができる。
【００８０】
その他の構成およびその他のステップないしは機能並びにその作用効果については、前述した第１実施形態の場合と同一となっている。また、上記の説明において、上述した各ステップの動作内容及び各部の構成要素並びにそれらによる各機能をプログラム化（ソフトウエアプログラム）し、コンピュータに実行させてもよい。
【００８１】
[その他の各種変形例]
また、本発明にかかる装置及び方法は、そのいくつかの特定の実施の形態に従って説明してきたが、本発明の主旨および範囲から逸脱することなく本発明の本文に記述した実施の形態に対して種々の変形が可能である。
【００８２】
又、上記構成部材の数、位置、形状等は上記実施の形態に限定されず、本発明を実施する上で好適な数、位置、形状等にすることができる。すなわち、上記実施の形態では、仮想マシンが３台、ホスト計算機やホストＯＳが１個、の場合を示したが、本発明は、これらの個数を制限するものではない。
【００８３】
更に、ゲストＯＳは、同一の種類のＯＳ、異なる種類のＯＳを問わない。又、ゲストＯＳに実装されるアプリケーション、Ｗｅｂサーバ、ＳＭＴＰサーバなどサーバの種類は問わない。
又、ホストＯＳにエミュレータ機能が内蔵されているもの、ホストＯＳが仮想マシンモニタなどのハイパバイザで構成されるもの（半仮想化型）、ホストＯＳ上にエミュレータ（仮想化ソフトウエア）を搭載するタイプ（完全仮想化型）のいずれのシステムであってもよい。
【００８４】
更に又、前記実施の形態においてプロセスとは、情報処理においてプログラムの動作中のインスタンスを意味し、全ての変数やその他の状態を含む。プロセスは、ゲストＯＳから記憶領域やディスク資源を割り当てられて、処理を実行する。
プロセスは、システムプロセス、ユーザープロセスを含んでよい。又、プロセスは、親プロセス、子プロセス、ゾンビプロセスなどを含む。プロセス識別子により識別してよい。
【００８５】
又、プロセスの状態情報は、プロセスの種類毎に監視できる。プロセスの状態情報は、プロセス毎のプロセス関連情報を含む。
プロセス関連情報は、一例として以下のリソースを含む。プロセスに割り当てられたリソースの記述子（ファイル記述子やファイルハンドルなど）、セキュリティ属性（プロセスの所有者やプロセスに関わるパーミッションなど）。プログラムに対応する実行命令コードのイメージ、プロセッサ状態（レジスタの内容、物理メモリのアドレシングなど）。実行コードとプロセス固有データを格納しているメモリ（仮想メモリ領域と実メモリ領域）関連情報。
【００８６】
各監視手段は、プロセスを管理対象とするが、カーネルがスレッドを直接制御する場合には、スレッドも管理対象としてもよい。又、ＯＳがプロセスをグループ化してリソースを割り当てる機能を持つ場合、監視手段は、プロセスグループをも監視する機能を備えてよい。又、プロセスの優先度、プロセスへの記憶領域の割り当て等や、親プロセスと子プロセスの関係情報なども監視する機能を備えてよい。又、監視手段は、プロセスの実行状態、実行可能状態、待ち状態などの状態を監視する機能を備えてよい。
【００８７】
第１、第２の各監視手段は、仮想マシンで動作する各プロセスの状態を監視する機能、これらの各プロセス毎に仮想マシンのＣＰＵ、メモリ、ディスク等リソースの使用率を監視する機能、仮想マシン仮想サーバの負荷状況を監視する機能を備えてよい。
【００８８】
又、本発明の一実施形態における仮想マシン管理システムでは、仮想計算機システムにおいて、仮想計算機の資源（ＣＰＵやメモリ等）の使用率やプロセスの状態等の監視情報を収集する機能をホストＯＳとゲストＯＳに組み込んで搭載してよい。これにより、仮想計算機の性能を向上させる。この場合、ゲストＯＳは監視情報を決められた領域（状態通知テーブル）に書き込み、ホストＯＳがそれを収集することができる。又、ゲストＯＳは監視情報を決められた領域（状態通知テーブル）に書き込み、ホストＯＳがそれを収集することができる。
【００８９】
又、明細書中の記載において広義な用語（監視情報等）として引用された用語（プロセスの状態情報、仮想マシンの資源（ＣＰＵやメモリ等）の使用率等）は、明細書中の他の記載においても広義な用語に置き換えることができる。更に、明細書中の記載において、各ステップが各々処理する各動作内容は、各ステップの動作説明に記載されていないが、前記記憶媒体における各々の特定の記憶領域に各々書き込む処理を各々実行することを含むものである。
【００９０】
以上説明した方法は、コンピュータがプログラムを記録媒体から読み込んで実行することによっても実現することが出来る。すなわち、上述のプログラムを、情報記録媒体に記録した構成であってもよい。
【００９１】
さらに、このようなシステムは、単独で存在する場合もあるし、ある機器（例えば電子機器など）に組み込まれた状態で利用されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものである。
さらにまた、一部がソフトウェアであって、一部がハードウェアで実現されている場合であってもよく、一部を記憶媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。
【００９２】
更に、本発明の一実施形態にかかる仮想マシン運用管理システムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記仮想マシンの仮想主制御部が、前記仮想マシン全体のプロセスの状態を監視し当該監視情報を収集する監視情報収集機能と、この監視情報収集機能が稼動して収集された監視情報を仮想マシン側のプロセス管理テーブルに記憶処理する情報記憶処理機能と、このプロセス管理テーブルに記憶された前記プロセスの監視情報を前記仮想マシンが備えている仮想ライブラリを介して前記ホスト計算機へ送り出す監視情報出力制御機能のみを備えた構成としてもよい。
【００９３】
又更に、本発明の一実施形態にかかる仮想マシン運用管理システムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記ホスト計算機が、前記仮想マシン側からホスト計算機側に向けて前記仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを取り込んで前記監視情報を確認し且つ分析して当該仮想マシンの動作状態の異常の有無を判定する異常状態判定機能と、前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能のみを備えた構成としてもよい。
【００９４】
又、本発明の一実施形態にかかる仮想マシン運用管理システムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記ホスト計算機が、前記仮想マシンから当該仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを前記ホスト計算機側の仮想マシン状態通知テーブルに記憶すると共にそれ以前に記憶されている格納内容を更新するテーブル更新処理機能と、前記仮想マシン状態通知テーブルの更新内容を定期的に確認する更新内容確認機能と、この仮想マシン状態通知テーブルの更新がなされていない場合に前記仮想マシンの動作を異常と判定する異常状態判定機能と、前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能のみを備えた構成としてもよい。
【００９５】
又更に、本発明の一実施形態にかかる仮想マシン運用管理システムは、ホスト計算機上で稼動する１以上の仮想マシンをホスト計算機側から運用管理する仮想マシン運用管理システムにあって、前記ホスト計算機が、前記仮想マシン側からホスト計算機側に向けて前記仮想マシンのプロセスにかかる監視情報が送り込まれた場合にこれを取り込んで仮想マシン状態通知テーブルに記憶する監視情報格納処理機能と、この仮想マシン状態通知テーブルに記憶された前記監視情報を定期的に確認し且つ分析して当該仮想マシンの動作状態の異常の有無を判定する異常状態判定機能と、前記仮想マシンの動作が異常と判定された場合に稼動し前記仮想マシンの停止制御の可否及び停止制御後の再起動の可否を決定する仮想マシン用動作可否判定機能のみを備えた構成としてもよい。  
【００９６】
更に、本発明の一実施形態にかかる仮想マシン運用管理システムは、ホスト計算機上で稼働する１以上の仮想マシンを運用管理する仮想マシン運用管理システムであって、前記仮想マシンのゲストＯＳが、当該仮想マシン内で実行されている各プロセスの状態などを監視情報として監視する第１の監視手段を備え、前記ホスト計算機のホストＯＳが、前記第１の監視手段と連携して動作し前記第１の監視手段の監視情報を分析する第２の監視手段を備えてもよい。
【００９７】
このような仮想マシン運用管理システムでは、ホストＯＳ上の状態通知領域に仮想マシン自身が自ら状態を通知し、仮想マシンの稼動状況をホストＯＳが確認する場合、仮想マシンの異常状態をホストＯＳが判断し制御する場合のいずれであってもよい。
【００９８】
仮想マシンを提供する環境のホスト側に仮想マシンを直接監視する仕組みを実装することで、仮想マシンにおける性能低下を防止し通信ネットワークに障害が発生しても、ゲストＯＳ上のプロセスなどをも監視することができ、仮想マシン全体の可用性及び信頼性、監視機構の耐障害性を高めることができる。
【００９９】
又、前記第２の監視手段は、前記各プロセスの状態などの監視情報の分析結果に応じて前記ゲストＯＳを強制停止もしくは再起動させるかどうかを判断する判断機能を備える。
より詳細には、第２の監視手段は、ホストＯＳカーネルを備える。又、前記第１の監視手段は、ゲストＯＳカーネルと前記各プロセスの状態などの監視情報を蓄積するプロセス管理記憶領域としてのプロセス管理テーブル３３を備える。
そして、ホストＯＳカーネルが、前記第１の監視手段に対し監視情報の確認要求を送出する機能を備える。又、前記ゲストＯＳカーネルが、当該要求を受けると前記プロセス管理記憶領域の前記監視情報を前記ホストＯＳカーネルに通知する機能を備える。
【０１００】
この仮想マシンの運用管理における動作処理手順では、前記仮想マシンのゲストＯＳにおける第１の監視手段として機能する前記ホスト計算機が備えたコンピュータが、前記仮想マシン内で実行されている各プロセスの状態などを監視情報として監視し（図２に示すステップＳ１１、Ｓ１２、Ｓ１４、Ｓ１５からなるステップ：第１の監視制御ステップ）、続いて、前記ホスト計算機のホストＯＳにおける第２の監視手段として機能する前記ホスト計算機が備えたコンピュータが、前記第１の監視手段と連携して動作し前記第１の監視手段の監視情報を分析する（図２に示すステップＳ１３、Ｓ１６及び図示しない判断ステップからなるステップ：第２の監視制御ステップ）ことを実行する。
【０１０１】
さらに、この仮想マシンの運用管理における動作処理手順では、前記第２の監視手段が前記監視情報を分析するに際しては、前記監視情報の分析結果に応じて前記ゲストＯＳを強制停止もしくは再起動させるかどうかを判断することを実行する。
【０１０２】
又、第１の監視手段が、図５に示すステップＳ２１、Ｓ２２からなるステップにより、第１の監視制御ステップを実行してもよい。又、第２の監視手段が、図５に示すステップＳ２３及び図示しない判断ステップからなるステップにより、第２の監視制御ステップを実行してもよい。
【産業上の利用可能性】
【０１０３】
本発明は、エミュレータにより仮想マシンを実行させる際にクラスタシステム（フェイルオーバー型、負荷分散型）のサーバ、シングルサーバ等、サーバの構成に関わらず、全ての仮想サーバ環境のシステムの信頼性向上を目的とした用途に利用できる。
【図面の簡単な説明】
【０１０４】
【図１】本発明の第１の実施の形態による仮想マシン運用管理システムの全体構成の一例を示すブロック図である。
【図２】図１の仮想サーバ環境における仮想マシン及びプロセス監視の動作を概念的に説明するための一例を示す説明図である。
【図３】図１の仮想マシン運用管理システムにおける仮想主制御部及び中核管理制御部の詳細構成の一例を示すブロック図である。
【図４】本発明の第１の実施の形態による仮想マシン運用管理システムにおける動作処理手順の一例を示すフローチャートである。
【図５】本発明の第２の実施の形態による仮想マシン管理システムの仮想サーバ環境における仮想マシン及びプロセス監視の動作を概念的に説明するための一例を示す説明図である。
【図６】本発明の第２の実施の形態による仮想マシン運用管理システムにおける仮想主制御部及び中核管理制御部の詳細構成の一例を示すブロック図である。
【符号の説明】
【０１０５】
１  仮想マシン運用管理システム
２  運用管理装置
３  ホスト計算機
６  第１の監視手段
７  第２の監視手段
１０  ホストＯＳ
１１  中核管理制御部
１１ｂ  監視情報要求制御機能
１１ｃ  異常状態判定機能
１１ｄ  仮想マシン用動作可否判定機能
１１ｅ  更新内容確認機能
１１ｆ  テーブル更新処理機能
１２  仮想マシン状態通知テーブル（仮想マシン状態通知記憶領域）
２０、２１、２２  仮想マシン
２０Ａ、２１Ａ、２２Ａ  ゲストＯＳ
３０  プロセス
３１  仮想主制御部
３１ａ  監視情報収集機能
３１ｂ  情報記憶処理機能
３１ｃ  監視情報出力制御機能
３１ｄ  定期的状態監視機能
３１ｅ  テーブル更新機能
３２  仮想ライブラリ
３３  プロセス管理テーブル（プロセス管理記憶領域）
ＮＷ  通信ネットワーク
【図１】
2010134557.tif 000003
【図２】
2010134557.tif 000004
【図３】
2010134557.tif 000005
【図４】
2010134557.tif 000006
【図５】
2010134557.tif 000007
【図６】
2010134557.tif 000008