JPWO2010100867A1 - Virtual machine management system - Google Patents
Virtual machine management system Download PDFInfo
- Publication number
- JPWO2010100867A1 JPWO2010100867A1 JP2011502628A JP2011502628A JPWO2010100867A1 JP WO2010100867 A1 JPWO2010100867 A1 JP WO2010100867A1 JP 2011502628 A JP2011502628 A JP 2011502628A JP 2011502628 A JP2011502628 A JP 2011502628A JP WO2010100867 A1 JPWO2010100867 A1 JP WO2010100867A1
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- information
- update
- package
- virtual
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 claims abstract description 25
- 238000007726 management method Methods 0.000 claims description 257
- 238000004891 communication Methods 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 19
- 238000009795 derivation Methods 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 24
- 238000000034 method Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 13
- 238000001994 activation Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000009434 installation Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
仮想計算機の実行環境の更新状況をシステム管理者が容易に把握することを可能にする仮想計算機管理システムを提供する。仮想計算機管理システムでは、仮想計算機の各々は、自己の実行環境の更新内容を示す更新情報を更新記録ファイルに記録するシステム更新手段と、当該更新情報を仮想計算機管理装置に送信する更新情報送信手段とを含む。仮想計算機管理装置は、送信された当該更新情報を更新情報ファイルに記録する更新情報格納制御手段と、更新情報ファイルに記録されている更新情報を比較して仮想計算機の実行環境の更新状況を示すデータを生成する更新情報比較手段とを含む。Provided is a virtual machine management system that enables a system administrator to easily grasp the update status of the execution environment of a virtual machine. In the virtual machine management system, each virtual machine has system update means for recording update information indicating update contents of its own execution environment in an update record file, and update information transmission means for sending the update information to the virtual machine management apparatus. Including. The virtual machine management device compares the update information storage control means for recording the transmitted update information in the update information file and the update information recorded in the update information file to indicate the update status of the execution environment of the virtual machine Update information comparing means for generating data.
Description
本発明は、実計算機上に仮想計算機を構成するための仮想化技術に関する。 The present invention relates to a virtualization technique for configuring a virtual computer on a real computer.
近年の実計算機(ハードウェア構成の計算機)の高性能化に伴い、実計算機上に仮想計算機(仮想マシン:virtual machine)を構成する仮想化技術が広く利用されている。1台の実計算機上に複数の仮想計算機を構成すれば、これら仮想計算機上でそれぞれ複数種のオペレーティング・システム(OS:Operating System)を同時並行に動作させることができるので、実計算機資源の有効活用が可能である。また、仮想計算機の構成に必要なファイル群を通信ネットワークを介して実計算機に伝送することにより、この実計算機上にユーザのコンピューティング環境を容易に構築することも可能となる。 With the recent improvement in performance of real computers (hardware configuration computers), virtualization technology that configures virtual computers (virtual machines) on real computers is widely used. If multiple virtual machines are configured on a single real machine, multiple types of operating systems (OS) can be operated in parallel on these virtual machines. It can be used. Further, by transmitting a file group necessary for the configuration of the virtual computer to the real computer via the communication network, it becomes possible to easily construct a user computing environment on the real computer.
通信ネットワーク上に分散する多数の仮想計算機を保守管理する作業は容易ではない。そこで、多数の仮想計算機を通信ネットワークを介して効率的に管理する技術が要求されている。この種の管理技術に関する先行技術文献としては、たとえば、特許文献1(特開2005−332223号公報)、特許文献2(特開2005−208999号公報)、特許文献3(特開2005−115653号公報)および特許文献4(米国特許第7398524号明細書)が挙げられる。 The work of maintaining and managing a large number of virtual machines distributed on a communication network is not easy. Therefore, a technology for efficiently managing a large number of virtual machines via a communication network is required. Prior art documents relating to this type of management technology include, for example, Patent Document 1 (Japanese Patent Laid-Open No. 2005-332223), Patent Document 2 (Japanese Patent Laid-Open No. 2005-208999), and Patent Document 3 (Japanese Patent Laid-Open No. 2005-115653). Gazette) and Patent Document 4 (US Pat. No. 7,398,524).
実計算機上に仮想計算機を短時間で構築する方法として、一度構築された仮想計算機の実行環境を表すイメージファイル群(OSやアプリケーションプログラムやディレクトリ構造などのイメージ)を保存しておき、このイメージファイル群を仮想計算機の再構築の際に再利用するというものがある。従来の管理技術では、通信ネットワーク上に分散する仮想計算機を遠隔管理するための装置(以下、管理サーバと呼ぶ。)が使用される。管理サーバがそのようなイメージファイル群を保存しておけば、実計算機上の仮想計算機制御部(ホストOSや仮想計算機モニタ)が、そのイメージファイル群を用いて仮想計算機の実行環境を短時間にかつ容易に再構築することができる。更に、イメージファイル群がパッケージ化されて管理サーバに保存されていれば、必要なパッケージのみを用いて仮想計算機の所望の実行環境を容易に構築することが可能である。 As a method of building a virtual machine in a short time on a real machine, an image file group (an image of an OS, application program, directory structure, etc.) representing the execution environment of the virtual machine once built is saved, and this image file There is a method of reusing groups when reconstructing virtual machines. In the conventional management technique, an apparatus (hereinafter referred to as a management server) for remotely managing virtual machines distributed on a communication network is used. If the management server stores such an image file group, the virtual machine control unit (host OS or virtual machine monitor) on the real computer can use the image file group to shorten the execution environment of the virtual machine in a short time. And can be easily reconstructed. Furthermore, if the image file group is packaged and stored in the management server, it is possible to easily construct a desired execution environment of the virtual machine using only necessary packages.
仮想計算機のユーザごとに使用するコンピューティング環境が異なる場合、仮想計算機の構築に必要なイメージファイル群は、仮想計算機の実行環境ごとに異なる。管理サーバは、仮想計算機の構築に必要な最小限のイメージファイル群(たとえば、特定のアプリケーションプログラムや特定のディレクトリ構造のイメージ)を実計算機に転送するために、仮想計算機ごとにその実行環境の詳細を把握しておくことが必要である。しかしながら、従来の管理技術では、通信ネットワーク上に分散配置されている多数の仮想計算機の実行環境の詳細を管理サーバが正確かつ完全に把握することが難しいという問題がある。 When the computing environment used for each virtual machine user is different, the image file group necessary for constructing the virtual machine is different for each execution environment of the virtual machine. The management server transfers details of the execution environment for each virtual machine in order to transfer a minimum image file group (for example, an image of a specific application program or a specific directory structure) necessary for the construction of the virtual machine to the real machine. It is necessary to understand this. However, the conventional management technique has a problem that it is difficult for the management server to accurately and completely grasp the details of the execution environment of a large number of virtual machines distributed and arranged on the communication network.
たとえば、特許文献1に開示されている仮想計算機管理システム(仮想マシン管理システム)は、複数の仮想マシンサーバ(仮想計算機)が稼働する環境を管理し、必要なときにすぐに環境の再構築を行うことができる。これら仮想マシンサーバは、当該仮想マシンサーバ上で動作するOSの識別情報やOSのバージョン情報などの設定情報を仮想計算機管理システムに送信する機能を有する。仮想計算機管理システムは、仮想マシンサーバから送信された設定情報を記憶しおき、この設定情報に基づいて必要なときに仮想マシンサーバの環境の再構築を短時間で行うことができる。しかしながら、特許文献1の仮想計算機管理システムでは、システム管理者は、多数の仮想マシンサーバの実行環境の更新状況を容易に把握することができない。
For example, a virtual machine management system (virtual machine management system) disclosed in
上記に鑑みて本発明の目的は、通信ネットワーク上に分散している多数の仮想計算機の実行環境の更新状況をシステム管理者が容易に把握することを可能にする仮想計算機管理システムを提供するものである。 In view of the above, an object of the present invention is to provide a virtual machine management system that enables a system administrator to easily grasp the update status of the execution environment of a large number of virtual machines distributed on a communication network. It is.
本発明によれば、各々が少なくとも1台の仮想計算機を有する複数の実計算機と、前記仮想計算機を通信ネットワークを介して遠隔制御する仮想計算機管理装置と、前記複数の仮想計算機にそれぞれ対応して用意された複数の更新情報ファイルが格納される記憶装置と、を備えた仮想計算機管理システムが提供される。この仮想計算機管理システムでは、前記各仮想計算機は、更新記録ファイルが格納されるデータ記憶部と、当該各仮想計算機の実行環境の更新が実行されたときに当該更新の内容を示す更新情報を前記更新記録ファイルに記録するシステム更新手段と、前記更新記録ファイル内の当該更新情報を前記仮想計算機管理装置に送信する更新情報送信手段と、を含み、前記仮想計算機管理装置は、前記更新情報送信手段から送信された当該更新情報を当該更新情報ファイルに記録する更新情報格納制御手段と、前記更新情報ファイルに記録されている更新情報を比較して前記仮想計算機の実行環境の更新状況を示すデータを生成する更新情報比較手段と、を含む。 According to the present invention, a plurality of real computers each having at least one virtual computer, a virtual computer management device that remotely controls the virtual computer via a communication network, and the plurality of virtual computers, respectively. A virtual machine management system is provided that includes a storage device that stores a plurality of prepared update information files. In this virtual machine management system, each virtual machine has a data storage unit in which an update record file is stored, and update information indicating the contents of the update when the execution environment of each virtual machine is updated. System update means for recording in an update record file; and update information transmission means for transmitting the update information in the update record file to the virtual machine management apparatus, wherein the virtual machine management apparatus is the update information transmission means Update information storage control means for recording the update information transmitted from the update information file and data indicating the update status of the execution environment of the virtual machine by comparing the update information recorded in the update information file Update information comparing means to be generated.
本発明によれば、各々が少なくとも1台の仮想計算機を有する複数の実計算機と、前記仮想計算機を通信ネットワークを介して遠隔制御する仮想計算機管理装置と、を備えた仮想計算機管理システムが提供される。この仮想計算機管理システムでは、前記各仮想計算機は、当該各仮想計算機の実行環境を構築するために当該各仮想計算機に導入された複数のソフトウェア・パッケージの識別情報と、当該ソフトウェア・パッケージの相互依存関係を示す依存関係情報とをパッケージ情報として前記仮想計算機管理装置に送信するパッケージ情報送信手段を含み、前記仮想計算機管理装置は、前記仮想計算機ごとに前記パッケージ情報送信手段から送信された前記パッケージ情報を記憶装置に格納するパッケージ情報格納制御手段と、前記記憶装置に格納されている前記パッケージ情報を比較して前記仮想計算機の実行環境の更新状況を示すデータを生成するパッケージ情報比較手段と、を含む。 According to the present invention, there is provided a virtual machine management system comprising a plurality of real machines each having at least one virtual machine, and a virtual machine management apparatus that remotely controls the virtual machine via a communication network. The In this virtual machine management system, each virtual machine has identification information of a plurality of software packages introduced into each virtual machine in order to construct an execution environment of each virtual machine, and interdependencies between the software packages. Package information transmitting means for transmitting dependency information indicating a relationship to the virtual machine management apparatus as package information, wherein the virtual machine management apparatus transmits the package information transmitted from the package information transmission means for each virtual machine. Package information storage control means for storing data in a storage device, and package information comparison means for comparing the package information stored in the storage device to generate data indicating the update status of the execution environment of the virtual machine, Including.
本発明による仮想計算機管理システムによれば、通信ネットワーク上に分散している多数の仮想計算機の実行環境に関する正確な詳細情報を取得し、当該実行環境の更新状況を示すデータを提供することができる。よって、システム管理者の管理負担が大幅に軽減される。 According to the virtual machine management system of the present invention, it is possible to acquire accurate detailed information regarding the execution environment of a large number of virtual machines distributed on the communication network, and to provide data indicating the update status of the execution environment. . Therefore, the management burden on the system administrator is greatly reduced.
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。 The above-described object and other objects, features, and advantages will become more apparent from the preferred embodiments described below and the accompanying drawings.
以下、本発明に係る実施形態について図面を参照しつつ説明する。なお、すべての図面において、同様な構成要素には同一符号を付し、その詳細な説明は重複しないように適宜省略される。 Hereinafter, embodiments according to the present invention will be described with reference to the drawings. In all the drawings, the same components are denoted by the same reference numerals, and detailed description thereof is appropriately omitted so as not to overlap.
(第1の実施形態)
図1は、本発明に係る第1の実施形態の仮想計算機管理システムの概略構成を示す機能ブロック図である。この仮想計算機管理システムは、複数の実計算機3001〜300Nと、仮想計算機管理サーバ(Virtual Machine Management Server)100Aと、記憶装置200と、管理端末400とを備えている。これら実計算機3001〜300N、仮想計算機管理サーバ100A、記憶装置200および管理端末400は、通信ネットワーク500を介して相互に接続されている。(First embodiment)
FIG. 1 is a functional block diagram showing a schematic configuration of a virtual machine management system according to the first embodiment of the present invention. This virtual machine management system includes a plurality of
実計算機3001〜300Nの各々には、少なくとも1台の仮想計算機が起動する。図1に示されるように、実計算機3001は、仮想計算機制御部3101を有しており、この仮想計算機制御部3101の制御下で実計算機3001上に仮想計算機3011が構築されている。他の実計算機3002〜300Nも、実計算機3001と同様の構成を有している。すなわち、実計算機3002〜300Nは、それぞれ、仮想計算機制御部3102〜310Nの制御下で構築された仮想計算機3012〜301Nを有している。仮想計算機管理サーバ100Aは、通信ネットワーク500を介して実計算機3001〜300N上の仮想計算機群を遠隔管理する機能を有している。At least one virtual machine is started in each of the
仮想計算機制御部3101は、実計算機3001の記憶装置(図示せず)に記憶されているディスクイメージや構成ファイル群に基づいて仮想計算機3011を論理的に構成する機能を有する。仮想計算機制御部3102〜310Nも、仮想計算機制御部3101と同様の機能を有する。本実施形態では、仮想計算機制御部3101は、実計算機3001上で動作する仮想計算機モニタ(VMM:Virtual Machine Monitor)である。仮想計算機モニタが実計算機上で直接動作する構成と、仮想計算機モニタが実計算機上のホスト・オペレーティング・システム(ホストOS)上で動作する構成とがあり得る。Virtual
仮想計算機モニタは、ソフトウェアまたはハードウェアにより実現可能である。既存の仮想計算機モニタとしては、たとえば、VMware(登録商標)やXen(登録商標)が挙げられる。 The virtual machine monitor can be realized by software or hardware. Examples of the existing virtual machine monitor include VMware (registered trademark) and Xen (registered trademark).
なお、実計算機3001〜300Nのハードウェア構成は、汎用的な構成であればよく、たとえば、CPU(Central Processing Unit)などのプロセッサ、主メモリ、キャッシュメモリ、バス回路、タイマ回路、入力装置(たとえば、キーボード)および出力装置(たとえば、ディスプレイやプリンタ)などの物理資源によって構成され得る。たとえば、実計算機3001〜300Nを、ワークステーションまたはパーソナルコンピュータで実現してもよい。The hardware configuration of the
管理端末400は、キーボードやポインティングデバイスなどの入力装置と、液晶ディスプレイなどの出力装置とを備えた端末装置である。この管理端末400は、ネットワーク500を介して仮想計算機管理サーバ100Aと接続されている。管理端末400は、たとえば、Windows(登録商標)オペレーティング・システムが動作するパーソナルコンピュータで構成できる。
The
実計算機3001上の仮想計算機3011は、更新記録送信部(更新情報送信手段)302、システム更新部303および更新記録ファイル304を有する。システム更新部303は、仮想計算機3011の実行環境(システム)の更新が実行されたときに、この更新の内容を示す更新情報を更新記録ファイル304に記録する機能を有する。たとえば、仮想計算機3011に新たなアプリケーション・プログラムが導入されたり、既存のアプリケーション・プログラムが新バージョンにアップデートされたり、仮想計算機3011上で動作する仮想OSのシステムファイルが更新されたりすると、仮想計算機3011の実行環境が更新される。この実行環境を表すデータがディスクイメージであり、このディスクイメージは実計算機3001の内蔵ディスクに記憶されている。
更新記録ファイル304は、仮想計算機3011に割り当てられた記憶領域(データ記憶部)に格納されている。更新記録送信部302は、仮想計算機管理サーバ100Aからの更新情報取得要求に応じて、更新記録ファイル304に記録されている更新情報を仮想計算機管理サーバ100Aに送信する。
仮想計算機3011を制御する仮想計算機制御部3101は、ディスクイメージ送信部310Aを有している。このディスクイメージ送信部310Aは、仮想計算機管理サーバ100Aからのディスクイメージ格納要求に応じて、実計算機3001のディスクイメージを読み出し、これを送信する機能を有する。後述するように、仮想計算機制御部3101は、ディスクイメージ格納要求が到来すると、仮想計算機3011の動作を一時的に停止した状態で、当該仮想計算機3011のディスクイメージをディスクイメージ送信部310Aに送信させる機能を有している。Virtual
一方、仮想計算機管理サーバ100Aは、ディスクイメージ格納制御部110、更新情報格納制御部120、更新情報比較部130およびネットワーク・サービス・インターフェース140を有する。仮想計算機管理サーバ100Aの構成の全部または一部は、ハードウェアで実現されてもよいし、あるいは、コンピュータのプロセッサに処理を実行させるコンピュータプログラム(またはプログラムコード)で実現されてもよい。仮想計算機管理サーバ100Aの構成要素110,120,130,140の機能がコンピュータプログラムで実現される場合、プロセッサは、不揮発性メモリなどの記録媒体からそのコンピュータプログラムを読み出し実行する。
On the other hand, the virtual
記憶装置200は、ハードディスクなどのストレージデバイス(Storage Device)である。記憶装置200は、仮想計算機管理サーバ100Aによって格納または参照されるディスクイメージおよび仮想計算機情報を保持する。仮想計算機情報の詳細については後述する。記憶装置200には、実計算機3001〜300N上の多数の仮想計算機3011〜301Nにそれぞれ対応して用意された更新情報ファイル230,...が格納されている。更新情報ファイル230は、仮想計算機管理サーバ100Aの管理下にある仮想計算機3011〜301Nの実行環境に対してなされた更新の履歴を示す情報からなる電子ファイルである。The
更新情報格納制御部120は、記憶装置200を制御して、仮想計算機301i(iは1〜Nのうちのいずれか)から送信された更新情報を、当該仮想計算機301iのために用意された更新情報ファイル230に記録する。The update information
また、記憶装置200は、実計算機3001〜300Nから送信されたディスクイメージ220,...を格納するための記憶領域を有している。ディスクイメージ格納制御部110は、記憶装置200を制御して、実計算機3001から送信されたディスクイメージを当該記憶領域に格納する。The
更に、記憶装置200には、仮想計算機情報管理テーブル210が格納されている。仮想計算機情報管理テーブル210には、仮想計算機管理サーバ100Aの管理下にある仮想計算機3011〜301Nに関する情報(メタデータ)が記録されている。ディスクイメージ格納制御部110は、実計算機300iから送信された仮想計算機301iのディスクイメージの識別子(たとえば、当該ディスクイメージの名称を表すデータ)と、当該仮想計算機301iに対応して用意された更新情報ファイル230の識別子(たとえば、当該更新情報ファイル230の名称を表すデータ)とを関連付けて仮想計算機情報管理テーブル210に記録することができる。Further, the
更新情報比較部130は、ネットワーク・サービス・インターフェース140からの要求や問い合わせに基づいて、仮想計算機情報管理テーブル210を参照して比較対象となるディスクイメージに対応する更新情報ファイル230を選択する。更新情報比較部130は、選択した単数または複数の更新情報ファイル230に記録されている更新情報を比較して、単一または複数の仮想計算機の実行環境の更新状況を示すデータを生成する。
Based on a request or inquiry from the
後述するように、たとえば、管理端末400からネットワーク・サービス・インターフェース140を介して1台の仮想計算機301iの実行環境(ディスクイメージ)の更新履歴が要求された場合、更新情報比較部130は、当該仮想計算機301iに割り当てられた更新情報ファイル230を選択し、この更新情報ファイル230内の更新情報を比較する。一方、管理端末400からネットワーク・サービス・インターフェース140を介して異なる2台の仮想計算機301i,301j(i≠j)の実行環境(ディスクイメージ)の差分が要求された場合、更新情報比較部130は、これら2台の仮想計算機301i,301jにそれぞれ割り当てられた2つの更新情報ファイル230,230を選択し、これら更新情報ファイル230,230間で更新情報を比較する。更新情報比較部130による処理結果は、ネットワーク・サービス・インターフェース140を介して管理端末400に送信される。As will be described later, for example, when an update history of the execution environment (disk image) of one
ネットワーク・サービス・インターフェース140は、管理端末400と更新情報比較部130との間、あるいは、管理端末400と更新情報格納制御部120との間で情報をやりとりするためのインターフェースである。
The
システム管理者は、管理端末400を操作して仮想計算機管理サーバ100Aに対する指示情報を入力することができる。この指示情報は、通信ネットワーク500を介してネットワーク・サービス・インターフェース140に送信される。ネットワーク・サービス・インターフェース140は、当該指示情報に基づいた要求や問い合わせを更新情報比較部130または更新情報格納制御部120に対して行う。更新情報比較部130または更新情報格納制御部120は、当該問い合わせや要求に応じた処理を実行し、その実行結果をネットワーク・サービス・インターフェース140に返す。そして、ネットワーク・サービス・インターフェース140は、その実行結果を、当該指示情報に対する応答結果として管理端末400に返信することとなる。
The system administrator can operate the
ネットワーク・サービス・インターフェース140としては、たとえば、HTTP(HyperText Transport Protocol)/HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)に基づいたウェブ・サービス(Web service)を提供するインターフェースを採用することができる。HTTP/HTTPSは、RFC(Request For Comment)に規定されている。この場合、管理端末400には、ネットワーク・サービス・インターフェース140が提供するウェブページを表示するウェブブラウザ(WWWブラウザ)が導入される。システム管理者は、このウェブブラウザを通してネットワーク・サービス・インターフェース140にアクセスすることができる。
As the
以上の構成を有する仮想計算機管理システムの動作について以下に説明する。第1の実施形態の仮想計算機管理システムは、1)仮想計算機の更新、2)仮想計算機情報の登録、3)仮想計算機情報の参照、という3つの相(フェーズ)で動作する。 The operation of the virtual machine management system having the above configuration will be described below. The virtual machine management system according to the first embodiment operates in three phases: 1) update of a virtual machine, 2) registration of virtual machine information, and 3) reference of virtual machine information.
「仮想計算機の更新」とは、仮想計算機上で動作するOS(オペレーティング・システム)にアプリケーション・プログラムの導入などの変更操作を加えることである。図1の仮想計算機3011上のシステム更新部303は、管理端末400からの更新指示情報に従って、この変更操作を実行する機能を有する。すなわち、システム管理者が管理端末400に更新指示情報を操作入力すると、この更新指示情報が通信ネットワーク500を介して実計算機3001に送信される。システム更新部303は、管理端末400から受信された更新指示情報に従って、たとえば、ソフトウェア・パッケージの導入、導入済みのソフトウェア・パッケージの更新、もしくは、導入済みのソフトウェア・パッケージの削除といった変更操作を実行することができる。“Updating a virtual machine” means adding a change operation such as introduction of an application program to an OS (operating system) operating on the virtual machine.
ここで、ソフトウェア・パッケージ(以下、単に「パッケージ」と呼ぶ。)とは、ソフトウェアを導入(すなわち、インストール:install)、更新(すなわち、アップデートまたはアップグレード:update or upgrade)あるいは削除(delete or remove)する際の管理単位となるファイルの集合と、当該ファイルの集合に付随する依存関係情報とを包含するものである。依存関係情報とは、あるパッケージと、このパッケージを導入するために必要となる他のパッケージとの間の関係を示す情報である。あるいは、各パッケージが提供する機能(ケーパビリティ:capability)と、当該各パッケージが依存する機能との組み合わせによって依存関係情報を規定してもよい。このような依存関係情報を与えるパッケージ形式としては、たとえば、RPMやdpkgによる形式が知られている。RPMやdpkgは、それぞれ、ソフトウェア・パッケージの管理システムである。RPMとdpkgについては、たとえば、特許文献4(米国特許第7398524号明細書)に開示されている。 Here, a software package (hereinafter, simply referred to as “package”) refers to installation (ie, installation), update (ie, update or upgrade), or deletion (delete or remove) of software. It includes a set of files that serve as a management unit when performing the above and dependency information associated with the set of files. The dependency relationship information is information indicating a relationship between a certain package and another package necessary for introducing the package. Alternatively, the dependency relationship information may be defined by a combination of a function (capability) provided by each package and a function on which each package depends. As a package format for giving such dependency relationship information, for example, a format based on RPM or dpkg is known. RPM and dpkg are software package management systems, respectively. RPM and dpkg are disclosed in, for example, Patent Document 4 (US Pat. No. 7,398,524).
システム更新部303に限らず、仮想計算機3011上で動作するOSや当該OS上で動作するアプリケーション・プログラムも変更操作を実行する場合がある。上述したように、システム更新部303は、仮想計算機3011の実行環境の更新が実行されたときに、その更新情報を更新記録ファイル304に記録する機能を有する。Not only the
また、システム更新部303は、この更新情報を、システム管理者が読解可能な形式で更新記録ファイル304に追記する機能を有している。図2(A)および図2(B)は、更新記録ファイル304の内容の一例を概略的に示す図である。図2(A)は、6つのパッケージ(「base-5.00-0」,「admintool-4.2-2」,「monitor-3.0.1-4」,「database-6.2-2」,「backup-1.0-5」,「shopping-3.2-3」)の導入履歴が時刻順に記録された内容を示すものである。たとえば、図2(A)のファイル中の先頭行は、「base-5.00-0」という名前のパッケージを導入した記録を示している。
Further, the
他方、図2(B)のファイルの先頭行から6行目までの内容は、図2(A)のファイルの内容と共通する。第7行では、導入済みのパッケージ「monitor-3.0.1-4」を、より新しい「monitor-3.0.1-5」に更新したことを示している。第8行では、新規に「cache-1.1.1-3」というパッケージを導入したことを示している。
On the other hand, the contents from the first line to the sixth line of the file in FIG. 2B are the same as the contents of the file in FIG. The seventh line indicates that the installed package “monitor-3.0.1-4” has been updated to a newer “monitor-3.0.1-5”.
システム更新部303は、たとえば、パッケージ管理コマンドを呼び出すとともに、更新内容を更新記録ファイル304に追記する機能を有する上位プログラム(ラッパー:wrapper)により実現することができる。パッケージ管理コマンドとしては、たとえば、rpm、yum、dpkg、apt−getが知られている。rpmコマンドは、前述のパッケージ管理システムRPMを操作するためのコマンドであり、dpkgコマンドは、前述のパッケージ管理システムdpkgを操作するためのコマンドである。yumコマンドは、パッケージ管理システムRPMを呼び出すためのコマンドであり、apt−getコマンドは、パッケージ管理システムdpkgを呼び出すためのコマンドである。
The
次に、「仮想計算機情報の登録」というフェーズについて説明する。 Next, a phase called “virtual machine information registration” will be described.
「仮想計算機情報の登録」とは、ある時点における仮想計算機301iに対応する仮想計算機情報を記憶装置200に格納する処理をいう。ここで、仮想計算機情報とは、仮想計算機301iが内蔵する仮想ディスク装置の内容を表現するディスクイメージ(disk image)と、その仮想計算機301iに対する更新履歴が記録される更新情報ファイル230と、その他、仮想計算機301iに付随する情報とを包含するものである。“Registration of virtual machine information” refers to a process of storing virtual machine information corresponding to the
ディスクイメージと更新情報ファイル230以外の仮想計算機情報としては、たとえば、仮想計算機301iの識別子(たとえば、仮想計算機301iの名称)、仮想計算機301i上のメモリ容量、導入されたオペレーティング・システム(OS)の名称がある。これらの情報は、システム管理者が、記憶装置200に格納しようとするディスクイメージによって表現される仮想計算機301iがいかなる構成を有するかについて判断するために用いられる。The virtual machine information other than the disk image and update information file 230, for example,
システム管理者は、管理端末400に対して、ある仮想計算機301iのディスクイメージとその更新情報とを記憶装置200に格納する旨の指示情報を操作入力することができる。管理端末400は、この指示情報を仮想計算機管理サーバ100Aに送信する。仮想計算機管理サーバ100Aでは、更新情報格納制御部120が当該指示情報に応じて、仮想計算機301iの更新情報を記憶装置200の更新情報ファイル230に記録するための制御を実行する。また、ディスクイメージ格納制御部110が当該指示情報に応じて、仮想計算機301iのディスクイメージを記憶装置200に格納させる制御を実行する。The system administrator can input to the
更に、ディスクイメージ格納制御部110は、仮想計算機情報管理テーブル210に新たなレコード(行)を追加する。ディスクイメージ格納制御部110は、実計算機300iから送信された仮想計算機301iのディスクイメージの識別子と、当該仮想計算機301iに対応して用意された更新情報ファイル230の識別子とを関連付けてその新たなレコードに記録する。Further, the disk image
図3は、仮想計算機情報の格納手順を示す通信シーケンスを概略的に示す図である。以下、図3に示されている各ステップに沿ってこの手順を詳細に説明する。 FIG. 3 is a diagram schematically showing a communication sequence showing a procedure for storing virtual computer information. Hereinafter, this procedure will be described in detail along the steps shown in FIG.
まず、システム管理者は、管理端末400を操作してこの管理端末400に対して仮想計算機情報格納の指示情報を入力する(ステップS121)。管理端末400は、この指示情報を仮想計算機管理サーバ100Aに送信する。仮想計算機管理サーバ100Aでは、更新情報格納制御部120がネットワーク・サービス・インターフェース140を介して当該指示情報を受け付ける。当該指示情報は、仮想計算機301iの識別子(たとえば、仮想計算機301iの名称)を指定するものであればよい。First, the system administrator operates the
ステップS121でのシステム管理者による操作入力に先立って、システム管理者は、仮想計算機情報格納のための操作画面を呼び出すための操作を管理端末400に対して行う。この操作に応じて、管理端末400は、ネットワーク・サービス・インターフェース140から、操作画面を表示するための情報を取得する。本実施形態では、操作画面を呼び出すために、システム管理者は、管理端末400で起動されたウェブブラウザにURL(Uniform Resource Locator)を入力する操作を行う。この場合、操作画面を表示するための情報は、たとえば、HTML(Hypertext Markup Language)で記述されていればよい。
Prior to the operation input by the system administrator in step S121, the system administrator performs an operation on the
次に、更新情報格納制御部120は、与えられた識別子に対応する仮想計算機301i上の更新記録送信部302に対して更新情報取得要求を送信する(ステップS122)。仮想計算機301iの更新記録送信部302は、この更新情報取得要求に応じて、更新記録ファイル304に記録されている更新情報を送信する。この結果、更新情報格納制御部120は当該更新情報を取得する。Next, the update information
このステップS122が実行されるとき、当該仮想計算機301iは稼動状態にある必要がある。図3には明確に示されていないが、当該仮想計算機301iが停止状態にある場合には、更新情報取得要求の送信に先立って当該仮想計算機301iの起動処理が実行される。この起動処理は、更新情報格納制御部120が仮想計算機制御部310iに起動要求を送信することにより行われる。この起動要求に応じて、仮想計算機制御部310iは当該仮想計算機301iを起動することとなる。これにより、システム管理者は、実計算機300iを直接操作または遠隔操作して当該実計算機300i上に仮想計算機301iを起動する必要がないので、システム管理者の負担が大幅に軽減される。When this step S122 is executed, the
次に、更新情報格納制御部120は、記憶装置200を制御して、ステップS122で取得した更新情報を、記憶装置200の当該更新情報ファイル230に記録する(ステップS123)。当該更新情報ファイル230には、記憶装置200内で当該仮想計算機301iに一意(ユニーク)な名称が付加されている。Next, the update information
更新情報ファイル230の名称は、たとえば、固定された先頭の文字列(プレフィックス:prefix)と、当該仮想計算機301iの名称と、当該仮想計算機301iの実行環境のバージョン(版)を示す番号(以下、「版番号」と呼ぶ。)とを結合することで与えられる。同一の仮想計算機の実行環境であっても、その内容は時間の経過とともに更新される。版番号は、ある時点における仮想計算機の実行環境を特定するための番号である。よって、版番号は、同一の仮想計算機において、ある時点における実行環境と別の時点における実行環境とを区別するものといえる。Name of the update information file 230, for example, fixed the beginning of the string (prefix: prefix) and, a number indicating the name of the
図2に、更新情報ファイル230の名称の例が示されている。この例では、先頭の文字列として「update」、仮想計算機の名称として「shopping」、版番号として「52」および「53」が用いられている。版番号(バージョン番号:version number)を、シーケンス番号(sequence number)あるいはリビジョン番号(revision number)と呼んでもよい。 An example of the name of the update information file 230 is shown in FIG. In this example, “update” is used as the first character string, “shopping” is used as the name of the virtual machine, and “52” and “53” are used as the version numbers. The version number (version number) may be called a sequence number or a revision number.
次に、更新情報格納制御部120は、ディスクイメージ格納制御部110に対してディスクイメージ格納要求を行う(ステップS124)。このディスクイメージ格納要求とともに、仮想計算機301iの名称がディスクイメージ格納制御部110に与えられる。このディスクイメージ格納要求に応じて、ディスクイメージ格納制御部110は、ステップS111〜S123を実行する。Next, the update information
なお、本実施形態では、仮想計算機301iのディスクイメージを記憶装置200に格納するために、更新情報格納制御部120がディスクイメージ格納要求を行うことでディスクイメージ格納制御部110を呼び出しているが、かかる形態に限定されるものではない。たとえば、ディスクイメージ格納制御部110が、更新情報格納制御部120により呼び出されることなく、仮想計算機格納要求(ステップS121)に応じて、ステップS111〜S123を実行してもよい。In this embodiment, in order to store the disk image of the
図3を参照すると、ステップS111では、ディスクイメージ格納制御部110は、当該仮想計算機301iが構築されている実計算機300i上の仮想計算機制御部310iに対して仮想計算機停止要求を行う。この仮想計算機停止要求に応じて、仮想計算機制御部310iは、当該仮想計算機301iの動作を一時的に停止させる。ここで、当該仮想計算機301iを一時的に停止させるのは、正確なディスクイメージを確実に取得するためである。仮想計算機301iが稼働状態にあるとき、ディスクイメージの更新が行われるおそれがあるので、正確かつ完全なディスクイメージを取得できるとは限らない。仮想計算機301iの動作を一時的に停止させることなく、正確かつ完全なディスクイメージを取得できるのであれば、仮想計算機301iの動作を一時的に停止させる必要はない。Referring to FIG. 3, in step S111, the disk image
次に、ディスクイメージ格納制御部110は、実計算機300i上の仮想計算機制御部310iに対してディスクイメージ送信要求を送信する(ステップS112)。このディスクイメージ送信要求とともに、仮想計算機301iの識別子(たとえば、仮想計算機301iの名称)も仮想計算機制御部310iに送信される。このディスクイメージ送信要求に応じて、仮想計算機制御部310iは仮想計算機301iのディスクイメージを送信することとなる。Next, the disk image
なお、ディスクイメージの形式の一例として、VMwareにおけるVMDK形式が挙げられる。VMwareを含む多くの仮想計算機ソフトウェアでは、仮想計算機の内容を表現するために、ディスクイメージの他に不揮発メモリの内容(VMwareではnvramファイル)や仮想計算機設定ファイル(VMwareではvmxファイル)などの付随するファイルが必要である。それらの付随するファイルも、ディスクイメージの一部に含まれるものとする。 An example of the disk image format is the VMDK format in VMware. In many virtual machine software including VMware, in order to express the contents of the virtual machine, in addition to the disk image, contents of a nonvolatile memory (nvram file in VMware) and a virtual machine setting file (vmx file in VMware) are attached. A file is required. These accompanying files are also included as part of the disk image.
次に、ディスクイメージ格納制御部110は、記憶装置200を制御して、実計算機300iから取得したディスクイメージを記憶装置200に格納する(ステップS113)。ここで、記憶装置200に格納されるディスクイメージ220には、記憶装置200内で当該仮想計算機301iに一意なファイル名が付与される。Next, the disk image
ディスクイメージ220の識別子であるファイル名は、たとえば、固定された先頭の文字列と、当該仮想計算機301iの名称と、版番号とを連結することで与えられる。図4には、このようにして与えられたファイル名(ディスクイメージ名)が例示されている。版番号(バージョン番号)として、更新情報ファイル230に付与される版番号と同一のものを用いる場合、ステップS124におけるディスクイメージ格納要求とともに、仮想計算機301iの識別子に加えて版番号もディスクイメージ格納制御部110に与えればよい。The file name that is the identifier of the
上記のステップS111〜S113までの処理が完了すると、更新情報格納制御部120に制御が復帰する。
When the processing from steps S111 to S113 is completed, control returns to the update information
その後、更新情報格納制御部120は、仮想計算機情報を記憶装置200に格納する(ステップS125)。すなわち、更新情報格納制御部120は、記憶装置200に格納された更新情報ファイル230の識別子と、仮想計算機301iのディスクイメージ220の識別子と、仮想計算機301iの識別子と、仮想計算機301iの版番号とを関連付けて仮想計算機情報管理テーブル210に追記する。このとき、更新情報格納制御部120は、仮想計算機情報管理テーブル210に新規レコードを設けて、この新規レコードに、更新情報ファイル230の識別子と、ディスクイメージ220の識別子と、仮想計算機301iの識別子と、仮想計算機301iの版番号とを記録する。Thereafter, the update information
ここで、前述の新規レコードは、仮想計算機301iの識別子(名称とその版番号)で一意に識別される必要がある。また、たとえば、ステップ112で取得したイメージファイルに付随するファイルに含まれる、仮想計算機301iを特定するのに寄与する任意の情報を新規レコードに追加してもよい。Here, the above-mentioned new record needs to be uniquely identified by the identifier (name and its version number) of the
本実施形態では、図3に示した一連の動作手順において、ディスクイメージ220の識別子と、更新情報ファイル230の識別子と、仮想計算機情報管理テーブル210に追加される新規レコードとに、共通の版番号が付与される。更に、その新規レコードには、付加的な情報として、当該仮想計算機301i上で動作するオペレーティング・システムの名称(OS名)と、仮想計算機301iに割り当てられる物理メモリ量の情報とを含めることができる。In this embodiment, in the series of operation procedures shown in FIG. 3, the version number common to the identifier of the
図4は、仮想計算機情報管理テーブル210の内容の一例を示す図である。図4に示されるように、テーブルの各レコード(行)に、「仮想計算機の名称」、「版番号」、「ディスクイメージ名」および「更新情報ファイルの名称」に加えて、「OS名」および「物理メモリ量」という付加情報が記録されている。また、「shop」という同一名称を含む2つのレコードがあるが、これらレコードのうち一方のレコードの版番号は「52」であり、他方のレコードの版番号は「53」である。よって、版番号の異なる2種類のディスクイメージに関する情報が記録されている。 FIG. 4 is a diagram illustrating an example of the contents of the virtual machine information management table 210. As shown in FIG. 4, in addition to “virtual machine name”, “version number”, “disk image name”, and “update information file name”, “OS name” is added to each record (row) of the table. In addition, additional information “physical memory amount” is recorded. In addition, there are two records including the same name “shop”. Among these records, the version number of one record is “52”, and the version number of the other record is “53”. Therefore, information on two types of disc images with different version numbers is recorded.
次に、「仮想計算機情報の参照」というフェーズについて説明する。 Next, a phase called “reference to virtual machine information” will be described.
「仮想計算機情報の参照」とは、仮想計算機管理サーバ100Aの更新情報比較部130が記憶装置200に格納された更新情報ファイル230の内容を比較し、その結果を出力することによって行われる。すなわち、仮想計算機情報の参照は、記憶装置200中の仮想計算機情報管理テーブル210の内容と更新情報ファイル230の内容とから、記憶装置200に格納されたディスクイメージ220についての情報を、人間が理解可能な形で参照する操作をいう。
“Reference to virtual machine information” is performed by the update
システム管理者は、管理端末400を操作して仮想計算機管理サーバ100に対する指示情報を入力することで、記憶装置200に格納された仮想計算機情報を参照することができる。システム管理者は、仮想計算機情報の参照用の操作画面を呼び出すための操作(たとえば、ウェブブラウザに対するURLの入力)を管理端末400に対して行う。この操作に対して、管理端末400は、ネットワーク・サービス・インターフェース140から、該当する操作画面を表示するための情報(たとえば、HTML文書)を取得する。
The system administrator can refer to virtual machine information stored in the
仮想計算機管理サーバ100Aでは、管理端末400から、2つの仮想計算機301i,300j(i≠j)の実行環境の比較に関する指示情報を受信した場合、更新情報比較部130は、それら2つの仮想計算機301i,300jにそれぞれ対応する更新情報ファイル230,230の内容比較を行い、その結果をネットワーク・サービス・インターフェース140に出力する。In the virtual
また、仮想計算機情報の参照については、単一のディスクイメージ220に関する情報をその対象とする場合と、異なる2つのディスクイメージ220,220の情報を相互比較する場合とがある。2つのディスクイメージ220,220の情報を相互比較する場合は、更に、異なる2つの仮想計算機301i,301j(i≠j)を比較する場合と、同一の仮想計算機301iについての異なる版(バージョン)を比較する場合に分けられる。In addition, referring to the virtual machine information, there are a case where information on a
単一のディスクイメージ220を比較対象とした仮想計算機情報の参照を行う場合、管理端末400から更新情報比較部130に対して、仮想計算機301iの名称とその版番号との対が渡される。これに対して、更新情報比較部130は、仮想計算機情報管理テーブル210から該当するレコードを取得するとともに、そのレコード中に含まれる更新情報ファイル名に対応する更新情報ファイル230の内容を読み取り、当該内容をネットワーク・サービス・インターフェース140を介して管理端末400に送信する。管理端末400は、指定された仮想計算機301iと版番号の対に対応するディスクイメージに関する情報を、人間に理解可能な形で表示する。When referring to virtual machine information with a
一方、異なる2つのディスクイメージ220,220を比較対象とした仮想計算機情報の比較を行う場合、システム管理者は、管理端末400を操作して比較対象のディスクイメージ220,220を指定する指示情報を入力する。この指示情報は、ネットワーク・サービス・インターフェース140を介して更新情報比較部130に送信される。
On the other hand, when comparing virtual machine information using two
図5は、比較対象であるディスクイメージを指定するための操作画面の一例を示す図である。図5では、記憶装置200に格納されるディスクイメージ220,...がそれぞれ箱(ボックス)11R,12A,12B,12C,12D,13として表示されている。また、これら箱11R,12A,12B,12C,12D,13のラベルとして仮想計算機名と版番号が表示される。更に、ディスクイメージ間の派生関係が矢印で図示されている。たとえば、「rails 版番号24」、「blog 版番号29」、「shop 版番号52」、「wiki、版番号19」の4つのディスクイメージは、どれも「base_os、版番号1」を元に作成されたものであることが示されている。このような派生関係を表示するためには、記憶装置200中に、事前にディスクイメージ間の派生関係を格納しておく必要がある。この情報を与える方法の1つは、図3のステップS121の時点で、格納対象のディスクイメージがどのディスクイメージから派生したかという情報を、システム管理者が操作入力により指定するというものである。
FIG. 5 is a diagram illustrating an example of an operation screen for designating a disk image to be compared. In FIG. 5, the
あるいは、ディスクイメージの派生関係を以下の手順に従って自動的に生成することができる。図3のステップS112において、仮想計算機制御部310iが仮想計算機301iのディスクイメージを送信する際に、当該ディスクイメージに対応する仮想計算機301iの識別子(名称と版番号)が更新情報格納制御部120に送信される。この識別子に基づいて、更新情報格納制御部120は、仮想計算機301iの現在のディスクイメージの版と、当該仮想計算機301iの以前のディスクイメージの版とを関連付けて派生関係を生成する。具体的には、仮想計算機情報管理テーブル210の各レコードに派生元の仮想計算機を示す識別子(名称と版番号)を記録することができる。たとえば、図4に示す仮想計算機情報管理テーブル210に、派生元情報(派生元の仮想計算機を示す識別子)を記録するためのカラム(フィールド)を設け、このカラムに派生元情報を記録すればよい。この場合、「shop-53.img」のディスクイメージ名のレコードには、派生元情報として、仮想計算機の名称「shop」と版番号「52」とを記録することができる。また、「rails-24.img」や「blog-29.img」や「shop-52.img」や「wiki-19.img」のディスクイメージ名のレコードには、それぞれ、派生元情報として、当初導入された仮想計算機の名称「base_os」と版番号「1」とを記録することができる。Alternatively, a disc image derivation relationship can be automatically generated according to the following procedure. When the virtual
システム管理者は、図5に示される操作画面を確認しつつ、ポインティングデバイスなどの入力装置を操作してディスクイメージに対応する箱11R,12A,12B,12C,12D,13のいずれかを指定することで、比較対象のディスクイメージを指定することができる。より具体的には、システム管理者は、ポインティングデバイスを操作して1つのディスクイメージに対応する箱をクリックした後、続いて、操作画面下部の「指定」ボタン15Aをクリックすることで、比較対象のディスクイメージの一方を指定する。同様の手順で、システム管理者は、ポインティングデバイスを操作して1つのディスクイメージに対応する箱をクリックした後、続いて、操作画面下部の「指定」ボタン15Bをクリックすることで、比較対象のディスクイメージの他方を指定する。その後、システム管理者は、「決定」ボタン16を選択することで、管理端末400から更新情報比較部130に対して仮想計算機情報比較要求が送られる。この仮想計算機比較要求には、比較対象の2つのディスクイメージについての仮想計算機名と版番号が含まれている。
The system administrator operates the input device such as a pointing device while checking the operation screen shown in FIG. 5 and designates one of the
仮想計算機情報比較要求を受け取った更新情報比較部130は、仮想計算機情報管理テーブル210を参照して、比較対象の2つのディスクイメージに対応するレコードを抽出する。更に、更新情報比較部130は、それらのレコードに含まれる更新情報ファイル名の情報から、2つのディスクイメージにそれぞれ対応する更新情報ファイル230,230の内容を読み出す。最後に、更新情報比較部130は、2つのディスクイメージの間で、取得したレコード間の差分と更新情報ファイル230,230間の差分とを検出して、この検出結果をネットワーク・サービス・インターフェース140を介して管理端末400に送信する。
The update
レコード間の差分と更新情報ファイル230,230間の差分の検出は、たとえば、単純な文字列比較で行われる。図6は、文字列比較による差分検出に基づく比較結果の一例を示す図である。この例は、図5の操作画面において、比較対象のディスクイメージとして「shop 版番号52」と「shop 版番号53」を指定した場合に相当する。仮想計算機情報管理テーブル210の内容が図4の内容であったとすると、「shop 版番号52」と「shop 版番号53」との間の相違点は、ディスクイメージ名と更新情報ファイル名のみである。次に、これらのレコードに含まれる更新情報ファイル名に相当する更新情報ファイル230,230の内容がそれぞれ図2(A),(B)の内容であったとすると、両者の差分は、「shop 版番号53」に含まれる最後の2行である。この結果、管理端末400には、比較結果として、パッケージ「monitor-3.0.1-5」の更新(update)と、パッケージ「cache-1.1.1-3」の導入(install)という事項が表示される。
The difference between the records and the difference between the update information files 230 and 230 are detected by, for example, simple character string comparison. FIG. 6 is a diagram illustrating an example of a comparison result based on difference detection by character string comparison. This example corresponds to the case where “
上記第1の実施形態の仮想計算機管理システムが奏する効果は以下の通りである。 The effects exhibited by the virtual machine management system of the first embodiment are as follows.
上述したように、仮想計算機3011〜301Nの各々では、システム更新部303は、自らの実行環境の更新が行われたときに当該更新の内容を示す更新情報を更新記録ファイル304という形で保存し、また、更新記録送信部302は、更新記録ファイル304に記録されている更新情報を仮想計算機管理サーバ100Aに提供する。仮想計算機管理サーバ100Aは、仮想計算機3011〜301Nから送信された更新情報を、それぞれ対応する更新情報ファイル230,...に記録する。よって、更新情報比較部130は、更新情報ファイル230の更新情報に基づいて、仮想計算機3011〜301Nの更新状況を示すデータを生成することができる。As described above, in each of the
したがって、本実施形態の仮想計算機管理システムは、通信ネットワーク500上に分散している多数の仮想計算機3011〜301Nの実行環境に関する正確な詳細情報を取得することができ、当該実行環境の更新状況を示すデータをシステム管理者に提供することができる。それ故、システム管理者の管理負担が大幅に軽減される。Therefore, the virtual machine management system according to the present embodiment can acquire accurate detailed information related to the execution environments of a large number of
また、ディスクイメージ格納制御部110は、ディスクイメージ220の識別子と、当該ディスクイメージ220を有する仮想計算機301iに対応して用意された更新情報ファイル230の識別子とを関連付けて仮想計算機情報管理テーブル210に記録する。更新情報比較部130は、この仮想計算機情報管理テーブル210を利用して、同一のディスクイメージ220の更新履歴を示すデータ、あるいは、異なる2つのディスクイメージ220,220間の差分を示すデータを生成することができる。その更新履歴や差分を示すデータに基づいて、システム管理者は、ネットワーク・サービス・インターフェース140を通じて、仮想計算機3011〜301Nの実行環境の更新状況を素早くかつ容易に把握することができる。Further, the disk image
(第2の実施形態)
次に、本発明に係る第2の実施形態について説明する。図7は、第2の実施形態の仮想計算機管理システムの概略構成を示す機能ブロック図である。この仮想計算機管理システムは、複数の実計算機3201〜320Nと、仮想計算機管理サーバ(Virtual Machine Management Server)100Bと、記憶装置200と、管理端末400とを備えている。これら実計算機3201〜320N、仮想計算機管理サーバ100B、記憶装置200および管理端末400は、通信ネットワーク500を介して相互に接続されている。(Second Embodiment)
Next, a second embodiment according to the present invention will be described. FIG. 7 is a functional block diagram illustrating a schematic configuration of the virtual machine management system according to the second embodiment. This virtual machine management system includes a plurality of
実計算機3201〜320Nの各々は、少なくとも1台の仮想計算機を有する。図7に示されるように、実計算機3201は、仮想計算機制御部3301を有しており、この仮想計算機制御部3301の制御下で実計算機3201上に仮想計算機3051が構築されている。他の実計算機3202〜320Nも、実計算機3201と同様の構成を有している。すなわち、実計算機3202〜320Nは、それぞれ、仮想計算機制御部3302〜330Nの制御下で構築された仮想計算機3212〜321Nを有している。仮想計算機管理サーバ100Bは、通信ネットワーク500を介して実計算機3201〜320N上の仮想計算機群を遠隔管理する機能を有している。Each of the
仮想計算機制御部3301は、実計算機3201の記憶装置(図示せず)に記憶されているディスクイメージや構成ファイル群に基づいて仮想計算機3211を論理的に構成する機能を有する。仮想計算機制御部3302〜330Nも、仮想計算機制御部3301と同様の機能を有する。仮想計算機制御部3301は、上記第1の実施形態の仮想計算機制御部3101(図1)と同様に、実計算機3201上で動作するホスト・オペレーティング・システム(ホストOS)あるいは仮想計算機モニタ(VMM:Virtual Machine Monitor)である。また、実計算機3201〜320Nのハードウェア構成は、上記第1の実施形態の実計算機3001〜300Nと同様の物理資源によって構成され得る。Virtual
仮想計算機3211は、パッケージ情報送信部305を有する。パッケージ情報送信部305は、仮想計算機3211の実行環境を構築するために導入された複数のソフトウェア・パッケージの識別情報(たとえば、当該ソフトウェア・パッケージの名称)と、当該ソフトウェア・パッケージの相互依存関係を示す依存関係情報とをパッケージ情報として仮想計算機管理サーバ100Bに送信する機能を有する。
仮想計算機3211を制御する仮想計算機制御部3301は、ディスクイメージ送信部330Aを有している。このディスクイメージ送信部330Aは、仮想計算機管理サーバ100Bからのディスクイメージ格納要求に応じて、実計算機3201のディスクイメージを読み出し、これを記憶装置200に送信する機能を有する。Virtual
一方、仮想計算機管理サーバ100Bは、ディスクイメージ格納制御部110、パッケージ情報格納制御部150、パッケージ情報比較部160およびネットワーク・サービス・インターフェース140を有する。仮想計算機管理サーバ100Bの構成の全部または一部は、ハードウェアで実現されてもよいし、あるいは、コンピュータのプロセッサに処理を実行させるコンピュータプログラム(またはプログラムコード)で実現されてもよい。仮想計算機管理サーバ100Bの構成要素110,150,160,140の機能がコンピュータプログラムで実現される場合、プロセッサは、不揮発性メモリなどの記録媒体からそのコンピュータプログラムを読み出し実行する。
On the other hand, the virtual machine management server 100B includes a disk image
記憶装置200は、仮想計算機管理サーバ100Bによって格納または参照されるディスクイメージ、パッケージ情報および仮想計算機情報を保持する。記憶装置200には、実計算機3201〜320N上の多数の仮想計算機3211〜321Nにそれぞれ対応して用意されたパッケージリスト250,...が格納されている。ここで、パッケージリスト250は、パッケージ情報の一種であり、記憶装置200に格納された各ディスクイメージ220について、そのディスクイメージ220中に導入済みのパッケージの名称からなるリストである。The
また、記憶装置200には、パッケージ情報データベース240が格納されている。このパッケージ情報データベース240の詳細は後述する。
Further, the
また、記憶装置200は、実計算機3201〜320Nから送信されたディスクイメージ220,...を格納するための記憶領域を有している。上述した通り、ディスクイメージ格納制御部110は、記憶装置200を制御して、実計算機3201から送信されたディスクイメージを当該記憶領域に格納する。The
更に、記憶装置200には、仮想計算機情報管理テーブル210Bが格納されている。仮想計算機情報管理テーブル210Bには、仮想計算機管理サーバ100Bの管理下にある仮想計算機3211〜321Nに関する情報(メタデータ)が記録されている。ディスクイメージ格納制御部110は、実計算機320i(iは1〜Nのうちのいずれか)から送信された仮想計算機321iのディスクイメージの識別子(たとえば、当該ディスクイメージの名称を表すデータ)と、当該仮想計算機321iに対応するパッケージ情報とを関連付けて仮想計算機情報管理テーブル210Bに記録することができる。Further, the
パッケージ情報比較部160は、ネットワーク・サービス・インターフェース140からの要求や問い合わせに基づいて、仮想計算機情報管理テーブル210Bを参照して比較対象となるディスクイメージに対応するパッケージ情報を選択する。パッケージ情報比較部160は、選択したパッケージ情報を比較して、単一または複数の仮想計算機の実行環境の更新状況を示すデータを生成する。
Based on a request or inquiry from the
第2の実施形態では、ネットワーク・サービス・インターフェース140は、管理端末400とパッケージ情報比較部160との間、あるいは、管理端末400とパッケージ情報格納制御部150との間で情報をやりとりするためのインターフェースである。
In the second embodiment, the
システム管理者は、管理端末400を操作して仮想計算機管理サーバ100Bに対する指示情報を入力することができる。この指示情報は、通信ネットワーク500を介してネットワーク・サービス・インターフェース140に送信される。ネットワーク・サービス・インターフェース140は、当該指示情報に基づいた要求や問い合わせをパッケージ情報比較部160やパッケージ情報格納制御部150に対して行う。パッケージ情報比較部160またはパッケージ情報格納制御部150は、当該問い合わせや要求に応じた処理を実行し、その実行結果をネットワーク・サービス・インターフェース140に返す。そして、ネットワーク・サービス・インターフェース140は、その実行結果を、当該指示情報に対する応答結果として管理端末400に返信することとなる。
The system administrator can operate the
パッケージ情報格納制御部150は、記憶装置200を制御して、仮想計算機321iから送信されたパッケージ情報(ディスクイメージに導入済みのパッケージに関する情報を含む。)を、当該仮想計算機321iに対応して用意されたパッケージリスト250に記録する。The package information
パッケージ情報データベース240は、記憶装置200に格納された1つ以上のディスクイメージ220について、それらのディスクイメージ中に導入済みのパッケージの名称および依存関係情報を含むパッケージ情報を格納するデータベースである。
The
以上の構成を有する仮想計算機管理システムの動作について以下に説明する。第1の実施形態の場合と同様に、第2の実施形態の仮想計算機管理システムは、1)仮想計算機の更新、2)仮想計算機情報の登録、3)仮想計算機情報の参照、という3つの相(フェーズ)で動作する。 The operation of the virtual machine management system having the above configuration will be described below. As in the case of the first embodiment, the virtual machine management system of the second embodiment has three phases: 1) update of virtual machine, 2) registration of virtual machine information, and 3) reference of virtual machine information. Operates in (phase).
「仮想計算機の更新」のフェーズでは、上記第1の実施形態と同様に、仮想計算機3211〜321N上で動作するOSにアプリケーション・プログラムの導入などの変更操作が加えられる。第2の実施形態では、この更新の際に、仮想計算機3211〜321N上のOSに用意されたパッケージ管理機能が使用される。In the “update virtual machine” phase, a change operation such as introduction of an application program is added to the OS running on the
次に、「仮想計算機情報の登録」のフェーズでは、ある時点における仮想計算機321iに対応する仮想計算機情報(パッケージ情報を含む。)が記憶装置200に格納される。Next, in the “virtual machine information registration” phase, virtual machine information (including package information) corresponding to the
システム管理者は、管理端末400を操作して仮想計算機管理サーバ100Bに対する指示情報を入力する。管理端末400は、この指示情報を仮想計算機管理サーバ100Bに送信する。仮想計算機管理サーバ100Bでは、パッケージ情報格納制御部150が当該指示情報に応じて、仮想計算機321iに関するパッケージリスト250を記憶装置200に格納させる制御を実行する。また、ディスクイメージ格納制御部110が当該指示情報に応じて、仮想計算機301iのディスクイメージを記憶装置200に格納させる制御を実行する。The system administrator operates the
更に、ディスクイメージ格納制御部110は、仮想計算機情報管理テーブル210Bに新たなレコード(行)を追加する。ディスクイメージ格納制御部110は、実計算機320iから送信された仮想計算機321iのディスクイメージの識別子と、当該仮想計算機321iに対応するパッケージ情報(パッケージリスト)の識別子とを関連付けてその新たなレコードに記録する。Further, the disk image
なお、記憶装置200に格納されるパッケージリスト250の中に、パッケージ情報データベース240に含まれないパッケージ名がある場合には、ディスクイメージ格納制御部110またはパッケージ情報格納制御部150は、当該パッケージ名に関するレコードをパッケージ情報データベース240に追加する。
When there is a package name that is not included in the
図8は、仮想計算機情報の格納手順を示す通信シーケンスを概略的に示す図である。以下、図8に示されている各ステップに沿ってこの手順を詳細に説明する。 FIG. 8 is a diagram schematically showing a communication sequence showing a procedure for storing virtual computer information. Hereinafter, this procedure will be described in detail along the steps shown in FIG.
まず、システム管理者は、管理端末400を操作してこの管理端末400に対して仮想計算機情報格納の指示情報を入力する(ステップS151)。管理端末400は、この指示情報を仮想計算機管理サーバ100Bに送信する。仮想計算機管理サーバ100Bでは、パッケージ情報格納制御部150がネットワーク・サービス・インターフェース140を介して当該指示情報を受け付ける。当該指示情報は、仮想計算機321iの識別子(たとえば、仮想計算機301iの名称)を指定するものであればよい。First, the system administrator operates the
ステップS151でのシステム管理者による操作入力に先立って、システム管理者は、仮想計算機情報格納のための操作画面を呼び出すための操作を管理端末400に対して行う。この操作に応じて、管理端末400は、ネットワーク・サービス・インターフェース140から、操作画面を表示するための情報を取得する。本実施形態では、操作画面を呼び出すために、システム管理者は、管理端末400で起動されたウェブブラウザにURL(Uniform Resource Locator)を入力する操作を行う。この場合、操作画面を表示するための情報は、たとえば、HTML(Hypertext Markup Language)で記述されていればよい。
Prior to the operation input by the system administrator in step S151, the system administrator performs an operation on the
次に、パッケージ情報格納制御部150は、与えられた識別子に対応する仮想計算機321i上のパッケージ情報送信部305に対してパッケージリスト取得要求を送信する(ステップS152)。仮想計算機321iのパッケージ情報送信部305は、このパッケージリスト取得要求に応じてパッケージリストを示す情報を送信する。この結果、パッケージ情報格納制御部150は当該パッケージリストを取得する。なお、パッケージリストとは、仮想計算機321i上のOSに、ある時点で導入済みの全パッケージの名称(パッケージ名)からなるリストである。Next, the package information
このステップS152が実行されるとき、当該仮想計算機321iは稼動状態にある必要がある。図8には明確に示されていないが、当該仮想計算機321iが停止状態にある場合には、パッケージリスト取得要求の送信に先立って当該仮想計算機321iの起動処理が実行される。この起動処理は、パッケージ情報格納制御部150が仮想計算機制御部330iに起動要求を送信することにより行われる。この起動要求に応じて、仮想計算機制御部330iは当該仮想計算機321iを起動することとなる。これにより、システム管理者は、実計算機320iを直接操作または遠隔操作して当該実計算機320i上に仮想計算機321iを起動する必要がないので、システム管理者の負担が大幅に軽減される。When this step S152 is executed, the
パッケージ情報送信部305は、パッケージリストを取得するために、仮想計算機321i上のOS上に用意されたパッケージ管理機能のコマンド(パッケージ管理コマンド)を使用する。たとえば、パッケージ管理機能としてRPMを採用したゲストOSの場合、「rpm -qa」コマンドを実行することで、導入済みの全パッケージのリストを取得することができる。The package
次に、パッケージ情報格納制御部150は、パッケージ情報データベース240を参照して、ステップS152で取得したパッケージリストのうち、パッケージ情報データベース240に対応するレコードに含まれないパッケージ名を調べる(ステップS153)。
Next, the package information
図9に、パッケージ情報データベース240の内容の一例を示す。この例では、表の各行(レコード)が1つのパッケージについての情報を示している。1つのレコードは、パッケージ名と、そのパッケージが依存する他のパッケージの名称(パッケージ名)のリストからなる。たとえば、「shopping-3.2-3」というパッケージは、「library-1.2-1」、「webserver-2.2.1-2」、「scriptor-1.8.0-3」の3つのパッケージに依存している。このことは、「shopping-3.2-3」を導入するためには、事前にこれら3つのパッケージが導入されている必要があることを示している。依存するパッケージ名が空欄になっているパッケージは、依存するパッケージがない、すなわち他のパッケージの導入状況に関わらず導入できることを意味する。
FIG. 9 shows an example of the contents of the
次に、パッケージ情報格納制御部150は、仮想計算機321iのパッケージ情報送信部305に対して、パッケージ依存関係情報取得要求を送信する(ステップS154)。このパッケージ依存関係情報取得要求に応じて、パッケージ情報送信部305は、ステップS153で取得された各パッケージ名について、そのパッケージについての依存関係情報をパッケージ情報格納制御部150に送信する。前述した通り、パッケージの依存関係情報とは、そのパッケージを導入する際に必要となる他のパッケージの名称、あるいは、そのパッケージが提供する機能とそのパッケージが依存する機能との組み合わせである。なお、ステップS153において、パッケージ情報データベース240中のレコードに対象パッケージ名が存在しない場合には、ステップS154の実行は省略される。Next, the package information
次に、パッケージ情報格納制御部150は、記憶装置200を制御して、ステップS152において取得したパッケージリスト250を記憶装置200に格納するとともに、ステップS154で取得したパッケージ依存関係情報を、新規レコードとしてパッケージ情報データベース240に追加する(ステップS155)。ここで、追加される新規レコードには、パッケージ名と、そのパッケージの依存関係情報とが含まれている。
Next, the package information
ステップS155において、格納対象となるパッケージリスト250には、記憶装置200内で一意なパッケージリスト名が付与される。パッケージリスト名は、たとえば、固定された文字列と、当該仮想計算機321iの識別子(たとえば、当該仮想計算機321iの名称)と、版番号とを連結することで与えられる。In step S155, a package list name that is unique within the
次に、パッケージ情報格納制御部150は、ディスクイメージ格納制御部110に対して、ディスクイメージ格納要求を行う(ステップS156)。このディスクイメージ格納要求とともに、仮想計算機321iの名称がディスクイメージ格納制御部110に与えられる。このディスクイメージ格納要求に応じて、ディスクイメージ格納制御部110は、ステップS111〜S123を実行する。ステップS111〜S123の動作は上述した通りである。Next, the package information
ステップS111からS113までの処理が完了すると、パッケージ情報格納制御部150に制御が復帰する。
When the processing from steps S111 to S113 is completed, control returns to the package information
その後、パッケージ情報格納制御部150は、仮想計算機情報を記憶装置200に格納する(ステップS125)。すなわち、パッケージ情報格納制御部150は、記憶装置200に格納されたパッケージリスト250の識別子と、仮想計算機321iのディスクイメージ220の識別子と、仮想計算機321iの識別子と、仮想計算機321iの版番号とを関連付けて仮想計算機情報管理テーブル210Bに追記する。このとき、パッケージ情報格納制御部150は、仮想計算機情報管理テーブル210Bに新規レコードを設けて、この新規レコードに、パッケージリスト250の識別子と、ディスクイメージ220の識別子と、仮想計算機321iの識別子と、仮想計算機321iの版番号とを記録する。Thereafter, the package information
ここで、前述の新規レコードは、仮想計算機321iの識別子とその版番号とで一意に識別される必要がある。また、たとえば、仮想計算機321i上で動作するOSの名称(OS名)や物理メモリ量などの、仮想計算機321iを特定するのに寄与する任意の情報を新規レコードに追加してもよい。Here, the above-mentioned new record needs to be uniquely identified by the identifier of the
本実施形態では、図8に示した一連の動作手順において、ディスクイメージ220の識別子と、パッケージリスト250の識別子と、仮想計算機情報管理テーブル210Bに追加される新規レコードとに、共通の版番号が付与される。
In the present embodiment, in the series of operation procedures shown in FIG. 8, a common version number is assigned to the identifier of the
図9は、仮想計算機情報管理テーブル210Bの内容の一例を示す図である。図9に示されるように、テーブルの各レコード(行)に、「仮想計算機の名称」、「版番号」、「ディスクイメージ名」および「パッケージリスト名」に加えて、「OS名」および「物理メモリ量」という付加情報が記録されている。また、「shop」という同一名称を含む2つのレコードがあるが、これらレコードのうち一方のレコードの版番号は「52」であり、他方のレコードの版番号は「53」である。よって、版番号の異なる2種類のディスクイメージに関する情報が記録されている。 FIG. 9 is a diagram showing an example of the contents of the virtual machine information management table 210B. As shown in FIG. 9, in addition to “virtual machine name”, “version number”, “disk image name”, and “package list name”, “OS name” and “ Additional information “physical memory amount” is recorded. In addition, there are two records including the same name “shop”. Among these records, the version number of one record is “52”, and the version number of the other record is “53”. Therefore, information on two types of disc images with different version numbers is recorded.
次に、「仮想計算機情報の参照」というフェーズについて説明する。 Next, a phase called “reference to virtual machine information” will be described.
仮想計算機管理サーバ100Bのパッケージ情報比較部160は、記憶装置200に格納されたディスクイメージの内容を比較し、その結果を出力する。第1の実施形態の場合と同様に、システム管理者は、管理端末400を操作して仮想計算機管理サーバ100に対する指示情報を入力することで、記憶装置200に格納された、ディスクイメージに関する仮想計算機情報を参照することができる。システム管理者は、仮想計算機情報の参照用の操作画面を呼び出すための操作(たとえば、ウェブブラウザに対するURLの入力)を管理端末400に対して行う。この操作に対して、管理端末400は、ネットワーク・サービス・インターフェース140から、該当する操作画面を表示するための情報(たとえば、HTML文書)を取得する。
The package information comparison unit 160 of the virtual machine management server 100B compares the contents of the disk images stored in the
仮想計算機管理サーバ100Bでは、管理端末400から、2つの仮想計算機321i,321j(i≠j)の実行環境の比較に関する指示情報を受信した場合、パッケージ情報比較部160は、それら2つの仮想計算機321i,321jにそれぞれ対応するパッケージリスト250,250の内容比較を行い、その結果をネットワーク・サービス・インターフェース140に出力する。このとき、パッケージ情報比較部160は、追加されたパッケージ間の依存関係を含めた形態の比較結果を出力する。In the virtual machine management server 100B, when the instruction information related to the comparison of the execution environments of the two
また、仮想計算機情報の参照については、単一のディスクイメージ220に関する情報をその対象とする場合と、異なる2つのディスクイメージ220,220の情報を相互比較する場合とがある。2つのディスクイメージ220,220の情報を相互比較する場合は、更に、異なる2つの仮想計算機301i,301j(i≠j)を比較する場合と、同一の仮想計算機301iについての異なる版(バージョン)を比較する場合に分けられる。In addition, referring to the virtual machine information, there are a case where information on a
単一のディスクイメージ220を比較対象とした仮想計算機情報の参照を行う場合、管理端末400からパッケージ情報比較部160に対して、仮想計算機321iの名称とその版番号との対が渡される。これに対して、パッケージ情報比較部160は、仮想計算機情報管理テーブル210Bから該当するレコードを取得するとともに、そのレコード中に含まれるパッケージリスト名に対応するパッケージリスト250の内容を読み取り、当該内容をネットワーク・サービス・インターフェース140を介して管理端末400に送信する。管理端末400は、指定された仮想計算機321iと版番号の対に対応する導入済みのパッケージリストの内容を、人間に理解可能な形で表示する。When referring to virtual machine information with a
一方、異なる2つのディスクイメージ220,220を比較対象とした仮想計算機情報の比較を行う場合、システム管理者は、管理端末400を操作して比較対象のディスクイメージ220,220を指定する指示情報を入力する。この指示情報は、ネットワーク・サービス・インターフェース140を介してパッケージ情報比較部160に送信される。このとき比較対象となるディスクイメージ220,220をシステム管理者が指定するために、図5に示した操作画面と同様の操作画面を使用すればよい。
On the other hand, when comparing virtual machine information using two
システム管理者が管理端末400を操作して、2つのディスクイメージ220,220を指定するとともにこれらディスクイメージ220,220間の比較を指示する指示情報を入力すると、管理端末400は、当該指示情報をネットワーク・サービス・インターフェース140に送信する。この指示情報に応じて、ネットワーク・サービス・インターフェース140は、パッケージ情報比較部160に対して仮想計算機情報比較要求を発行する。この仮想計算機情報比較要求には、比較対象の各ディスクイメージ220についての仮想計算機名と版番号との対が含まれる。
When the system administrator operates the
仮想計算機情報比較要求を受け取ったパッケージ情報比較部160は、指定された2つのディスクイメージ220,220にそれぞれ対応するパッケージリスト250,250の内容を相互に比較し、その比較結果を出力する。ここで、パッケージ情報比較部160は、記憶装置200に格納されている依存関係情報に基づいて、当該比較結果を、相互依存関係を有するパッケージのグループごとに分類した形で生成する。ネットワーク・サービス・インターフェース140は、パッケージ情報比較部160の出力を受け取り、管理端末400に送信する。そして、管理端末400は、2つのディスクイメージ220,220間の差分を表すデータを、パッケージ・グループごとに分類した形態で出力する。
Upon receiving the virtual machine information comparison request, the package information comparison unit 160 compares the contents of the package lists 250 and 250 corresponding to the two specified
以下、パッケージ情報比較部160の処理内容を以下に説明する。図10は、パッケージ情報比較部160による処理手順を概略的に示すフローチャートである。 The processing contents of the package information comparison unit 160 will be described below. FIG. 10 is a flowchart schematically showing a processing procedure by the package information comparison unit 160.
図10を参照すると、パッケージ情報比較部160は、まず、比較対象の2つのパッケージリスト250,250を相互に比較して、これらパッケージリスト250,250のうち一方にのみ含まれるパッケージ名の集合すなわちパッケージリストの差分を抽出する(ステップS161)。このパッケージリストの差分は、比較対象の2つのパッケージリスト250,250にそれぞれ対応するディスクイメージ220,220間の差分を表す情報である。
Referring to FIG. 10, the package information comparison unit 160 first compares two package lists 250 and 250 to be compared with each other, and a set of package names included in only one of the package lists 250 and 250, that is, Differences in the package list are extracted (step S161). The difference between the package lists is information representing the difference between the
ステップS161では、比較対象のパッケージリスト250を取得するために、パッケージ情報比較部160は、仮想計算機情報比較要求に含まれる仮想計算機名と版番号との対を検索条件として、仮想計算機情報管理テーブル210Bからレコードを抽出する。そして、パッケージ情報比較部160は、抽出されたレコードに含まれるパッケージリスト名に対応するパッケージリスト250を取得する。
In step S161, in order to obtain the
なお、ステップS161において、パッケージ情報比較部160は、パッケージリストの差分だけでなく、比較対象の2つのパッケージリスト250,250に共通して含まれるパッケージ名の集合を取得してもよい。更に、各パッケージ名に版番号が付されている場合、パッケージ情報比較部160は、版番号ごとに分類されたパッケージ名の集合を抽出することもできる。 In step S161, the package information comparison unit 160 may acquire not only the difference between package lists but also a set of package names included in common in the two package lists 250 and 250 to be compared. Further, when a version number is assigned to each package name, the package information comparison unit 160 can also extract a set of package names classified for each version number.
説明の便宜上、比較対象の異なる2つのパッケージリスト250,250を、それぞれ、パッケージリストGA、GBとする。このとき、パッケージリストGBの全ての要素(パッケージ名)がパッケージリストGAに含まれる第1の場合(パッケージリストGBは、パッケージリストGAの部分集合である場合)、パッケージリストGAの全ての要素(パッケージ名)がパッケージリストGBに含まれる第2の場合(パッケージリストGAは、パッケージリストGBの部分集合である場合)、そして、これら第1および第2の場合以外の第3の場合(すなわち、パッケージリストGAにのみ含まれる部分集合と、パッケージリストGBにのみ含まれる部分集合とが存在する場合)があり得る。以下、第1および第2の場合を想定した手順を説明する。For convenience of explanation, the two
ステップS161で抽出されたパッケージ名の集合(パッケージリストの差分)Gpを処理対象として、以下のステップS162〜S166の処理が実行される。Set of package name extracted in step S161 (the difference between the package list) G p as a processing target, the processing of the following steps S162~S166 are performed.
まず、パッケージ情報比較部160は、当該集合Gpの中に未処理のパッケージ名があるか否かを判定する(ステップS162)。未処理のパッケージ名がある場合(ステップS162のYES)、パッケージ情報比較部160は、当該集合Gpの中から1つのパッケージ名Npを選択する(ステップS163)。First, the package information comparison unit 160 determines whether or not there is an unprocessed package name in the set G p (step S162). If there is a package name unprocessed (YES in step S162), the package information comparing unit 160 selects one package name N p from among the set G p (step S163).
次に、パッケージ情報比較部160は、パッケージ情報データベース240を参照して、ステップS163で選択された処理対象のパッケージ名Npに関する依存関係情報を取得する(ステップS164)。Next, the package information comparison unit 160 refers to the
次に、パッケージ情報比較部160は、ステップS164で取得された依存関係情報に基づいて、集合Gpの中に、パッケージ名Npと相互依存関係を有するパッケージ名が存在するか否かを判定する(ステップS165)。集合Gpの中に、パッケージ名Npと相互依存関係を有するパッケージ名Npdが存在する場合(ステップS165のYES)、パッケージ情報比較部160は、パッケージ名Npを有するパッケージとパッケージ名Npdを有するパッケージとの間に依存関係リンクを設定する(ステップS166)。なお、依存関係リンクは、あるパッケージから、当該パッケージが依存する他のパッケージに向かう矢印として表現することができる。ステップS166における依存関係リンク作成の具体例については後述する。Next, the package information comparing unit 160 based on the acquired dependency information in step S164, in the set G p, determine whether the package name exists with the package name N p and interdependence (Step S165). In the set G p, if the package name N pd with the package name N p and interdependent relationship exists (YES in step S165), the package information comparing unit 160, the package and the package name N with the package name N p A dependency link is set with the package having pd (step S166). The dependency relationship link can be expressed as an arrow from one package to another package on which the package depends. A specific example of the dependency link creation in step S166 will be described later.
一方、ステップS165で、集合Gpの中に、パッケージ名Npと相互依存関係を有するパッケージ名が存在しないと判定された場合(ステップS165のNO)、パッケージ情報比較部160は、処理をステップS162に戻す。On the other hand, if it is determined in step S165 that there is no package name having a mutual dependency relationship with the package name N p in the set G p (NO in step S165), the package information comparison unit 160 performs the process. Return to S162.
なお、ステップS162において、版番号のみが異なるパッケージ名が、比較対象の両パッケージリストに含まれる場合がありうる。パッケージ情報比較部160は、当該パッケージ名を更新されたパッケージ名として、後述のステップS167における出力の一部に含める。 Note that in step S162, package names that differ only in version number may be included in both of the comparison target package lists. The package information comparison unit 160 includes the package name as an updated package name in a part of an output in step S167 described later.
ステップS162で未処理のパッケージ名が無いと判定されたとき(ステップS162のNO)、すなわち、パッケージリストの差分中の全パッケージ名について、ステップS162〜S166の処理が完了したとき、パッケージ情報比較部160は、パッケージリストの差分(パッケージ名の集合)を示す情報をネットワーク・サービス・インターフェース140に出力するとともに、当該差分を、依存関係リンクによってグループ化した形で出力する。依存関係リンクで結ばれたパッケージ名は、同一グループに分類されることとなる。1つのグループ内には、他のパッケージ名に依存されないパッケージ名(すなわち、当該パッケージ名を有するパッケージを指す矢印がない。)が少なくとも1つ存在するので、このパッケージ名を、当該グループの代表パッケージ名とする。
When it is determined in step S162 that there is no unprocessed package name (NO in step S162), that is, when the processes in steps S162 to S166 are completed for all package names in the package list difference, the package information comparison unit 160 outputs information indicating a difference (a set of package names) in the package list to the
あるグループの代表パッケージ名を有するパッケージ(以下、代表パッケージと呼ぶ。)を導入するには、この代表パッケージ以外のすべてのパッケージが事前に仮想計算機に導入されている必要がある。したがって、パッケージ情報比較部160は、異なる2台の仮想計算機321i,321j(i≠j)にそれぞれ導入されている代表パッケージ名を検出すれば、これら仮想計算機321i,321jのディスクイメージ220,220間の差分を表すすべてのパッケージを特定することができる。In order to introduce a package having a representative package name of a certain group (hereinafter referred to as a representative package), all the packages other than the representative package need to be installed in the virtual machine in advance. Therefore, if the package information comparison unit 160 detects representative package names introduced into two different
図11および図12を参照しつつ、依存関係リンクの作成およびパッケージリストの差分のグループ化の具体例を説明する。図11は、「pkg-11」、「pkg-12」、...、「pkg-15」という5つのパッケージについての依存関係情報を示す図である。パッケージ「pkg-11」は「pkg-12」に依存するので、「pkg-11」から「pkg-12」へと矢印が付加される。同様に、パッケージ「pkg-13」から「pkg-11」へと矢印が付加されることとなる。 With reference to FIGS. 11 and 12, a specific example of creation of dependency link and grouping of package list differences will be described. FIG. 11 is a diagram showing dependency information about five packages “pkg-11”, “pkg-12”,..., “Pkg-15”. Since the package “pkg-11” depends on “pkg-12”, an arrow is added from “pkg-11” to “pkg-12”. Similarly, an arrow is added from the package “pkg-13” to “pkg-11”.
図12は、パッケージ名のグループを示す図である。図11の表の左欄には「pkg-11」、「pkg-12」、...、「pkg-15」というパッケージ名の5つのパッケージが示されている。図11の表の右欄には、左欄で示される各パッケージに依存するパッケージの名称(パッケージ名)が表示されている。「pkg-13」および「pkg-14」に依存するパッケージは存在しないので、これらは代表パッケージ名となり得る。「pkg-15」、「pkg-7」および「pkg-8」はパッケージリスト中の他の要素との依存関係を持たないので、単独でグループを形成し、「pkg-15」はその代表パッケージ名となる。 FIG. 12 shows a package name group. In the left column of the table of FIG. 11, five packages with package names “pkg-11”, “pkg-12”,..., “Pkg-15” are shown. In the right column of the table of FIG. 11, the names of packages (package names) depending on the packages shown in the left column are displayed. Since there are no packages that depend on "pkg-13" and "pkg-14", these can be representative package names. “Pkg-15”, “pkg-7”, and “pkg-8” have no dependencies on other elements in the package list, so they form a group, and “pkg-15” is the representative package. Become a name.
上記の手順は、パッケージリストGA、GBについて、一方が他方の部分集合であるとの条件を前提としていた。この条件が満たされない場合には、GAにのみ含まれるパッケージ名の集合と、GBにのみパッケージ名の集合が存在する。この場合、それらを個別のパッケージリストの差分として扱い、それぞれのパッケージリスト差分についてステップS162〜S167の手順を適用すればよい。The above procedure is based on the condition that one of the package lists G A and G B is a subset of the other. If this condition is not satisfied, a set of package names contained only in G A, there is a set of only the package name G B. In this case, they may be handled as individual package list differences, and the procedures of steps S162 to S167 may be applied to each package list difference.
以下、管理端末400に表示されるパッケージリストの差分の表示内容を説明する。図13(A)と図13(B)は、それぞれ、「pkglist-shopping-52」および「pkglist-shopping-53」と名付けられたディスクイメージの内容を示す図である。これらディスクイメージ間の差分を取得する場合を挙げて以下説明する。
Hereinafter, the display content of the difference of the package list displayed on the
まず、これらのパッケージリストを単純に比較すると、「pkglist-shopping-53」にのみ、「memorydb-0.8-1」と「cache-1.1.1-3」が含まれている。次に、パッケージリスト間の依存関係情報が図14に示されるものとすれば、パッケージ「cache-1.1.1-3」は「memorydb-0.8-1」に依存し、「cache-1.1.1」に依存するパッケージは存在しない。したがって、「cache-1.1.1」と「memorydb-0.8-1」は同一のグループに属し、「cache-1.1.1」がその代表パッケージ名となる。 First, when these package lists are simply compared, only “pkglist-shopping-53” includes “memorydb-0.8-1” and “cache-1.1.1-3”. Next, if the dependency information between package lists is as shown in FIG. 14, the package “cache-1.1.1-3” depends on “memorydb-0.8-1”, and “cache-1.1.1” There are no packages that depend on. Therefore, “cache-1.1.1” and “memorydb-0.8-1” belong to the same group, and “cache-1.1.1” is the representative package name.
また、「monitor」という名称のパッケージは両パッケージリストに含まれるものの、パッケージ名に付加された版番号が、それぞれ「3.0.1-4」、「3.0.1-5」と異なっている。したがって、これらのパッケージ名を、更新されたパッケージ名として出力する。結果として、管理端末400に出力される比較結果は、たとえば、図15に示すものとなる。
A package named “monitor” is included in both package lists, but the version numbers added to the package names are different from “3.0.1-4” and “3.0.1-5”, respectively. Therefore, these package names are output as updated package names. As a result, the comparison result output to the
上記第2の実施形態の仮想計算機管理システムが奏する効果は以下の通りである。 The effects exhibited by the virtual machine management system of the second embodiment are as follows.
上述したように、仮想計算機3211〜321Nの各々では、パッケージ情報送信部305は、各仮想計算機に導入された複数のソフトウェア・パッケージの識別情報と、当該ソフトウェア・パッケージの相互依存関係を示す依存関係情報とをパッケージ情報として仮想計算機管理サーバ100Bに送信する。パッケージ情報比較部160は、このパッケージ情報に基づいて、仮想計算機3211〜321Nの更新状況を示すデータを生成することができる。As described above, in each of the
したがって、本実施形態の仮想計算機管理システムは、通信ネットワーク500上に分散している多数の仮想計算機3211〜321Nの実行環境に関する正確な詳細情報を取得することができ、当該実行環境の更新状況を示すデータをシステム管理者に提供することができる。それ故、システム管理者の管理負担が大幅に軽減される。Therefore, the virtual machine management system according to the present embodiment can acquire accurate detailed information regarding the execution environment of a large number of
また、パッケージ情報比較部160は、仮想計算機3211〜321Nのディスクイメージの識別子と、これら仮想計算機にそれぞれ対応する当該パッケージ情報とを関連付けて仮想計算機情報管理テーブル210Bに記録するので、パッケージ情報比較部160は、この仮想計算機情報管理テーブル210Bを利用して、同一のディスクイメージ220の更新履歴を示すデータ、あるいは、異なる2つのディスクイメージ220,220間の差分を示すデータを生成することができる。その更新履歴や差分を示すデータに基づいて、システム管理者は、ネットワーク・サービス・インターフェース140を通じて、仮想計算機3211〜321Nの実行環境の更新状況を素早くかつ容易に把握することができる。Since the package information comparison unit 160 records the disk image identifiers of the
更に、パッケージ情報比較部160は、依存関係情報に基づいて、仮想計算機3211〜321Nの実行環境の更新状況を示すデータを、ソフトウェア・パッケージのグループごとに分類した形で生成するので、システム管理者は、その更新状況を容易にかつ素早く把握することができる。Further, the package information comparison unit 160 generates data indicating the update status of the execution environment of the
以上、図面を参照して本発明の実施形態について述べた。上記第1および第2の実施形態の仮想計算機管理システムは、仮想計算機により構成される企業内コンピュータシステムの構築において、仮想計算機の実行環境を一元管理するためのシステムとしての用途に適用可能である。 The embodiments of the present invention have been described above with reference to the drawings. The virtual machine management system of the first and second embodiments can be applied to a use as a system for centrally managing the execution environment of a virtual machine in the construction of an in-house computer system composed of virtual machines. .
また、上記第1および第2の実施形態の仮想計算機管理システムは、仮想計算機により構成されるデータセンターにおいて、複数のシステム管理者が少しずつ異なる内容の仮想計算機を利用する目的で、それらの仮想計算機についての情報を一元管理するためのシステムとしての用途にも適用可能である。 Also, the virtual machine management systems of the first and second embodiments described above are used for the purpose of a plurality of system managers using virtual machines having slightly different contents in a data center composed of virtual machines. The present invention can also be applied as a system for centrally managing information about computers.
上記実施形態は本発明の例示であり、上記以外の様々な構成を採用することもできる。たとえば、上記第1の実施形態(図1)では、仮想計算機管理サーバ100Aと記憶装置200とは通信ネットワーク500を介して相互接続されているが、かかる形態に限定されるものではない。仮想計算機管理サーバ100Aと記憶装置200とが同一の装置内に組み込まれる形態もあり得る。同様に、管理端末400と仮想計算機管理サーバ100Aとは、通信ネットワーク500を介して相互接続されているが、かかる形態に限定されるものでもない。管理端末400が仮想計算機管理サーバ100Aに直接接続された形態もあり得る。
The above embodiment is an exemplification of the present invention, and various configurations other than the above can also be adopted. For example, in the first embodiment (FIG. 1), the virtual
また、上記第2の実施形態(図7)でも、仮想計算機管理サーバ100Bと記憶装置200とは通信ネットワーク500を介して相互接続されているが、かかる形態に限定されるものではない。仮想計算機管理サーバ100Bと記憶装置200とが同一の装置内に組み込まれる形態もあり得る。同様に、管理端末400と仮想計算機管理サーバ100Bとは、通信ネットワーク500を介して相互接続されているが、かかる形態に限定されるものでもない。管理端末400が仮想計算機管理サーバ100Bに直接接続された形態もあり得る。
Also in the second embodiment (FIG. 7), the virtual machine management server 100B and the
上記第1の実施形態では、図1に示されるように、仮想計算機管理サーバ100Aは、複数の機能ブロック110,120,130,140を含む。これら機能ブロック110,120,130,140は単一の装置内に組み込まれてもよいし、あるいは、協働する複数の装置に分散して組み込まれていてもよい。同様に、上記第2の実施形態でも、仮想計算機管理サーバ100Bを構成する機能ブロック110,140,150,160は、単一の装置内に組み込まれてもよいし、あるいは、協働する複数の装置に分散して組み込まれていてもよい。
In the first embodiment, as illustrated in FIG. 1, the virtual
この出願は、日本国特許庁に出願された特願2009−052603号(出願日:2009年3月5日)を基礎とする優先権を主張するものであり、その開示の全ては、本明細書の一部として援用(incorporation herein by reference)される。 This application claims priority based on Japanese Patent Application No. 2009-052603 (filing date: March 5, 2009) filed with the Japan Patent Office, the entire disclosure of which is incorporated herein by reference. Incorporation herein by reference.
Claims (14)
前記仮想計算機を通信ネットワークを介して遠隔制御する仮想計算機管理装置と、
前記複数の仮想計算機にそれぞれ対応して用意された複数の更新情報ファイルが格納される記憶装置と、
を備え、
前記各仮想計算機は、
更新記録ファイルが格納されるデータ記憶部と、
当該各仮想計算機の実行環境の更新が実行されたときに当該更新の内容を示す更新情報を前記更新記録ファイルに記録するシステム更新手段と、
前記更新記録ファイル内の当該更新情報を前記仮想計算機管理装置に送信する更新情報送信手段と、
を含み、
前記仮想計算機管理装置は、
前記更新情報送信手段から送信された当該更新情報を当該更新情報ファイルに記録する更新情報格納制御手段と、
前記更新情報ファイルに記録されている更新情報を比較して前記仮想計算機の実行環境の更新状況を示すデータを生成する更新情報比較手段と、
を含む、仮想計算機管理システム。A plurality of real machines each having at least one virtual machine;
A virtual machine management device for remotely controlling the virtual machine via a communication network;
A storage device for storing a plurality of update information files prepared respectively corresponding to the plurality of virtual machines;
With
Each of the virtual machines is
A data storage unit for storing update record files;
System update means for recording update information indicating the contents of the update in the update record file when the execution environment of each virtual machine is updated;
Update information transmitting means for transmitting the update information in the update record file to the virtual machine management device;
Including
The virtual machine management device is:
Update information storage control means for recording the update information transmitted from the update information transmission means in the update information file;
Update information comparing means for comparing the update information recorded in the update information file and generating data indicating the update status of the execution environment of the virtual machine;
Including virtual machine management system.
前記実計算機は、当該仮想計算機のディスクイメージを前記仮想計算機管理装置に送信する仮想計算機制御手段を含み、
前記仮想計算機管理装置は、前記仮想計算機制御手段から送信された当該ディスクイメージを前記記憶装置に格納するディスクイメージ格納制御手段を含み、
前記ディスクイメージ格納制御手段は、当該ディスクイメージの識別子と、当該ディスクイメージを有する当該仮想計算機に対応して用意された当該更新情報ファイルの識別子とを関連付けて仮想計算機管理テーブルに記録する、仮想計算機管理システム。The virtual machine management system according to claim 1,
The real computer includes virtual computer control means for transmitting a disk image of the virtual computer to the virtual computer management device,
The virtual machine management device includes disk image storage control means for storing the disk image transmitted from the virtual machine control means in the storage device,
The disk image storage control means associates the identifier of the disk image with the identifier of the update information file prepared corresponding to the virtual machine having the disk image, and records it in a virtual machine management table. Management system.
前記更新情報比較手段は、前記仮想計算機管理テーブルを参照して、前記複数の更新情報ファイルの中から、指定された仮想計算機のディスクイメージに対応する対象ファイルを選択し、
前記更新状況を示すデータは、前記対象ファイルに記録されている更新情報を比較することにより生成される、仮想計算機管理システム。The virtual machine management system according to claim 2 or 3,
The update information comparison unit refers to the virtual machine management table, selects a target file corresponding to a specified virtual machine disk image from the plurality of update information files, and
The virtual machine management system, wherein the data indicating the update status is generated by comparing update information recorded in the target file.
前記仮想計算機管理装置は、当該指示情報を前記更新情報比較手段に与えるインターフェースを含み、
前記更新情報比較手段は、前記複数の更新情報ファイルの中から、当該指示情報により指定された仮想計算機のディスクイメージに対応する更新情報ファイルを前記対象ファイルとして選択し、
前記インターフェースは、前記更新状況を示すデータを、前記指示情報に対する応答結果として前記管理端末に与える、仮想計算機管理システム。The virtual machine management system according to claim 4, further comprising a management terminal that gives instruction information input by a system administrator to the virtual machine management apparatus,
The virtual machine management device includes an interface that gives the instruction information to the update information comparison unit,
The update information comparison unit selects, as the target file, an update information file corresponding to a disk image of a virtual machine designated by the instruction information from the plurality of update information files.
The virtual interface management system, wherein the interface provides data indicating the update status to the management terminal as a response result to the instruction information.
前記仮想計算機を通信ネットワークを介して遠隔制御する仮想計算機管理装置と、
を備え、
前記各仮想計算機は、当該各仮想計算機の実行環境を構築するために当該各仮想計算機に導入された複数のソフトウェア・パッケージの識別情報と、当該ソフトウェア・パッケージの相互依存関係を示す依存関係情報とをパッケージ情報として前記仮想計算機管理装置に送信するパッケージ情報送信手段を含み、
前記仮想計算機管理装置は、
前記仮想計算機ごとに前記パッケージ情報送信手段から送信された前記パッケージ情報を記憶装置に格納するパッケージ情報格納制御手段と、
前記記憶装置に格納されている前記パッケージ情報を比較して前記仮想計算機の実行環境の更新状況を示すデータを生成するパッケージ情報比較手段と、
を含む、仮想計算機管理システム。A plurality of real machines each having at least one virtual machine;
A virtual machine management device for remotely controlling the virtual machine via a communication network;
With
Each of the virtual machines includes identification information of a plurality of software packages introduced into the virtual machines in order to construct an execution environment of the virtual machines, dependency information indicating interdependencies of the software packages, Including package information transmission means for transmitting to the virtual machine management device as package information,
The virtual machine management device is:
Package information storage control means for storing the package information transmitted from the package information transmission means for each virtual computer in a storage device;
Package information comparison means for comparing the package information stored in the storage device and generating data indicating the update status of the execution environment of the virtual machine;
Including virtual machine management system.
前記実計算機は、当該仮想計算機に対応するディスクイメージを前記仮想計算機管理装置に送信する仮想計算機制御手段を含み、
前記仮想計算機管理装置は、前記仮想計算機制御手段から送信された当該ディスクイメージを記憶装置に格納するディスクイメージ格納制御手段を含み、
前記ディスクイメージ格納制御手段は、前記仮想計算機の識別子と、当該仮想計算機に対応する当該ディスクイメージの識別子とを関連付けて仮想計算機管理テーブルに記録する、仮想計算機管理システム。The virtual machine management system according to claim 10 or 11,
The real machine includes virtual machine control means for transmitting a disk image corresponding to the virtual machine to the virtual machine management apparatus,
The virtual machine management device includes disk image storage control means for storing the disk image transmitted from the virtual machine control means in a storage device,
The disk image storage control unit is a virtual machine management system that records the identifier of the virtual machine and the identifier of the disk image corresponding to the virtual machine in a virtual machine management table in association with each other.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009052603 | 2009-03-05 | ||
JP2009052603 | 2009-03-05 | ||
PCT/JP2010/001275 WO2010100867A1 (en) | 2009-03-05 | 2010-02-25 | Virtual machine management system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2010100867A1 true JPWO2010100867A1 (en) | 2012-09-06 |
Family
ID=42709437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011502628A Pending JPWO2010100867A1 (en) | 2009-03-05 | 2010-02-25 | Virtual machine management system |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2010100867A1 (en) |
WO (1) | WO2010100867A1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5648902B2 (en) * | 2010-09-30 | 2015-01-07 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Method for managing snapshots of virtual server and apparatus embodying the method |
US8825864B2 (en) | 2011-09-29 | 2014-09-02 | Oracle International Corporation | System and method for supporting a dynamic resource broker in a transactional middleware machine environment |
JP6304418B2 (en) * | 2017-02-23 | 2018-04-04 | キヤノンマーケティングジャパン株式会社 | Information processing apparatus, information processing method, and computer program |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002041295A (en) * | 2000-07-24 | 2002-02-08 | Sony Corp | Software update management system, management method, and record medium |
JP3644361B2 (en) * | 2000-08-21 | 2005-04-27 | 日本電気株式会社 | Program update information centralized management system |
JP4050249B2 (en) * | 2004-05-20 | 2008-02-20 | 株式会社エヌ・ティ・ティ・データ | Virtual machine management system |
JP2007079773A (en) * | 2005-09-13 | 2007-03-29 | Fuji Xerox Co Ltd | Software distribution server and method for distributing software |
-
2010
- 2010-02-25 JP JP2011502628A patent/JPWO2010100867A1/en active Pending
- 2010-02-25 WO PCT/JP2010/001275 patent/WO2010100867A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2010100867A1 (en) | 2010-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102236522B1 (en) | Method and apparatus for processing information | |
JP6774499B2 (en) | Providing access to hybrid applications offline | |
US9575739B2 (en) | Performing unattended software installation | |
US20130290952A1 (en) | Copying Virtual Machine Templates To Cloud Regions | |
CN110088733A (en) | The layout based on accumulation layer of virtual machine (vm) migration | |
JP5682996B2 (en) | Client program, terminal, server device, server program, system and method | |
US9170806B2 (en) | Software discovery by an installer controller | |
EP2019358A1 (en) | A method and a system for the creation and deployment of a virtual machine appliance on virtualised servers | |
CN107528718B (en) | Method, device and system for acquiring resources | |
JP2017123188A (en) | Recovery of tenant data across tenant moves | |
JP5686199B2 (en) | Server device, log transfer program, log transfer method, and log transfer system | |
JP5403448B2 (en) | Virtual machine management apparatus, virtual machine management method, and program | |
JP2012078893A (en) | Computer system and management computer | |
CN111033633A (en) | Uploading data records to a cloud repository | |
EP3243134A1 (en) | Multi-tenant upgrading | |
WO2019181860A1 (en) | Application execution device, application execution method, and recording medium | |
WO2010100867A1 (en) | Virtual machine management system | |
JP2014123360A (en) | Tag classification system and method for virtual machine | |
JP5403447B2 (en) | Virtual machine management apparatus, virtual machine management system, virtual machine management method, and program | |
KR101762861B1 (en) | Programmable computation system using one or more function modules, method for processing information using one or more function modules and computer program for the same | |
JP6497157B2 (en) | Information management apparatus, information management method, information management program, data structure, and software asset management system | |
JP2014164545A (en) | Deployment method and program | |
JP5403445B2 (en) | Virtual machine management apparatus, virtual machine management method, and program | |
JP2015158809A (en) | Distribution method, distribution device, terminal device, and distribution system | |
WO2011117955A1 (en) | Virtual machine management device, virtual machine management system, virtual machine management method, and program |