JP4870794B2 - 仮想マシンの監視管理装置、監視管理方法及びコンピュータプログラム - Google Patents

仮想マシンの監視管理装置、監視管理方法及びコンピュータプログラム Download PDF

Info

Publication number
JP4870794B2
JP4870794B2 JP2009114045A JP2009114045A JP4870794B2 JP 4870794 B2 JP4870794 B2 JP 4870794B2 JP 2009114045 A JP2009114045 A JP 2009114045A JP 2009114045 A JP2009114045 A JP 2009114045A JP 4870794 B2 JP4870794 B2 JP 4870794B2
Authority
JP
Japan
Prior art keywords
machine
information
virtualization software
virtual machine
specifying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009114045A
Other languages
English (en)
Other versions
JP2010262545A (ja
Inventor
大輔 幸坂
健 澤井
勤也 藤塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Data Corp
Original Assignee
NTT Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Data Corp filed Critical NTT Data Corp
Priority to JP2009114045A priority Critical patent/JP4870794B2/ja
Publication of JP2010262545A publication Critical patent/JP2010262545A/ja
Application granted granted Critical
Publication of JP4870794B2 publication Critical patent/JP4870794B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、仮想マシンを監視管理する装置と方法、及びコンピュータプログラムに関する。
コンピュータのリソースを仮想化ソフトウェア(仮想化ソリューション)により仮想化し、仮想化したリソース上でOS(オペレーティングシステム)を実行させる仮想化技術が知られている。リソースを仮想化することにより、複数のOSを並行して実行させたり、異なったアーキテクチャのOSを同時に動作させることが可能となる。仮想化されたコンピュータを仮想マシン又は仮想機械と呼ぶ。
仮想化されていないコンピュータ(即ち、物理マシン)は、OpenView(商標)などの監視管理ソフトウェアを用いて監視管理を行うことが可能である。
仮想マシンについても、仮想マシン用の監視管理ソフトウェアが存在する。例えば、VMware(商標)で仮想化された仮想マシンを監視管理するためにVMwareInfrastructureClient(商標)が提供されており、Xen(商標)で仮想化された仮想マシンを監視管理するためにVirtualMachineManager(商標)が提供されている。
ユーザが、非仮想マシン用の監視管理ソフトウェアで非仮想マシンを操作する場合は、ユーザは「マシン」と「操作」を指示する必要がある。一方、仮想マシン用の監視管理ソフトウェアで仮想マシンを操作する場合は、「マシン」、「操作」、「ホストマシン」、「仮想化ソフトウェア」を指定する必要がある。ここで、操作とは、例えば、性能情報の取得、マシンの状態の変更(起動・停止、リソース割り当て変更等)、ジョブの制御、パッチ管理などを意味する。
このように、非仮想マシンを操作するために必要な情報と仮想マシンを操作するために必要な情報との間には差異があるため、非仮想マシンと仮想マシンとが混在する仮想化混在環境においては、シームレスな監視管理は困難である。
また、従来の監視管理ソフトウェアは、特定の仮想化ソフトウェア専用であり、複数の仮想化ソフトウェアには対応できない。このため、複数の仮想化ソフトウェアにより仮想化された複数種の仮想マシンを含む仮想環境を監視管理することはできない。
また、従来の監視管理ソフトウェアは、動作の度に、依存関係、即ち、監視管理対象の仮想マシンと、該仮想マシンを実現している仮想化ソフトウェアとホストマシンの対応関係をチェックする必要があり、オーバーヘッドが大きく、高速動作が困難である。
また、従来の監視管理ソフトウェアは、監視管理対象の仮想マシンに対しエージェントをインストールし、監視管理対象の仮想マシンと直接通信し、エージェントからマシン情報を取得することが多い。しかし、仮想マシンでは、CPU使用率やメモリ等の監視の精度が低いため情報が不正確である。
一方、特許文献1には、ホスト上の仮想マネージャが各仮想マシンからの情報を取得可能な技術が開示されている。しかし、監視管理ソフトウェアが仮想管理マネージャから情報を収集したとしても、「マシン」、「操作」、「ホストマシン」、「仮想化ソフトウェア」といった情報が必要であることに変わりはない。
特表2007-513405号公報
本発明は、上述した問題に鑑みてなされたものであり、複数(種)の仮想化ソフトウェアにより仮想化された仮想マシンの監視管理を可能とする監視管理装置、監視管理方法及びコンピュータプログラムを提供することを目的とする。
また、本発明は、仮想マシンと非仮想マシンとを共に監視管理可能な監視管理装置、監視管理方法及びコンピュータプログラムを提供することを他の目的とする。
また、本発明は、ホストマシン、仮想化ソフトウェア等を意識せずに透過的に操作可能にする監視管理装置、監視管理方法及びコンピュータプログラムを提供することを他の目的とする。
また、本発明は、信頼性の高い監視管理を可能とする監視管理装置、監視管理方法及びコンピュータプログラムを提供することを他の目的とする。
上記目的を達成するため、本発明の第1の観点に係る監視管理装置は、
操作対象のマシンを特定するマシン特定情報と操作内容を特定する操作特定情報とを入力する入力手段と、
監視管理対象のコンピュータ毎に該コンピュータ上で実行される仮想化ソフトウェアに関する仮想化ソフトウェア情報と、該仮想化ソフトウェアにより実現されるホストマシンと仮想マシンとに関するマシン情報と、を収集する収集手段と、
前記収集手段により収集された仮想化ソフトウェア情報とマシン情報に基づいて、ホストマシンと仮想マシンと仮想化ソフトウェアとを対応付けて、対応付けたホストマシンと仮想マシンと仮想化ソフトウェアとの対応関係を示す対応情報を保持する対応付手段と、
前記仮想化ソフトウェア別に配置され、対応する仮想化ソフトウェアとの間で通信を行う通信モジュールと、
前記入力手段により入力されたマシン特定情報と前記対応付手段により保持されている前記対応情報とに基づいて、入力されたマシン特定情報に対応するホストマシンと仮想化ソフトウェアとを特定する特定手段と、
前記特定手段により特定された仮想化ソフトウェアと通信可能な通信モジュールに、操作対象のマシンを特定するマシン特定情報と、操作内容を特定する操作特定情報と、ホストマシンを特定するホストマシン情報とを通知するモジュール通知手段と、
を備え、
前記特定手段により特定された仮想化ソフトウェアと通信可能な通信モジュールは、通知されたホストマシン情報で特定されるホストマシンに、操作対象のマシンを特定するマシン特定情報と操作内容を特定する操作特定情報とを通知する、
ことを特徴とする。
例えば、前記収集手段は、周期的に、監視管理対象のコンピュータの前記仮想化ソフトウェア情報とマシン情報を収集する。
例えば、非仮想マシンとの間で通信を行う非仮想マシン用の通信モジュールを備え、前記収集手段は、監視管理対象のコンピュータが非仮想マシンの際は、非仮想マシンの名称を収集し、前記対応付手段は、前記収集手段が非仮想マシンに関する情報を収集した際は、前記収集手段により収集された非仮想マシンの名称と該マシンが非仮想マシンであることを示す情報とを対応付けて保持し、前記モジュール通知手段は、前記特定手段により非仮想マシンが特定された際は前記非仮想マシン用の通信モジュールに、特定された非仮想マシンの名称と操作内容を特定する操作特定情報とを通知し、該非仮想マシン用の通信モジュールは、通知されたマシン名を有する非仮想マシンに、入力された操作を指示する。
例えば、通信モジュールは、プラグイン形式で構成されている。
また、本発明の第2の観点に係る監視管理方法は、
コンピュータにより監視管理対象のコンピュータを監視管理する方法であって、
コンピュータにより、監視管理対象のコンピュータ毎に該コンピュータ上で実行される仮想化ソフトウェアに関する仮想化ソフトウェア情報と、該仮想化ソフトウェアにより実現されるホストマシンと仮想マシンとに関するマシン情報と、を収集して、
コンピュータにより、前記収集した仮想化ソフトウェア情報とマシン情報に基づいて、ホストマシンと仮想マシンと仮想化ソフトウェアとを対応付けて、対応付けたホストマシンと仮想マシンと仮想化ソフトウェアとの対応関係を示す対応情報を保持して、
仮想マシンを特定して操作が指示された時に、コンピュータにより、保持されている前記対応情報に基づいて、該仮想マシンに対応するホストマシンと仮想化ソフトウェアを特定して、
コンピュータにより、特定した仮想化ソフトウェアと通信が可能なソフトウェアモジュールを選択して、選択したソフトウェアモジュールから特定したホストマシンに、操作対象の仮想マシンを特定するマシン特定情報と作内を特定する操作特定情報とを通知する、
ことを特徴とする。
また、本発明の第3の観点に係るコンピュータプログラムは、
コンピュータに、
監視管理対象のコンピュータ毎に該コンピュータ上で実行される仮想化ソフトウェアに関する仮想化ソフトウェア情報と、該仮想化ソフトウェアにより実現されるホストマシンと仮想マシンとに関するマシン情報と、を収集する処理と、
前記収集した仮想化ソフトウェア情報とマシン情報に基づいて、ホストマシンと仮想マシンと仮想化ソフトウェアとを対応付けて、対応付けたホストマシンと仮想マシンと仮想化ソフトウェアとの対応関係を示す対応情報を保持する処理と、
仮想マシンを特定して操作が指示された時に、保持されている前記対応情報に基づいて、該仮想マシンに対応するホストマシンと仮想化ソフトウェアを特定する処理と、
特定した仮想化ソフトウェアと通信が可能なソフトウェアモジュールを選択して、選択したソフトウェアモジュールから特定したホストマシンに、操作対象の仮想マシンを特定するマシン特定情報と作内を特定する操作特定情報とを通知する処理と、
を実行させることを特徴とする。
例えば、第1の観点に係る発明によれば、マシンを特定すると、そのマシンのホストマシンと該マシンの仮想化ソフトウェアの種類が自動的に抽出され、これらの情報を用いて処理が行われる。このため、マシンがどの仮想化ソフトウェアにより仮想化されたものであるかを判別して処理を指定する必要がない。
この発明の一実施の形態に係るコンピュータシステムの構成を示す構成図である。 (a)仮想マシンが動作する仮想マシンサーバの構成を示す図、(b)仮想化されていないコンピュータである非仮想マシンの構成を示す図である。 監視管理装置の物理的な構成を示すブロック図である。 監視管理装置と監視管理クライアントの機能ブロック図である。 仮想マシンと非仮想マシンとが混在した仮想化混在環境の例を示す図である。 (a)図5に示す仮想化混在環境を監視管理する場合に、監視管理システムに格納されるマシン情報テーブルT1の例を示す図である。(b)図5に示す仮想化混在環境を監視管理する場合に、監視管理システムに格納される対応付テーブルT2の例を示す図である。 (a)、(b)は、任意のマシンに操作を指示する手順を示すフローチャートである。 (a)、(b)は、任意のマシンに操作を指示する手順を示すフローチャートである。 (a)〜(c)は、操作を指示したマシンからの応答を伝達する手順を示すフローチャートである。 (a)、(b)は、操作を指示したマシンからの応答を伝達する手順を示すフローチャートである。 マシン情報テーブルT1を作成又は更新する処理を示すフローチャートである。 監視管理対象のシステムの構成の変化の具体例を示した図である。 図12に示す構成のマシン情報テーブルT1の例を示す図である。 仮想化ソフトウェアの種類を増加させる場合の処理手順を説明するためのブロック図である。
以下、本発明の一実施の形態に係る仮想化混在環境用監視管理システムについて説明する。
本実施形態に係る監視管理システムは、物理的には、図1に示すように、監視管理対象の複数台のコンピュータ11(11〜11)と、監視管理装置13と、監視管理クライアント15とから構成される。
複数台のコンピュータ11〜11は、仮想マシンが動作するコンピュータ(以下、区別のため、仮想マシンサーバと呼ぶ)と、仮想化されていないコンピュータ(以下区別のため非仮想マシンと呼ぶ)とを含む。
コンピュータ11〜11の一部は、ネットワークNWに接続され、相互に通信が可能となっている。
コンピュータ11のうち、仮想マシンサーバは、図2(a)に示すように、ハードウェア22、仮想化ソフトウェア23、一又は複数の仮想マシン24、ホストマシン25から構成される。
ハードウェア22は、仮想化対象のコンピュータ11のCPU(Central Processing Unit)、メモリ等のハードウェアリソースである。
仮想化ソフトウェア(仮想化ソリューション)23は、仮想マシンサーバ上にインストールされ、ハードウェア22上で動作し、仮想マシン24の動作、ホストマシン25の動作を可能とするプログラムである。また、仮想化ソフトウェア23は、ホストマシン25を介して監視管理装置13と交信し、また、各仮想マシン24と交信する。
例えば、ハイパーバイザ型の仮想化ソフトウェア23として、VMware Infrastructure(商標)、Xen(商標)、及び、Hyper-V(商標)などが存在する。また、HostOS型の仮想化ソフトウェア23として、VMware Workstation(商標)、及び、VirtualPC(商標)などが存在する。
仮想マシン24は、仮想化ソフトウェア23上で動作する。仮想マシン24のOSは互いに異なっても同一でもよい。仮想マシン24上で任意のアプリーションソフトウェアが動作する。
ホストマシン25は、例えば、仮想マシンサーバにインストールされたOSであり、仮想化ソフトウェア23を通じて仮想マシン24の管理を行うとともに監視管理装置13と各種処理のやりとりを行う。
コンピュータ11のうち、仮想化されていないコンピュータである非仮想マシンは、図2(b)に示すように、ハードウェア27とOS(オペレーティングシステム)28とから構成される。
図1に示す監視管理装置13は、監視管理対象のコンピュータ11を監視・管理する装置である。
監視管理装置13は、物理的には、図3に示すように、CPU31、記憶部32、通信部33、入出力部34を備える。
CPU31は、記憶部32に格納された動作プログラムを実行し、図4に示すように、仮想化モジュール41(41X,41Y,41P)と、仮想化モジュールAPI42と、監視管理マネージャ43とを実現する。
仮想化モジュール41は、仮想化ソフトウェア23(の種類)毎に用意され、監視管理クライアント15からの指示等に従って、対応する仮想化ソフトウェア23との間でホストマシン25を介して通信を行う。図4の例では、仮想化ソフトウェア23として、仮想化ソフトウェアXと仮想化ソフトウェアYの2つ(2種類)が用意されている。このため、仮想化モジュール41も、仮想化ソフトウェアXによる仮想化環境を監視管理する仮想化ソフトウェアX用モジュール41Xと、仮想化ソフトウェアYによる仮想化環境を監視管理する仮想化ソフトウェアY用モジュール41Yの2種類が用意されている。
さらに、非仮想マシンを制御するための非仮想マシン用モジュール41Pが用意されている。
これらのモジュール41X、41Y、41Pは、ソフトウェア本体(仮想化モジュールAPI42や監視管理マネージャ43を含む)の大きな変更なしに、追加や削除が可能なプラグインの形態で用意されており、図面では、プラグインP,プラグインY,プラグインPと表している。
一方、仮想化モジュールAPI(Application Program Interface)42は、全てのプラグイン41に共通に配置されており、監視管理クライアント15からの指示に応答して、仮想化環境を特定し、対応するプラグイン41に指示を伝達する。この処理を行うため、仮想化モジュールAPI42は、監視管理対象の仮想マシン24の名称と、その仮想マシン24が動作しているホストマシン25の名称と、仮想マシン24を実現している仮想化ソフトウェア(X,Y)23とを対応付けたマシン情報テーブルT1を格納している。また、マシン情報テーブルT1は、監視管理対象の非仮想マシンを特定する情報を含む。
また、仮想化モジュールAPI42には、プラグイン41の追加・削除が容易となるように、例えば、仮想化ソフトウェア23とプラグイン41の対応付テーブルT2を用意する。新たなプラグイン41を追加する場合には、例えば、新プラグイン41と対応する新仮想化ソフトウェア23の対応を対応付テーブルT2に追記する。
これにより、新仮想化ソフトウェア23により実現される仮想マシン24を操作する際に、仮想化モジュールAPI42が対応付テーブルT2を参照し、新プラグイン41を利用することとなる。
一例として、監視管理対象の仮想化混在システムが、図4に示す構成のときには、対応付テーブルT2は、図6(b)に示すものとなる。
また、監視管理対象の仮想化混在システムが、図5に例示する構成のときには、マシン情報テーブルT1は、図6(a)に示すようなものとなる。即ち、図5の例では、仮想化ソフトウェア23Xの環境には、2台のホストマシンMPとMQがある。そして、ホストマシンMPには、3台の仮想マシンMB〜MDが対応しており、ホストマシンMQには、2台の仮想マシンMI〜MJが対応している。また、仮想化ソフトウェア23Yの環境には、1台のホストマシンMOが配置されており、3台の仮想マシンME,MF,MHが対応している。さらに、非仮想マシンMAとMGが監視管理対象となっている。図6(a)に示すマシン情報テーブルT1には、これらの関係が全て登録されている。
監視管理マネージャ43は、監視管理装置13の全体の動作を制御する。
図1に示す監視管理クライアント15は、一般のコンピュータから構成され、ユーザの操作に従って監視管理装置13に種々の指示を入力し、また、監視管理装置13から提供された情報を出力する。このため、監視管理クライアント15には、専用のクライアントモジュールがインストールされている。
次に、上記構成のコンピュータシステムの動作を説明する。
まず、前提として、各仮想マシン24及び非仮想マシンは、それぞれ、プログラムに従って動作し、必要に応じて、ネットワークNWを介して情報の交換も行う。この動作自体は、従来と同様である。
一方、監視管理装置13は、こうして動作している各マシンを監視及び管理する。
ここで、ユーザがいずれかのマシンの操作を希望したとする。なお、操作とは、例えば、以下のようなものをいう。
(1)性能情報取得。
(2)マシンの状態変更。
a)起動、停止。
b)メモリやCPU等のリソース割り当て変更。
c)マシン間のOSイメージの移動(VMwareではVMotion, XenではLiveMigrationと呼ばれる)。
d)OSイメージの新規作成、スナップショットの作成、バックアップ。
e)リソースプールの管理。
(3)ジョブの制御。
(4)パッチ管理。
この場合、ユーザは、監視管理クライアント15上で、操作対象のマシンの名称(識別情報等でもよい)と実行したい操作を選択(指定)する。クライアントモジュールは、入力内容を検出し、操作対象のマシンを特定するマシン特定情報と操作内容を特定する操作特定情報とを監視管理装置13に通知する。なお、マシン特定情報と操作特定情報との形式は任意である。
通知に応答し、監視管理装置13の仮想化モジュールAPI42は、図7(a)の処理を開始し、まず、通知されたマシン名を引数にマシン情報テーブルT1を検索し、対応するホストマシン25と仮想化ソフトウェア23の種類を特定する(ステップS11)。なお、マシンが非仮想マシンの場合には、「非仮想マシン」が特定される。次に、仮想化モジュールAPI42は、対応付テーブルT2を参照して、特定した仮想化ソフトウェア23(又は非仮想マシン)に対応するプラグイン41を特定する。
次に、仮想化モジュールAPI42は、特定したプラグイン41に、操作対象のマシンと、特定したホストマシン25(又は非仮想マシン)と、操作の内容と、要求元とを通知する(ステップS12)。即ち、マシン特定情報と操作特定情報とホストマシン特定情報と、要求元特定情報とを通知する。なお、マシン特定情報と操作特定情報とは、監視管理クライアント15が通知する情報と実質的に同一であればよく、完全に同一である必要はない。
操作対象のマシンが仮想マシンの場合、仮想化モジュールAPI42からプラグイン41X又は41Yに上述の通知が行われる。通知を受けたプラグイン41X又は41Yは、図7(b)の処理を開始し、まず、通知されたホストマシン25(又は非仮想マシン)に、通知された操作対象のマシン名と操作内容と要求元とを通知する(ステップS13)。
通知を受けたホストマシン25は、図8(a)の処理を開始し、仮想化ソフトウェア23に、通知された操作対象のマシンと操作内容と要求元とを通知する(ステップS14)。
通知を受けた仮想化ソフトウェア23は、図8(b)の処理を開始し、通知された操作対象のマシン(仮想マシン24)に操作内容と要求元とを通知する(ステップS15)。
通知を受けたマシン(仮想マシン24)は、通知された操作を行う。
操作が完了すると、マシンは、図9(a)の処理を開始し、操作の結果を示す情報と最終送信先(要求元)とを仮想化ソフトウェア23に通知する(ステップS21)。
通知に応答し、仮想化ソフトウェア23は、図9(b)の処理を開始し、操作結果情報と最終送信先(要求元)とをホストマシン25に通知する(ステップS22)。
通知に応答し、ホストマシン25は、図9(c)の処理を開始し、操作結果情報と最終送信先(要求元)とを対応するプラグイン41に通知する(ステップS23)。
通知に応答し、プラグイン41は、図10(a)の処理を開始し、操作結果情報と最終送信先(要求元)とを仮想化モジュールAPI42に通知する(ステップS24)。
通知に応答し、仮想化モジュールAPI42は、図10(b)の処理を開始し、操作結果情報を最終送信先(要求元)に通知する(ステップS25)。
一方、操作対象のマシンが非仮想マシンの場合には、仮想化モジュールAPI42は、プラグイン41Pを特定し、プラグイン41Pに、特定した非仮想マシンと、操作の内容と、要求元とを通知する。プラグイン41Pは、仮想化モジュールAPI42から通知された非仮想マシンに、操作内容と要求元とを通知する。通知を受けた非仮想マシンは、通知された操作を行う。操作が完了すると、非仮想マシンは、操作の結果を示す情報と最終送信先(要求元)とをプラグイン41Pに通知する。プラグイン41Pは、図10(a)の処理を実行し、操作結果情報と最終送信先(要求元)とを仮想化モジュールAPI42に通知する(ステップS24)。仮想化モジュールAPI42は、図10(b)の処理を開始し、操作結果情報を最終送信先(要求元)に通知する(ステップS25)。
こうして、監視管理クライアント15は、任意のマシンを、そのマシンが位置するホストマシン25やそのマシンの仮想化ソフトウェア23を意識することなく、操作することができる。
例えば、ユーザの指定した操作対象がマシンMBであったと仮定する。図5の仮想化環境の下では、マシンMBは、ホストマシンMPに位置する仮想マシン24であり、仮想化ソフトウェア23は「X」である。従って、操作の指示は、仮想化モジュールAPI42→プラグイン41X→ホストマシンMP→仮想化ソフトウェアX→仮想マシンMBと伝達される。さらに、仮想マシンMBからの応答は、仮想マシンMB→仮想化ソフトウェアX→ホストマシンMP→プラグイン41X→仮想化モジュールAPI42→監視管理クライアント15、と伝達される。
また、例えば、ユーザの指定した操作対象がマシンMGであったと仮定する。図5の仮想化環境の下では、マシンMGは、非仮想マシンである。従って、操作の指示は、仮想化モジュールAPI42→プラグイン41P→非仮想マシンMGと伝達される。さらに、非仮想マシンMGからの応答は、非仮想マシンMG→プラグイン41P→仮想化モジュールAPI42→監視管理クライアント15、と伝達される。
このようにして、本実施形態では、マシン情報テーブルT1を仮想化モジュールAPI42に配置し、操作対象マシンをキーに、マシン情報テーブルT1を検索し、検索で得た情報を入力情報に追加し、操作対象マシンの特定に利用する。これにより、ユーザは、詳細な情報を意識することなく、仮想マシン24と非仮想マシンとを同様に監視管理することが可能となる。
マシン情報テーブルT1の作成手法自体は任意であるが、仮想化モジュールAPI42が、例えば図11のフローチャートに示す手順で作成することが望ましい。
仮想化モジュールAPI42には、予め、各コンピュータ11がどの仮想化ソフトウェア23(XとYのどちら)で仮想化されているかという情報と、そのコンピュータ11上のホストマシン25のアドレス(例えば、IPアドレス)が予め登録されている。
仮想化モジュールAPI42は、まず、プラグイン41を1つ特定する(ステップS31)。例えば、プラグイン41Xを特定する。
次に、仮想化モジュールAPI42は、特定したプラグイン41に対応するホストマシン25(又は非仮想マシン)を1つ特定する(ステップS32)。
次に、仮想化モジュールAPI42は、特定したプラグイン41から特定したホストマシン25(又は非仮想マシン)宛に、構成情報(ステータス)を問い合わせる情報を送信する(ステップS33)。
ホストマシン25は、問い合わせを受信すると、この問い合わせを仮想化ソフトウェア23に伝達する。仮想化ソフトウェア23は、自己の上で稼働している仮想マシン24に順次問い合わせ、仮想マシン名(又は識別情報)を取得する。仮想化ソフトウェア23は、取得した仮想マシン名をホストマシン25に通知する。ホストマシン25は、ホストマシン名と取得した仮想マシン名とを対応付けて、プラグイン41に通知する。非仮想マシンの場合には、同様に、そのマシン名を返信する。
仮想モジュールAPI42は、プラグイン41を介して、ホストマシン名と仮想マシン名の組(又は非仮想マシンの名称)を受信し、一旦記憶する(ステップS34)。こうして、監視管理対象の構成情報が蓄積される。
続いて、特定しているプラグイン41に対応する全てのホストマシン25についての処理が終了したか否かを判別し(ステップS35)、処理が終了していれば(ステップS35;Yes)、全てのプラグイン41についての処理を終了したか否かを判別する(ステップS36)。
ステップS35で、終了していない、即ち、未処理(構成情報を受け取っていない)のホストマシン25が存在すると判別した場合には(ステップS35;No)、未処理のホストマシン25を特定し(ステップS37)、ステップS33以下の処理を繰り返す。
また、ステップS36で、終了していない、即ち、未処理(構成情報を受け取っていない)のプラグイン41が存在すると判別した場合には(ステップS36;No)、未処理のプラグイン41を特定し(ステップS38)、ステップS32以下の処理を繰り返す。
ステップS37で全てのプラグイン41について処理が終了したと判別すると(ステップS36;Yes)、仮想モジュールAPI42は、ステップS34で蓄積した構成情報を用いて、マシン情報テーブルT1を作成する(ステップS39)。
図11のマシン情報テーブル作成処理を、例えば、タイマ割り込み等に応じて周期的に実行することにより、監視管理対象のシステムの構成の変化を反映した監視管理が可能となる。
一例として、図5に示す構成において、ホストマシンMOに位置していた仮想マシンMHが、図12に示すように、ホストマシンMQに移動したと仮定する。
この変更が発生した後、図11の処理が開始すると、仮想化モジュールAPI42は、例えば、プラグイン41Xを指定し(ステップS31)、続いて、ホストマシンMPを指定し(ステップS32)、問い合わせを行い(ステップS33)、その構成情報を取得して記憶する(ステップS34)。続いて、仮想化モジュールAPI42は、未処理のホストマシンMQを指定し(ステップS37)、問い合わせを行い(ステップS33)、その構成情報を取得して記憶する(ステップS34)。この段階では、ホストマシンMPと仮想マシンMB〜MDが同一の仮想化ソフトウェアX上に配置されているとの構成情報と、ホストマシンMQと仮想マシンMH、MI、MJとが同一の仮想化ソフトウェアX上に配置されているとの構成情報が記憶される。
続いて、未処理のプラグイン41Yを指定し(ステップS38)、ホストマシンMOを指定し(ステップS32)、問い合わせを行い(ステップS33)、ホストマシンMOと仮想マシンMEとMFとが仮想化ソフトウェアY上に配置されているとの構成情報を取得しこれを記憶する(ステップS34)。
続いて、未処理のプラグイン41Pを指定し(ステップS38)、マシンMAを指定し(ステップS32)、問い合わせを行い(ステップS33)、非仮想マシンMAの情報を取得しこれを記憶する(ステップS34)。この段階では、他に非仮想マシンが存在しないので、ステップS35,S36でYesと判別され、構成情報を収集する処理が終了する。
続いて、得られた構成情報に基づいて、例えば、図13に示すように、マシン情報テーブルT1が生成される(ステップS39)。
仮想化モジュールAPI42又は監視管理クライアント15は、新たに生成されたマシン情報テーブルT1と先に生成したマシン情報テーブルT1とを比較することにより、例えば、仮想マシンMHがホストマシンMOからMQに移動し、非仮想マシンMGが除去されたことが判別できる。
次に、図14に示すように、監視管理対象に、仮想化ソフトウェアZにより、仮想化されたコンピュータ11を追加する場合の処理を説明する。
この場合、まず、新たな仮想化ソフトウェアZに対応するプラグイン(仮想化モジュール)41Zを生成し、監視管理装置13に追加する。さらに、仮想化モジュールAPI42の対応付テーブルT2に、仮想化ソフトウェア41Zとプラグイン41Zの組を登録する。また、プラグイン41Zの通信先として、追加する仮想マシンサーバのホストマシン(ここでは、MSとする)のアドレスを指定する。
このようにすれば、プラグイン41Zを追加した後、図11の処理を行う際に、ステップS31で、プラグイン41Zが指定され、さらに、ステップS32で、ホストマシンMSが指定され、ホストマシンMSからプラグイン41Zを介して、仮想化ソフトウェアZ上のホストマシンMSと仮想マシンの構成情報が得られ、マシン情報テーブルT1に追加される。以後、追加された仮想化ソフトウェアZ上のホストマシンMSと各仮想マシン24への操作が可能となる。
以上説明したように、本実施の形態によれば、監視管理装置、より正確には、監視管理ソフトウェアが、「マシン名、ホストマシン、仮想化ソフトウェア」をテーブル等で保持し、マシンごとにその属性を自動で検出し、テーブルを再設定する。これにより、各仮想マシン24及び/又は非仮想マシンが別の属性に変更された場合であっても、「ホストマシン、仮想化ソフトウェア」を意識することなく、必要な指示や操作を行うことができる。
また、環境の差異を吸収する層である仮想化モジュールがプラグイン形式であるため、プラグイン41を追加すれば、任意の仮想化ソフトウェア23に対応可能である。
なおこの発明は、上記実施の形態に限定されず、種々の変形及び応用が可能である。例えば、上述した各部材の数、方式などは任意に変更可能である。
例えば、上記実施の形態においては、仮想マシン24自身が、問い合わせに応じて、自己の情報を監視管理装置13に返信したが、例えば、仮想化ソフトウェア23或いは仮想マシン24にエージェントを配置し、エージェントが、要求された情報を取得して返信するように構成してもよい。また、ユーザの指示を、監視管理クライアント15を介して監視管理装置13に入力したが、監視管理クライアント15の入出力部34から直接入力する等してもよい。
11(111〜11n)…監視管理対象コンピュータ
13…監視管理装置
15…監視管理クライアント
22…ハードウェア
23…仮想化ソフトウェア
24…仮想マシン
25…ホストマシン
31…CPU
32…記憶部
33…通信部
34…入出力部
41(41X,41Y,41P,41Z)…プラグイン(仮想化モジュール)
42…仮想化モジュールAPI
43…監視管理マネージャ

Claims (6)

  1. 操作対象のマシンを特定するマシン特定情報と操作内容を特定する操作特定情報とを入力する入力手段と、
    監視管理対象のコンピュータ毎に該コンピュータ上で実行される仮想化ソフトウェアに関する仮想化ソフトウェア情報と、該仮想化ソフトウェアにより実現されるホストマシンと仮想マシンとに関するマシン情報と、を収集する収集手段と、
    前記収集手段により収集された仮想化ソフトウェア情報とマシン情報に基づいて、ホストマシンと仮想マシンと仮想化ソフトウェアとを対応付けて、対応付けたホストマシンと仮想マシンと仮想化ソフトウェアとの対応関係を示す対応情報を保持する対応付手段と、
    前記仮想化ソフトウェア別に配置され、対応する仮想化ソフトウェアとの間で通信を行う通信モジュールと、
    前記入力手段により入力されたマシン特定情報と前記対応付手段により保持されている前記対応情報とに基づいて、入力されたマシン特定情報に対応するホストマシンと仮想化ソフトウェアとを特定する特定手段と、
    前記特定手段により特定された仮想化ソフトウェアと通信可能な通信モジュールに、操作対象のマシンを特定するマシン特定情報と、操作内容を特定する操作特定情報と、ホストマシンを特定するホストマシン情報とを通知するモジュール通知手段と、
    を備え、
    前記特定手段により特定された仮想化ソフトウェアと通信可能な通信モジュールは、通知されたホストマシン情報で特定されるホストマシンに、操作対象のマシンを特定するマシン特定情報と操作内容を特定する操作特定情報とを通知する、
    ことを特徴とする監視管理装置。
  2. 前記収集手段は、周期的に、監視管理対象のコンピュータの前記仮想化ソフトウェア情報とマシン情報を収集する、
    ことを特徴とする請求項に記載の監視管理装置。
  3. 非仮想マシンとの間で通信を行う非仮想マシン用の通信モジュールを備え、
    前記収集手段は、監視管理対象のコンピュータが非仮想マシンの際は、非仮想マシンの名称を収集し、
    前記対応付手段は、前記収集手段が非仮想マシンに関する情報を収集した際は、前記収集手段により収集された非仮想マシンの名称と該マシンが非仮想マシンであることを示す情報とを対応付けて保持し、
    前記モジュール通知手段は、前記特定手段により非仮想マシンが特定された際は、前記非仮想マシン用の通信モジュールに、特定された非仮想マシンの名称と操作内容を特定する操作特定情報とを通知し、
    該非仮想マシン用の通信モジュールは、通知されたマシン名を有する非仮想マシンに、入力された操作を指示する、
    ことを特徴とする請求項1又は2に記載の監視管理装置。
  4. 前記通信モジュールは、プラグイン形式で構成されている、ことを特徴とする請求項1乃至のいずれか1項に記載の監視管理装置。
  5. コンピュータにより監視管理対象のコンピュータを監視管理する方法であって、
    コンピュータにより、監視管理対象のコンピュータ毎に該コンピュータ上で実行される仮想化ソフトウェアに関する仮想化ソフトウェア情報と、該仮想化ソフトウェアにより実現されるホストマシンと仮想マシンとに関するマシン情報と、を収集して、
    コンピュータにより、前記収集した仮想化ソフトウェア情報とマシン情報に基づいて、ホストマシンと仮想マシンと仮想化ソフトウェアとを対応付けて、対応付けたホストマシンと仮想マシンと仮想化ソフトウェアとの対応関係を示す対応情報を保持して、
    仮想マシンを特定して操作が指示された時に、コンピュータにより、保持されている前記対応情報に基づいて、該仮想マシンに対応するホストマシンと仮想化ソフトウェアを特定して、
    コンピュータにより、特定した仮想化ソフトウェアと通信が可能なソフトウェアモジュールを選択して、選択したソフトウェアモジュールから特定したホストマシンに、操作対象の仮想マシンを特定するマシン特定情報と作内を特定する操作特定情報とを通知する、
    ことを特徴とする監視管理方法。
  6. コンピュータに、
    監視管理対象のコンピュータ毎に該コンピュータ上で実行される仮想化ソフトウェアに関する仮想化ソフトウェア情報と、該仮想化ソフトウェアにより実現されるホストマシンと仮想マシンとに関するマシン情報と、を収集する処理と、
    前記収集した仮想化ソフトウェア情報とマシン情報に基づいて、ホストマシンと仮想マシンと仮想化ソフトウェアとを対応付けて、対応付けたホストマシンと仮想マシンと仮想化ソフトウェアとの対応関係を示す対応情報を保持する処理と、
    仮想マシンを特定して操作が指示された時に、保持されている前記対応情報に基づいて、該仮想マシンに対応するホストマシンと仮想化ソフトウェアを特定する処理と、
    特定した仮想化ソフトウェアと通信が可能なソフトウェアモジュールを選択して、選択したソフトウェアモジュールから特定したホストマシンに、操作対象の仮想マシンを特定するマシン特定情報と作内を特定する操作特定情報とを通知する処理と、
    を実行させることを特徴とするコンピュータプログラム。
JP2009114045A 2009-05-08 2009-05-08 仮想マシンの監視管理装置、監視管理方法及びコンピュータプログラム Expired - Fee Related JP4870794B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009114045A JP4870794B2 (ja) 2009-05-08 2009-05-08 仮想マシンの監視管理装置、監視管理方法及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009114045A JP4870794B2 (ja) 2009-05-08 2009-05-08 仮想マシンの監視管理装置、監視管理方法及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2010262545A JP2010262545A (ja) 2010-11-18
JP4870794B2 true JP4870794B2 (ja) 2012-02-08

Family

ID=43360544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009114045A Expired - Fee Related JP4870794B2 (ja) 2009-05-08 2009-05-08 仮想マシンの監視管理装置、監視管理方法及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP4870794B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101434794B1 (ko) 2013-05-27 2014-08-27 (주)스마일게이트엔터테인먼트 프로그램 해킹 방어 방법 및 시스템
JP5904514B1 (ja) 2014-10-28 2016-04-13 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 仮想マシンのスナップショットに対して更新を自動的に適用する方法、並びに、そのコンピュータ・システム及びコンピュータ・システム用プログラム
CN108073440B (zh) * 2016-11-18 2023-07-07 南京中兴新软件有限责任公司 一种虚拟化环境下的显卡管理方法、装置及***
JP6772849B2 (ja) 2017-01-16 2020-10-21 富士通株式会社 情報処理装置、情報処理方法、およびプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4438807B2 (ja) * 2007-03-02 2010-03-24 日本電気株式会社 仮想マシンシステム、管理サーバ、仮想マシン移行方法及びプログラム

Also Published As

Publication number Publication date
JP2010262545A (ja) 2010-11-18

Similar Documents

Publication Publication Date Title
JP5427574B2 (ja) 仮想計算機の移動管理方法、前記移動管理方法を用いた計算機、前記移動管理方法を用いた仮想化機構および前記移動管理方法を用いた計算機システム
CN107209710B (zh) 节点***、服务器设备、缩放控制方法和程序
CN110417613B (zh) 基于Jmeter的分布式性能测试方法、装置、设备及存储介质
US9329889B2 (en) Rapid creation and reconfiguration of virtual machines on hosts
US10922123B2 (en) Container migration in computing systems
CN112099918A (zh) 容器化环境中的集群的实时迁移
JP5708937B2 (ja) 構成情報管理システム、構成情報管理方法、及び構成情報管理用プログラム
US20230006944A1 (en) Interoperable cloud based media processing using dynamic network interface
TW201232414A (en) Management of a data network of a computing environment
US20190089588A1 (en) Network function instance management method and related device
EP2859443B1 (en) Virtual machine image write leasing
CN110661647A (zh) 一种生命周期管理方法及装置
EP3531280B1 (en) Accelerator loading method and system, and accelerator loading apparatus
TW201232415A (en) Integration of heterogeneous computing systems into a hybrid computing system
KR102524540B1 (ko) 멀티 클라우드 서비스 플랫폼 장치 및 방법
JP4870794B2 (ja) 仮想マシンの監視管理装置、監視管理方法及びコンピュータプログラム
EP3230865B1 (en) Recovery execution system using programatic generation of actionable workflows
US10735540B1 (en) Automated proxy selection and switchover
TW201305912A (zh) 虛擬機管理系統及方法
TWI498750B (zh) Method and system of intelligent cloud migration
US11847611B2 (en) Orchestrating and automating product deployment flow and lifecycle management
JP5754294B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
WO2010035480A1 (ja) 分散処理システム、分散処理方法およびプログラム
Jankowski et al. Grid checkpointing architecture-integration of low-level checkpointing capabilites with grid
KR20230064825A (ko) 가상화 기술에 기반한 데이터 센터 장치 통합 관리 시스템 및 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111019

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111108

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111117

R150 Certificate of patent or registration of utility model

Ref document number: 4870794

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141125

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees