JP2019087033A - 情報処理装置、情報処理システム及びプログラム - Google Patents
情報処理装置、情報処理システム及びプログラム Download PDFInfo
- Publication number
- JP2019087033A JP2019087033A JP2017214797A JP2017214797A JP2019087033A JP 2019087033 A JP2019087033 A JP 2019087033A JP 2017214797 A JP2017214797 A JP 2017214797A JP 2017214797 A JP2017214797 A JP 2017214797A JP 2019087033 A JP2019087033 A JP 2019087033A
- Authority
- JP
- Japan
- Prior art keywords
- host
- host device
- transfer rate
- migration
- migration destination
- 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
- 230000010365 information processing Effects 0.000 title claims abstract description 92
- 238000012546 transfer Methods 0.000 claims abstract description 270
- 238000013508 migration Methods 0.000 claims abstract description 239
- 230000005012 migration Effects 0.000 claims abstract description 239
- 238000012545 processing Methods 0.000 claims description 56
- 238000005259 measurement Methods 0.000 description 41
- 238000000034 method Methods 0.000 description 37
- 230000008569 process Effects 0.000 description 36
- 230000005856 abnormality Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 21
- 238000011084 recovery Methods 0.000 description 16
- 238000012986 modification Methods 0.000 description 15
- 230000004048 modification Effects 0.000 description 15
- 230000006854 communication Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 14
- 230000015654 memory Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000005192 partition Methods 0.000 description 6
- 238000003672 processing method Methods 0.000 description 5
- 230000007175 bidirectional communication Effects 0.000 description 4
- 241001522296 Erithacus rubecula Species 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
- G06F11/1662—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2041—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3027—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/349—Performance evaluation by tracing or monitoring for interfaces, buses
-
- 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
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4818—Priority circuits therefor
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/148—Migration or transfer of sessions
-
- 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
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Hardware Redundancy (AREA)
Abstract
【課題】優先度の高い仮想マシンから順に、ホスト装置間の移動を完了する。【解決手段】情報処理装置1は、取得部111と決定部112とを備える。取得部111は、移動元ホスト装置2と複数の移動先ホスト装置2との間におけるデータの転送速度を取得する。決定部112は、取得部111によって取得された転送速度に基づき、複数の仮想マシンのそれぞれに設定された優先度順に、複数の移動先ホスト装置2の中から、各仮想マシンの移動先としての移動先ホスト装置2をそれぞれ決定する。【選択図】図9
Description
本発明は、情報処理装置、情報処理システム及びプログラムに関する。
仮想サーバの冗長性を確保する機能として、オートフェイルオーバという機能が存在する。オートフェイルオーバは、物理マシンに異常等が発生した場合に、当該物理マシンにおいて動作しているVirtual Machine(VM)を別の正常な物理マシンに移動させ、VMの再起動を行なうことにより、仮想サーバの冗長性を確保する。「物理マシン」は、「VMホスト」と称されてもよい。VMの復旧は、移動元のVMホストから移動先のVMホストへディスクの内容をコピーして再起動することにより行なわれる。
移動先のVMホストの選択ロジックとしては、例えば、負荷分散型、詰め込み型、ラウンドロビンが存在する。負荷分散型では、最も空き容量が多いVMホストが移動先のVMホストとして選択される。詰め込み型では、最も空き容量が少ないVMホストが移動先のVMホストとして選択される。ラウンドロビンでは、複数のVMホストが順番に移動先のVMホストとして選択される。
また、故障が発生した物理マシン配下の各VMに復旧優先度が設定されている場合には、復旧優先度が高いVMから順に移動先のVMホストへの移動が行なわれる。すなわち、VMホストに異常が発生した場合に、異常が発生したVMホスト配下の各VMの復旧優先度を確認し、復旧優先度の高いVMから順に移動が開始されることにより、オートフェイルオーバが実施される。
しかしながら、上述したオートフェイルオーバにおいては、復旧優先度の高いVMから順に移動を開始されるが、VMホスト間のデータ転送に要する時間が考慮されておらず、復旧優先度の高いVMの復旧完了が遅れるおそれがある。
1つの側面では、優先度の高い仮想マシンから順に、ホスト装置間の移動を完了することを目的とする。
情報処理装置は、複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置であって、前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得する取得部と、前記取得部によって取得された前記転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定する決定部と、を備える。
1つの側面では、優先度の高い仮想マシンから順に、ホスト装置間の移動を完了する。
以下、図面を参照して一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
〔A〕関連例
図1は、関連例としてのVM配備処理の一例を説明する図である。
図1は、関連例としてのVM配備処理の一例を説明する図である。
図1に示す情報処理システム600は、管理サーバ6及び複数(図示する例では3つ)のVMホスト7を備える。VMホスト7は、VMホスト#1〜#3と称されてもよい。
図1に示す例において、3つのVMホスト7には、6つのVM8(「VM#1〜#6」と称されてもよい。)が配備されている。具体的には、VMホスト#1にはVM#1及び#2が配備されており、VMホスト#2にはVM#3が配備されており、VMホスト#3にはVM#4〜#6が配備されている。また、図1に示す例において、VM#1,#2,#5及び#6のデータ量は互いに同一であり、VM#3及び#4のデータ量は互いに同一である。VM#1,#2,#5及び#6のデータ量は、VM#3及び#4のデータ量よりも小さい。なお、各VMホスト7のデータ容量は、互いに同一である。
ここで、VMホスト7に対して、新たに3つのVM8(「VM#7〜#9」と称されてもよい。)を配備する例について説明する。なお、VM#7のデータ量はVM#3及び#4のデータ量と同一であり、VM#8及び#9のデータ量はVM#1,#2,#5及び#6のデータ量と同一である。
管理サーバ6は、複数のVMホスト7間における負荷が平準化されるように、VM#7〜#9をVMホスト7へ配備する。別言すれば、管理サーバ6は、各VMホスト7に配備されるVM8のデータ量が平準化されるように、VM#7〜#9をVMホスト7へ配備する。
図1に示す例において、始めに、管理サーバ6は、最も空き容量の大きいVMホスト#1へVM#7を配備する(符号A1を参照)。
次に、管理サーバ6は、VM#7の配備後に最も空き容量が大きいVMホスト#2へVM#8を配備する(符号A2を参照)。
そして、管理サーバ6は、VM#8の配備後に最も空き容量が大きいVMホスト#2へVM#9を配備する(符号A3を参照)。
図2〜図5は、関連例としてのVM移動処理の一例を説明する図である。
図1に示したVM8は、図2〜図5に示すように、サービス8と称されてもよい。また、サービス8は、サービスA〜Eと称されてもよい。図2〜図5に示す例において、サービスA〜D及びFのデータ量は互いに同一であり、サービスEのデータ量はサービスA〜D及びFのデータ量よりも小さい。また、各VMホスト7におけるデータ容量は互いに同一である。
図2〜図5に示す例において、管理サーバ6は、優先度テーブル9に基づき、VM移動処理を実行する。優先度テーブル9は、サービス8が搭載されているVMホスト7で障害が発生した場合における、各サービス8の復旧の優先度を示す。優先度の値が小さいほどサービス8の復旧の順位が高いことを示す。図2〜図5に示す例において、サービスA〜Eには、優先度“1”〜“5”が対応付けられている。
図2に示す例において、VMホスト#1にはサービスA及びCが配備されており、VMホスト#2にはサービスBが配備されている。また、VMホスト#3にはサービスD及びFが配備されており、VMホスト#4にはサービスEが配備されている。
VMホスト7は、クラウド70(「クラウドA又はB」と称されてもよい。)に展開されてよい。図2に示す例において、VMホスト#1及び#2はクラウドAに展開されており、VMホスト#3及び#4はクラウドBに展開されている。
ここで、VMホスト#1において、故障等の異常が発生したことを想定する(図2の符号B1を参照)。
管理サーバ6は、優先度テーブル9から、異常が発生したVMホスト#1に配備されているサービスA及びCの優先度を参照する。本例では、サービスAの優先度は1であり、サービスCの優先度は3である。すなわち、サービスAの優先度は、サービスCの優先度よりも高い。
始めに、管理サーバ6は、異常が発生したVMホスト#1において最も優先度が高いサービスAを移動することを決定する(図3の符号B2を参照)。管理サーバ6は、サービスAが移動可能なVMホスト7の中から、最も空き容量が大きいVMホスト#4をサービスAの移動先として決定する(図3の符号B3を参照)。
そして、サービスAは、移動先のVMホスト#4に配備される(図4の符号B4を参照)。
管理サーバ6は、異常が発生したVMホスト#1において次に優先度が高いサービスCを移動することを決定する(図4の符号B5を参照)。管理サーバ6は、サービスCが移動可能なVMホスト7の中から、サービスAの移動後に最も空き容量が大きいVMホスト#2をサービスCの移動先として決定する(図4の符号B6を参照)。
そして、サービスCは、移動先のVMホスト#2に配備される(図5の符号B7を参照)。
しかしながら、図2〜図5に示したVM移動処理においては、復旧優先度の高いVMから順に移動を開始されるが、VMホスト間のデータ転送に要する時間が考慮されておらず、復旧優先度の高いVMの復旧完了が遅れるおそれがある。
〔B〕実施形態の一例
〔B−1〕システム構成例
図6は、実施形態の一例としての情報処理システム100の構成例を模式的に示す図である。
〔B−1〕システム構成例
図6は、実施形態の一例としての情報処理システム100の構成例を模式的に示す図である。
図6に示す情報処理システム100は、管理サーバ1及び複数(図示する例では4つ)のVMホスト2を備える。VMホスト2は、VMホスト#1〜#4と称されてもよい。
図6に示す例において、4つのVMホスト2には、6つのVM3(「仮想マシン3」や「VM#1〜#6」と称されてもよい。)が配備されている。具体的には、VMホスト#1にはVM#1及び#3が配備されており、VMホスト#2にはVM#2が配備されており、VMホスト#3にはVM#4及び#6が配備されており、VMホスト#4にはVM#5が配備されている。
情報処理システム100においては、VM3の冗長性を向上するため、Redundant Arrays of Inexpensive Disks(RAID)構成300(「RAID構成#1又は#2」と称されてもよい。)が定義されてよい。図6に示す例では、VMホスト#1及び#2はRAID構成#1に接続されており、VMホスト#3及び#4はRAID構成#2に接続されている。
また、各RAID構成300は、複数の区画30(「区画#1〜#4」と称されてもよい。)に分けられてもよい。図6に示す例において、RAID構成#1は区画#1及び#2に分けられ、RAID構成#2は区画#3及び#4に分けられる。また、VMホスト#1は区画#1に属するVM#1及び#3を配備し、VMホスト#2は区画#2に属するVM#2を配備し、VMホスト#3は区画#3に属するVM#4及び#6を配備し、VMホスト#4は区画#4に属するVM#5を配備する。
図7は、図6に示した情報処理システム100におけるVM移動処理の一例を示す図である。
ここで、VMホスト#1において故障等の異常が発生した場合には(符号C1を参照)、各VM2の優先度と、各VMホスト2間のデータ転送速度とに基づき、例えば、VM#1がVMホスト#1からVMホスト#2へ移動させられる(符号C2を参照)。また、VM#3がVMホスト#1からVMホスト#4へ移動させられる(符号C3を参照)。
なお、実施形態の一例におけるVM移動処理の詳細については、図11〜図14等を用いて後述する。
図8は、図6に示した管理サーバ1及びVMホスト2のハードウェア構成例を模式的に示す図である。
管理サーバ1は、情報処理装置の一例であり、Central Processing Unit(CPU)11,メモリ12,表示処理部13,記憶装置14,入力Interface(I/F)15,読み書き処理部16及び通信I/F17を備える。
VMホスト2は、ホスト装置の一例であり、CPU21,メモリ12,表示処理部13,記憶装置14,入力I/F15,読み書き処理部16及び通信I/F17を備える。
メモリ12は、例示的に、Read Only Memory(ROM)及びRandom Access Memory(RAM)を含む記憶装置である。メモリ12のROMには、Basic Input/Output System(BIOS)等のプログラムが書き込まれてよい。メモリ12のソフトウェアプログラムは、CPU11又は21に適宜に読み込まれて実行されてよい。また、メモリ12のRAMは、一次記録メモリあるいはワーキングメモリとして利用されてよい。
表示処理部13は、表示装置130と接続され、表示装置130を制御する。表示装置130は、液晶ディスプレイやCathode Ray Tube(CRT),電子ペーパーディスプレイ等であり、オペレータ等に対する各種情報を表示する。表示装置130は、入力装置と組み合わされたものでもよく、例えば、タッチパネルでもよい。
記憶装置14は、例示的に、データを読み書き可能に記憶する装置であり、例えば、Hard Disk Drive(HDD)やSolid State Drive(SSD),Storage Class Memory(SCM)が用いられてよい。
入力I/F15は、マウス151やキーボード152等の入力装置と接続され、マウス151やキーボード152等の入力装置を制御する。マウス151やキーボード152は、入力装置の一例であり、これらの入力装置を介して、オペレータが各種の入力操作を行なう。
読み書き処理部16は、記録媒体160が装着可能に構成される。読み書き処理部16は、記録媒体160が装着された状態において、記録媒体160に記録されている情報を読み取り可能に構成される。本例では、記録媒体160は、可搬性を有する。例えば、記録媒体160は、フレキシブルディスク、光ディスク、磁気ディスク、光磁気ディスク、又は、半導体メモリ等である。
通信I/F17は、管理サーバ1とVMホスト2とを通信可能に接続する(別言すれば、外部装置との通信を可能にする)ためのインタフェースである。
図9は、図6に示した管理サーバ1及びVMホスト2の機能構成例を模式的に示す図である。
CPU11及び21は、種々の制御や演算を行なう処理装置であり、メモリ12に格納されたOperating System(OS)やプログラムを実行することにより、種々の機能を実現する。すなわち、管理サーバ1のCPU11は、図9に示すように、取得部111及び決定部112として機能する。また、VMホスト2のCPU21は、測定部211,通知部212及び移動処理部213として機能する。
なお、これらの取得部111,決定部112,測定部211,通知部212及び移動処理部213としての機能を実現するためのプログラムは、例えば前述した記録媒体160に記録された形態で提供される。そして、コンピュータは読み書き処理部16を介してその記録媒体160からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。また、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供してもよい。
取得部111,決定部112,測定部211,通知部212及び移動処理部213としての機能を実現する際には、内部記憶装置(本実施形態ではメモリ12)に格納されたプログラムがコンピュータのマイクロプロセッサ(本実施形態ではCPU11又は21)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行してもよい。
VMホスト2の測定部211は、複数のVMホスト2間におけるデータの転送速度を測定する。測定部211による転送速度測定処理の詳細については、図15〜図20等を用いて後述する。
VMホスト2の通知部212は、測定部211によって通知されたデータの転送速度を管理サーバ1へ通知する。
移動処理部213は、管理サーバ1による決定に従い、移動元のVMホスト2から移動先のVMホスト2へ、移動対象のVM3を移動させる。
管理サーバ1の取得部111は、各VMホスト2の通知部212から通知された複数のVMホスト2間におけるデータの転送速度を取得する。別言すれば、取得部111は、移動元のVMホスト2と複数の移動先のVMホスト2との間におけるデータの転送速度を取得する。
管理サーバ1の決定部112は、取得部111によって取得された転送速度に基づき、複数のVM3のそれぞれに設定された優先度順に、複数の移動先のVMホスト2の中から、各VM3の移動先としてのVMホスト2をそれぞれ決定する。決定部112によるVM移動処理の詳細については、図11〜図14等を用いて後述する。
図10は、図6に示した情報処理システム100において用いられる優先度テーブル41の一例を示す図である。
図10に示す優先度テーブル41では、「VMホスト名」と「VM名」と「移動対象」と「優先度」とが対応付けられている。
「VMホスト名」は、VM3が配備されているVMホスト2の識別子を示している。
「VM名」は、配備されているVM3の識別子を示している。
「移動対象」は、VM3が移動対象であるか否かを示す。図10に示す例では、「移動対象」に“1”が設定されている場合にはVM3が移動対象であり、「移動対象」に“0”が設定されている場合にはVM3は移動対象でない。例えば、VMホスト2において故障等の異常が発生した際に、異常が発生したVMホスト2に配備されているVM3の「移動対象」が“0”から“1”へ変更される。
「優先度」は、VM3が搭載されているVMホスト2で障害が発生した場合における、各VM3の復旧の優先度を示す。「優先度」の値が小さいほどVM3の復旧の優先順位が高いことを示す。図10に示す例において、各VMには、「優先度」として“1”〜“4”のいずれかが対応付けられている。
図10に示す例においては、例えば、「VMホスト名」が“host1”であり、「VM名」が“VM1-1”であるVM3は、「移動対象」が“1”に設定されており、「優先度」が“1”に設定されている。また、例えば、「VMホスト名」が“host2”であり、「VM名」が“VM2-1”であるVM3は、「移動対象」が“0”に設定されており、「優先度」が“4”に設定されている。
すなわち、“host1”の“VM1-1”は移動対象に設定されているが、“host2”の“VM2-1”は移動対象に設定されていない。また、“host1”の“VM1-1”の優先度は、“host2”の“VM2-1”の優先度よりも高い。
図11〜図14は、図6に示した情報処理システム100におけるVM移動処理の一例を説明する図である。
図6及び図7に示したVM3は、図11〜図14に示すように、サービス3と称されてもよい。また、サービス3は、サービスA〜Fと称されてもよい。図11〜図14に示す例において、サービスA〜D及びFのデータ量は互いに同一であり、サービスEのデータ量はサービスA〜D及びFのデータ量よりも小さい。また、各VMホスト2におけるデータ容量は互いに同一である。
図11〜図14に示す例において、管理サーバ1は、優先度テーブル4に基づき、VM移動処理を実行する。優先度テーブル4は、サービス3が搭載されているVMホスト2で障害が発生した場合における、各サービス3の復旧の優先度を示す。優先度の値が小さい程サービス3の復旧の順位が高いことを示す。図11〜図14に示す例において、サービスA〜Eには、優先度“1”〜“5”がそれぞれ対応付けられている。
図11〜図14に示す優先度テーブル4は、図10に示した優先度テーブル41に対応する。図11〜図14に示す優先度テーブル4の「サービス」は、図10に示した優先度テーブル41の「VM名」に対応する。また、図11〜図14に示す優先度テーブル4では、図10に示した優先度テーブル41における「VMホスト名」及び「移動対象」を省略している。
図11に示す例において、VMホスト#1にはサービスA及びCが配備されており、VMホスト#2にはサービスBが配備されている。また、VMホスト#3にはサービスD及びFが配備されており、VMホスト#4にはサービスEが配備されている。
VMホスト2は、クラウド20(「クラウドA又はB」と称されてもよい。)に展開されている。図11に示す例において、VMホスト#1及び#2はクラウドAに展開されており、VMホスト#3及び#4はクラウドBに展開されている。
管理サーバ1の取得部111は、各VMホスト2においてリアルタイムで測定された、各VMホスト2間におけるデータの転送速度を取得する(図11の符号D1〜D4を参照)。
図11〜図14に示す例においては、転送速度テーブル5に示すように、VMホスト#1とVMホスト#2との間の転送速度、及び、VMホスト#3とVMホスト#4との間の転送速度は、5 GB/sである。VMホスト#1とVMホスト#3との間の転送速度、VMホスト#1とVMホスト#4との間の転送速度、VMホスト#2とVMホスト#3との間の転送速度、及び、VMホスト#2とVMホスト#4との間の転送速度は、2 GB/sである。
ここで、VMホスト#1において、故障等の異常が発生したことを想定する(図12の符号D5を参照)。
管理サーバ1の決定部112は、優先度テーブル4から、異常が発生したVMホスト#1に配備されているサービスA及びCの優先度を参照する。本例では、サービスAの優先度は1であり、サービスCの優先度は3である。すなわち、サービスAの優先度は、サービスCの優先度よりも高い。
始めに、決定部112は、異常が発生したVMホスト#1において最も優先度が高いサービスAを移動することを決定する(図12の符号D6を参照)。
決定部112は、転送速度テーブル5を参照し(図12の符号D7を参照)、サービスAが移動可能なVMホスト2の中から、VMホスト#1からの転送速度が5 GB/sで最も大きいVMホスト#2をサービスAの移動先として決定する(図12の符号D8を参照)。
そして、サービスAは、移動先のVMホスト#2に配備される(図13の符号D9を参照)。
管理サーバ1の決定部112は、異常が発生したVMホスト#1において次に優先度が高いサービスCを移動することを決定する(図13の符号D10を参照)。
決定部112は、転送速度テーブル5を参照する(図13の符号D11を参照)。そして、決定部112は、サービスAの移動後にサービスCが移動可能なVMホスト2の中から、VMホスト#1からの転送速度が2 GB/sで最も大きいVMホスト#2をサービスAの移動先として決定する(図13の符号D12を参照)。なお、サービスAの移動後において、転送速度が5 GB/sのVMホスト#2は、空き容量がないため、サービスCを移動させることができない。また、転送速度がVMホスト#4と同じ2 GB/sであるVMホスト#3も、空き容量がないため、サービスCを移動させることができない。
そして、サービスCは、移動先のVMホスト#4に配備される(図14の符号D13を参照)。
すなわち、決定部112は、優先度の高いVM3については、データの転送速度が速い通信経路を介して移動元のVMホスト2と接続されているVMホスト2をVM3の移動先として決定する。また、決定部112は、優先度の低いVM3については、データの転送速度が遅い通信経路を介して移動元のVMホスト2と接続されているVMホスト2をVM3の移動先として決定する。これにより、実施形態の一例における情報処理システム100においては、復旧の優先度が高いVM3のVMホスト2間における移動処理を、早期に開始及び完了することができる。
ここで、上述した関連例において図2〜図5に示したように、優先度が高いサービスAをVMホスト#4へ移動し、優先度が低いサービスCをVMホスト#2を移動する場合について検討する。なお、図2に示したVMホスト#1での異常発生時におけるサービスA〜Fの配備先のVMホスト2及び優先度は、図12に示したVMホスト#1での異常発生時におけるサービスA〜Fの配備先のVMホスト2及び優先度と同一である。
図2〜図5に示した関連例において、移動対象のサービスA及びCのデータ量がいずれも60 GBであると仮定する。また、図2〜図5に示した関連例において、図12〜図14に示した実施形態の一例と同様に、VMホスト#1からVMホスト#2への転送速度が5 GB/sであり、VMホスト#1からVMホスト#4への転送速度が2 GB/sであると仮定する。
この場合において、優先度が高いサービスAをVMホスト#1からVMホスト#4へ移動させると、60(GB) / 2(GB/s) = 30秒の時間を要する。一方、優先度が低いサービスCをVMホスト#1からVMホスト#2へ移動させると、60(GB) / 5(GB/s) = 12秒の時間を要する。すなわち、図2〜図5に示した関連例においては、優先度の低いサービスCの移動処理が優先度の高いサービスAの移動処理よりも早く完了し、サービスCがサービスAよりも早く復旧してしまう。
図15は、図6に示した情報処理システム100における2つのVMホスト2間の転送速度測定処理の一例を説明する図である。
各VMホスト2の測定部211は、2つのVMホスト2間の双方向における伝送路の転送速度のうち、一方向における伝送路に限って、転送速度を測定してよい。
図15に示す例においては、VMホスト#1の測定部211はVMホスト#1からVMホスト#2への方向における転送速度を測定する一方、VMホスト#2の測定部211はVMホスト#2からVMホスト#1への方向における転送速度を測定しない。
各VMホスト2間における双方向の通信経路のうち、一方向の通信経路における転送速度が測定されれば、全てのVMホスト2間の転送速度が分かる。
図16〜図18は、図6に示した情報処理システム100における偶数個のVMホスト2間の転送速度測定処理の一例を説明する図である。
転送速度を測定するVMホスト2の数をn(nは4以上の偶数)とし、測定対象のVMホスト2に#1〜#nの番号が設定される。図16の(1)においては、VMホスト2として、6つのVMホスト#1〜#6が示されている。
各VMホスト2の測定部211は、自身の番号よりも1つ大きい番号が設定されるVMホスト2との間の転送速度を測定する。なお、VMホスト#nの測定部211は、VMホスト#1との間の転送速度を測定する。
図16の(1)においては、VMホスト#1はVMホスト#2との間の転送速度を測定し、VMホスト#2はVMホスト#3との間の転送速度を測定し、VMホスト#3はVMホスト#4との間の転送速度を測定する。また、VMホスト#4はVMホスト#5との間の転送速度を測定し、VMホスト#5はVMホスト#6との間の転送速度を測定し、VMホスト#6はVMホスト#1との間の転送速度を測定する。
別言すれば、VMホスト#kはVMホスト#k+1への方向における転送速度を測定し、VMホスト#n−1はVMホスト#nへの方向における転送速度を測定し、VMホスト#nはVMホスト#1への方向における転送速度を測定する。なお、kは、1以上n−2以下の整数である。
図16の(1)に示す転送速度測定処理が完了すると、図16の(2)に示す転送速度テーブル5が得られる。図16の(2)に示す転送速度テーブル5においては、図16の(1)に示す転送速度測定処理によって測定された1〜6の6個の転送速度が新たに登録される。
次に、各VMホスト2の測定部211は、自身の番号よりも2つ大きい番号が設定されるVMホスト2との間の転送速度を測定する。なお、VMホスト#n−1及び#nの測定部211は、VMホスト#1及び#2との間の転送速度をそれぞれ測定する。
図17の(1)においては、VMホスト#1はVMホスト#3との間の転送速度を測定し、VMホスト#2はVMホスト#4との間の転送速度を測定し、VMホスト#3はVMホスト#5との間の転送速度を測定する。また、VMホスト#4はVMホスト#6との間の転送速度を測定し、VMホスト#5はVMホスト#1との間の転送速度を測定し、VMホスト#6はVMホスト#2との間の転送速度を測定する。
別言すれば、VMホスト#kはVMホスト#k+2への方向における転送速度を測定し、VMホスト#n−1はVMホスト#1への方向における転送速度を測定し、VMホスト#nはVMホスト#2への方向における転送速度を測定する。なお、kは、1以上n−2以下の整数である。
図17の(1)に示す転送速度測定処理が完了すると、図17の(2)に示す転送速度テーブル5が得られる。図17の(2)に示す転送速度テーブル5においては、図17の(1)に示す転送速度測定処理によって測定された7〜12の6個の転送速度が新たに登録される。
そして、各VMホスト2の測定部211のうち、VMホスト#1〜#n/2の測定部211は、自身の番号よりも3つ大きい番号が設定されるVMホスト2との間の転送速度を測定する。
図18の(1)においては、VMホスト#1はVMホスト#4との間の転送速度を測定し、VMホスト#2はVMホスト#5との間の転送速度を測定し、VMホスト#3はVMホスト#6との間の転送速度を測定する。
別言すれば、VMホスト#1〜#n/2は、VMホスト#k+3への方向における転送速度を測定する。なお、kは、1以上n−2以下の整数である。
図18の(1)に示す転送速度測定処理が完了すると、図18の(2)に示す転送速度テーブル5が得られる。図18の(2)に示す転送速度テーブル5においては、図18の(1)に示す転送速度測定処理によって測定された13〜15の3個の転送速度が新たに登録される。
図18の(2)に示す転送速度テーブル5においては、各VMホスト2間における双方向の通信経路のうち、一方向の通信経路における転送速度が登録されている。すなわち、図18の(2)に示す転送速度テーブル5においては、VMホスト#aからVMホスト#bへの方向における転送速度、又は、VMホスト#bからVMホスト#aへの方向における転送速度が登録されている。なお、a及びbは、1以上n以下の互いに異なる整数である。
転送速度テーブル5において、各VMホスト2間における双方向の通信経路のうち、一方向の通信経路における転送速度が登録されれば、全てのVMホスト2間の転送速度が分かる。
図19及び図20は、図6に示した情報処理システム100における奇数個のVMホスト2間の転送速度測定処理の一例を説明する図である。
転送速度を測定するVMホスト2の数をm(mは3以上の奇数)とし、測定対象のVMホスト2に#1〜#mの番号が設定される。図19の(1)においては、VMホスト2として、5つのVMホスト#1〜#5が示されている。
各VMホスト2の測定部211は、自身の番号よりも1つ大きい番号が設定されるVMホスト2との間の転送速度を測定する。なお、VMホスト#mの測定部211は、VMホスト#1との間の転送速度を測定する。
図19の(1)においては、VMホスト#1はVMホスト#2との間の転送速度を測定し、VMホスト#2はVMホスト#3との間の転送速度を測定し、VMホスト#3はVMホスト#4との間の転送速度を測定する。また、VMホスト#4はVMホスト#5との間の転送速度を測定し、VMホスト#5はVMホスト#1との間の転送速度を測定する。
別言すれば、VMホスト#jはVMホスト#j+1への方向における転送速度を測定し、VMホスト#m−1はVMホスト#mへの方向における転送速度を測定し、VMホスト#mはVMホスト#1への方向における転送速度を測定する。なお、jは、1以上m−2以下の整数である。
図19の(1)に示す転送速度測定処理が完了すると、図19の(2)に示す転送速度テーブル5が得られる。図19の(2)に示す転送速度テーブル5においては、図19の(1)に示す転送速度測定処理によって測定された1〜5の5個の転送速度が新たに登録される。
次に、各VMホスト2の測定部211は、自身の番号よりも2つ大きい番号が設定されるVMホスト2との間の転送速度を測定する。なお、VMホスト#m−1及び#mの測定部211は、VMホスト#1及び#2との間の転送速度をそれぞれ測定する。
図20の(1)においては、VMホスト#1はVMホスト#3との間の転送速度を測定し、VMホスト#2はVMホスト#4との間の転送速度を測定し、VMホスト#3はVMホスト#5との間の転送速度を測定する。また、VMホスト#4はVMホスト#1との間の転送速度を測定し、VMホスト#5はVMホスト#2との間の転送速度を測定する。
別言すれば、VMホスト#jはVMホスト#j+2への方向における転送速度を測定し、VMホスト#m−2はVMホスト#1への方向における転送速度を測定し、VMホスト#mはVMホスト#2への方向における転送速度を測定する。なお、jは、1以上m−2以下の整数である。
図20の(1)に示す転送速度測定処理が完了すると、図20の(2)に示す転送速度テーブル5が得られる。図20の(2)に示す転送速度テーブル5においては、図20の(1)に示す転送速度測定処理によって測定された6〜10の5個の転送速度が新たに登録される。
図20の(2)に示す転送速度テーブル5においては、各VMホスト2間における双方向の通信経路のうち、一方向の通信経路における転送速度が登録されている。すなわち、図20の(2)に示す転送速度テーブル5においては、VMホスト#cからVMホスト#dへの方向における転送速度、又は、VMホスト#dからVMホスト#cへの方向における転送速度が登録されている。なお、c及びdは、1以上m以下の互いに異なる整数である。
転送速度テーブル5において、各VMホスト2間における双方向の通信経路のうち、一方向の通信経路における転送速度が登録されれば、全てのVMホスト2間の転送速度が分かる。
〔B−2〕動作例
図11〜図14に示したVM移動処理の一例を、図21に示すフローチャート(ステップS1〜S10)に従って説明する。
図11〜図14に示したVM移動処理の一例を、図21に示すフローチャート(ステップS1〜S10)に従って説明する。
管理サーバ1の決定部112は、移動対象のVM3を1つ選択する(ステップS1)。
決定部112は、複数の移動先候補のVMホスト2のうち、VMホスト2を1つ選択する(ステップS2)。
決定部112は、選択したVMホスト2において空き容量があるかを判定する(ステップS3)。
空き容量がない場合には(ステップS3のNoルート参照)、決定部112は、複数の移動先候補のVMホスト2のうち、次のVMホスト2を1つ選択する(ステップS4)。そして、処理はステップS3へ戻る。
一方、空き容量がある場合には(ステップS3のYesルート参照)、決定部112は、選択済みのVMホスト2の転送速度よりも現在選択中のVMホスト2の転送速度が速いかを判定する(ステップS5)。決定部112は、各VMホスト2の測定部211においてリアルタイムに測定され、管理サーバ1の取得部111によって取得されたVMホスト2間の転送速度に基づき、ステップS5の判定を行なってよい。
選択済みのVMホスト2よりも転送速度が速くない場合には(ステップS5のNoルート参照)、処理はステップS4へ移行する。
一方、選択済みのVMホスト2よりも転送速度が速い場合には(ステップS5のYesルート参照)、決定部112は、選択中のVMホスト2を移動先のVMホスト2として決定する(ステップS6)。
決定部112は、全てのVMホスト2を選択済みであるかを判定する(ステップS7)。
全てのVMホスト2を選択済みでない場合には(ステップS7のNoルート参照)、処理はステップS4へ移行する。
一方、全てのVMホスト2を選択済みである場合には(ステップS7のYesルート参照)、決定部112は、決定したVMホスト2に対して、移動対象のVM3を移動するように指示する(ステップS8)。
決定部112は、全ての移動対象のVM3を移動済みであるかを判定する(ステップS9)。
全ての移動対象のVM3を移動済みでない場合には(ステップS9のNoルート参照)、決定部112は、次の移動対象のVM3を1つ選択する(ステップS10)。そして、処理はステップS2へ戻る。
一方、全ての移動対象のVM3を移動済みである場合には(ステップS9のYesルート参照)、処理は終了する。
次に、図15〜図20に示した転送速度測定処理の一例を、図22に示すフローチャート(ステップS11〜S18)に従って説明する。
各VMホスト2の測定部211は、転送速度を測定するVMホスト2の数hを取得する(ステップS11)。
各VMホスト2の測定部211は、g=(h−1)div2を算出する(別言すれば、h−1を2で割った値をgとして算出する)とともに、i=1に設定する(ステップS12)。
各VMホスト2の測定部211は、自身の番号よりもi後のVMホスト2との間の転送速度を測定する(ステップS13)。
各VMホスト2の測定部211は、i=i+1に設定する(ステップS14)。
各VMホスト2の測定部211は、i−1≧gが成り立つかを判定する(ステップS15)。
i−1≧gが成り立たない場合には(ステップS13のNoルート参照)、処理はステップS13へ戻る。
一方、i−1≧gが成り立つ場合には(ステップS13のYesルート参照)、各VMホスト2の測定部211は、h mod 2=0が成り立つか(別言すれば、hが偶数であるか)を判定する(ステップS16)。
h mod 2=0が成り立たない場合には(ステップS16のNoルート参照)、処理はステップS18へ移行する。
一方、h mod 2=0が成り立つ場合には(ステップS16のYesルート参照)、VMホスト#1〜#h/2の測定部211は、自身の番号よりもi+1後のVMホスト2との間の転送速度を測定する(ステップS17)。
各VMホスト2の通知部212は、管理サーバ1に測定したデータを送信する(ステップS18)。そして、処理は終了する。
〔B−3〕効果
上述した実施形態の一例における情報処理システム100によれば、例えば、以下のような効果を奏することができる。
上述した実施形態の一例における情報処理システム100によれば、例えば、以下のような効果を奏することができる。
取得部111は、移動元のVMホスト2と複数の移動先のVMホスト2との間におけるデータの転送速度を取得する。また、決定部112は、取得部111によって取得された転送速度に基づき、複数のVM3のそれぞれに設定された優先度順に、複数の移動先候補のVMホスト2の中から、各VM3の移動先としてのVMホスト2をそれぞれ決定する。
これにより、優先度の高いVM3から順に、VMホスト2間の移動を完了することができる。
取得部111は、VMホスト#1からVMホスト#2への方向における転送速度を取得する一方、VMホスト#2からVMホスト#1への方向における転送速度を取得しない。
これにより、測定及び取得する転送速度の数を半減でき、転送速度の測定及び取得に係る負荷を軽減できる。
取得部111は、VMホスト#kからVMホスト#k+1への方向における転送速度を取得し、VMホスト#n−1からVMホスト#nへの方向における転送速度を取得するとともに、VMホスト#nからVMホスト#1への方向における転送速度を取得する。また、取得部111は、VMホスト#kからVMホスト#k+2への方向における転送速度を取得し、VMホスト#n−1からVMホスト#1への方向における転送速度を取得するとともに、VMホスト#nからVMホスト#2への方向における転送速度を取得する。更に、取得部111は、VMホスト#1〜#n/2については、VMホスト#kからVMホスト#k+3への方向における転送速度を取得する。なお、nは4以上の偶数であり、kは1以上n−2以下の整数である。
これにより、情報処理システム100に配備されているVMホスト2の数が偶数である場合に、VMホスト2間の転送速度の測定及び取得を効率的に行なえる。
取得部111は、VMホスト#jからVMホスト#j+1への方向における転送速度を取得し、VMホスト#m−1からVMホスト#mへの方向における転送速度を取得するとともに、VMホスト#mからVMホスト#1への方向における転送速度を取得する。また、取得部111は、VMホスト#jからVMホスト#j+2への方向における転送速度を取得し、VMホスト#m−1からVMホスト#1への方向における転送速度を取得するとともに、VMホスト#mからVMホスト#2への方向における転送速度を取得する。なお、mは3以上の奇数であり、jは1以上m−2以下の整数である。
これにより、情報処理システム100に配備されているVMホスト2の数が奇数である場合に、VMホスト2間の転送速度の測定及び取得を効率的に行なえる。
〔C〕変形例
図23〜図28は、実施形態の変形例としての情報処理システム100におけるVM移動処理の一例を説明する図である。
図23〜図28は、実施形態の変形例としての情報処理システム100におけるVM移動処理の一例を説明する図である。
図23〜図28に示す例において、サービスA,C,F及びGのデータ量は互いに同一であり、サービスB,D及びEのデータ量は互いに同一である。また、サービスA,C,F及びGのデータ量はサービスB,D及びEのデータ量よりも小さい。更に、各VMホスト2におけるデータ容量は互いに同一である。
図23〜図28に示す例において、管理サーバ1は、優先度テーブル4aに基づき、VM移動処理を実行する。優先度テーブル4aは、図11〜図14に示した優先度テーブル4と同様に、サービス3が搭載されているVMホスト2で障害が発生した場合における、各サービス3の復旧の優先度を示す。優先度の値が小さい程サービス3の復旧の順位が高いことを示す。図23〜図28に示す例において、サービスA〜Gには、優先度“1”〜“3”のいずれかが対応付けられている。
図23〜図28に示す優先度テーブル4aは、図11〜図14に示した優先度テーブル4と比較して、「サービス種別」が追加されている。「サービス種別」は各サービス3の“DB”,“AP”及び“Web”の別を示す。“DB”はデータベースサーバを示し、“AP”はアプリケーションサーバを示し、“Web”はウェブサーバを示す。
データベースサーバが復旧しないとアプリケーションサーバやウェブサーバ等の他のサービス3は復旧しない。そこで、優先度テーブル4aでは、優先度“1”に設定されているデータベースサーバの優先度を“高”に変更し、優先度“2”及び“3”にそれぞれ設定されているアプリケーションサーバ及びウェブサーバの優先度を“低”に変更する。
別言すれば、優先度は、第1のグループと、第1のグループよりも優先度が低い第2のグループとに分類される。
図23に示す例において、VMホスト#1にはサービスA,C,F及びGが配備されており、VMホスト#2にはサービスBが配備されている。また、VMホスト#3にはサービスDが配備されており、VMホスト#4にはサービスEが配備されている。
VMホスト2は、クラウド20(「クラウドA又はB」と称されてもよい。)に展開されている。図23に示す例において、VMホスト#1及び#2はクラウドAに展開されており、VMホスト#3及び#4はクラウドBに展開されている。
ここで、VMホスト#1において、故障等の異常が発生したことを想定する(図24の符号E1を参照)。
管理サーバ1の決定部112は、優先度テーブル4aから、異常が発生したVMホスト#1に配備されているサービスA,C,F及びGの優先度を参照する(図24の符号E2を参照)。本例では、サービスA及びCの優先度は高であり、サービスF及びGの優先度は低である。すなわち、サービスA及びCの優先度は、サービスF及びGの優先度よりも高い。
始めに、決定部112は、異常が発生したVMホスト#1において最も優先度が高いサービスA及びCを移動することを決定する(図25の符号E3及びE4を参照)。
決定部112は、転送速度テーブル5を参照し(図25の符号E5を参照)、サービスA及びCが移動可能なVMホスト2の中から、VMホスト#1からの転送速度が5 GB/sで最も大きいVMホスト#2をサービスA及びCの移動先として決定する(図25の符号E6を参照)。
そして、サービスA及びCは、移動先のVMホスト#2に配備される(図26の符号E7及びE8を参照)。
次に、管理サーバ1の決定部112は、異常が発生したVMホスト#1において優先度が低のサービスFを移動することを決定する(図26の符号E9を参照)。
決定部112は、サービスA及びCの移動後にサービスFが移動可能なVMホスト2の中から、空き容量が最も大きいVMホスト#3をサービスFの移動先として決定する(図26の符号E10を参照)。なお、サービスA及びCの移動後において、VMホスト#3の空き容量とVMホスト#4の空き容量とは同じであるため、本例ではVMホスト2の番号が小さいVMホスト#3へサービスFを移動する。
そして、サービスFは、移動先のVMホスト#3に配備される(図27の符号E11を参照)。
次に、管理サーバ1の決定部112は、異常が発生したVMホスト#1において優先度が低のサービスGを移動することを決定する(図27の符号E12を参照)。
決定部112は、サービスA,C及びFの移動後にサービスGが移動可能なVMホスト2の中から、空き容量が最も大きいVMホスト#4をサービスGの移動先として決定する(図27の符号E13を参照)。
そして、サービスGは、移動先のVMホスト#4に配備される(図28の符号E14を参照)。
すなわち、決定部112は、優先度が高い第1のグループに分類されるVM3については、転送速度に基づき、移動先のVMホスト2を決定する。また、決定部112は、優先度が低い第2のグループに分類されるVM3については、複数の移動先候補のVMホスト2における負荷の分散状態に基づき、移動先のVMホスト2を決定する。
これにより、実施形態の変形例における情報処理システム100においては、実施形態の一例における情報処理システム100と同様に、復旧の優先度が高いVM3のVMホスト2間における移動処理を、早期に開始及び完了することができる。また、実施形態の変形例における情報処理システム100においては、VM2の復旧優先度とVMホスト2間の負荷分散との両方を考慮して、VM移動処理を実行できる。
図29〜図31は、関連例としての情報処理システム100におけるVM移動処理の一例を説明する図である。この関連例では、優先度が低であるサービス3についても、転送速度に基づいて移動先のVMホスト2を決定する場合について説明する。
図29は、上述した図26と同様の状態を示している。すなわち、管理サーバ1の決定部112は、異常が発生したVMホスト#1において優先度が低のサービスFを移動することを決定する(図29の符号F1を参照)。
決定部112は、転送速度テーブル5を参照する(図29の符号F2を参照)。そして、決定部112は、サービスA及びCの移動後にサービスFが移動可能なVMホスト2の中から、転送速度が3 GB/sで最も大きいVMホスト#3をサービスFの移動先として決定する(図29の符号F3を参照)。なお、サービスA及びCの移動後において、転送速度が5 GB/sのVMホスト#2は、空き容量がないため、サービスFを移動させることができない。
そして、サービスFは、移動先のVMホスト#3に配備される(図30の符号F4を参照)。
次に、管理サーバ1の決定部112は、異常が発生したVMホスト#1において優先度が低のサービスGを移動することを決定する(図30の符号F5を参照)。
決定部112は、転送速度テーブル5を参照する(図30の符号F6を参照)。そして、決定部112は、サービスA,C及びFの移動後にサービスGが移動可能なVMホスト2の中から、転送速度が3 GB/sで最も大きいVMホスト#3をサービスGの移動先として決定する(図30の符号F7を参照)。なお、サービスA,C及びFの移動後において、転送速度が5 GB/sのVMホスト#2は、空き容量がないため、サービスGを移動させることができない。
そして、サービスGは、移動先のVMホスト#3に配備される(図31の符号F8を参照)。
このように、図29〜図31に示した関連例としての情報処理システム100においては、VMホスト#3において負荷分散がされていない。
〔D〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
上述した実施形態の変形例では、図23に示した優先度テーブル4aにおいて、優先度“1”を優先度“高”に変更し、優先度“2”及び“3”を優先度“低”に変更した。しかしながら、これに限定されるものではなく、優先度“1”及び“2”を優先度“高”に変更し、優先度“3”を優先度“低”に変更してもよい。また、例えば、優先度テーブル4aにおいて優先度“1”〜“4”が設定されている場合には、優先度“1”〜“3”を優先度“高”に変更し、優先度“4”を優先度“低”に変更してもよい。
また、上述した実施形態の一例及び変形例では、VMホスト2間のデータ転送速度に基づき、複数のVM3についての移動先のVMホスト2を決定した。しかしながら、これに限定されるものではなく、VMホスト2間のデータ転送速度に基づき、1つのVM3についての移動先のVMホスト2を決定してもよい。これにより、移動対象の1つのVM3についての復旧を早期に完了することができる。
〔E〕付記
以上の実施形態及び変形例に関し、さらに以下の付記を開示する。
以上の実施形態及び変形例に関し、さらに以下の付記を開示する。
(付記1)
複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置であって、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得する取得部と、
前記取得部によって取得された前記転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定する決定部と、
を備える、情報処理装置。
複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置であって、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得する取得部と、
前記取得部によって取得された前記転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定する決定部と、
を備える、情報処理装置。
(付記2)
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記決定部は、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
付記1に記載の情報処理装置。
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記決定部は、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
付記1に記載の情報処理装置。
(付記3)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記取得部は、前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を取得する一方、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得しない、
付記1又は2に記載の情報処理装置。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記取得部は、前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を取得する一方、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得しない、
付記1又は2に記載の情報処理装置。
(付記4)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
前記取得部は、
第k(kは1以上n−2以下の整数)のホスト装置から第k+1のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から第nのホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第kのホスト装置から第k+2のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から第2のホスト装置への方向における前記転送速度を取得し、
第1〜第n/2のホスト装置については、前記第kのホスト装置から第k+3のホスト装置への方向における前記転送速度を取得する、
付記1〜3のいずれか1項に記載の情報処理装置。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
前記取得部は、
第k(kは1以上n−2以下の整数)のホスト装置から第k+1のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から第nのホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第kのホスト装置から第k+2のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から第2のホスト装置への方向における前記転送速度を取得し、
第1〜第n/2のホスト装置については、前記第kのホスト装置から第k+3のホスト装置への方向における前記転送速度を取得する、
付記1〜3のいずれか1項に記載の情報処理装置。
(付記5)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第m(mは3以上の偶数)のホスト装置を含み、
前記取得部は、
第j(jは1以上m−2以下の整数)のホスト装置から第j+1のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から第mのホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第jのホスト装置から第j+2のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から第2のホスト装置への方向における前記転送速度を取得する、
付記1〜3のいずれか1項に記載の情報処理装置。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第m(mは3以上の偶数)のホスト装置を含み、
前記取得部は、
第j(jは1以上m−2以下の整数)のホスト装置から第j+1のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から第mのホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第jのホスト装置から第j+2のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から第2のホスト装置への方向における前記転送速度を取得する、
付記1〜3のいずれか1項に記載の情報処理装置。
(付記6)
複数の仮想マシンの移動元としての移動元ホスト装置と、
前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、
前記移動元ホスト装置及び前記複数の移動先ホスト装置と通信可能に接続された情報処理装置と、
を備え、
前記情報処理装置は、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定し、
前記各仮想マシンの移動先としての移動先ホスト装置は、
前記情報処理装置による決定に従い、前記移動元ホスト装置から当該移動先ホスト装置へ、移動対象の仮想マシンを移動させる、
を備える、情報処理システム。
複数の仮想マシンの移動元としての移動元ホスト装置と、
前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、
前記移動元ホスト装置及び前記複数の移動先ホスト装置と通信可能に接続された情報処理装置と、
を備え、
前記情報処理装置は、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定し、
前記各仮想マシンの移動先としての移動先ホスト装置は、
前記情報処理装置による決定に従い、前記移動元ホスト装置から当該移動先ホスト装置へ、移動対象の仮想マシンを移動させる、
を備える、情報処理システム。
(付記7)
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記情報処理装置は、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
付記6に記載の情報処理システム。
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記情報処理装置は、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
付記6に記載の情報処理システム。
(付記8)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記第1のホスト装置は、前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を測定する一方、前記第2のホスト装置は、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を測定しない、
付記6又は7に記載の情報処理システム。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記第1のホスト装置は、前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を測定する一方、前記第2のホスト装置は、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を測定しない、
付記6又は7に記載の情報処理システム。
(付記9)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
第k(kは1以上n−2以下の整数)のホスト装置は、第k+1のホスト装置への方向における前記転送速度と、第k+2のホスト装置への方向における前記転送速度と、を測定し、
第n−1のホスト装置は、第nのホスト装置への方向における前記転送速度と、前記第1のホスト装置への方向における前記転送速度と、を測定し、
前記第nのホスト装置は、前記第1のホスト装置への方向における前記転送速度と、第2のホスト装置への方向における前記転送速度と、を測定し、
第1〜第n/2のホスト装置は、第k+3のホスト装置への方向における前記転送速度を測定する、
付記6〜8のいずれか1項に記載の情報処理システム。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
第k(kは1以上n−2以下の整数)のホスト装置は、第k+1のホスト装置への方向における前記転送速度と、第k+2のホスト装置への方向における前記転送速度と、を測定し、
第n−1のホスト装置は、第nのホスト装置への方向における前記転送速度と、前記第1のホスト装置への方向における前記転送速度と、を測定し、
前記第nのホスト装置は、前記第1のホスト装置への方向における前記転送速度と、第2のホスト装置への方向における前記転送速度と、を測定し、
第1〜第n/2のホスト装置は、第k+3のホスト装置への方向における前記転送速度を測定する、
付記6〜8のいずれか1項に記載の情報処理システム。
(付記10)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第m(mは3以上の偶数)のホスト装置を含み、
第j(jは1以上m−2以下の整数)のホスト装置は、第j+1のホスト装置への方向における前記転送速度と、第j+2のホスト装置への方向における前記転送速度と、を測定し、
第m−1のホスト装置は、第mのホスト装置への方向における前記転送速度と、前記第1のホスト装置への方向における前記転送速度と、を測定し、
前記第mのホスト装置は、前記第1のホスト装置への方向における前記転送速度と、第2のホスト装置への方向における前記転送速度と、を測定する、
付記6〜8のいずれか1項に記載の情報処理システム。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第m(mは3以上の偶数)のホスト装置を含み、
第j(jは1以上m−2以下の整数)のホスト装置は、第j+1のホスト装置への方向における前記転送速度と、第j+2のホスト装置への方向における前記転送速度と、を測定し、
第m−1のホスト装置は、第mのホスト装置への方向における前記転送速度と、前記第1のホスト装置への方向における前記転送速度と、を測定し、
前記第mのホスト装置は、前記第1のホスト装置への方向における前記転送速度と、第2のホスト装置への方向における前記転送速度と、を測定する、
付記6〜8のいずれか1項に記載の情報処理システム。
(付記11)
複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置に備えられるコンピュータに、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得し、
前記取得された前記転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定する、
処理を実行させる、プログラム。
複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置に備えられるコンピュータに、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得し、
前記取得された前記転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定する、
処理を実行させる、プログラム。
(付記12)
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
処理を前記コンピュータに実行させる、付記11に記載のプログラム。
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
処理を前記コンピュータに実行させる、付記11に記載のプログラム。
(付記13)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を取得する一方、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得しない、
処理を前記コンピュータに実行させる、付記11又は12に記載のプログラム。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を取得する一方、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得しない、
処理を前記コンピュータに実行させる、付記11又は12に記載のプログラム。
(付記14)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
第k(kは1以上n−2以下の整数)のホスト装置から第k+1のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から第nのホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第kのホスト装置から第k+2のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から第2のホスト装置への方向における前記転送速度を取得し、
第1〜第n/2のホスト装置については、前記第kのホスト装置から第k+3のホスト装置への方向における前記転送速度を取得する、
処理を前記コンピュータに実行させる、付記11〜13のいずれか1項に記載のプログラム。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
第k(kは1以上n−2以下の整数)のホスト装置から第k+1のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から第nのホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第kのホスト装置から第k+2のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から第2のホスト装置への方向における前記転送速度を取得し、
第1〜第n/2のホスト装置については、前記第kのホスト装置から第k+3のホスト装置への方向における前記転送速度を取得する、
処理を前記コンピュータに実行させる、付記11〜13のいずれか1項に記載のプログラム。
(付記15)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第m(mは3以上の偶数)のホスト装置を含み、
第j(jは1以上m−2以下の整数)のホスト装置から第j+1のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から第mのホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第jのホスト装置から第j+2のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から第2のホスト装置への方向における前記転送速度を取得する、
処理を前記コンピュータに実行させる、付記11〜13のいずれか1項に記載の情報プログラム。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第m(mは3以上の偶数)のホスト装置を含み、
第j(jは1以上m−2以下の整数)のホスト装置から第j+1のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から第mのホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第jのホスト装置から第j+2のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から第2のホスト装置への方向における前記転送速度を取得する、
処理を前記コンピュータに実行させる、付記11〜13のいずれか1項に記載の情報プログラム。
(付記16)
複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、前記移動元ホスト装置及び前記複数の移動先ホスト装置と通信可能に接続された情報処理装置とを有する情報処理システムにおける情報法処理方法であって、
前記情報処理装置において、前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定し、
前記各仮想マシンの移動先としての移動先ホスト装置において、前記情報処理装置による決定に従い、前記移動元ホスト装置から当該移動先ホスト装置へ、移動対象の仮想マシンを移動させる、
情報処理方法。
複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、前記移動元ホスト装置及び前記複数の移動先ホスト装置と通信可能に接続された情報処理装置とを有する情報処理システムにおける情報法処理方法であって、
前記情報処理装置において、前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定し、
前記各仮想マシンの移動先としての移動先ホスト装置において、前記情報処理装置による決定に従い、前記移動元ホスト装置から当該移動先ホスト装置へ、移動対象の仮想マシンを移動させる、
情報処理方法。
(付記17)
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記情報処理装置において、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
付記16に記載の情報処理方法。
前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記情報処理装置において、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
付記16に記載の情報処理方法。
(付記18)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記第1のホスト装置において、前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を測定する一方、前記第2のホスト装置は、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を測定しない、
付記16又は17に記載の情報処理方法。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記第1のホスト装置において、前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を測定する一方、前記第2のホスト装置は、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を測定しない、
付記16又は17に記載の情報処理方法。
(付記19)
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
第k(kは1以上n−2以下の整数)のホスト装置において、第k+1のホスト装置への方向における前記転送速度と、第k+2のホスト装置への方向における前記転送速度と、を測定し、
第n−1のホスト装置において、第nのホスト装置への方向における前記転送速度と、前記第1のホスト装置への方向における前記転送速度と、を測定し、
前記第nのホスト装置において、前記第1のホスト装置への方向における前記転送速度と、第2のホスト装置への方向における前記転送速度と、を測定し、
第1〜第n/2のホスト装置において、第k+3のホスト装置への方向における前記転送速度を測定する、
付記16〜18のいずれか1項に記載の情報処理方法。
前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
第k(kは1以上n−2以下の整数)のホスト装置において、第k+1のホスト装置への方向における前記転送速度と、第k+2のホスト装置への方向における前記転送速度と、を測定し、
第n−1のホスト装置において、第nのホスト装置への方向における前記転送速度と、前記第1のホスト装置への方向における前記転送速度と、を測定し、
前記第nのホスト装置において、前記第1のホスト装置への方向における前記転送速度と、第2のホスト装置への方向における前記転送速度と、を測定し、
第1〜第n/2のホスト装置において、第k+3のホスト装置への方向における前記転送速度を測定する、
付記16〜18のいずれか1項に記載の情報処理方法。
(付記20)
仮想マシンの移動元としての移動元ホスト装置と、前記仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置であって、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得する取得部と、
前記取得部によって取得された前記転送速度に基づき、前記複数の移動先ホスト装置の中から、前記仮想マシンの移動先としての移動先ホスト装置を決定する決定部と、
を備える、情報処理装置。
仮想マシンの移動元としての移動元ホスト装置と、前記仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置であって、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得する取得部と、
前記取得部によって取得された前記転送速度に基づき、前記複数の移動先ホスト装置の中から、前記仮想マシンの移動先としての移動先ホスト装置を決定する決定部と、
を備える、情報処理装置。
100,600 :情報処理システム
1,6 :管理サーバ
11,21 :CPU
111 :取得部
112 :決定部
211 :測定部
212 :通知部
213 :移動処理部
12 :メモリ
13 :表示処理部
130 :表示装置
14 :記憶装置
15 :入力I/F
151 :マウス
152 :キーボード
16 :読み書き処理部
160 :記録媒体
17 :通信I/F
2,7 :VMホスト
20,70 :クラウド
3,8 :VM(サービス)
30 :区画
300 :RAID構成
4,41,4a,9:優先度テーブル
5 :転送速度テーブル
1,6 :管理サーバ
11,21 :CPU
111 :取得部
112 :決定部
211 :測定部
212 :通知部
213 :移動処理部
12 :メモリ
13 :表示処理部
130 :表示装置
14 :記憶装置
15 :入力I/F
151 :マウス
152 :キーボード
16 :読み書き処理部
160 :記録媒体
17 :通信I/F
2,7 :VMホスト
20,70 :クラウド
3,8 :VM(サービス)
30 :区画
300 :RAID構成
4,41,4a,9:優先度テーブル
5 :転送速度テーブル
Claims (8)
- 複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置であって、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得する取得部と、
前記取得部によって取得された前記転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定する決定部と、
を備える、情報処理装置。 - 前記優先度は、第1のグループと、当該第1のグループよりも優先度が低い第2のグループとに分類され、
前記決定部は、
前記第1のグループに分類される仮想マシンについては、前記転送速度に基づき、前記移動先ホスト装置を決定し、
前記第2のグループに分類される仮想マシンについては、前記複数の移動先ホスト装置における負荷の分散状態に基づき、前記移動先ホスト装置を決定する、
請求項1に記載の情報処理装置。 - 前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1のホスト装置と第2のホスト装置とを含み、
前記取得部は、前記第1のホスト装置から前記第2のホスト装置への方向における前記転送速度を取得する一方、前記第2のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得しない、
請求項1又は2に記載の情報処理装置。 - 前記移動元ホスト装置及び前記複数の移動先ホスト装置は、第1〜第n(nは4以上の偶数)のホスト装置を含み、
前記取得部は、
第k(kは1以上n−2以下の整数)のホスト装置から第k+1のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から第nのホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第kのホスト装置から第k+2のホスト装置への方向における前記転送速度を取得し、第n−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第nのホスト装置から第2のホスト装置への方向における前記転送速度を取得し、
第1〜第n/2のホスト装置については、前記第kのホスト装置から第k+3のホスト装置への方向における前記転送速度を取得する、
請求項1〜3のいずれか1項に記載の情報処理装置。 - 前記複数のホスト装置は、第1〜第m(mは3以上の偶数)のホスト装置を含み、
前記取得部は、
第j(jは1以上m−2以下の整数)のホスト装置から第j+1のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から第mのホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から前記第1のホスト装置への方向における前記転送速度を取得し、
前記第jのホスト装置から第j+2のホスト装置への方向における前記転送速度を取得し、第m−1のホスト装置から前記第1のホスト装置への方向における前記転送速度を取得するとともに、前記第mのホスト装置から第2のホスト装置への方向における前記転送速度を取得する、
請求項1〜3のいずれか1項に記載の情報処理装置。 - 複数の仮想マシンの移動元としての移動元ホスト装置と、
前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、
前記移動元ホスト装置及び前記複数の移動先ホスト装置と通信可能に接続された情報処理装置と、
を備え、
前記情報処理装置は、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定し、
前記各仮想マシンの移動先としての移動先ホスト装置は、
前記情報処理装置による決定に従い、前記移動元ホスト装置から当該移動先ホスト装置へ、移動対象の仮想マシンを移動させる、
情報処理システム。 - 複数の仮想マシンの移動元としての移動元ホスト装置と、前記複数の仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置に備えられるコンピュータに、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得し、
前記取得された前記転送速度に基づき、前記複数の仮想マシンのそれぞれに設定された優先度順に、前記複数の移動先ホスト装置の中から、各仮想マシンの移動先としての移動先ホスト装置をそれぞれ決定する、
処理を実行させる、プログラム。 - 仮想マシンの移動元としての移動元ホスト装置と、前記仮想マシンの移動先候補としての複数の移動先ホスト装置と、通信可能に接続された情報処理装置であって、
前記移動元ホスト装置と前記複数の移動先ホスト装置との間におけるデータの転送速度を取得する取得部と、
前記取得部によって取得された前記転送速度に基づき、前記複数の移動先ホスト装置の中から、前記仮想マシンの移動先としての移動先ホスト装置を決定する決定部と、
を備える、情報処理装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017214797A JP2019087033A (ja) | 2017-11-07 | 2017-11-07 | 情報処理装置、情報処理システム及びプログラム |
US16/168,893 US20190138350A1 (en) | 2017-11-07 | 2018-10-24 | Information processing apparatus and information processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017214797A JP2019087033A (ja) | 2017-11-07 | 2017-11-07 | 情報処理装置、情報処理システム及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019087033A true JP2019087033A (ja) | 2019-06-06 |
Family
ID=66328620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017214797A Pending JP2019087033A (ja) | 2017-11-07 | 2017-11-07 | 情報処理装置、情報処理システム及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20190138350A1 (ja) |
JP (1) | JP2019087033A (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9597205B2 (en) | 2012-06-06 | 2017-03-21 | Magenta Medical Ltd. | Prosthetic renal valve |
US10583231B2 (en) | 2013-03-13 | 2020-03-10 | Magenta Medical Ltd. | Blood pump |
US11291824B2 (en) | 2015-05-18 | 2022-04-05 | Magenta Medical Ltd. | Blood pump |
US10761934B2 (en) * | 2018-05-16 | 2020-09-01 | Hewlett Packard Enterprise Development Lp | Reconstruction of data of virtual machines |
JP7331374B2 (ja) * | 2019-02-15 | 2023-08-23 | 日本電信電話株式会社 | リソース管理装置およびリソース管理方法 |
JP7305990B2 (ja) * | 2019-03-12 | 2023-07-11 | 富士通株式会社 | 転送プログラム、転送方法、および情報処理装置 |
JP2021015403A (ja) * | 2019-07-11 | 2021-02-12 | 富士通株式会社 | 情報処理装置、情報処理システム、プログラムおよび情報処理方法 |
US10853190B1 (en) * | 2019-09-04 | 2020-12-01 | EMC IP Holding Company LLC | System and method for a machine learning based smart restore mechanism |
US11294772B2 (en) | 2019-09-04 | 2022-04-05 | EMC IP Holding Company LLC | System and method to achieve virtual machine backup load balancing using machine learning |
CN112035219B (zh) * | 2020-09-10 | 2024-04-09 | 深信服科技股份有限公司 | 一种虚拟机数据访问方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015087449A1 (ja) * | 2013-12-13 | 2015-06-18 | 株式会社日立製作所 | 計算機システムおよび計算機システムの制御方法 |
-
2017
- 2017-11-07 JP JP2017214797A patent/JP2019087033A/ja active Pending
-
2018
- 2018-10-24 US US16/168,893 patent/US20190138350A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20190138350A1 (en) | 2019-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2019087033A (ja) | 情報処理装置、情報処理システム及びプログラム | |
US11163472B2 (en) | Method and system for managing storage system | |
US7395370B2 (en) | Computer system, data management method, and program for determining a migration method based on prediction of a migration influence | |
US10678457B2 (en) | Establishing and maintaining data apportioning for availability domain fault tolerance | |
US9244717B2 (en) | Method and system for visualizing linked clone trees | |
US9229749B2 (en) | Compute and storage provisioning in a cloud environment | |
RU2702268C2 (ru) | Масштабируемые пулы хранения данных | |
WO2013072978A1 (ja) | 計算機、仮想マシン配備方法及びプログラム | |
CN109213619B (zh) | 用于管理存储系统的方法、设备和计算机程序产品 | |
JP2007156815A (ja) | データマイグレーション方法及びシステム | |
JP2008108020A (ja) | 計算機システム、データ移行方法、およびストレージ管理サーバ | |
US20130198476A1 (en) | Management system of information memory system and management method thereof | |
US9854037B2 (en) | Identifying workload and sizing of buffers for the purpose of volume replication | |
US9319285B2 (en) | Optimizing partition placement in virtualized environments | |
US10069906B2 (en) | Method and apparatus to deploy applications in cloud environments | |
JP2011154697A (ja) | Raidと関連するアプリケーションの実行のための方法およびシステム | |
CN111124250A (zh) | 用于管理存储空间的方法、设备和计算机程序产品 | |
US10846134B2 (en) | Providing fault tolerance in a virtualized computing environment through a swapping approach | |
US10223016B2 (en) | Power management for distributed storage systems | |
JP6028415B2 (ja) | 仮想サーバ環境のデータ移行制御装置、方法、システム | |
KR20220158832A (ko) | 데이터 스토리지 시스템에서 라이트 소트 관리 | |
JP6974706B2 (ja) | 情報処理装置、ストレージシステムおよびプログラム | |
JP2011070464A (ja) | 計算機システム及び計算機システムの性能管理方法 | |
US20140380089A1 (en) | Method and apparatus for recovering failed disk in virtual machine | |
US11755438B2 (en) | Automatic failover of a software-defined storage controller to handle input-output operations to and from an assigned namespace on a non-volatile memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20190607 |