JP6003590B2 - データセンタ,仮想システムの複写サービスの提供方法,データセンタの管理サーバ及び仮想システムの複写プログラム - Google Patents

データセンタ,仮想システムの複写サービスの提供方法,データセンタの管理サーバ及び仮想システムの複写プログラム Download PDF

Info

Publication number
JP6003590B2
JP6003590B2 JP2012263780A JP2012263780A JP6003590B2 JP 6003590 B2 JP6003590 B2 JP 6003590B2 JP 2012263780 A JP2012263780 A JP 2012263780A JP 2012263780 A JP2012263780 A JP 2012263780A JP 6003590 B2 JP6003590 B2 JP 6003590B2
Authority
JP
Japan
Prior art keywords
user
hardware
virtual system
copy
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.)
Active
Application number
JP2012263780A
Other languages
English (en)
Other versions
JP2014109900A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012263780A priority Critical patent/JP6003590B2/ja
Priority to US14/093,278 priority patent/US20140156851A1/en
Publication of JP2014109900A publication Critical patent/JP2014109900A/ja
Application granted granted Critical
Publication of JP6003590B2 publication Critical patent/JP6003590B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/084Configuration by using pre-existing information, e.g. using templates or copying from other elements
    • H04L41/0843Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Description

本発明は,データセンタ,データセンタでのシステムの複写サービスの提供方法及びデータセンタでのシステムの複写プログラムに関する。
近年,データセンタによるクラウドコンピューティングサービスが広く提供されつつある。クラウドコンピューティングサービスの一つとして,コンピュータを構築し稼働させるための基盤として,仮想マシンやネットワークなどのインフラそのものを,インターネット経由のサービスとして提供することが行われている。
このようなサービスにおいて,ユーザは,ユーザインターフェース画面から,所望の処理能力を有する仮想マシンを選択し,仮想マシンのオペレーションシステム(以下OS)を選択し,仮想システムを構築する。仮想システムの構築は,上記の選択された仮想マシンとOSに対してハードウエア資源群内の必要なハードウエア資源を割り付けることで行われる。この仮想システムの初期状態から,さらに,ユーザは,ユーザインターフェース画面から,仮想システム内の仮想マシンに対してミドルウエアやアプリケーションプログラムをインストールし各種の設定を行い,また,仮想システムのネットワークを設定し,仮想システム内の仮想マシンにデータを格納する。
特開2011−70627号公報
FUJITSU.61,3 (05,2010)
ユーザは,上記のように構築した仮想システムのハードウエアのインフラをインターネット経由のサービスとして提供を受けながら,仮想システムを稼働する。その場合,構築した仮想システムをそのまま,別のユーザに複写したいという要求がある。仮想マシンによる仮想システムは,仮想マシンとOSと,インストールされたミドルウエアやアプリケーションプログラムやネットワーク設定やユーザデータなどを有するテンプレート(テンプレートファイル,またはイメージファイル)に,ハードウエア資源を割り付けることで構成される。そこで,テンプレートファイルを複写して複写テンプレートを作成し,その複写テンプレートに新たなハードウエア資源を割り付けて,元の仮想システムと同じ仮想システムを生成することが行われる。
一方で,ハードウエア資源群は,ハードウエア資源の管理を容易化するために,所定数のサーバとストレージを最小構成単位とするハードウエアブロックに分けて管理される。ハードウエアとOSは時代と共に進化していくので,それに対応して,所定の年数または期間毎に,データセンタ内に必要なハードウエアブロックが導入され,ユーザの仮想システムのハードウエア資源として提供される。当然,古いハードウエアブロックよりも新しいハードウエアブロックのほうがより高性能の仮想マシンを提供できる場合がある。そして,データセンタの管理サーバは,各ユーザにそれぞれが利用可能なハードウエアブロックを割り付け,ユーザの仮想システムに,そのユーザのハードウエアブロック内の仮想マシンなどが割り付けられる。
しかしながら,ハードウエア資源の管理の制約から,ユーザは割り付けられたハードウエアブロック内の仮想サーバしか利用することができず,ハードウエアブロックをまたいで他のハードウエアブロック内の仮想サーバを利用することは制限される。
そのため,上記の仮想システムを複写する際に,あるハードウエアブロック内の仮想マシンが割り付けられている仮想システムを,別のハードウエアブロック内に複写する場合がある。複写元のハードウエアブロックが高性能の仮想マシンを有し,複写先のハードウエアブロックが低性能の仮想マシンしか有しない場合に,複写元の仮想システムが高性能の仮想マシンを含んでいる場合,複写先のハードウエアブロックに同じ仮想システムを構築できないという不都合が生じる。
そこで,本発明の目的は,仮想システムの複写サービスを適切に提供するデータセンタ,データセンタでのシステムの複写サービスの提供方法及びデータセンタでのシステムの複写プログラムを提供することにある。
データセンタの第1の側面は,
上記第1の側面における好ましい態様は,少なくとも複数のサーバと複数のストレージを有するハードウエア資源群と,
仮想マシンを有する仮想システムの情報を有するユーザテンプレートファイルを記憶領域に格納し,前記ユーザテンプレートファイルに前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有し,
前記ハードウエア資源群は,それぞれ所定数のサーバと所定数のストレージを有する複数のハードウエアブロックを有し,
前記管理サーバは,第1のユーザの第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザの仮想システムを第2のユーザの第2のハードウエアブロックに複写する仮想システム複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定する。
第1の側面によれば,仮想システムの複写サービスを適切に提供することができる。
データセンタの構成例を示す図である。 データセンタ内のハードウエア資源群の一例を示す図である。 ユーザが仮想システムを構築する手順と,仮想システムを複写する手順とを示す図である。 ユーザが仮想システムを構築する手順を示すフローチャート図である。 テンプレートファイルの具体例を示す図である。 ハードウエア資源群10内のハードウエアブロックを示す図である。 データセンタ内のハードウエアブロックの構成を示す図である。 複数のハードウエアブロックの提供可能な仮想マシンVMの性能レベルとOSの例を示す図である。 異なるハードウエアブロック間での仮想システムの複写処理を示す図である。 複写元ユーザ端末U1に対する管理サーバの処理を示すフローチャート図である。 ユーザとそのユーザに割り付けられているハードウエアブロックの管理表の一例を示す図である。 テンプレート毎の性能レベルや複写キー及び複写先IDなどの管理表の一例を示す図である。 管理サーバによる判定処理を説明するための図である。 管理サーバによる別の判定処理を説明するための図である。 複写先ユーザ端末に対する管理サーバの仮想システム複写処理のフローチャート図である。 テンプレートの複写と複写されたテンプレートの修正を説明する図である。 テンプレートの修正を具体的に示す図である。 図15のテンプレート複写処理S38,S42のフローチャート図である。 複写元ユーザ端末のユーザインターフェースの例を示す図である。 上記の複写先ユーザ端末のユーザインターフェースの例を示す図である。 工程S42のテンプレート複写中の画面を示す図である。
図1は,データセンタの構成例を示す図である。データセンタは,複数のサーバと複数のストレージと複数のネットワーク機器などを有するハードウエア資源群10と,ユーザが作成する仮想マシンを有する仮想システムの情報を有するテンプレートファイルTP1,TP2,TP3に,ハードウエア資源群10内のハードウエアを割り付けて仮想システムVSYSを構築し運用する管理サーバ12とを有する。
管理サーバ12の主な機能は,ハードウエア資源群10内のハードウエア資源を仮想化する機能12Aと,テンプレートファイルTP1,TP2,TP3内の仮想マシンにハードウエア資源群内のハードウエア資源を割り付けて仮想マシンを構築する機能12Bと,ユーザに対してGUI(グラフィックユーザインターフェース)を提供して,GUIを介して仮想システムの構築,運用管理,仮想システムの複写などのサービスを提供する仮想システム管理機能12Cとを有する。管理サーバ12は,テンプレートファイルにハードウエア資源を割り付けた場合に,そのハードウエア資源割付情報12Dを管理サーバ内の記憶領域に格納する。
図2は,データセンタ内のハードウエア資源群の一例を示す図である。ハードウエア資源群10は,サーバ群とネットワーク機器群とストレージ群などを有する。図2には,サーバ群としてサーバ群#1,#2が示されている。サーバ群#1,#2は,例えば,サーバラックで区分されるが,論理的には同じサーバ群である。サーバ群#1内には,複数のサーバが設けられていて,それらのサーバはスイッチSWを介してネットワークで均質に接続され,コアスイッチC-SWを介してネットワークNWに接続され,インターネットからアクセス可能である。ネットワーク機器群は,スイッチSWやサーバにより構築される機器などを有する。
ストレージ群は,複数のストレージST#1,ST#2,ST#3を有し,それらがスイッチSWを介してネットワークに接続される。
図2中に示したとおり,個々のサーバは,図1の管理サーバ12の仮想化機能により,複数の仮想マシンVMに構成され,それらの仮想マシンVMは仮想スイッチSWを介してネットワークに接続される。
[テンプレートファイルとシステム化]
次に,テンプレートファイルとそれに対するシステム化について説明する。データセンタは,ユーザが構築した仮想システムのインフラをインターネット経由のサービスとして提供する。そのために,データセンタの管理サーバは,ユーザにGUIを提供して,ユーザが仮想システムの構築を行うことができるサービスを提供する。
図3は,ユーザが仮想システムを構築する手順と,仮想システムを複写する手順とを示す図である。図4は,ユーザが仮想システムを構築する手順を示すフローチャート図である。さらに,図5は,テンプレートファイルの具体例を示す図である。これらの図を参照して,ユーザによる仮想システムの構築手順と,仮想システムを複写する手順について説明する。
なお,テンプレートファイルは,仮想マシンの情報に加えてOS,ミドルウエア,アプリケーションプログラム,データそのものを含むデータファイルであるが,以下単にテンプレートと称する場合もあるが,同じ意味である。
仮想システムの構築手順では,ユーザは,管理サーバのGUIを通じて,仮想マシンVMとそれにインストールするOS及び基本的なネットワーク構成を選択してオーダーすると(S1),オーダーした仮想マシンVMを有する仮想システムVSYS#1のテンプレートTP1がハードウエア資源群10内のサーバのハードディスク領域(記憶領域)内に生成される(S2)。図3の左端のテンプレートTP1には,ネットワークで接続された4つの仮想マシンVM0-VM3とそれらにインストールされたOS(図示せず)が含まれている。
ユーザは,GUIを介して,サービスとして提供可能な様々な性能レベルを有する複数の仮想マシンの中から,所望の仮想マシンVMを選択する。さらに,ユーザは,その仮想マシンVMにインストール可能な複数のOSの中から,所望のOSを選択する。仮想マシンVMは,CPUの個数,メモリ容量,ハードディスク容量などにより性能レベルが区分されている。そこで,所望の性能レベルの仮想マシンVMを選択することで,所望のCPU数,メモリ容量,ハードディスク容量を有して所望の性能を有する仮想マシンVMを選択する。仮想マシンVMのCPU数は,例えば1個,2個,4個,8個,16個,32個など様々な性能レベルで提供可能になっている。メモリ容量やハードディスク容量などによっても様々な性能レベルで提供される。
ユーザは,GUIを介して,仮想ストレージも選択して,テンプレートTP1内に格納することができる。
ユーザによりオーダーされた複数の仮想マシンVMには選択されたOSがインストールされる。具体的には,ユーザがGUIを介して仮想マシンVMにインストールするOSを選択すると,そのOSのプログラムファイルが,テンプレートファイルTP1内に格納され,仮想マシンVMにインストールされる。このOSの仮想マシンVMへのインストールは,一般的なPCのハードディスク内にOSをインストールすることと同等の処理である。つまり,ここで言うテンプレートファイルは,一般的なPCのハードディスク内のシステムファイルとソフトウエアファイルとデータなどのファイル群に対応する。但し,データセンタの場合は実際のサーバが仮想マシンに仮想化されているので,実際に動作するサーバのハードディスク内にOSがインストールされるわけではない。
データセンタのハードウエア資源群は,後述するとおり,複数のハードウエアブロックを有する。ハードウエアブロックは,同時期に設置された所定数のサーバと所定数のストレージを有するハードウエア資源群の最小構成単位である。そして,管理サーバ12は,選択された性能レベルの仮想マシンVMを提供可能なハードウエアブロックを選択し,そのハードウエアブロック内の管理サーバの管理領域に,上記のテンプレートTP1を格納する。
管理サーバ12は,ユーザが作成した仮想システムのテンプレートTP1内の仮想マシンや仮想ストレージに,上記ハードウエアブロック内のサーバやストレージなどのハードウエア資源を割り付けする(S3)。テンプレートTP1にハードウエア資源が割り付けられると,テンプレートTP1と割り付けられたハードウエア資源とにより仮想システムVSYS#1が構築され,運用可能になる。これがシステム化の処理である。
図5には,テンプレートファイルの一例を示す図である。図5に示されたテンプレートTP1は,4つの仮想マシンVM0,VM1,VM2,VM3のファイルと,それらにインストールされるOSのファイルを有する。なお,図5のテンプレートTP1には,後にインストールされるミドルウエアMW,アプリケーションプログラムAPL,データDATAも含まれている。また,4つの仮想マシンVMO, VM1,VM2,VM3には,選択した性能レベルL2,L16,L2,L4がその属性データとして含まれている。図5のテンプレートTP1には,ハードウエア資源が割り付けられていて,仮想マシンVSYS#1を構築している。
図3,4に戻り,ユーザは,GUIを介して,各仮想マシンVM内に必要なミドルウエアMWやアプリケーションプログラムAPをインストールし,それぞれ必要な設定を行う(S4)。これにより,図5のテンプレートTP1に示されるとおり,各仮想マシンVMに対応付けられた実際のミドルウエアMWのファイルと,アプリケーションプログラムAPのファイルと,それらの設定情報が,テンプレートファイルTP1に追加される。さらに,ユーザは,GUIを介して,仮想システムにユーザー独自のネットワーク設定を追加する(S5)。これにより,図5のテンプレートTP1には,ネットワーク設定情報NWが追加される。そして,ユーザは,GUIを介して,仮想マシンVMに必要に応じてデータを格納する(S6)。これにより,図5のテンプレートTP1には,実際のデータが追加される。
図5のテンプレートTP1内の例えば仮想マシンVM1は,性能レベルがL16と比較的高い性能レベルを有し,その仮想マシンVM1ついて,テンプレートTP1内には,5GBのオペレーションシステムOS1のファイルと,1GBのミドルウエアMWのファイルと,2GBのアプリケーションプログラムAP1のファイルと,10GBのデータDATAと,ネットワーク設定情報NWが含まれる。そして,このテンプレートTP1内の仮想マシンに対して,ハードウエア資源が割り当てられることで,仮想システムが構築され,稼働可能になる。
図5のテンプレートTP1の破線による3つの区分は,例えば,ネットワーク構成の設定に対応している。例えば,仮想マシンVM0が外部のインターネットとのファイアウオールサーバに,仮想マシンVM1,VM2が所望のアプリケーションを実現するサーバに,そして,仮想マシンVM3がデータベースサーバにそれぞれ構築される。このように仮想マシンVM3はデータベースサーバとして機能することが期待され,データ容量が100GBと他の仮想マシンVM0,VM1,VM2らより大容量である。
仮想システムが稼働される過程で,データDATAが増減し,新たなアプリケーションプログラムが追加されたり,各種の設定情報が更新されたりするが,それらの情報は全てこのテンプレートTP1内に含まれている。
したがって,テンプレートファイルは,一般的なPCにおけるハードディスク内に格納されるシステムファイル,OSファイル,プログラムファイル,データに対応する。但し,データセンタではハードウエア資源を仮想化しているので,テンプレートファイルを格納するサーバとは異なるサーバまたは同じサーバがハードウエア資源として割り付けられることになる。
[仮想システムの複写処理]
図3と図5により仮想システムの複写処理について説明する。前述のとおり,ハードウエア資源の仮想化により,任意のサーバのハードディスク内のテンプレートに,任意のサーバなどのハードウエア資源を割り付けることで,仮想システムを構築することができた。このようなハードウエア資源の仮想化の特徴を利用して,構築された仮想システムを簡単に複写処理することができる。
まず,図3,図5において,既にシステム化されている仮想システムVSYS#1の動作を停止する。そして,仮想システムVSYS#1のテンプレートTP1を複写して別のテンプレートTP2をハードディスク内に格納する(S7)。この複写テンプレートTP2は,稼働中の仮想システムVSYS#1のテンプレートTP1と同じ情報を含んでいる。但し,テンプレートTP1内のデータDATAについては,必要に応じて複写テンプレートTP2に含まれたり含まれなかったりする。
図5には,複写テンプレートTP2の具体的なファイルや設定情報が示されている。図5の例では,複写テンプレートTP2は,複写元であるテンプレートTP1と同じであり,テンプレートTP1のデータDATAも含んでいる。ただし,この複写テンプレートTP2には,未だハードウエア資源が割り付けられていないので,システム化されていない。
図3に示されるとおり,図1の運用サーバ12により,複写テンプレートTP2の仮想マシンなどにハードウエア資源が割り付けられると,複写された仮想システムVSYS#2が構築される。この複写された仮想システムVSYS#2は,複写元である仮想システムVSYS#1と同じ構成のシステムであり,但し,割り付けられているハードウエア資源は異なる。
[ハードウエア資源群のハードウエアブロック]
次に,ハードウエア資源群内のハードウエアブロックについて説明する。
図6は,ハードウエア資源群10内のハードウエアブロックを示す図である。また,図7は,データセンタ内のハードウエアブロックの構成を示す図である。
前述したとおり,ハードウエア資源群10は,ハードウエア資源の管理を容易化するために,所定数のサーバと所定数のストレージを最小構成単位とするハードウエアブロックHBLに分けて管理される。図6には,例として,3つのハードウエアブロックHBL-A,HBL-B,HBL-Cが,上位スイッチを介して接続されている。各ハードウエアブロックHBL内のハードウエア資源の構成は,図2で示したハードウエア資源と同じであり,サーバ群とストレージ群とネットワーク機器のスイッチSWなどで構成される。
ハードウエアとOSは時代と共に進化していくので,それに対応して,所定の年数または期間毎に,データセンタ内に必要なハードウエアブロックが導入され,ユーザの仮想システムのハードウエア資源として提供される。例えば,古い時代に導入された古いハードウエアブロックが提供可能な仮想マシンの性能レベルは,新しい時代に導入された新しいハードウエアブロックが提供可能な仮想マシンの機能ブロックと異なり,新しいほうがより高性能の仮想マシンを提供できる場合がある。また,古いハードウエアブロックが提供可能なOSと,新しいハードウエアブロックが提供可能なOSとが異なる場合もある。
そこで,ハードウエア資源の管理を容易にするために,データセンタの管理サーバは,同時期に導入されたハードウエアブロックの単位で管理する。このようなハードウエア資源の管理の制約から,管理サーバは,次のようにしてユーザにハードウエアブロックを割り付ける。
図3に示した仮想マシンVMがオーダーされた時に,ユーザが希望している性能レベルの仮想マシンVMを提供可能なハードウエアブロックであって,そのユーザにハードウエアを新たに割り付けるだけの余裕のあるハードウエアブロックが選択され,そのユーザに割り付けられる。
そして,管理サーバは,ユーザのテンプレートファイルTP1をそのユーザに割り付けられたハードウエアブロック内の記憶領域内に格納し,そのテンプレートTP1に対して,そのユーザに割り付けられたハードウエアブロック内のハードウエア資源を割り付ける。
さらに,ハードウエア資源の管理の制約から,ユーザには割り付けられたハードウエアブロックの情報は開示されない。さらに,ユーザは割り付けられたハードウエアブロック内の仮想マシンや仮想ストレージしか利用することができず,ハードウエアブロックをまたいで他のハードウエアブロック内の仮想マシンや仮想ストレージを利用することは制限される。
不特定多数のユーザがデータセンタのハードウエア資源を共有しあうパブリッククラウドの一つの制約として,ユーザとのサービスレベル契約(SLA)では,ユーザが所望する仮想マシンやOSの提供を実現することが取り決められるが,割り付けられるハードウエア資源がどこのデータセンタのどのハードウエアブロックかといったインフラ属性情報はユーザには開示されない。その理由は,パブリッククラウドでは,あるユーザによるハードウエア資源の利用状況を他のユーザに認識または推測させることは,一般に禁止されているからである。したがって,基本的には,ユーザには割り当てたハードウエアブロックの情報は非開示である。
図7には,データセンタDC-X内のハードウエアブロック(HWブロック)HBL-A,HBL-B,HBL-Cが示されている。データセンタ内のデータセンタ管理サーバ121は,インターネットを介して,他のデータセンタと通信可能であり,更に,図示しないユーザ端末ともインターネットを介して通信可能である。
複数のハードウエアブロックHBL-A,HBL-B,HBL-Cは,それぞれハードウエアブロック管理サーバ122と,ユーザブロックU-BLと,運用者ブロックADM-BLとを有する。データセンタ管理サーバ121と,各ハードウエアブロック管理サーバ122とは,図1で説明した,ハードウエア資源の割り付け機能12Bと,ハードウエア資源の仮想化機能12Aとを有する。
運用者ブロックADM-BL内のハードウエア資源により,図1で説明したVSYS管理機能12Cを有する管理サーバが構築される。また,運用者ブロックADM-BL内のハードウエア資源のハードディスク領域内に,そのハードウエアブロックHBLに割り付けられたユーザのテンプレートファイルTPが格納される。そして,ハードウエアブロック管理サーバ122が,ユーザのテンプレートTPに対してユーザブロックU-BL内のハードウエア資源を割り付けて,データセンタ管理サーバ121と共に運用管理する。
図8は,複数のハードウエアブロックの提供可能な仮想マシンVMの性能レベルとOSの例を示す図である。管理表20には,3つのハードウエアブロックHBL-A,HBL-B,HBL-Cがユーザに提供可能な仮想マシンの種類を示している。6種類の仮想マシンVM-L1〜VM-L32は,例えばCPU数が1個,2個,4個,8個,16個,32個で構成され,その性能レベルは順番に高くなっている。仮想マシンVMは,CPU数以外にも,メモリ容量やハードディスク容量などによっても,その性能レベルが規定される。したがって,管理表20の仮想マシンの性能レベルは一例である。
この例では,2つのハードウエアブロックHBL-A,HBL-Bは,例えば比較的古く構築されたものである。したがって,これらのハードウエアブロックHBL-A,HBL-Bは,6種類の性能レベルの仮想マシンVM-L1〜VM-L32のうち,16個のCPUで構成される仮想マシンVM−L16と32個のCPUで構成される仮想マシンVM-L32を除いて,ユーザに提供可能である。一方,ハードウエアブロックHBL-Cは,例えば比較的新しく構築されたものである。したがって,このハードウエアブロックHBL-Cは,6種類の性能レベルの仮想マシンVM-L1〜VM-L32全てをユーザに提供可能である。
管理表21には,3つのハードウエアブロックHBL-A,HBL-B,HBL-Cがユーザに提供可能なOSの種類を示している。この例では,3つのOS(OS1,OS2,OS3)のうち,例えばOS1,OS2は比較的古いOSであり,OS3は比較的新しいOSである。そのため,2つのハードウエアブロックHBL-A,HBL-Bは,3つのOSのうち,OS3を除いたOS1,OS2をユーザに提供可能である。それに対して,比較的新しいハードウエアブロックHBL-Cは,3つのOS(OS1,OS2,OS3)全てをユーザに提供可能である。
これらのハードウエアブロックの管理表20,21は,例えば,各ハードウエアブロックHBL内の運用者ブロックADM-BL内のVSYS管理サーバ123またはハードウエアブロック管理サーバ122やデータセンタ管理サーバ121内の記憶領域に格納されている。
[本実施の形態の概略]
前述のとおり,仮想システムのテンプレートを複写して,その複写したテンプレートにハードウエア資源を割り付ければ,元の仮想システムと同じ仮想システムを構築することができる。
しかしながら,第1のユーザの第1のハードウエアブロックで構築されている仮想システムを,第2のハードウエアブロックに複写して構築する場合に,次の不都合が生じる。すなわち,複写元の第1のハードウエアブロックが高性能の仮想マシンをユーザに提供可能であり,複写先の第2のハードウエアブロックが低性能の仮想マシンしかユーザに提供可能な場合に,複写元の仮想システムが高性能の仮想マシンを含んでいる場合,複写先の第2のハードウエアブロックに同じ仮想システムを構築できない。
従って,本実施の形態では,管理サーバが,ユーザからの異なるハードウエアブロック間での仮想システムの複写依頼に応答して,上記の不都合が生じるか否かを検出し,必要に応じて警告を出力したり,不都合が解消されるように複写されたテンプレートを変更する。
図9は,異なるハードウエアブロック間での仮想システムの複写処理を示す図である。図9に示した例では,高性能の仮想マシンVM-BL16,VM-BL32や比較的新しいOS3を提供可能なハードウエアブロックHBL-Cに構築されている仮想システムVSYS#1を,そのような高性能の仮想マシンやOS3を提供できないハードウエアブロックHBL-Aに複写する。
まず,複写元ユーザの端末U1が管理サーバ123に複写元ユーザのIDでログインする。そして複写元ユーザの端末U1からの指示により,管理サーバ123は,ハードウエアブロックHBL-C内に構築され稼働中の仮想システムVSYS#1を停止し,仮想システムVSYS#1のテンプレートTP1を複写して,新たなテンプレートTP1Cを生成する。この新たなテンプレートTP1Cは,同じハードウエアブロックHBL-C内の運用サーバ内の記憶領域に格納される。このとき,管理サーバ123は,新たなテンプレートTP1CにテンプレートIDとしてID=TP1Cを発行する。
次に,複写元ユーザ端末U1からテンプレートIDが選択されると,管理サーバ123は,そのテンプレートIDに対応するテンプレート複写キーを発行する。そして,複写元ユーザ端末U1から複写先ユーザIDが指定されると,管理サーバ123は,複写先ユーザIDに割り付けられているハードウエアブロックHBL-Aのハードウエア資源が,テンプレートTP1Cの仮想マシンVMやOSなどを提供できるか否かを判定し,提供できない場合は必要に応じて警告を出力する。提供可能と判定されるか,提供不可能の場合に複写元ユーザ端末U1から警告に対する同意を受信すれば,管理サーバ123は,このテンプレートIDとテンプレート複写キーとに,複写先IDを登録する。テンプレートIDとテンプレート複写キーとは1対1に対応付けられていて,それに対して単数または複数の複写先IDがさらに対応付けられる。
その結果,複写元ユーザは,複写先ユーザに対して,複写対象の仮想システムのテンプレートID(=TP1C)と,テンプレート複写キーを渡す。これで,複写先ユーザにより仮想システムの複写操作の準備が整う。
そこで,複写先ユーザの端末U2が管理サーバ123に複写先ユーザのIDでログインする。そして複写先ユーザの端末U2からテンプレートID及びその複写キーと共にテンプレート複写指令を受信すると,管理サーバ123は,複写先ユーザIDがそのテンプレートIDの複写を許可されているかをチェックする。
そして,許可済みであれば,管理サーバ123は,複写先ユーザIDに割り付けられているハードウエアブロックHBL-Aのハードウエア資源が,複写元テンプレートTP1Cの仮想マシンVMなどを提供できるか否かを判定し,提供できない場合は必要に応じて警告を出力する。提供可能と判定されるか,提供不可能の場合に複写先ユーザ端末U2から警告に対する同意を受信すれば,管理サーバ123は,複写元ユーザのハードウエアブロックHBL-C内のテンプレートTP1Cを,複写先ユーザのハードウエアブロックHBL-A内の記憶領域にデータ転送して格納する。これにより,複写先ユーザのハードウエアブロックHBL-A内の記憶領域に複写されたテンプレートTP2が生成され,それに対してテンプレートIDとしてID=TP2が発行される。
最後に,複写先ユーザ端末U2からのシステム化依頼に応答して,管理サーバ123は,複写されたテンプレートTP2にハードウエアブロックHBL-A内のハードウエア資源を割り付けて,システム化する。これにより,複写先ユーザ端末U2から,複写された仮想システムVSYS#2を稼働させることができる。
次に,仮想システム複写のための具体的な処理について,複写元ユーザ端末U1による処理と,複写先ユーザ端末U2による処理とを説明する。
[複写元ユーザ端末U1に対する管理サーバの処理]
図10は,複写元ユーザ端末U1に対する管理サーバの処理を示すフローチャート図である。管理サーバ123は,複写元ユーザの端末U1からの複写元ユーザIDでログインを認証後,受け付ける(S10)。複写元ユーザ端末U1から仮想システムVSYS#1の稼働を停止した状態でテンプレート作成依頼を受信すると(S11),管理サーバ123は,仮想システムVSYS#1のテンプレートTP1を複写して複写テンプレートTP1Cを生成し複写元ユーザのハードウエアブロックHBL-C内の記憶領域に格納し,テンプレートID(ID=TP1C)を発行する(S12)。
その後,複写元ユーザ端末U1からテンプレートIDの入力または選択と共に(S13),そのテンプレートIDに対して仮想システム複写依頼を受信すると(S14),管理サーバ123は,テンプレート複写キーを発行する(S15)。
さらに,複写元ユーザ端末U1から仮想システム複写の複写先ユーザのIDの入力に対して(S16),次のとおり,管理サーバ123は,複写先ユーザIDに割り付けられているハードウエアブロックHBL-Aのハードウエア資源が,テンプレートTP1Cの仮想マシンVMやOSなどを提供できるか否かを判定する。
図11は,ユーザとそのユーザに割り付けられているハードウエアブロックの管理表の一例を示す図である。また,図12は,テンプレート毎の性能レベルや複写キー及び複写先IDなどの管理表の一例を示す図である。このような管理表は,例えば,運用サーバ123が保持している。
図11の管理表22の例では,複写元ユーザU1はハードウエアブロックHBL-Cに割り付けられていて,そのブロック内のハードウエア資源を割り付けられて仮想システムを構築している。同様に,複写先ユーザU2はハードウエアブロックHBL-Aに割り付けられていて,そのブロック内のハードウエア資源を割り付けられて仮想システムを構築している。他のユーザも同様である。
図12の管理表23の例では,テンプレートIDがTP1CのテンプレートTP1Cは,性能レベルがVM-L2, VM-L16, VM-L2, VM-L4の4つの仮想マシンVM0-VM3を有し,それらにはOSとして,OS1,OS1,OS2,OS2がそれぞれインストールされている。そして,テンプレートTP1Cには,テンプレート複写キーCOPY-K1が発行され,但し,複写先IDは未登録である。
図10に戻り,管理サーバ123による判定処理を説明する。図13は,管理サーバによる判定処理を説明するための図である。まず,管理サーバ123は,図13に示されるとおり,図11の管理表22を参照し,複写先ユーザIDのハードウエアブロックを検索する(S17)。その結果,複写先ユーザID=U2のハードウエアブロックがHBL-Aであることを検出する。そして,管理サーバ123は,図8の管理表20,21を参照して,そのハードウエアブロックHBL-Aが提供可能な,つまりそのハードウエアブロックHBL-Aで利用可能な仮想マシンVMとOSなどを検索する(S19)。
一方,管理サーバ123は,図13に示されるとおり,図12の管理表23を参照して,複写対象のテンプレートTP1Cの仮想マシンの性能レベルとOSとを検索する(S18)。
そして,管理サーバ123は,図13に示されるとおり,複写先ユーザのハードウエアブロックが提供可能な仮想マシンVMと複写対象のテンプレートTP1Cの仮想マシンVMとのマッチングを行い,複写対象のテンプレートTP1Cの全ての仮想マシンVMが,複写先ユーザのハードウエアブロックが提供可能な仮想マシンVMに含まれているか否かをチェックする(S20)。図13の例では,テンプレートTP1C内の仮想マシンVMの性能レベルVM-L16は,ハードウエアブロックHBL-Aが提供不能である。そのため,管理サーバ123は,不適合と判定し(S21のNO),「このテンプレートは複写先に存在しないサーバタイプ(仮想マシンタイプ)が含まれます。」といった警告を複写元ユーザ端末U1に出力する(S23)。または,警告の文言は,「このテンプレートは複写先に存在しないサーバタイプ(仮想マシンタイプ)が含まれます。複写先でテンプレートに性能がダウンしたサーバタイプ(仮想マシンタイプ)が割り付けられますが,よろしいですか。」でもよい。この警告文の場合は,後述するとおり,複写先ユーザへのシステム複写において複写されたテンプレートの仮想マシンのタイプが,複写先ユーザのハードウエアブロック内で最も近い仮想マシンのタイプに自動的に変更される。詳細は後述する。
そして,上記警告に対して複写元ユーザ端末U1から承諾を受信した場合(S25のYES),またはマッチング処理で適合することが検出された場合(S21のYES),管理サーバ123は,図13に示されるとおり,テンプレートTP1Cに対して複写先IDとしてU2を登録する(S22)。図10に示されるように,複写先IDは,テンプレートIDとその複写キーに対して,複数登録可能である。
図19は,上記の複写元ユーザ端末のユーザインターフェースの例を示す図である。図19のインターフェース画面GUI-1は,図10の工程S16の複写先IDの入力画面である。複写元ユーザが,この画面GUI-1内の複写先ID入力ボックス30に複写先IDを入力して,確定ボタンを押すと,バックグランドで管理サーバが図10の工程S17〜S21を実行し,適合できない理由がある場合に,画面GUI-2に示されるように,前述の警告文を含むボックス32が出力される。そして,複写元ユーザが警告文ボックス内の「はい」を選択すると,管理サーバは複写先IDを登録する。
図14は,管理サーバによる別の判定処理を説明するための図である。この例では,図13と異なり,複写対象のテンプレートTP1Cは,OS3を含んでいる。このような場合,管理サーバ123は,管理表21を参照して,テンプレートTP1C内のOS3が複写先ユーザのハードウエアブロックHBL-Aが提供できないOSであることを検出して不適合と判定し(S21のNO),「このテンプレートは複写先に存在しないOSが含まれます。」といった警告を複写元ユーザ端末U1に出力し(S24),複写先IDの登録を拒否する。OSが適合しない場合は,複写先ユーザのハードウエアブロックHBL-Aにおいて提供可能なOSを変更することは,ハードウエアブロックの運用上の制約から困難であるので,複写先IDの登録を拒否することになる。
上記の実施の形態例では,仮想マシンの性能レベルの一例としてCPUの数を示したが,それ以外に,メモリ容量やディスク容量によっても性能レベルが異なる場合がある。これらの性能レベルについても,同様に複写先ユーザのハードウエアブロックが提供可能か否かが判定されてもよい。
以上のように,管理サーバは,複写元ユーザ端末U1からの仮想システム複写依頼に応答して,仮想システムのテンプレートに含まれる仮想マシンの性能レベルやOS等のソフトウエアが,複写先ユーザのハードウエアブロックが提供可能か否かを判定して,複写先ユーザに対して対処可能な場合は,複写元ユーザ端末に警告を出力したうえで承諾があれば複写先ユーザIDを登録し,対処不能な場合は,登録を拒否する。これにより,異なるハードウエアブロック間での仮想システムの複写依頼にユーザに不都合を与えずに適切に対応することができる。
[複写先ユーザ端末U2に対する管理サーバの処理]
図15は,複写先ユーザ端末に対する管理サーバの仮想システム複写処理のフローチャート図である。あらかじめ,複写元ユーザは,複写先ユーザに複写対象の仮想システムのテンプレートID(ID=TP1C)とその複写キー(COPY-K1)を通知している。
まず,管理サーバ123は,複写先ユーザの端末U2からの複写先ユーザIDでログインを認証後,受け付ける(S30)。そして,管理サーバ123は,複写先ユーザ端末U2から仮想システム複写依頼を受信すると(S32),複写先ユーザ端末U2からのテンプレートID(ID=TP1C)とテンプレート複写キー(COPY-K1)の通知を受信し(S32),複写先ユーザがそのテンプレートTP1Cに登録されているユーザか否かと,テンプレート複写キーCOPY-K1が正しい複写キーか否かの認証を行う(S32)。この認証処理は,図13に示した管理表23を参照することにより行われる。これにより,複写元ユーザが登録した正規の複写先ユーザからの複写依頼であることを確認する。
そして,管理サーバ123は,複写対象のテンプレートTP1C内の仮想マシンの性能レベルを,複写先ユーザU2のハードウエアブロックHBL-Aが提供可能か否かの判定処理を行う。つまり,複写対象のテンプレートTP1Cに対して複写先ユーザU2のハードウエアブロックHBL-A内のハードウエアを正しく割り付けることができるか否かを判定する。この判定は,複写元ユーザ端末U1からの仮想システム複写依頼時の判定処理と同様である。ただし,複写先ユーザ端末U2からの仮想システム複写依頼時には,OSのチェックは行わない。複写元で既にチェック済みだからである。但し,念のためにOSについてもチェックしてもよい。
管理サーバ123による判定処理では,管理サーバ123は,図13に示されるとおり,図11の管理表22を参照し,複写先ユーザIDのハードウエアブロックを検索する(S23)。その結果,複写先ユーザID=U2のハードウエアブロックがHBL-Aであることを検出する。そして,管理サーバ123は,図8の管理表20,21を参照して,そのハードウエアブロックHBL-Aが提供可能な,つまりそのハードウエアブロックHBL-Aで利用可能な仮想マシンVMを検索する(S34)。
一方,管理サーバ123は,図13に示されるとおり,図12の管理表23を参照して,複写対象のテンプレートTP1Cの仮想マシンVMを検索する(S35)。
そして,管理サーバ123は,図13,図14に示されるとおり,複写先ユーザのハードウエアブロックが提供可能な仮想マシンVMと複写対象のテンプレートTP1Cの仮想マシンVMとの性能レベルのマッチングを行い,複写対象のテンプレートTP1Cの全ての仮想マシンVMが,複写先ユーザのハードウエアブロックが提供可能なVMマシンVMに含まれているか否かをチェックする(S36)。
管理サーバ123は,マッチング処理S36で,複写対象のテンプレートTP1Cの全ての仮想マシンVMが,複写先ユーザのハードウエアブロックが提供可能な仮想マシンVMに含まれていることが確認されたら(S37のYES),複写元ユーザのハードウエアブロックHBL-C内のテンプレートファイルTP1Cを,複写先ユーザのハードウエアブロックHBL-A内の記憶領域にデータ転送して格納する(S38)。この複写されたテンプレートには新たなテンプレートID(ID=TP2)が発行される。このデータ転送処理については後述する。
図13の例では,テンプレートTP1C内の仮想マシンVMの性能レベルVM-L16は,ハードウエアブロックHBL-Aが提供不能である。そのため,管理サーバ123は,不適合と判定し(S37のNO),「このテンプレートは割り付けできないサーバタイプ(仮想マシンタイプ)が含まれます。」といった警告や,「このテンプレートは割り付けできないサーバタイプ(仮想マシンタイプ)が含まれます。性能がダウンしたサーバタイプ(仮想マシンタイプ)が割り付けられますが,よろしいですか。」といった警告を,複写先ユーザ端末U1に出力する(S40)。
上記の警告に対して,複写先ユーザ端末U2から承諾を受信すると,管理サーバ123は,テンプレートの複写処理S38と同様の複写処理を行う(S42)。図13に示されたとおり,複写先ユーザのハードウエアブロックHBL-A内に転送されたテンプレートTP2には仮想マシンVM-L16が含まれていて,そのハードウエアブロックHBL-Aが提供できない仮想マシンである。
そこで,管理サーバ123は,ハードウエアブロックHBL-Aが提供できる仮想マシンのうち,テンプレートTP2内の仮想マシンの性能レベルVM-L16に最も近い性能レベルの仮想マシンVM-L8を検出し,テンプレートTP2内の仮想マシンVM1に対する性能レベルをVM-L16からVM-L8に変更する(S43)。この変更は,マッチング処理S36の時に検出して作成したマッチング情報に基づいて行う。このマッチング情報には,VM-L16とVM-L8の情報が含まれている。
図16は,テンプレートの複写と複写されたテンプレートの修正を説明する図である。また,図17は,テンプレートの修正を具体的に示す図である。図16に示されるとおり,上記のテンプレートの複写処理S38,S42において,複写元ユーザU1のハードウエアブロックHBL-C内のテンプレートTP1Cが複写先ユーザU2のハードウエアブロックHBL-Aに複写にされて,新たなテンプレートTP2が生成される。このテンプレートTP2には仮想マシンとして高い性能レベルの仮想マシンVM-L16が含まれていて,ハードウエアブロックHBL-Aでは利用できな仮想マシンである。そこで,ハードウエアブロックHBL-Aで利用できる仮想マシンのうち,仮想マシンVM-L16に最も性能レベルが近い仮想マシンVM-L8が選択され,テンプレートTP2の仮想マシンVM-L16がVM-L8に変更される。この仮想マシンVM-L8は,ハードウエアブロックHBL-Aが提供できる最も高い性能レベルの仮想マシンである。
最後に,管理サーバ123は,複写先ユーザのハードウエアブロックHBL-Aに複写されたテンプレートファイルTP2に対して,そのハードウエアブロック内のハードウエア資源を割り当てて,テンプレートTP2をシステム化する(S39)。複写されたテンプレートTP2内の仮想マシンなどは既に複写先ユーザのハードウエアブロックHBL-Aで提供可能なものであることが検証または提供可能なものに修正されているので,適切にハードウエア資源が割り当てられてシステム化される。
図20は,上記の複写先ユーザ端末のユーザインターフェースの例を示す図である。図20のインターフェース画面GUI-11は,図15の工程S32のVSYS複写依頼時の複写キーとテンプレートIDとを入力する画面である。ここで,複写先ユーザが複写キーの入力ボックス34とテンプレートIDの入力ボックス36に入力して,「次へ」のボタンを押すと,管理サーバが図15の工程S33〜S37を実行する。そして,マッチング処理S36の結果,不適合となると,画面GUI-12のように,前述の警告文のボックス38が表示される。複写先ユーザが警告ボックス38内の「はい」ボタンを押して承諾すると(S41),管理サーバは,工程S42,S43を実行する。
図21は,工程S42のテンプレート複写中の画面を示す図である。画面GUI-13には,複写リストが示されていて,図21の例では,2つのテンプレートが既に複写済みであり,今回のテンプレートTP2の複写が行われていることを示す「複写中」38がリストの最上位に表示される。そして,複写が完了すると,画面GUI-14に示したとおり,「複写中」38の表示が消えて,テンプレートTP2の複写完了日時が表示される。
図20,図21の画面GUI-11〜GUI-14は,マッチング処理S36で適合しない場合の例である。一方,マッチング処理S36で適合した場合は,画面GUI-11,GUI-13,GUI-14が表示される。つまり,図15のマッチング適合した場合での工程S38のテンプレート複写処理中の画面も,適合しなかった場合での工程S42のテンプレート複写処理中の画面も,同じ画面GUI-13,GUI-14である。よって,ユーザには複写元と複写先のブロック間の差異を意識させずに,管理サーバが自動的に最適な性能を選択して複写を実行することができる。
図18は,図15のテンプレート複写処理S38,S42のフローチャート図である。テンプレート複写は,複写元ユーザのハードウエアブロックHBL-C内のテンプレートTP1Cを複写先ユーザのハードウエアブロックHBL-Aにデータ転送して行われる。そこで,本実施の形態では,管理サーバ123は,テンプレートTP1Cのデータ転送に長時間を要する場合は,テンプレート複写処理を中断して,複写元ユーザのテンプレートTP1Cのデータ量を削減することを複写先ユーザ端末U2に求める。
図18に示されるとおり,複写先ユーザ端末U2からVSYS複写を依頼する入力または警告に対して承諾することが入力されると(S50),管理サーバ123は,複写元ユーザのハードウエアブロックHBL-C内のテンプレートTP1Cを複写先ユーザのハードウエアブロックHBL-Aにデータ転送を開始する(S51)。そして,管理サーバ123は,そのデータ転送速度を測定し(S52),転送速度とテンプレートTP1Cのファイルサイズからデータ転送時間を含む複写時間を予測する(S53)。
管理サーバ123は,複写時間が所定の閾値時間を以上の場合には(S54のNO),例えば「現在のテンプレート複写時間は8時間(閾値時間)を超えることが予測されるため,処理がキャンセルされます。複写元のテンプレートのデータサイズの縮小を依頼してください。」といった警告を出力し,テンプレート複写処理をキャンセルする(S56)。一方,管理サーバ123は,複写時間が所定の閾値時間未満の場合には(S54のYES),データ転送を継続し複写処理を完了する(S55)。
管理サーバが複写処理をキャンセルするのは,データ転送時間が閾値時間を超えることが予測される場合は,その複写処理が完了するまで複写先ユーザがデータセンタとの接続を維持することができないのが一般的だからである。
上記の複写先ユーザ端末U2との処理においても,仮想マシンの性能レベルは,CPUの数以外に,メモリ容量やディスク容量によっても性能レベルが異なる場合がある。これらの性能レベルについても,同様に複写先ユーザのハードウエアブロックが提供可能か否かが判定されてもよい。
以上のように,管理サーバは,複写先ユーザ端末U1からの仮想システム複写依頼に応答して,仮想システムのテンプレートに含まれる仮想マシンの性能レベル等が,複写先ユーザのハードウエアブロックが提供可能か否かを判定して,複写先ユーザに対して対処可能な場合は,複写元ユーザ端末に警告を出力したうえで承諾があれば複写処理を実行し,承諾がないまたは対処不能な場合は,登録を拒否する。これにより,異なるハードウエアブロック間での仮想システムの複写依頼にユーザに不都合を与えずに適切に対応することができる。
以上,本実施の形態によれば,データセンタの異なるハードウエアブロック間での仮想システム複写処理を,複写元ユーザと複写先ユーザに迷惑をかけることなく適切に行うことができる。
以上の実施の形態をまとめると,次の付記のとおりである。
(付記1)
少なくとも複数のサーバと複数のストレージを有するハードウエア資源群と,
仮想マシンを有する仮想システムの情報を有するユーザテンプレートファイルを記憶領域に格納し,前記ユーザテンプレートファイルに前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有し,
前記ハードウエア資源群は,それぞれ所定数のサーバと所定数のストレージを有する複数のハードウエアブロックを有し,
前記管理サーバは,第1のユーザの第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザの仮想システムを第2のユーザの第2のハードウエアブロックに複写する仮想システム複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定するデータセンタ。
(付記2)
付記1において,
前記管理サーバは,前記仮想システム複写依頼を許可する場合に,前記複写対象の第1のユーザの仮想システムのテンプレートファイルを複写して生成した第1のテンプレートファイルを複写して,前記第2のユーザの第2のテンプレートファイルを生成し,当該第2のテンプレートファイルに前記第2のハードウエアブロック内のハードウエアを割り付けて複写先仮想システムを構築するデータセンタ。
(付記3)
付記2において,
前記管理サーバは,複写元の前記第1のユーザの端末からの前記仮想システム複写依頼に応答して,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルが,前記複写対象の第1のユーザの仮想システム内の仮想マシンの性能レベルを含んでいない場合に,第1の警告を出力するデータセンタ。
(付記4)
付記3において,
前記管理サーバは,前記第1の警告に,複写後の仮想システム内の仮想マシンの性能レベルが低下するメッセージを含めるデータセンタ。
(付記5)
付記2において,
前記管理サーバは,複写元の前記第1のユーザの端末からの前記仮想システム複写依頼に応答して,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンにインストールされるソフトウエアが,前記複写対象の第1のユーザの仮想システム内の仮想マシンにインストールされているソフトウエアを含んでいない場合に,前記仮想システム複写依頼を許可しないデータセンタ。
(付記6)
付記2において,
前記管理サーバは,複写先の前記第2のユーザの端末からの前記仮想システム複写依頼に応答して,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルが,前記複写対象の第1のユーザの仮想システム内の仮想マシンの性能レベルを含んでいない場合に,第2の警告を出力するデータセンタ。
(付記7)
付記6において,
前記管理サーバは,前記第2の警告に,複写後の仮想システム内の仮想マシンの性能レベルが低下するメッセージを含めるデータセンタ。
(付記8)
付記7において,
前記管理サーバは,前記第2の警告に含まれる前記メッセージに対する前記第2のユーザ端末からの承諾に応答して,前記第2のテンプレートファイル内の前記仮想マシンの性能レベルを,前記第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルのうち最も近い性能レベルに変更するデータセンタ。
(付記9)
付記2において,
前記管理サーバは,複写先の前記第2のユーザの端末からの前記仮想システム複写依頼に応答して,前記第1のテンプレートファイルを複写して前記第2のテンプレートファイルを生成する複写処理におけるデータ転送時間が所定の基準時間を超える場合に,前記仮想システム複写依頼を許可しないデータセンタ。
(付記10)
少なくとも複数のサーバと複数のストレージを有するハードウエア資源群と,
仮想マシンを有する仮想システムの情報を有するテンプレートファイルを記憶領域に格納し,前記テンプレートファイルに前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有し,
前記ハードウエア資源群は,それぞれ所定数のサーバと所定数のストレージを有する複数のハードウエアブロックを有するデータセンタでの仮想システムの複写サービスの提供方法であって,
前記管理サーバが,第1のユーザの第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザの仮想システムを第2のユーザの第2のハードウエアブロックに複写する仮想システム複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定する工程を有するデータセンタでの仮想システムの複写サービスの提供方法。
(付記11)
付記10において,
前記管理サーバが,前記仮想システム複写依頼を許可する場合に,前記複写対象の第1のユーザの仮想システムのテンプレートファイルを複写して生成した第1のテンプレートファイルを複写して,前記第2のユーザの第2のテンプレートファイルを生成し,当該第2のテンプレートファイルに前記第2のハードウエアブロック内のハードウエアを割り付けて複写先仮想システムを構築する工程を有するデータセンタでの仮想システムの複写サービスの提供方法。
(付記12)
少なくとも複数のサーバと複数のストレージを有するハードウエア資源群と,
仮想マシンを有する仮想システムの情報を有するテンプレートファイルを記憶領域に格納し,前記テンプレートファイルに前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有し,
前記ハードウエア資源群は,それぞれ所定数のサーバと所定数のストレージを有する複数のハードウエアブロックを有するデータセンタにおける前記管理サーバが実行する仮想システム複写プログラムであって,
前記仮想システム複写プログラムは,
前記管理サーバに,第1のユーザの第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザの仮想システムを第2のユーザの第2のハードウエアブロックに複写する仮想システム複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定する工程を実行させるデータセンタでの仮想システム複写プログラム。
(付記13)
付記12において,
前記仮想システム複写プログラムは,
前記管理サーバに,前記仮想システム複写依頼を許可する場合に,前記複写対象の第1のユーザの仮想システムのテンプレートファイルを複写して生成した第1のテンプレートファイルを複写して,前記第2のユーザの第2のテンプレートファイルを生成し,当該第2のテンプレートファイルに前記第2のハードウエアブロック内のハードウエアを割り付けて複写先仮想システムを構築する工程を有するデータセンタでの仮想システム複写プログラム。
10:ハードウエア資源群
12:管理サーバ
TP1, TP2, TP3:仮想システム
VM0, VM1, VM2, VM3:仮想マシン
HBL:ハードウエアブロック

Claims (13)

  1. 1または複数のサーバと1または複数のストレージを有する複数のハードウエアブロックを含むハードウエア資源群と,
    仮想マシンを有する仮想システムの情報を有するユーザテンプレートファイルを記憶領域に格納し,前記ユーザテンプレートファイルに基づいて前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有し,
    前記管理サーバは,第1のユーザに対応する第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザに対応する仮想システムを第2のユーザに対応する第2のハードウエアブロックに複写する複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定し,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルが,前記複写対象の第1のユーザの仮想システム内の仮想マシンの性能レベルを含んでいない場合に,警告を出力するデータセンタ。
  2. 請求項1において,
    前記管理サーバは,前記複写依頼を許可する場合に,前記複写対象の第1のユーザの仮想システムのテンプレートファイルを複写し,前記第2のユーザのテンプレートファイル前記第2のハードウエアブロック内の記憶領域に格納し,当該第2のユーザのテンプレートファイルに基づいて前記第2のハードウエアブロック内のハードウエアを割り付けて複写先仮想システムを構築するデータセンタ。
  3. 請求項において,
    前記管理サーバは,前記複写依頼を前記第1のユーザの端末から受信するデータセンタ。
  4. 請求項において,
    前記管理サーバは,前記複写依頼を前記第2のユーザの端末から受信するデータセンタ。
  5. 請求項において,
    前記管理サーバは,前記警告に,複写後の仮想システム内の仮想マシンの性能レベルが低下するメッセージを含めるデータセンタ。
  6. 請求項において,
    前記管理サーバは,前記警告に含まれる前記メッセージに対する前記第2のユーザ端末からの承諾に応答して,前記複写対象の第1のユーザの仮想システムのテンプレートファイルを複写して前記第2のユーザのテンプレートファイルを生成し,前記第2のユーザのテンプレートファイル内の前記仮想マシンの性能レベルを,前記第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルのうち最も近い性能レベルに変更するデータセンタ。
  7. 1または複数のサーバと1または複数のストレージを有する複数のハードウエアブロックを含むハードウエア資源群と,
    仮想マシンを有する仮想システムの情報を有するユーザテンプレートファイルを記憶領域に格納し,前記ユーザテンプレートファイルに基づいて前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有し,
    前記管理サーバは,第1のユーザに対応する第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザに対応する仮想システムを,第2のユーザに対応する第2のハードウエアブロックに複写する複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定し,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンにインストールされるソフトウエアが,前記複写対象の第1のユーザの仮想システム内の仮想マシンにインストールされているソフトウエアを含んでいない場合に,前記複写依頼を許可しないデータセンタ。
  8. 1または複数のサーバと1または複数のストレージを有する複数のハードウエアブロックを含むハードウエア資源群と,
    仮想マシンを有する仮想システムの情報を有するユーザテンプレートファイルを記憶領域に格納し,前記ユーザテンプレートファイルに基づいて前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有し,
    前記管理サーバは,第1のユーザに対応する第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザに対応する仮想システムを,第2のユーザに対応する第2のハードウエアブロックに複写する複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定し,前記第1のユーザのテンプレートファイルを複写して前記第2のユーザのテンプレートファイルを前記第2のハードウエアブロック内の記憶領域に格納する複写処理におけるデータ転送時間が所定の基準時間を超える場合に,前記複写依頼を許可しないデータセンタ。
  9. 1または複数のサーバと1または複数のストレージを有する複数のハードウエアブロックを含むハードウエア資源群と,
    仮想マシンを有する仮想システムの情報を有するテンプレートファイルを記憶領域に格納し,前記テンプレートファイルに基づいて前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを有するデータセンタでの仮想システムの複写サービスの提供方法であって,
    前記管理サーバが,第1のユーザの第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザの仮想システムを第2のユーザの第2のハードウエアブロックに複写する仮想システム複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定し,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルが,前記複写対象の第1のユーザの仮想システム内の仮想マシンの性能レベルを含んでいない場合に,警告を出力する工程を有するデータセンタでの仮想システムの複写サービスの提供方法。
  10. 請求項9において,
    前記管理サーバが,前記仮想システム複写依頼を許可する場合に,前記複写対象の第1のユーザの仮想システムのテンプレートファイルを複写して,前記第2のユーザのテンプレートファイル前記第2のハードウエアブロック内の記憶領域に格納し,当該第2のユーザのテンプレートファイルに基づいて前記第2のハードウエアブロック内のハードウエアを割り付けて複写先仮想システムを構築する工程を有するデータセンタでの仮想システムの複写サービスの提供方法。
  11. 1または複数のサーバと1または複数のストレージを有する複数のハードウエアブロックを含むハードウエア資源群と,
    仮想マシンを有する仮想システムの情報を有するテンプレートファイルを記憶領域に格納し,前記テンプレートファイルに基づいて前記ハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用する管理サーバとを
    有するデータセンタにおける前記管理サーバが実行する仮想システム複写プログラムであって,
    前記仮想システム複写プログラムは,
    前記管理サーバに,第1のユーザの第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザの仮想システムを第2のユーザの第2のハードウエアブロックに複写する仮想システム複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定し,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルが,前記複写対象の第1のユーザの仮想システム内の仮想マシンの性能レベルを含んでいない場合に,警告を出力する工程を実行させるデータセンタでの仮想システム複写プログラム。
  12. 請求項11において,
    前記仮想システム複写プログラムは,
    前記管理サーバに,前記仮想システム複写依頼を許可する場合に,前記複写対象の第1のユーザの仮想システムのテンプレートファイルを複写して,前記第2のユーザのテンプレートファイル前記第2のハードウエアブロック内の記憶領域に格納し,当該第2のユーザのテンプレートファイルに基づいて前記第2のハードウエアブロック内のハードウエアを割り付けて複写先仮想システムを構築させる工程を有するデータセンタでの仮想システム複写プログラム。
  13. 仮想マシンを有する仮想システムの情報を有するユーザテンプレートファイルを記憶領域に格納し,前記ユーザテンプレートファイルに基づいて,1または複数のサーバと1または複数のストレージを有する複数のハードウエアブロックを含むハードウエア資源群内のハードウエアを割り付けて前記仮想システムを構築し運用し,
    第1のユーザに対応する第1のハードウエアブロック内のハードウエアが割り付けられている第1のユーザに対応する仮想システムを,第2のユーザに対応する第2のハードウエアブロックに複写する複写依頼に応答して,複写先の前記第2のハードウエアブロックが,複写対象の第1のユーザの仮想システム内の仮想マシンを提供可能か否かを判定し,前記複写先の第2のハードウエアブロックが提供可能な前記仮想マシンの性能レベルが,前記複写対象の第1のユーザの仮想システム内の仮想マシンの性能レベルを含んでいない場合に,警告を出力するデータセンタの管理サーバ。
JP2012263780A 2012-11-30 2012-11-30 データセンタ,仮想システムの複写サービスの提供方法,データセンタの管理サーバ及び仮想システムの複写プログラム Active JP6003590B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012263780A JP6003590B2 (ja) 2012-11-30 2012-11-30 データセンタ,仮想システムの複写サービスの提供方法,データセンタの管理サーバ及び仮想システムの複写プログラム
US14/093,278 US20140156851A1 (en) 2012-11-30 2013-11-29 Server facility, method for providing copying service for system of server facility, and copying program for system of sever facility

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012263780A JP6003590B2 (ja) 2012-11-30 2012-11-30 データセンタ,仮想システムの複写サービスの提供方法,データセンタの管理サーバ及び仮想システムの複写プログラム

Publications (2)

Publication Number Publication Date
JP2014109900A JP2014109900A (ja) 2014-06-12
JP6003590B2 true JP6003590B2 (ja) 2016-10-05

Family

ID=50826627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012263780A Active JP6003590B2 (ja) 2012-11-30 2012-11-30 データセンタ,仮想システムの複写サービスの提供方法,データセンタの管理サーバ及び仮想システムの複写プログラム

Country Status (2)

Country Link
US (1) US20140156851A1 (ja)
JP (1) JP6003590B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9383989B1 (en) 2014-06-16 2016-07-05 Symantec Corporation Systems and methods for updating applications
US9712492B1 (en) * 2014-07-07 2017-07-18 Mobile Iron, Inc. Syndicating device and application management
US10374891B1 (en) * 2014-11-11 2019-08-06 Skytap Multi-region virtual data center template
US9438560B2 (en) * 2014-12-31 2016-09-06 Symantec Corporation Systems and methods for automatically applying firewall policies within data center applications
WO2016121101A1 (ja) 2015-01-30 2016-08-04 株式会社日立製作所 管理装置及び管理方法
US10305979B2 (en) 2015-06-12 2019-05-28 International Business Machines Corporation Clone efficiency in a hybrid storage cloud environment
US10326657B1 (en) * 2016-09-30 2019-06-18 Juniper Networks, Inc. Multi vendor device support in network management systems
US10230585B1 (en) 2016-09-30 2019-03-12 Juniper Networks, Inc. Multi vendor device support in network management systems

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8336046B2 (en) * 2006-12-29 2012-12-18 Intel Corporation Dynamic VM cloning on request from application based on mapping of virtual hardware configuration to the identified physical hardware resources
US8374929B1 (en) * 2007-08-06 2013-02-12 Gogrid, LLC System and method for billing for hosted services
US8726275B2 (en) * 2009-12-18 2014-05-13 International Business Machines Corporation Selective partial cloning of virtual machines in a virtual computing environment
US9329886B2 (en) * 2010-12-10 2016-05-03 Amazon Technologies, Inc. Virtual machine morphing for heterogeneous migration environments
JP2012141698A (ja) * 2010-12-28 2012-07-26 Canon Marketing Japan Inc 情報処理装置、情報処理方法、プログラム
WO2012092553A1 (en) * 2010-12-31 2012-07-05 Desktone, Inc. Providing virtual desktops using resources accessed on public computer networks
US8769531B2 (en) * 2011-05-25 2014-07-01 International Business Machines Corporation Optimizing the configuration of virtual machine instances in a networked computing environment
US9038083B2 (en) * 2012-02-09 2015-05-19 Citrix Systems, Inc. Virtual machine provisioning based on tagged physical resources in a cloud computing environment

Also Published As

Publication number Publication date
US20140156851A1 (en) 2014-06-05
JP2014109900A (ja) 2014-06-12

Similar Documents

Publication Publication Date Title
JP6003590B2 (ja) データセンタ,仮想システムの複写サービスの提供方法,データセンタの管理サーバ及び仮想システムの複写プログラム
US10700947B2 (en) Life cycle management method and device for network service
US11553034B2 (en) Server computer management system for supporting highly available virtual desktops of multiple different tenants
US10701139B2 (en) Life cycle management method and apparatus
US10050850B2 (en) Rack awareness data storage in a cluster of host computing devices
CN110199271B (zh) 用于现场可编程门阵列虚拟化的方法和设备
JP2024023382A (ja) 自動的に配備される情報技術(it)システム及び方法
US20200356402A1 (en) Method and apparatus for deploying virtualized network element device
WO2016199232A1 (ja) ストレージ管理計算機、及びストレージ装置の管理方法
EP3287897B1 (en) Hardware acceleration method and relevant device
US20160048436A1 (en) Method and apparatus for verifying configuration
KR20150035517A (ko) 네트워크 간의 어플리케이션의 이전
CN113196237A (zh) 计算系统中的容器迁移
JP2013518330A (ja) 非機能要件に基づく仮想マシンの配置の抽象化方法およびシステム
EP3531280A1 (en) Accelerator loading method and system, and accelerator loading apparatus
US10979289B2 (en) Apparatuses and methods for remote computing node registration and authentication
JP5988505B2 (ja) 仮想リソース管理装置、選択方法及び選択プログラム
US20210152420A1 (en) Apparatuses and methods for remote computing node initialization using a configuration template and resource pools
JP2017033310A (ja) ネットワーク装置設定方法、情報処理装置及びbiosプログラム
US11675916B2 (en) Method and system for limiting data accessibility in composed systems
EP4260188A1 (en) Method and system for composing systems using resource sets
US20240036935A1 (en) Lcs sdxi resource ownership system
US11728979B2 (en) Method and system for performing telemetry services for composed information handling systems
US20230214269A1 (en) Method and system for performing computational offloads for composed information handling systems
US20240028407A1 (en) Method and system for instantiating composed information handling systems with plugins

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160725

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: 20160809

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160822

R150 Certificate of patent or registration of utility model

Ref document number: 6003590

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150