JP7104327B2 - Information processing device, virtual machine management program and virtual machine management method - Google Patents

Information processing device, virtual machine management program and virtual machine management method Download PDF

Info

Publication number
JP7104327B2
JP7104327B2 JP2018197657A JP2018197657A JP7104327B2 JP 7104327 B2 JP7104327 B2 JP 7104327B2 JP 2018197657 A JP2018197657 A JP 2018197657A JP 2018197657 A JP2018197657 A JP 2018197657A JP 7104327 B2 JP7104327 B2 JP 7104327B2
Authority
JP
Japan
Prior art keywords
virtual machine
load
state
switching
machine
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
JP2018197657A
Other languages
Japanese (ja)
Other versions
JP2020064567A (en
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 JP2018197657A priority Critical patent/JP7104327B2/en
Publication of JP2020064567A publication Critical patent/JP2020064567A/en
Application granted granted Critical
Publication of JP7104327B2 publication Critical patent/JP7104327B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法に関する。 The present invention relates to an information processing device, a virtual machine management program, and a virtual machine management method.

情報処理の分野では、物理的なコンピュータ(物理マシンや物理ホストと呼ぶことがある)上で、複数の仮想的なコンピュータ(仮想マシンや論理ホストと呼ぶことがある)を動作させる仮想化技術が利用されている。各仮想マシン上では、OS(Operating System)などのソフトウェアを実行できる。仮想化技術を利用する物理マシンは、複数の仮想マシンを管理するためのソフトウェアを実行する。例えば、ハイパーバイザと呼ばれるソフトウェアが、CPU(Central Processing Unit)の処理能力やRAM(Random Access Memory)の記憶領域を、演算のリソースとして複数の仮想マシンに割り振ることがある。 In the field of information processing, virtualization technology that operates multiple virtual computers (sometimes called virtual machines or logical hosts) on physical computers (sometimes called physical machines or physical hosts) It's being used. Software such as an OS (Operating System) can be executed on each virtual machine. Physical machines that utilize virtualization technology run software to manage multiple virtual machines. For example, software called a hypervisor may allocate the processing power of a CPU (Central Processing Unit) and the storage area of a RAM (Random Access Memory) to a plurality of virtual machines as arithmetic resources.

ところで、ネットワーク経由で、コンピュータシステムのリソースを使用する権利をユーザに貸し出し、リソースの使用量や使用時間などの使用状況に応じてユーザへ課金を行うサービスが利用されている。このようなサービス利用形態は、IaaS(Infrastructure as a Service)と呼ばれることがある。コンピュータシステムでは、ユーザ間の処理の分離や課金管理の容易性などの観点から、仮想化技術が用いられ、ユーザ毎に1以上の仮想マシンが実行されることがある。また、このようなサービスでは、ユーザに対して過剰にリソースが割り当てられることを抑制する方法が考えられている。 By the way, a service is used in which the right to use a resource of a computer system is lent to a user via a network, and the user is charged according to the usage status such as the usage amount and usage time of the resource. Such a service usage form is sometimes called Infrastructure as a Service (IAAS). In a computer system, virtualization technology is used from the viewpoint of separation of processing between users and ease of billing management, and one or more virtual machines may be executed for each user. Further, in such a service, a method of suppressing an excessive allocation of resources to a user is considered.

例えば、第1および第2の仮想化システムのそれぞれに1以上の仮想マシンを配置し、各仮想マシンに、ある処理を分散させる管理装置が提案されている。提案の管理装置は、第1の仮想化システムにおける仮想マシンの負荷が第1の負荷条件を満たし、かつ、第2の仮想化システムにおける仮想マシンの負荷が第2の負荷条件を満たすときに第2の仮想化システムへの仮想マシンの追加を許容する。 For example, a management device has been proposed in which one or more virtual machines are arranged in each of the first and second virtualization systems, and a certain process is distributed to each virtual machine. The proposed management device is the first when the load of the virtual machine in the first virtual system satisfies the first load condition and the load of the virtual machine in the second virtual system satisfies the second load condition. Allows the addition of virtual machines to the 2 virtualization systems.

また、ユーザの仮想計算機の使用状況およびユーザの計算機使用条件に従って、命令実行処理に加えるダミーサイクルを変更することで、特別な操作を要さずに仮想計算機のCPU性能を変更する仮想計算機性能変更方法の提案もある。 In addition, by changing the dummy cycle added to the instruction execution processing according to the usage status of the user's virtual computer and the usage conditions of the user's computer, the CPU performance of the virtual computer can be changed without any special operation. There are also suggestions for methods.

また、性能の異なる仮想マシン上で稼動する第1および第2のデータベースを備え、外部からの指示に応じて、システムが利用している仮想マシンを入れ替え、システムの性能をスケールアップおよびスケールダウンさせる方法の提案もある。 It also has first and second databases running on virtual machines with different performances, and replaces the virtual machines used by the system in response to external instructions to scale up and down the performance of the system. There are also suggestions for methods.

更に、更新前と更新後の業務システム全体の仮想マシンの処理負荷に応じて更新前の業務システムの仮想マシンの削除を行うオートスケール方法の提案もある。 Furthermore, there is also a proposal of an autoscale method in which the virtual machines of the business system before the update are deleted according to the processing load of the virtual machines of the entire business system before and after the update.

特開2015-153402号公報JP-A-2015-153402 特開2006-65430号公報Japanese Unexamined Patent Publication No. 2006-65430 特開2012-215937号公報Japanese Unexamined Patent Publication No. 2012-215937 特開2017-111664号公報Japanese Unexamined Patent Publication No. 2017-11164

ユーザによる仮想マシンの利用頻度が高まったときに、当該仮想マシンよりも高性能な仮想マシンを起動して、高性能な仮想マシンによる運用に切り替えることが考えられる。このとき、補助記憶装置に記憶された仮想マシンのイメージデータを物理マシンのメモリにロードして当該仮想マシンを起動すると、仮想マシンの起動に時間がかかる。 When the frequency of use of a virtual machine by a user increases, it is conceivable to start a virtual machine having a higher performance than the virtual machine and switch to operation using the high-performance virtual machine. At this time, if the image data of the virtual machine stored in the auxiliary storage device is loaded into the memory of the physical machine and the virtual machine is started, it takes time to start the virtual machine.

そこで、仮想マシンの利用頻度の高まりに備え、比較的高性能な仮想マシンを予め稼働させて、ユーザに提供することが考えられる。しかし、仮想マシンのイメージデータをメモリにロードして稼働させると、ユーザに対してCPUやRAMなどのリソースの利用料が課金される。ユーザが利用する仮想マシンの性能が高い(リソースの割り当て量が大きい)ほど、課金額は大きくなる。このため、ユーザに対して、仮想マシンの利用頻度が比較的低い場合にまで、比較的高性能な仮想マシンでの課金が発生してしまうことがあり、ユーザへの課金が過剰になることがある。 Therefore, in preparation for the increasing frequency of use of virtual machines, it is conceivable to operate relatively high-performance virtual machines in advance and provide them to users. However, when the image data of the virtual machine is loaded into the memory and operated, the user is charged a usage fee for resources such as a CPU and RAM. The higher the performance of the virtual machine used by the user (the larger the resource allocation amount), the larger the billing amount. For this reason, the user may be charged by the relatively high-performance virtual machine even when the virtual machine is used relatively infrequently, and the user may be charged excessively. be.

1つの側面では、本発明は、リソースの使用量を抑えて、仮想マシンの迅速な切り替えを可能にする情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法を提供することを目的とする。 In one aspect, it is an object of the present invention to provide an information processing device, a virtual machine management program, and a virtual machine management method that enable rapid switching of virtual machines while reducing resource usage.

1つの態様では、情報処理装置が提供される。この情報処理装置は、記憶部と処理部とを有する。記憶部は、性能の異なる複数の仮想マシンの対応関係を示す情報を記憶する。処理部は、複数の仮想マシンに対応する複数のイメージデータを記憶装置に配置する命令を物理マシンに送信し、物理マシンで稼働中の第1の仮想マシンの負荷を監視し、負荷が第1の閾値を超えると、記憶部に記憶された情報に基づいて、第1の仮想マシンよりも高性能な第2の仮想マシンのイメージデータを、記憶装置からメモリにロードして第2の仮想マシンを準備状態にする命令を物理マシンに送信し、負荷が第1の閾値よりも高い第2の閾値を超えると、第1の仮想マシンを第2の仮想マシンに切り替える命令を物理マシンに送信する。 In one aspect, an information processing device is provided. This information processing device has a storage unit and a processing unit. The storage unit stores information indicating the correspondence between a plurality of virtual machines having different performances. The processing unit sends an instruction for arranging a plurality of image data corresponding to a plurality of virtual machines to a storage device to the physical machine, monitors the load of the first virtual machine running on the physical machine, and the load is the first. When the threshold value of is exceeded, the image data of the second virtual machine having higher performance than that of the first virtual machine is loaded from the storage device into the memory based on the information stored in the storage unit, and the second virtual machine is loaded. Sends an instruction to the physical machine to prepare, and when the load exceeds the second threshold, which is higher than the first threshold, it sends an instruction to switch the first virtual machine to the second virtual machine. ..

また、1つの態様では、仮想マシン管理プログラムが提供される。
また、1つの態様では、仮想マシン管理方法が提供される。
Also, in one aspect, a virtual machine management program is provided.
Also, in one aspect, a virtual machine management method is provided.

1つの側面では、リソースの使用量を抑えて、仮想マシンの迅速な切り替えを可能にする。 On the one hand, it reduces resource usage and allows for rapid switching of virtual machines.

第1の実施の形態の情報処理システムを示す図である。It is a figure which shows the information processing system of 1st Embodiment. 第2の実施の形態の情報処理システムの例を示す図である。It is a figure which shows the example of the information processing system of the 2nd Embodiment. 管理サーバのハードウェア例を示すブロック図である。It is a block diagram which shows the hardware example of the management server. 管理サーバの機能例を示す図である。It is a figure which shows the functional example of the management server. VMホストの機能例を示す図である。It is a figure which shows the functional example of a VM host. VMホストのVM配備例を示す図である。It is a figure which shows the example of VM deployment of a VM host. 条件表の例を示す図である。It is a figure which shows the example of the condition table. 管理テーブルの例を示す図である。It is a figure which shows the example of the management table. ダウンサイズの準備例を示す図である。It is a figure which shows the preparation example of downsizing. ダウンサイズの中止例および実行例を示す図である。It is a figure which shows the example of stopping downsizing and the example of execution. アップサイズの準備例を示す図である。It is a figure which shows the preparation example of upsizing. アップサイズの中止例および実行例を示す図である。It is a figure which shows the example of stopping the upsizing and the example of execution. 管理サーバの処理例を示すフローチャートである。It is a flowchart which shows the processing example of the management server. VM切り替え制御(ダウンサイズ)の例を示すフローチャートである。It is a flowchart which shows the example of VM switching control (downsize). ダウンサイズ後処理の例を示すフローチャートである。It is a flowchart which shows the example of downsizing post-processing. ダウンサイズ後処理の具体例を示す図である。It is a figure which shows the specific example of downsizing post-processing. VM切り替え制御(アップサイズ)の例を示すフローチャートである。It is a flowchart which shows the example of VM switching control (upsize). アップサイズ後処理の例を示すフローチャートである。It is a flowchart which shows the example of the upsizing post-processing. アップサイズ後処理の具体例を示す図である。It is a figure which shows the specific example of the upsizing post-processing. 不要VM削除の例を示すフローチャートである。It is a flowchart which shows the example of unnecessary VM deletion.

以下、本実施の形態について図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
Hereinafter, the present embodiment will be described with reference to the drawings.
[First Embodiment]
The first embodiment will be described.

図1は、第1の実施の形態の情報処理システムを示す図である。
情報処理システム1は、情報処理装置10、物理マシン20および記憶装置30を有する。情報処理装置10、物理マシン20および記憶装置30は、ネットワーク40に接続される。情報処理装置10は、物理マシン20における仮想マシンの運用管理を行う。
FIG. 1 is a diagram showing an information processing system according to the first embodiment.
The information processing system 1 includes an information processing device 10, a physical machine 20, and a storage device 30. The information processing device 10, the physical machine 20, and the storage device 30 are connected to the network 40. The information processing device 10 manages the operation of the virtual machine in the physical machine 20.

物理マシン20は、物理マシン20のハードウェア21を用いて仮想マシンを実行する。物理マシン20は、ハイパーバイザ22を実行する。ハイパーバイザ22は、物理マシン20が備えるハードウェア21のリソースを仮想マシンに割り当てる。ハードウェア21は、メモリ21aおよびプロセッサ21bを含む。例えば、ハイパーバイザ22は、メモリ21aの記憶リソースやプロセッサ21bの演算リソースを仮想マシン23に割り当て、物理マシン20上で仮想マシン23を動作させる。例えば、仮想マシン23は、ネットワーク40を介して、ユーザが操作するクライアント端末(図示を省略している)と通信し、ユーザの作業を支援する所定のソフトウェアの機能(例えば、Webサーバ機能など)を提供する。例えば、ユーザには、仮想マシン23の利用状況(仮想マシン23のリソース量や利用時間など)に応じた利用料が課金される。 The physical machine 20 executes a virtual machine using the hardware 21 of the physical machine 20. The physical machine 20 executes the hypervisor 22. The hypervisor 22 allocates the resources of the hardware 21 included in the physical machine 20 to the virtual machine. The hardware 21 includes a memory 21a and a processor 21b. For example, the hypervisor 22 allocates the storage resource of the memory 21a and the arithmetic resource of the processor 21b to the virtual machine 23, and operates the virtual machine 23 on the physical machine 20. For example, the virtual machine 23 communicates with a client terminal (not shown) operated by the user via the network 40, and supports a user's work by a predetermined software function (for example, a Web server function). I will provide a. For example, the user is charged a usage fee according to the usage status of the virtual machine 23 (resource amount, usage time, etc. of the virtual machine 23).

記憶装置30は、情報処理装置10および物理マシン20の処理に用いられるデータを記憶するストレージである。記憶装置30は、物理マシン20に内蔵されてもよい。
情報処理装置10は、記憶部11および処理部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、HDDやフラッシュメモリなどの不揮発性記憶装置でもよい。処理部12は、CPU、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。処理部12はプログラムを実行するプロセッサでもよい。「プロセッサ」には、複数のプロセッサの集合(マルチプロセッサ)も含まれ得る。
The storage device 30 is a storage that stores data used for processing of the information processing device 10 and the physical machine 20. The storage device 30 may be built in the physical machine 20.
The information processing device 10 has a storage unit 11 and a processing unit 12. The storage unit 11 may be a volatile storage device such as a RAM (Random Access Memory) or a non-volatile storage device such as an HDD or a flash memory. The processing unit 12 may include a CPU, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), and the like. The processing unit 12 may be a processor that executes a program. A "processor" may also include a set of multiple processors (multiprocessors).

記憶部11は、性能の異なる複数の仮想マシンの対応関係を示す情報を記憶する。例えば、記憶部11は、仮想マシン23に対して、仮想マシン23よりも高い性能の仮想マシンのデータや、仮想マシン23よりも低い性能の仮想マシンのデータを示す情報(例えば、各データの格納位置を示す情報)を記憶する。 The storage unit 11 stores information indicating the correspondence between a plurality of virtual machines having different performances. For example, the storage unit 11 stores information (for example, storage of each data) indicating to the virtual machine 23 the data of the virtual machine having higher performance than the virtual machine 23 and the data of the virtual machine having lower performance than the virtual machine 23. Information indicating the position) is stored.

処理部12は、性能の異なる複数の仮想マシンに対応する複数のイメージデータを記憶装置30に配置する命令を物理マシン20に送信する。ここで、イメージデータは、仮想マシンをシャットダウンして記憶装置30に退避させた状態のデータであり、仮想マシンに含まれるソフトウェアの情報に加え、仮想マシンに割り当てられたリソース量に関連する情報を含み得る。イメージデータは、仮想マシンの退避イメージや退避データなどと呼ばれてもよい。 The processing unit 12 transmits to the physical machine 20 an instruction for arranging a plurality of image data corresponding to a plurality of virtual machines having different performances in the storage device 30. Here, the image data is data in a state where the virtual machine is shut down and saved in the storage device 30, and in addition to the information of the software included in the virtual machine, the information related to the amount of resources allocated to the virtual machine is displayed. Can include. The image data may be called a saved image or saved data of a virtual machine.

ここで、以下では、「仮想マシン」をVM(Virtual Machine)と略記することがある。また、「仮想マシンのイメージデータ」を、VMデータと略記することがある。物理マシン20は、処理部12の命令に応じて、性能の異なる複数の仮想マシンの複数のVMデータを記憶装置30に格納する。 Here, in the following, "virtual machine" may be abbreviated as VM (Virtual Machine). Further, "virtual machine image data" may be abbreviated as VM data. The physical machine 20 stores a plurality of VM data of a plurality of virtual machines having different performances in the storage device 30 in response to an instruction from the processing unit 12.

例えば、記憶装置30には、VMデータ31,32,33が格納される。VMデータ31,32,33は、あるOSやアプリケーションなどのソフトウェアを含む1つの仮想マシンイメージから、異なる性能を指定することで作成される。仮想マシンの性能は、メモリ21aやプロセッサ21bなどのハードウェア21のリソースの割り当て量によって決まる。例えば、メモリ21aの割り当て量およびプロセッサ21bの割り当て量が多い程、高性能である。また、メモリ21aの割り当て量およびプロセッサ21bの割り当て量が少ない程、低性能である。 For example, the storage device 30 stores VM data 31, 32, 33. VM data 31, 32, 33 are created by specifying different performances from one virtual machine image including software such as a certain OS or application. The performance of the virtual machine is determined by the amount of resources allocated to the hardware 21 such as the memory 21a and the processor 21b. For example, the larger the allocation amount of the memory 21a and the allocation amount of the processor 21b, the higher the performance. Further, the smaller the allocated amount of the memory 21a and the allocated amount of the processor 21b, the lower the performance.

例えば、VMデータ31は、VMデータ31,32,33の中では最も高性能な仮想マシンのデータである。VMデータ32は、VMデータ31,32,33の中での中間の性能の仮想マシンのデータである。VMデータ33は、VMデータ31,32,33の中では最も低性能な仮想マシンのデータである。中間の性能であることを「M(Medium)」と表記する。中間の性能よりも高性能であることを「L(Large)」と表記する。中間の性能よりも低性能であることを「S(Small)」と表記する。 For example, the VM data 31 is the data of the highest performance virtual machine among the VM data 31, 32, 33. The VM data 32 is data of a virtual machine having intermediate performance among the VM data 31, 32, 33. The VM data 33 is the data of the virtual machine having the lowest performance among the VM data 31, 32, 33. Intermediate performance is referred to as "M (Medium)". Higher performance than intermediate performance is referred to as "L (Large)". The fact that the performance is lower than the intermediate performance is referred to as "S (Small)".

例えば、処理部12は、ユーザによる性能「M」の仮想マシン23の配備指示を受け付けた場合に、性能「L」、「M」、「S」のVMデータ31,32,33を、物理マシン20により記憶装置30に格納させる。性能「M」に対する性能「L」での割り当てリソース量や、性能「M」に対する性能「S」での割り当てリソース量の情報は、記憶部11に予め格納される。処理部12は、物理マシン20によりVMデータ32をメモリ21aにロードさせ、物理マシン20上で、性能「M」の仮想マシン23を実行させる。処理部12は、VMデータ31,32,33の記憶装置30への配置や仮想マシン23の起動完了の結果通知を物理マシン20から受け付けて、性能の異なる複数の仮想マシンの対応関係を示す情報を生成し、記憶部11に格納する。 For example, when the processing unit 12 receives the user's instruction to deploy the virtual machine 23 having the performance "M", the processing unit 12 inputs the VM data 31, 32, 33 of the performances "L", "M", and "S" to the physical machine. 20 stores the data in the storage device 30. Information on the amount of resources allocated in the performance "L" with respect to the performance "M" and the amount of resources allocated in the performance "S" with respect to the performance "M" is stored in advance in the storage unit 11. The processing unit 12 loads the VM data 32 into the memory 21a by the physical machine 20, and executes the virtual machine 23 having the performance “M” on the physical machine 20. The processing unit 12 receives from the physical machine 20 a notification of the result of the arrangement of the VM data 31, 32, 33 in the storage device 30 and the completion of starting the virtual machine 23, and information indicating the correspondence relationship between a plurality of virtual machines having different performances. Is generated and stored in the storage unit 11.

処理部12は、物理マシン20で稼働中の第1の仮想マシンから取得される負荷を監視する。処理部12は、第1の仮想マシンの負荷が第1の閾値を超えると、第1の仮想マシンよりも高性能な第2の仮想マシンのイメージデータを、記憶装置30からメモリ21aにロードして、第2の仮想マシンを準備状態とする命令を物理マシン20に送信する。 The processing unit 12 monitors the load acquired from the first virtual machine running on the physical machine 20. When the load of the first virtual machine exceeds the first threshold value, the processing unit 12 loads the image data of the second virtual machine, which has higher performance than that of the first virtual machine, from the storage device 30 into the memory 21a. Then, an instruction to prepare the second virtual machine is transmitted to the physical machine 20.

例えば、処理部12は、所定の時間間隔で、仮想マシン23から負荷を取得する。負荷は、例えば、仮想マシン23によるプロセッサ使用率である。負荷は、プロセッサ使用率に代えて、あるいは、プロセッサ使用率と併せて、メモリ使用率などの他の指標で表されてもよい。 For example, the processing unit 12 acquires a load from the virtual machine 23 at predetermined time intervals. The load is, for example, the processor utilization by the virtual machine 23. The load may be expressed in other indicators, such as memory usage, in place of or in conjunction with processor usage.

処理部12は、仮想マシン23の負荷が第1の閾値を超えると、VMデータ31を、記憶装置30からメモリ21aにロードして、仮想マシン23よりも高性能な仮想マシンを準備状態とする命令を、物理マシン20に送信する。準備状態とは、該当の仮想マシンを起動可能な状態(一時停止となった状態)とすることである。物理マシン20は、当該命令に基づいて、VMデータ31をメモリ21aにロードし、VMデータ31に対応する仮想マシン(仮想マシン24)を起動可能な状態とする。 When the load of the virtual machine 23 exceeds the first threshold value, the processing unit 12 loads the VM data 31 from the storage device 30 into the memory 21a, and prepares a virtual machine having higher performance than the virtual machine 23. The instruction is transmitted to the physical machine 20. The ready state is to put the corresponding virtual machine into a bootable state (paused state). Based on the instruction, the physical machine 20 loads the VM data 31 into the memory 21a so that the virtual machine (virtual machine 24) corresponding to the VM data 31 can be started.

処理部12は、第1の仮想マシンの負荷の監視を継続する。処理部12は、第1の仮想マシンの負荷が第1の閾値よりも高い第2の閾値を超えると、第1の仮想マシンを第2の仮想マシンに切り替える命令を物理マシン20に送信する。 The processing unit 12 continues to monitor the load of the first virtual machine. When the load of the first virtual machine exceeds the second threshold value higher than the first threshold value, the processing unit 12 transmits an instruction to switch the first virtual machine to the second virtual machine to the physical machine 20.

例えば、処理部12は、仮想マシン23の負荷が第2の閾値を超えると、仮想マシン23を仮想マシン24に切り替える命令を、物理マシン20に送信する。物理マシン20は、当該命令に基づいて、メモリ21aにロードしたVMデータ31により、仮想マシン24を起動させる。物理マシン20は、仮想マシン23を仮想マシン24に切り替える。具体的には、物理マシン20は、仮想マシン24を起動し、ユーザに対するWebサーバ機能などの所定のサービスの提供元を、仮想マシン23から仮想マシン24に切り替える。 For example, when the load of the virtual machine 23 exceeds the second threshold value, the processing unit 12 transmits an instruction to switch the virtual machine 23 to the virtual machine 24 to the physical machine 20. Based on the instruction, the physical machine 20 starts the virtual machine 24 by the VM data 31 loaded in the memory 21a. The physical machine 20 switches the virtual machine 23 to the virtual machine 24. Specifically, the physical machine 20 starts the virtual machine 24 and switches the provider of a predetermined service such as the Web server function to the user from the virtual machine 23 to the virtual machine 24.

物理マシン20は、例えば、負荷分散部を有する。負荷分散部は、仮想マシン23に割り振られていたクライアント端末からのリクエストを、仮想マシン24に割り振るように変更することで、ユーザに対するサービス提供を止めずに、仮想マシンの切り替えを行える。 The physical machine 20 has, for example, a load balancer. By changing the request from the client terminal assigned to the virtual machine 23 so as to allocate it to the virtual machine 24, the load balancing unit can switch the virtual machines without stopping the service provision to the user.

情報処理システム1によれば、性能の異なる複数の仮想マシンの複数のイメージデータが記憶装置30に格納される。情報処理システム1(物理マシン20)で稼働中の第1の仮想マシンの負荷が監視される。第1の仮想マシンの負荷が第1の閾値を超えると、第1の仮想マシンよりも高性能な第2の仮想マシンのイメージデータが、記憶装置30からメモリ21aにロードされて第2の仮想マシンが準備状態とされる。第1の仮想マシンの負荷が第1の閾値よりも高い第2の閾値を超えると、第1の仮想マシンが第2の仮想マシンに切り替えられる。 According to the information processing system 1, a plurality of image data of a plurality of virtual machines having different performances are stored in the storage device 30. The load of the first virtual machine running in the information processing system 1 (physical machine 20) is monitored. When the load of the first virtual machine exceeds the first threshold value, the image data of the second virtual machine having higher performance than that of the first virtual machine is loaded from the storage device 30 into the memory 21a, and the second virtual machine is loaded. The machine is ready. When the load of the first virtual machine exceeds the second threshold value higher than the first threshold value, the first virtual machine is switched to the second virtual machine.

これにより、リソースの使用量を抑えて、仮想マシンの迅速な切り替えを可能にする。
具体的には、情報処理装置10は、通常時(仮想マシン23が比較的低負荷の場合)には仮想マシン23を稼働させ、仮想マシン23の負荷が第1の閾値よりも高まると、仮想マシン24をメモリ21aにロードさせて準備状態とさせる。このため、通常時において、仮想マシン24をメモリ21aにロードさせずに済み、メモリ21aの使用量を抑えられる。その結果、ユーザに対するメモリ21aの利用に伴う課金を抑えられる。
This reduces resource usage and enables rapid switching of virtual machines.
Specifically, the information processing device 10 operates the virtual machine 23 in a normal state (when the virtual machine 23 has a relatively low load), and when the load of the virtual machine 23 becomes higher than the first threshold value, the virtual machine 23 is virtual. The machine 24 is loaded into the memory 21a to prepare it. Therefore, in the normal state, it is not necessary to load the virtual machine 24 into the memory 21a, and the amount of the memory 21a used can be suppressed. As a result, it is possible to suppress the charge associated with the use of the memory 21a for the user.

更に、仮想マシン24が準備状態となっている間は、仮想マシン24が起動しておらず、プロセッサ21bを使用していない。したがって、仮想マシン24の準備状態では、ユーザに対するプロセッサ21bの利用に伴う課金を抑えられる。 Further, while the virtual machine 24 is in the ready state, the virtual machine 24 is not started and the processor 21b is not used. Therefore, in the prepared state of the virtual machine 24, the charge associated with the use of the processor 21b to the user can be suppressed.

しかも、VMデータ31は、メモリ21aに既にロードされているので、仮想マシン23の負荷が第2の閾値を超えた場合に、物理マシン20は、仮想マシン24を迅速に起動して、仮想マシン23から仮想マシン24への切り替えを行うことができる。 Moreover, since the VM data 31 has already been loaded into the memory 21a, when the load of the virtual machine 23 exceeds the second threshold value, the physical machine 20 quickly starts the virtual machine 24, and the virtual machine It is possible to switch from 23 to the virtual machine 24.

こうして、リソースの使用量を抑えて、仮想マシンの迅速な切り替えを可能にすることができる。また、リソースの使用量を抑えることで、ユーザに対する課金額を抑えることができる。また、負荷が高まっていると推定される適切なタイミングで高性能な仮想マシンへの切り替えを行うことができ、仮想マシンで行われる処理の遅延を抑えられる。 In this way, resource usage can be reduced and virtual machines can be switched quickly. In addition, by reducing the amount of resources used, it is possible to reduce the amount charged to the user. In addition, it is possible to switch to a high-performance virtual machine at an appropriate timing when it is estimated that the load is increasing, and it is possible to suppress the delay in the processing performed by the virtual machine.

なお、切り替え後には、物理マシン20は、仮想マシン23を停止させ、例えば、所定時間の経過後にVMデータ32をメモリ21aから記憶装置30に退避させてもよい。これにより、仮想マシン23によるリソースの使用量を一層抑えられる。 After switching, the physical machine 20 may stop the virtual machine 23 and, for example, save the VM data 32 from the memory 21a to the storage device 30 after a predetermined time has elapsed. As a result, the amount of resources used by the virtual machine 23 can be further reduced.

また、処理部12は、仮想マシン23の負荷が第1の閾値を継続して超えた時間が第1の時間に達した場合に仮想マシン24を準備状態にする命令を物理マシン20に送信してもよい。そして、仮想マシン23の負荷が第2の閾値を継続して超えた時間が第2の時間に達した場合に仮想マシン23を仮想マシン24に切り替える命令を物理マシン20に送信してもよい。これにより、仮想マシン23の負荷が高まる傾向にあることを適切に検出して、仮想マシン24を起動準備できる。また、仮想マシン23が高負荷状態にあることを適切に検出して、仮想マシン23から仮想マシン24への切り替えを行える。 Further, the processing unit 12 transmits an instruction to prepare the virtual machine 24 to the physical machine 20 when the time when the load of the virtual machine 23 continuously exceeds the first threshold reaches the first time. You may. Then, when the time when the load of the virtual machine 23 continuously exceeds the second threshold value reaches the second time, an instruction to switch the virtual machine 23 to the virtual machine 24 may be transmitted to the physical machine 20. As a result, it is possible to appropriately detect that the load on the virtual machine 23 tends to increase and prepare to start the virtual machine 24. Further, it is possible to appropriately detect that the virtual machine 23 is in a high load state and switch from the virtual machine 23 to the virtual machine 24.

また、処理部12は、仮想マシン24を準備状態にする命令を送信した後、仮想マシン23から仮想マシン24への切り替えが行われずに所定時間が経過すると、仮想マシン24のイメージデータをメモリ21aから削除する命令を物理マシン20に送信してもよい。これにより、仮想マシン23が比較的高い負荷状態にならず、仮想マシン24への切り替えが不要と判断される場合に、メモリ21aの使用量を抑えられる。 Further, after the processing unit 12 transmits a command to prepare the virtual machine 24, if a predetermined time elapses without switching from the virtual machine 23 to the virtual machine 24, the image data of the virtual machine 24 is stored in the memory 21a. An instruction to delete from may be sent to the physical machine 20. As a result, when it is determined that the virtual machine 23 does not become a relatively high load state and switching to the virtual machine 24 is unnecessary, the usage amount of the memory 21a can be suppressed.

更に、処理部12は、仮想マシン23の負荷が第1の閾値よりも低い第3の閾値より低下すると、VMデータ33をメモリ21aにロードして、仮想マシン23よりも低性能な仮想マシンを準備状態とするように、物理マシン20に指示してもよい。そして、処理部12は、仮想マシン23の負荷が第3の閾値よりも低い第4の閾値より低下すると、仮想マシン23を低性能の仮想マシンに切り替えるように物理マシン20に指示してもよい。物理マシン20は、当該指示に応じて、メモリ21aにロードされたVMデータ33に基づいて、低性能の仮想マシンを起動し、仮想マシン23から低性能の仮想マシンへの切り替えを行う。これにより、リソースの使用量を一層抑えながら、仮想マシンの迅速な切り替えを可能にできる。また、リソースの使用量を抑えることで、ユーザに対する課金額を一層抑えることができる。 Further, when the load of the virtual machine 23 drops below the third threshold value lower than the first threshold value, the processing unit 12 loads the VM data 33 into the memory 21a to generate a virtual machine having lower performance than the virtual machine 23. You may instruct the physical machine 20 to be ready. Then, when the load of the virtual machine 23 drops below the fourth threshold value, which is lower than the third threshold value, the processing unit 12 may instruct the physical machine 20 to switch the virtual machine 23 to a low-performance virtual machine. .. In response to the instruction, the physical machine 20 starts a low-performance virtual machine based on the VM data 33 loaded in the memory 21a, and switches from the virtual machine 23 to the low-performance virtual machine. This makes it possible to switch virtual machines quickly while further reducing resource usage. In addition, by reducing the amount of resources used, the amount charged to the user can be further reduced.

また、処理部12は、仮想マシン23とは性能の異なる他の仮想マシン(例えば、仮想マシン23)が記憶装置30に退避されてから準備状態に変更されずに所定期間が経過すると、当該他の仮想マシンのイメージデータを記憶装置30から削除する命令を物理マシン20に送信してもよい。これにより、仮想マシン23の負荷状態が比較的安定していると推定される場合に、記憶装置30の使用量を抑えることができる。記憶装置30の使用量を抑えることで、ユーザに対する課金額を一層抑えることができる。 Further, when a predetermined period elapses without changing to the ready state after another virtual machine (for example, the virtual machine 23) having a performance different from that of the virtual machine 23 is saved in the storage device 30, the processing unit 12 causes the other virtual machine. An instruction to delete the image data of the virtual machine of the above from the storage device 30 may be transmitted to the physical machine 20. As a result, when it is estimated that the load state of the virtual machine 23 is relatively stable, the amount of the storage device 30 used can be suppressed. By reducing the amount of storage device 30 used, the amount charged to the user can be further reduced.

[第2の実施の形態]
次に、第2の実施の形態を説明する。
図2は、第2の実施の形態の情報処理システムの例を示す図である。
[Second Embodiment]
Next, a second embodiment will be described.
FIG. 2 is a diagram showing an example of the information processing system of the second embodiment.

第2の実施の形態の情報処理システムは、管理サーバ100およびVMホスト200,300,…を有する。第2の実施の形態の情報処理システムは、VMホスト200,300,…で実行される仮想マシンをクライアント50により利用可能にする。管理サーバ100およびVMホスト200,300,…は、ネットワーク60に接続される。ネットワーク60は、ネットワーク70に接続されている。クライアント50は、ネットワーク70に接続されている。例えば、ネットワーク60は、LAN(Local Area Network)である。例えば、ネットワーク70は、WAN(Wide Area Network)やインターネットなどである。 The information processing system of the second embodiment has a management server 100 and VM hosts 200, 300, .... The information processing system of the second embodiment makes the virtual machine executed by the VM hosts 200, 300, ... Available to the client 50. The management server 100 and the VM hosts 200, 300, ... Are connected to the network 60. The network 60 is connected to the network 70. The client 50 is connected to the network 70. For example, the network 60 is a LAN (Local Area Network). For example, the network 70 is a WAN (Wide Area Network), the Internet, or the like.

管理サーバ100は、VMホスト200,300,…で動作する仮想マシンの運用管理を行うサーバコンピュータである。
VMホスト200,300,…は、仮想マシンを実行するサーバコンピュータである。VMホスト200,300,…のそれぞれは、ハイパーバイザを実行し、ハイパーバイザの機能により、VMホスト200,300,…のそれぞれが備えるCPUやRAMのリソースを仮想マシンに割り当てる。
The management server 100 is a server computer that manages the operation of virtual machines operating on VM hosts 200, 300, ....
The VM hosts 200, 300, ... Are server computers that execute virtual machines. Each of the VM hosts 200, 300, ... Executes a hypervisor, and the functions of the hypervisor allocate the CPU and RAM resources of each of the VM hosts 200, 300, ... To the virtual machine.

クライアント50は、ユーザにより操作されるクライアントコンピュータである。クライアント50は、例えば、Webブラウザとして機能し、Webブラウザにより、VMホスト200,300,…上の仮想マシンが提供するWebサービスにアクセスする。 The client 50 is a client computer operated by a user. The client 50 functions as, for example, a Web browser, and accesses the Web service provided by the virtual machine on the VM hosts 200, 300, ... By the Web browser.

第2の実施の形態の情報処理システムでは、IaaSを提供する。すなわち、第2の実施の形態の情報処理システムは、ネットワーク経由で、コンピュータシステムのリソースを使用する権利をユーザに貸し出し、リソースの使用量や使用時間などの使用状況に応じてユーザへ課金(従量課金)を行う。 The information processing system of the second embodiment provides IaaS. That is, the information processing system of the second embodiment lends the right to use the resources of the computer system to the user via the network, and charges the user according to the usage status such as the usage amount and usage time of the resource (metered amount). Billing).

図3は、管理サーバのハードウェア例を示すブロック図である。
管理サーバ100は、CPU101、RAM102、HDD103、画像信号処理部104、入力信号処理部105、媒体リーダ106およびNIC107を有する。これらの各ハードウェアは、管理サーバ100のバスに接続される。なお、CPU101は、第1の実施の形態の処理部12に対応する。RAM102またはHDD103は、第1の実施の形態の記憶部11に対応する。
FIG. 3 is a block diagram showing a hardware example of the management server.
The management server 100 includes a CPU 101, a RAM 102, an HDD 103, an image signal processing unit 104, an input signal processing unit 105, a medium reader 106, and a NIC 107. Each of these hardware is connected to the bus of the management server 100. The CPU 101 corresponds to the processing unit 12 of the first embodiment. The RAM 102 or the HDD 103 corresponds to the storage unit 11 of the first embodiment.

CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。なお、CPU101は複数のプロセッサコアを含んでもよい。また、管理サーバ100は複数のプロセッサを有してもよい。以下で説明する処理は複数のプロセッサまたはプロセッサコアを用いて並列に実行されてもよい。また、複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。 The CPU 101 is a processor that executes a program instruction. The CPU 101 loads at least a part of the programs and data stored in the HDD 103 into the RAM 102 and executes the program. The CPU 101 may include a plurality of processor cores. Further, the management server 100 may have a plurality of processors. The processes described below may be performed in parallel using multiple processors or processor cores. Also, a set of multiple processors may be referred to as a "multiprocessor" or simply a "processor".

RAM102は、CPU101が実行するプログラムやCPU101が演算に用いるデータを一時的に記憶する揮発性の半導体メモリである。なお、管理サーバ100は、RAM以外の種類のメモリを備えてもよく、複数個のメモリを備えてもよい。 The RAM 102 is a volatile semiconductor memory that temporarily stores a program executed by the CPU 101 and data used by the CPU 101 for calculation. The management server 100 may include a type of memory other than RAM, or may include a plurality of memories.

HDD103は、OSやミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性の記憶装置である。なお、管理サーバ100は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の記憶装置を備えてもよく、複数の不揮発性の記憶装置を備えてもよい。 The HDD 103 is a non-volatile storage device that stores software programs such as an OS, middleware, and application software, and data. The management server 100 may be provided with other types of storage devices such as a flash memory and an SSD (Solid State Drive), or may be provided with a plurality of non-volatile storage devices.

画像信号処理部104は、CPU101からの命令に従って、管理サーバ100に接続されたディスプレイ111に画像を出力する。ディスプレイ111としては、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、プラズマディスプレイ、有機EL(OEL:Organic Electro-Luminescence)ディスプレイなど、任意の種類のディスプレイを用いることができる。 The image signal processing unit 104 outputs an image to the display 111 connected to the management server 100 in accordance with a command from the CPU 101. As the display 111, any kind of display such as a CRT (Cathode Ray Tube) display, a liquid crystal display (LCD: Liquid Crystal Display), a plasma display, and an organic EL (OEL: Organic Electro-Luminescence) display can be used.

入力信号処理部105は、管理サーバ100に接続された入力デバイス112から入力信号を取得し、CPU101に出力する。入力デバイス112としては、マウス・タッチパネル・タッチパッド・トラックボールなどのポインティングデバイス、キーボード、リモートコントローラ、ボタンスイッチなどを用いることができる。また、管理サーバ100に、複数の種類の入力デバイスが接続されていてもよい。 The input signal processing unit 105 acquires an input signal from the input device 112 connected to the management server 100 and outputs the input signal to the CPU 101. As the input device 112, a pointing device such as a mouse, a touch panel, a touch pad, or a trackball, a keyboard, a remote controller, a button switch, or the like can be used. Further, a plurality of types of input devices may be connected to the management server 100.

媒体リーダ106は、記録媒体113に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体113として、例えば、磁気ディスク、光ディスク、光磁気ディスク(MO:Magneto-Optical disk)、半導体メモリなどを使用できる。磁気ディスクには、フレキシブルディスク(FD:Flexible Disk)やHDDが含まれる。光ディスクには、CD(Compact Disc)やDVD(Digital Versatile Disc)が含まれる。 The medium reader 106 is a reading device that reads programs and data recorded on the recording medium 113. As the recording medium 113, for example, a magnetic disk, an optical disk, a magneto-optical disk (MO), a semiconductor memory, or the like can be used. The magnetic disk includes a flexible disk (FD) and an HDD. Optical discs include CDs (Compact Discs) and DVDs (Digital Versatile Discs).

媒体リーダ106は、例えば、記録媒体113から読み取ったプログラムやデータを、RAM102やHDD103などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、CPU101によって実行される。なお、記録媒体113は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体113やHDD103を、コンピュータ読み取り可能な記録媒体と言うことがある。 The medium reader 106 copies, for example, a program or data read from the recording medium 113 to another recording medium such as the RAM 102 or the HDD 103. The read program is executed by, for example, the CPU 101. The recording medium 113 may be a portable recording medium and may be used for distribution of programs and data. Further, the recording medium 113 and the HDD 103 may be referred to as a computer-readable recording medium.

NIC107は、ネットワーク60に接続され、ネットワーク60を介して他のコンピュータと通信を行うインタフェースである。NIC107は、例えば、スイッチやルータなどの通信装置とケーブルで接続される。 The NIC 107 is an interface that is connected to the network 60 and communicates with another computer via the network 60. The NIC 107 is connected to a communication device such as a switch or a router by a cable.

なお、VMホスト200,300,…やクライアント50も管理サーバ100と同様のハードウェアにより実現される。
図4は、管理サーバの機能例を示す図である。
The VM hosts 200, 300, ... And the client 50 are also realized by the same hardware as the management server 100.
FIG. 4 is a diagram showing a functional example of the management server.

管理サーバ100は、記憶部120、VM配備部130、負荷計算部140、VM切り替え処理部150、VM状態管理部160およびVM削除部170を有する。記憶部120は、RAM102またはHDD103の記憶領域により実現される。VM配備部130、負荷計算部140、VM切り替え処理部150、VM状態管理部160およびVM削除部170は、例えば、RAM102に記憶されたプログラムをCPU101が実行することで実現される。 The management server 100 includes a storage unit 120, a VM deployment unit 130, a load calculation unit 140, a VM switching processing unit 150, a VM state management unit 160, and a VM deletion unit 170. The storage unit 120 is realized by the storage area of the RAM 102 or the HDD 103. The VM deployment unit 130, the load calculation unit 140, the VM switching processing unit 150, the VM state management unit 160, and the VM deletion unit 170 are realized, for example, by the CPU 101 executing the program stored in the RAM 102.

記憶部120は、仮想マシンの動作状況を管理するための管理テーブルを記憶する。
VM配備部130は、VMホスト200,300,…に対する仮想マシンの配備の指示を行う。VM配備部130は、ユーザにより指定された性能の仮想マシンを配備する場合に、指定された性能よりも高性能の仮想マシンと、指定された性能よりも低性能の仮想マシンとを退避状態で配備するVM配備命令を、VMホスト200,300,…に送信する。
The storage unit 120 stores a management table for managing the operating status of the virtual machine.
The VM deployment unit 130 instructs the VM hosts 200, 300, ... To deploy the virtual machine. When deploying a virtual machine with a performance specified by a user, the VM deployment unit 130 saves a virtual machine having a performance higher than the specified performance and a virtual machine having a performance lower than the specified performance in a saved state. The VM deployment command to be deployed is transmitted to the VM hosts 200, 300, ....

ここで、仮想マシンの性能は、例えば、仮想マシンに対するCPUやRAMの割り当て量により決まる。仮想マシンの性能は、フレーバーと呼ばれることがある。例えば、VMホスト200,300,…は、1つの仮想マシンイメージから、性能の異なる複数の仮想マシンを配備することができる。 Here, the performance of the virtual machine is determined, for example, by the amount of CPU or RAM allocated to the virtual machine. The performance of a virtual machine is sometimes referred to as flavor. For example, the VM hosts 200, 300, ... Can deploy a plurality of virtual machines having different performances from one virtual machine image.

ユーザによって配備指示された仮想マシンの割り当てリソース量に対し、1段階だけ高性能な仮想マシンへの割り当てリソース量を示す情報、および、1段階だけ低性能な仮想マシンへの割り当てリソース量を示す情報は、記憶部120に予め格納される。例えば、当該割り当てリソース量は、ユーザによる指定されたリソース量に対する差分の情報として予め与えられる。例えば、差分の情報では、CPUの割り当て量の差分が、CPUの個数やクロック数などにより表され、RAMの割り当て量の差分が、RAMのサイズなどにより表される。VM配備部130は、記憶部120に記憶された当該情報に基づいて、ユーザにより配備指示された仮想マシンに対し、当該仮想マシンの性能よりも1段階だけ高性能な仮想マシン、および、1段階だけ低性能な仮想マシンへの割り当てリソース量を決定する。 Information indicating the amount of resources allocated to a high-performance virtual machine by one stage and information indicating the amount of resources allocated to a low-performance virtual machine by one stage with respect to the amount of resources allocated to the virtual machine instructed by the user. Is stored in the storage unit 120 in advance. For example, the allocated resource amount is given in advance as information on the difference with respect to the resource amount specified by the user. For example, in the difference information, the difference in the CPU allocation amount is represented by the number of CPUs, the number of clocks, and the like, and the difference in the RAM allocation amount is represented by the RAM size and the like. Based on the information stored in the storage unit 120, the VM deployment unit 130 is a virtual machine having one step higher performance than the performance of the virtual machine and one step higher than the performance of the virtual machine for the virtual machine instructed to be deployed by the user. Only determine the amount of resources allocated to low-performance virtual machines.

負荷計算部140は、VMホスト200,300,…で動作する仮想マシンから当該仮想マシンの負荷を示す負荷情報を定期的に取得し、負荷情報に基づいて仮想マシンの負荷を計算する。仮想マシンの負荷は、例えば、仮想マシンに割り当てられたCPUに対する、当該仮想マシンのCPU使用率である。ただし、仮想マシンの負荷は、CPU使用率に加えて、または、CPU使用率に代えて、仮想マシンによるRAM使用率、仮想マシンへのログイン人数、仮想マシンによるディスクアクセス数や仮想マシンによる通信トラフィック量などにより評価されてもよい。例えば、CPU使用率およびRAM使用率などの複数の指標を用いて仮想マシンの負荷を評価する場合、負荷計算部140は、各指標を正規化し、正規化した各指標の平均を求めることで、仮想マシンの負荷を計算することが考えられる。 The load calculation unit 140 periodically acquires load information indicating the load of the virtual machine from the virtual machines operating on the VM hosts 200, 300, ..., And calculates the load of the virtual machine based on the load information. The load of the virtual machine is, for example, the CPU usage rate of the virtual machine with respect to the CPU assigned to the virtual machine. However, the load on the virtual machine is in addition to the CPU usage rate, or instead of the CPU usage rate, the RAM usage rate by the virtual machine, the number of people logged in to the virtual machine, the number of disk accesses by the virtual machine, and the communication traffic by the virtual machine. It may be evaluated by the amount or the like. For example, when evaluating the load of a virtual machine using a plurality of indexes such as CPU usage rate and RAM usage rate, the load calculation unit 140 normalizes each index and obtains the average of each normalized index. It is conceivable to calculate the load on the virtual machine.

VM切り替え処理部150は、負荷計算部140により取得された仮想マシンの負荷に基づいて、現在の性能の仮想マシンから異なる性能の仮想マシンへ切り替えるVM切り替え命令を、VMホスト200,300,…に送信する。 The VM switching processing unit 150 issues a VM switching instruction for switching from a virtual machine having the current performance to a virtual machine having a different performance to the VM hosts 200, 300, ... Based on the load of the virtual machine acquired by the load calculation unit 140. Send.

VM状態管理部160は、仮想マシンの状態をVMホスト200,300,…から取得し、記憶部120に記憶された管理テーブルに記録する。
VM削除部170は、VM切り替え処理部150により、所定期間以上、切り替えが行われなかった仮想マシンを特定し、特定した仮想マシンに対する切り替え先候補の仮想マシンを削除するVM削除命令を、VMホスト200,300,…に送信する。
The VM state management unit 160 acquires the state of the virtual machine from the VM hosts 200, 300, ..., And records it in the management table stored in the storage unit 120.
The VM deletion unit 170 uses the VM switching processing unit 150 to specify a virtual machine that has not been switched for a predetermined period of time or longer, and issues a VM deletion instruction for deleting the switching destination candidate virtual machine for the specified virtual machine to the VM host. Send to 200, 300, ....

図5は、VMホストの機能例を示す図である。
VMホスト200は、VM配備実行部210、負荷情報通知部220、VM切り替え実行部230、VM状態通知部240およびVM削除実行部250を有する。VM配備実行部210、負荷情報通知部220、VM切り替え実行部230、VM状態通知部240およびVM削除実行部250は、例えば、VMホスト200のプロセッサがVMホスト200のRAMに記憶されたプログラムを実行することで実現される。
FIG. 5 is a diagram showing a functional example of the VM host.
The VM host 200 has a VM deployment execution unit 210, a load information notification unit 220, a VM switching execution unit 230, a VM status notification unit 240, and a VM deletion execution unit 250. In the VM deployment execution unit 210, the load information notification unit 220, the VM switching execution unit 230, the VM status notification unit 240, and the VM deletion execution unit 250, for example, the processor of the VM host 200 stores a program stored in the RAM of the VM host 200. It is realized by executing it.

VM配備実行部210は、VM配備部130からVM配備命令を受け付け、VMホスト200上に仮想マシンを配備する。仮想マシンの配備は、ある仮想マシンイメージに対して、割り当てるリソース量(すなわち、性能)を指定することで行われる。前述のように、VM配備実行部210は、ある性能の仮想マシンを配備する場合に、当該仮想マシンよりも高性能な仮想マシンと、低性能な仮想マシンとを配備する。高性能な仮想マシンと低性能な仮想マシンとは、例えば、VMホスト200が備えるHDDやSSDなどの補助記憶装置、または、ネットワーク60に接続された外部ストレージなどに退避された状態(退避状態)とされる。退避状態の仮想マシンに対して、VMホスト200のCPUやRAMは使用されない。 The VM deployment execution unit 210 receives a VM deployment command from the VM deployment unit 130, and deploys the virtual machine on the VM host 200. Virtual machine deployment is performed by specifying the amount of resources to be allocated (that is, performance) for a virtual machine image. As described above, when deploying a virtual machine having a certain performance, the VM deployment execution unit 210 deploys a virtual machine having a higher performance than the virtual machine and a virtual machine having a lower performance. The high-performance virtual machine and the low-performance virtual machine are, for example, in a state of being saved in an auxiliary storage device such as an HDD or SSD provided in the VM host 200, or an external storage connected to the network 60 (save state). It is said that. The CPU and RAM of the VM host 200 are not used for the virtual machine in the saved state.

負荷情報通知部220は、VMホスト200で稼働している仮想マシンの負荷を示す負荷情報を定期的に取得し、負荷計算部140に送信する。
VM切り替え実行部230は、VM切り替え処理部150からVM切り替え命令を受け付け、VM切り替え命令に基づいて、VM切り替えを実行する。VM切り替え実行部230の機能は、例えば、VMホスト200が有する負荷分散機能により実現される。
The load information notification unit 220 periodically acquires load information indicating the load of the virtual machine running on the VM host 200, and transmits it to the load calculation unit 140.
The VM switching execution unit 230 receives a VM switching command from the VM switching processing unit 150, and executes VM switching based on the VM switching command. The function of the VM switching execution unit 230 is realized by, for example, the load balancing function of the VM host 200.

VM状態通知部240は、VM切り替え実行部230によるVM切り替えに応じて、VMホスト200で管理される仮想マシンの状態を取得し、取得した仮想マシンの状態をVM状態管理部160に送信する。 The VM status notification unit 240 acquires the status of the virtual machine managed by the VM host 200 in response to the VM switching by the VM switching execution unit 230, and transmits the acquired virtual machine status to the VM status management unit 160.

VM削除実行部250は、VM削除部170からVM削除命令を受け付け、VM削除命令に基づいて、VMホスト200で管理される仮想マシンを削除する。
なお、VMホスト300を含む他のVMホストも、VMホスト200と同様の機能を有する。
The VM deletion execution unit 250 receives a VM deletion command from the VM deletion unit 170, and deletes the virtual machine managed by the VM host 200 based on the VM deletion command.
Other VM hosts including the VM host 300 also have the same functions as the VM host 200.

図6は、VMホストのVM配備例を示す図である。
VMホスト200は、ハードウェア200hを有する。ハードウェア200hは、CPU201、RAM202およびHDD203を含む。VMホスト200は、HDD203に代えて、または、HDD203と合わせて、SSDなどの他の種類の記憶装置を有してもよい。また、ハードウェア200hは、仮想マシンの動作に用いられるNICなどの他のハードウェアも含む(図示を省略している)。
FIG. 6 is a diagram showing an example of VM deployment of a VM host.
The VM host 200 has hardware 200h. The hardware 200h includes a CPU 201, a RAM 202, and an HDD 203. The VM host 200 may have other types of storage devices such as SSDs in place of or in combination with HDD 203. The hardware 200h also includes other hardware such as a NIC used for operating a virtual machine (not shown).

VMホスト200は、ハイパーバイザ260を有する。ハイパーバイザ260は、CPU201、RAM202およびHDD203のリソースを仮想マシンに割り当て、VMホスト200上で仮想マシンを動作させる。 The VM host 200 has a hypervisor 260. The hypervisor 260 allocates the resources of the CPU 201, RAM 202, and HDD 203 to the virtual machine, and operates the virtual machine on the VM host 200.

VMホスト200は、例えば、仮想マシン261,262,263,…,270および負荷分散部280を有する。仮想マシン261,262,263は、例えば、Webサーバ機能を提供する。仮想マシン270は、例えば、APサーバ機能を提供し、仮想マシン261,262,263の何れかから受信する処理要求に応じた処理を実行する。負荷分散部280は、複数の仮想マシンにリクエストを分散させる機能を有する。ここでは、負荷分散部280は、VM切り替え処理に用いられる。負荷分散部280は、仮想マシンにより実現されてもよい。 The VM host 200 has, for example, virtual machines 261,262,263, ..., 270 and a load balancer 280. The virtual machines 261,262,263 provide, for example, a Web server function. The virtual machine 270 provides, for example, an AP server function and executes processing according to a processing request received from any of the virtual machines 261, 262, and 263. The load balancing unit 280 has a function of distributing requests to a plurality of virtual machines. Here, the load balancing unit 280 is used for the VM switching process. The load balancing unit 280 may be realized by a virtual machine.

仮想マシン261,262,263は、共通の仮想マシンイメージから起動された仮想マシンのインスタンスである。ただし、仮想マシン261,262,263は、性能(フレーバー)が互いに異なる。仮想マシン261は、仮想マシン261,262,263の中で、最も高い性能である。仮想マシン262は、仮想マシン261,262,263の中で、中間の性能である。仮想マシン263は、仮想マシン261,262,263の中で、最も低い性能である。 Virtual machines 261,262,263 are instances of virtual machines launched from a common virtual machine image. However, the virtual machines 261,262,263 have different performances (flavors) from each other. The virtual machine 261 has the highest performance among the virtual machines 261,262,263. The virtual machine 262 has an intermediate performance among the virtual machines 261,262,263. The virtual machine 263 has the lowest performance among the virtual machines 261,262,263.

仮想マシン261の識別名は「VM1-L」である。仮想マシン262の識別名は「VM1-M」である。仮想マシン263の識別名は「VM1-S」である。仮想マシン270の識別名は「VM2」である。 The distinguished name of the virtual machine 261 is "VM1-L". The distinguished name of the virtual machine 262 is "VM1-M". The distinguished name of the virtual machine 263 is "VM1-S". The distinguished name of the virtual machine 270 is "VM2".

通常運用時では、中間の性能の仮想マシン262が稼働し、ユーザに利用される。稼働状態は、「Active」と記される。通常運用時では、仮想マシン261,263は、HDD203または外部ストレージへ退避された退避状態とされる。退避状態は、「Shelved」と記される。退避状態では、該当の仮想マシン(例えば、仮想マシン261,263)がシャットダウンされて、当該仮想マシンのVMデータが、HDD203または外部ストレージに格納され、当該VMデータがVMホスト200のRAMから削除される。退避状態は、例えば、Openstack(登録商標)におけるshelveコマンドにより仮想マシンのインスタンスが補助記憶装置に退避された状態でもよい。Shelvedの状態の仮想マシンの再開時には、VMデータをRAMに展開してから起動することになるので、起動に要する時間が比較的長い。 During normal operation, a virtual machine 262 with intermediate performance runs and is used by users. The operating state is described as "Active". During normal operation, the virtual machines 261,263 are in a saved state saved in HDD 203 or external storage. The evacuation state is described as "Shelved". In the saved state, the corresponding virtual machine (for example, virtual machines 261,263) is shut down, the VM data of the virtual machine is stored in the HDD 203 or the external storage, and the VM data is deleted from the RAM of the VM host 200. To. The saved state may be, for example, a state in which an instance of the virtual machine is saved in the auxiliary storage device by the save command in Openstack (registered trademark). When the virtual machine in the Shelved state is restarted, the VM data is expanded in the RAM and then started, so the time required for starting is relatively long.

なお、仮想マシンの状態としては、仮想マシンのイメージデータがVMホスト200のRAMにロードされているが当該仮想マシンが起動していない一時停止の状態もある。一時停止の状態は、「Stopped」と記される。一時停止状態では、該当の仮想マシンは起動しておらず、VMホスト200のCPUは使用されない。一時停止状態は、例えば、Openstackにおけるpauseコマンドにより、仮想マシンの状態がVMホストの主記憶装置に格納されて当該仮想マシンが一時停止された状態でもよい。Stoppedの状態では、仮想マシンのVMデータがRAM上に展開されているが、動作は停止されている。Stoppedの状態の仮想マシンの再開時には、CPUを割り当てれば当該仮想マシンを起動できるので、起動に要する時間が比較的短い(Shelvedの状態から再開するよりも高速に再開できる)。 As the state of the virtual machine, there is also a paused state in which the image data of the virtual machine is loaded in the RAM of the VM host 200, but the virtual machine is not started. The paused state is marked as "Stopped". In the paused state, the corresponding virtual machine is not started and the CPU of the VM host 200 is not used. The paused state may be, for example, a state in which the state of the virtual machine is stored in the main storage device of the VM host and the virtual machine is suspended by the pause command in Openstack. In the Stopped state, the VM data of the virtual machine is expanded on the RAM, but the operation is stopped. When restarting a virtual machine in the Stopped state, the virtual machine can be started by allocating a CPU, so the time required for starting is relatively short (it can be restarted faster than restarting from the Shelved state).

図7は、条件表の例を示す図である。
条件表151は、VM切り替え処理のための条件を示す。VM切り替え処理部150は、仮想マシン262の負荷に基づいて、仮想マシン262を、仮想マシン261または仮想マシン263に切り替えるか否かを判定する。例えば、VM切り替え処理部150は、条件表151で示される条件に基づいて、当該判定を行う。条件表151は、分類、条件名、条件内容および処理区分の項目を含む。
FIG. 7 is a diagram showing an example of a condition table.
The condition table 151 shows the conditions for the VM switching process. The VM switching processing unit 150 determines whether to switch the virtual machine 262 to the virtual machine 261 or the virtual machine 263 based on the load of the virtual machine 262. For example, the VM switching processing unit 150 makes the determination based on the conditions shown in the condition table 151. The condition table 151 includes items of classification, condition name, condition content, and processing category.

分類の項目には、該当の条件が、仮想マシンをダウンサイズするための条件か、または、仮想マシンをアップサイズするための条件かを示す情報が登録される。「ダウンサイズ」は、仮想マシンをダウンサイズする(すなわち、性能を下げる)ための条件であることを示す。「アップサイズ」は、仮想マシンをアップサイズ(すなわち、性能を上げる)ための条件であることを示す。条件名の項目には、条件の名称が登録される。条件内容の項目には、条件の具体的な内容が登録される。処理区分の項目には、該当の条件に応じた処理区分が登録される。処理区分には、「切替準備」および「切替実行」がある。「切替準備」は、退避状態のVMデータをVMホストのRAMにロードし、一時停止状態(Stopped)とすることを示す。「切替実行」は、一時停止状態の仮想マシンにCPUを割り当てて起動させ、既存の仮想マシンから起動後の仮想マシンへ、サービス提供主体を切り替えることを示す。 In the classification item, information indicating whether the corresponding condition is a condition for downsizing the virtual machine or a condition for upsizing the virtual machine is registered. “Downsize” indicates that it is a condition for downsizing (that is, reducing the performance) of the virtual machine. "Upsize" indicates that the condition for upsizing (that is, improving the performance) of the virtual machine. The name of the condition is registered in the item of the condition name. The specific content of the condition is registered in the item of the condition content. In the item of processing category, the processing category corresponding to the corresponding condition is registered. The processing categories include "switching preparation" and "switching execution". "Preparation for switching" indicates that the VM data in the saved state is loaded into the RAM of the VM host and put into the paused state (Stopped). "Switching execution" indicates that a CPU is assigned to a virtual machine in a suspended state and started, and the service provider is switched from the existing virtual machine to the started virtual machine.

条件表151によれば、条件D1,D2,U1,U2がある。
「条件D1」は、仮想マシンの「CPU使用率20%未満が10分以上継続」した場合に、「ダウンサイズ」の「切替準備」の命令をVMホストに送信することを示す。
According to the condition table 151, there are conditions D1, D2, U1 and U2.
"Condition D1" indicates that when the "CPU usage rate of less than 20% continues for 10 minutes or more" of the virtual machine, the command of "preparation for switching" of "downsize" is transmitted to the VM host.

「条件D2」は、仮想マシンの「CPU使用率10%未満が30分以上継続」した場合に、「ダウンサイズ」の「切替実行」の命令をVMホストに送信することを示す。例えば、「条件D2」の条件内容は、「条件D1」が充足されて「切替準備」が行われた直後の時点を基準に判定される。 "Condition D2" indicates that when the "CPU usage rate of less than 10% continues for 30 minutes or more" of the virtual machine, the instruction of "switching execution" of "downsize" is transmitted to the VM host. For example, the condition content of the "condition D2" is determined based on the time immediately after the "condition D1" is satisfied and the "switching preparation" is performed.

「条件U1」は、仮想マシンの「CPU使用率50%超過が10分以上継続」した場合に、「アップサイズ」の「切替準備」の命令をVMホストに送信することを示す。ただし、後述するように、条件U1における「CPU使用率50%」というCPU使用率の閾値は、初期値であり、仮想マシンの負荷状況に応じて可変である。 "Condition U1" indicates that when the "CPU usage rate exceeding 50% continues for 10 minutes or more" of the virtual machine, the command of "upsize" "preparation for switching" is transmitted to the VM host. However, as will be described later, the threshold value of the CPU usage rate of "CPU usage rate 50%" under the condition U1 is an initial value and is variable according to the load status of the virtual machine.

「条件U2」は、仮想マシンの「CPU使用率90%超過が30分以上継続」した場合に、「アップサイズ」の「切替実行」の命令をVMホストに送信することを示す。例えば、「条件U2」の条件内容は、「条件U1」が充足されて「切替準備」が行われた直後の時点を基準に判定される。 "Condition U2" indicates that when the virtual machine "exceeds 90% of the CPU usage rate continues for 30 minutes or more", the instruction of "switching execution" of "upsize" is transmitted to the VM host. For example, the condition content of the "condition U2" is determined based on the time immediately after the "condition U1" is satisfied and the "switching preparation" is performed.

図8は、管理テーブルの例を示す図である。
管理テーブル121は、記憶部120に格納される。管理テーブル121は、VM名、状態、種類、条件D1充足、条件D2充足、条件U1-CPU使用率閾値、条件U1充足、条件U2充足、性能および状態更新日時の項目を含む。
FIG. 8 is a diagram showing an example of a management table.
The management table 121 is stored in the storage unit 120. The management table 121 includes items of VM name, state, type, condition D1 satisfaction, condition D2 satisfaction, condition U1-CPU usage threshold, condition U1 satisfaction, condition U2 satisfaction, performance, and state update date and time.

VM名の項目には、仮想マシンの識別名が登録される。状態の項目には、該当の仮想マシンの状態が登録される。種類の項目には、仮想マシンの種類が登録される。仮想マシンの種類には2種類ある。1つ目の種類は、稼働中の仮想マシンであることを示す「稼働中VM」である。2つ目の種類は、稼働中の仮想マシンに対する切り替え先の候補の仮想マシンであることを示す「切替先VM」である。例えば、稼働中(切り替え元)の仮想マシンと、切り替え先の候補の仮想マシンとは、VM名によって対応付けられる。一例では、VM名に含まれるハイフン記号「-」の左側の部分(例えば、「VM1-M」などの「VM1」の部分)が共通する仮想マシンが、切り替え元および切り替え先の候補の関係にある。なお、以下の説明では、稼働中(切り替え元)の仮想マシンを「切替元VM」と称することがある。また、切り替え先の候補の仮想マシンを「切替先VM」と称することがある。 The identification name of the virtual machine is registered in the item of VM name. The status of the corresponding virtual machine is registered in the status item. The type of virtual machine is registered in the type item. There are two types of virtual machines. The first type is "running VM", which indicates that it is a running virtual machine. The second type is a "switching destination VM" indicating that the virtual machine is a candidate virtual machine to be switched to for a running virtual machine. For example, a running (switching source) virtual machine and a switching destination candidate virtual machine are associated with each other by a VM name. In one example, a virtual machine that shares the left part of the hyphen symbol "-" (for example, the part of "VM1" such as "VM1-M") included in the VM name is in the relationship between the switching source and switching destination candidates. be. In the following description, an operating (switching source) virtual machine may be referred to as a "switching source VM". In addition, a virtual machine that is a candidate for a switching destination may be referred to as a "switching destination VM".

条件D1充足の項目には、条件D1が充足されたか否かを示すフラグが登録される。条件D2充足の項目には、条件D2が充足されたか否かを示すフラグが登録される。条件U1-CPU使用率閾値の項目には、条件U1におけるCPU使用率閾値の、該当の仮想マシンに対する現在の設定値が登録される。条件U1充足の項目には、条件U1が充足されたか否かを示すフラグが登録される。条件U2充足の項目には、条件U2が充足されたか否かを示すフラグが登録される。性能の項目には、該当の仮想マシンの性能を示す情報が登録される。図8の例では、所定の性能を「M」と表し、性能「M」で示される性能よりも低い性能を「S」と表し、性能「M」で示される性能よりも高い性能を「L」と表している。状態更新日時の項目には、該当の仮想マシンについて、状態を更新した最終の日時が登録される。 In the item of condition D1 satisfaction, a flag indicating whether or not condition D1 is satisfied is registered. In the item of condition D2 satisfaction, a flag indicating whether or not condition D2 is satisfied is registered. In the item of the condition U1-CPU usage threshold, the current setting value of the CPU usage threshold in the condition U1 for the corresponding virtual machine is registered. In the item of condition U1 satisfaction, a flag indicating whether or not condition U1 is satisfied is registered. In the item of condition U2 satisfaction, a flag indicating whether or not condition U2 is satisfied is registered. Information indicating the performance of the corresponding virtual machine is registered in the performance item. In the example of FIG. 8, a predetermined performance is represented by “M”, a performance lower than the performance indicated by the performance “M” is represented by “S”, and a performance higher than the performance indicated by the performance “M” is represented by “L”. ". In the status update date and time item, the last date and time when the status was updated is registered for the corresponding virtual machine.

なお、状態「Active」(種類「稼働中VM」)以外の仮想マシンについては、条件D1充足、条件D2充足、条件U1-CPU使用率閾値、条件U1充足、条件U2充足の項目は、「Null」となる。状態「Active」の仮想マシンの条件D1充足、条件D2充足、条件U1充足、条件U2充足の項目の初期値は、「False」である。状態「Active」の仮想マシンの条件U1-CPU使用率閾値の項目の初期値は、「50%」である。 For virtual machines other than the state "Active" (type "Operating VM"), the items of condition D1 satisfaction, condition D2 satisfaction, condition U1-CPU usage threshold, condition U1 satisfaction, and condition U2 satisfaction are "Null". ". The initial value of the condition D1 satisfaction, condition D2 satisfaction, condition U1 satisfaction, and condition U2 satisfaction of the virtual machine in the state "Active" is "False". The initial value of the item of the condition U1-CPU usage threshold of the virtual machine in the state "Active" is "50%".

例えば、管理テーブル121には、VM名が「VM1-M」、状態が「Active」、種類が「稼働中VM」、条件D1充足が「False」、条件D2充足が「False」、条件U1-CPU使用率閾値が「50%」、条件U1充足が「True」、条件U2充足が「False」、性能が「M」、状態更新日時が「2018-06-02 14:30」というレコードが登録されている。このレコードは、仮想マシン262が稼働状態(Active)であり、性能が「M」であること、最終の状態更新日時が2018年6月2日14時30分であることを示す。また、仮想マシン262に対して、条件D1,D2が充足されていないこと、条件U1のCPU使用率閾値が50%であり、条件U1が充足されており、条件U2が充足されていないことを示す。 For example, in the management table 121, the VM name is "VM1-M", the state is "Active", the type is "Operating VM", the condition D1 is satisfied "False", the condition D2 is satisfied "False", and the condition U1- Records that the CPU usage threshold is "50%", the condition U1 is satisfied is "True", the condition U2 is satisfied is "False", the performance is "M", and the status update date and time is "2018-06-02 14:30" are registered. Has been done. This record indicates that the virtual machine 262 is in the active state, the performance is "M", and the last state update date and time is 14:30 on June 2, 2018. Further, for the virtual machine 262, the conditions D1 and D2 are not satisfied, the CPU usage threshold of the condition U1 is 50%, the condition U1 is satisfied, and the condition U2 is not satisfied. show.

また、管理テーブル121には、VM名が「VM1-S」、状態が「Shelved」、種類が「切替先VM」、性能が「S」、状態更新日時が「2018-05-31 15:00」というレコードが登録されている。このレコードは、仮想マシン263が退避状態(Shelved)で、仮想マシン262の切り替え先の候補であること、性能が「S」であり、最終の状態更新日が2018年5月31日15時00分であることを示す。 Further, in the management table 121, the VM name is "VM1-S", the status is "Shelved", the type is "switching destination VM", the performance is "S", and the status update date and time is "2018-05-31 15:00". The record is registered. This record shows that the virtual machine 263 is in the saved state (Shelved), is a candidate for switching destination of the virtual machine 262, the performance is "S", and the final state update date is 15:00 on May 31, 2018. Indicates that it is a minute.

また、管理テーブル121には、VM名が「VM1-L」、状態が「Shelved」、種類が「切替先VM」、性能が「L」、状態更新日時が「2018-06-01 15:30」というレコードが登録されている。このレコードは、仮想マシン261が退避状態(Shelved)で、仮想マシン262の切り替え先の候補であること、性能が「L」であり、最終の状態更新日が2018年6月1日15時30分であることを示す。 Further, in the management table 121, the VM name is "VM1-L", the status is "Shelved", the type is "switching destination VM", the performance is "L", and the status update date and time is "2018-06-01 15:30". The record is registered. In this record, the virtual machine 261 is in the saved state (Shelved), it is a candidate for the switching destination of the virtual machine 262, the performance is "L", and the final state update date is 15:30 on June 1, 2018. Indicates that it is a minute.

管理テーブル121では、仮想マシン262と、仮想マシン262の切り替え先の候補である仮想マシン261,263が登録されている例を示したが、他の仮想マシンが存在する場合も管理テーブル121と同様のレコードが登録される。 In the management table 121, an example in which the virtual machine 262 and the virtual machines 261,263, which are candidates for switching the virtual machine 262, are registered is shown, but the same as in the management table 121 when other virtual machines exist. Record is registered.

また、管理サーバ100は、VM名に対して、当該VM名の仮想マシンが配備されているVMホストを示す情報を保持しており、VM名に基づいて、当該VM名の仮想マシンが配備されているVMホストを特定することができる。また、管理サーバ100は、VM名に対して、当該VM名に対応するVMデータの格納場所を示すパスを保持し、VM名に基づいて、準備状態(一時停止状態)とする仮想マシンのVMデータを、VMホストに対して指定してもよい。 Further, the management server 100 holds information indicating the VM host on which the virtual machine of the VM name is deployed with respect to the VM name, and the virtual machine of the VM name is deployed based on the VM name. You can identify the VM host you are using. Further, the management server 100 holds a path indicating the storage location of the VM data corresponding to the VM name with respect to the VM name, and sets the VM in the ready state (paused state) based on the VM name. Data may be specified for the VM host.

次に、管理サーバ100の命令に基づく、VMホスト200による仮想マシンの切り替え例について説明する。VMホスト200に着目して説明するが、他のVMホストについても同様の制御である。まず、仮想マシンのダウンサイズを行う切り替え例を説明する。 Next, an example of switching the virtual machine by the VM host 200 based on the instruction of the management server 100 will be described. Although the description will be focused on the VM host 200, the same control is applied to other VM hosts. First, a switching example for downsizing a virtual machine will be described.

図9は、ダウンサイズの準備例を示す図である。
VMホスト200では、仮想マシン261,262,263が配備されている。仮想マシン262は、稼働状態(Active)である。仮想マシン261,263は、退避状態(Shelved)である。
FIG. 9 is a diagram showing an example of preparation for downsizing.
Virtual machines 261,262,263 are deployed in the VM host 200. The virtual machine 262 is in an active state. The virtual machines 261,263 are in the evacuated state (Shelved).

VM切り替え処理部150は、負荷計算部140により計算される仮想マシン262の負荷を定期的に監視する。
VM切り替え処理部150は、仮想マシン262に対して条件D1が充足されたことを検出する。すると、VM切り替え処理部150は、仮想マシン263を、退避状態(Shelved)から、一時停止状態(Stopped)に変更するVM状態変更命令をVMホスト200に送信する。
The VM switching processing unit 150 periodically monitors the load of the virtual machine 262 calculated by the load calculation unit 140.
The VM switching processing unit 150 detects that the condition D1 is satisfied for the virtual machine 262. Then, the VM switching processing unit 150 transmits a VM state change command for changing the virtual machine 263 from the saved state (Shelved) to the paused state (Stopped) to the VM host 200.

VM切り替え実行部230は、VM状態変更命令を受け付けると、VM状態変更命令に基づいて、仮想マシン263のVMデータを、VMホスト200のRAMにロードし、仮想マシン263を一時停止状態(Stopped)に変更する。VM状態通知部240は、仮想マシン263が一時停止状態に変更されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン263が一時停止状態になったことを管理テーブル121に登録する。なお、状態の更新とともに、状態更新日時も更新される(以下、同様)。こうして、ダウンサイズの準備(切替準備)が完了する。 When the VM switching execution unit 230 receives the VM state change instruction, the VM switching execution unit 230 loads the VM data of the virtual machine 263 into the RAM of the VM host 200 based on the VM state change instruction, and puts the virtual machine 263 in the suspended state (Stopped). Change to. The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 263 has been changed to the paused state. Based on the notification, the VM state management unit 160 registers in the management table 121 that the virtual machine 263 has been suspended. In addition, the status update date and time is also updated along with the status update (the same applies hereinafter). In this way, the preparation for downsizing (preparation for switching) is completed.

VM切り替え処理部150は、仮想マシン262に対して条件D1が充足されたことを管理テーブル121に登録し、引き続き、仮想マシン262の負荷を監視して、条件D2に基づく判定を行う。 The VM switching processing unit 150 registers in the management table 121 that the condition D1 is satisfied for the virtual machine 262, subsequently monitors the load of the virtual machine 262, and makes a determination based on the condition D2.

図10は、ダウンサイズの中止例および実行例を示す図である。
図10(A)は、ダウンサイズの中止例を示す。VM切り替え処理部150は、仮想マシン262に対し、条件D1が充足された後、条件D2が充足されない場合(条件D1の充足後の30分間継続してCPU使用率が10%未満にならなかった場合)、ダウンサイズを中止すると決定する。この場合、VM切り替え処理部150は、仮想マシン263を、一時停止状態(Stopped)から、退避状態(Shelved)に変更するVM状態変更命令をVMホスト200に送信する。
FIG. 10 is a diagram showing an example of stopping downsizing and an example of executing downsizing.
FIG. 10A shows an example of discontinuing downsizing. In the VM switching processing unit 150, when the condition D1 is satisfied and the condition D2 is not satisfied for the virtual machine 262 (the CPU usage rate does not become less than 10% continuously for 30 minutes after the condition D1 is satisfied). If), decide to stop downsizing. In this case, the VM switching processing unit 150 transmits a VM state change command for changing the virtual machine 263 from the suspended state (Stopped) to the saved state (Shelved) to the VM host 200.

VM切り替え実行部230は、VM状態変更命令を受け付けると、VM状態変更命令に基づいて、仮想マシン263のVMデータを、HDD203または外部ストレージに退避させ、VMホスト200のRAMから削除する。これにより、仮想マシン263が一時停止状態(Stopped)から、退避状態(Shelved)に変更される。VM状態通知部240は、仮想マシン263が退避状態に変更されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン263が退避状態になったことを管理テーブル121に登録する。こうして、ダウンサイズが中止される。 When the VM switching execution unit 230 receives the VM state change instruction, the VM data of the virtual machine 263 is saved in the HDD 203 or the external storage based on the VM state change instruction, and is deleted from the RAM of the VM host 200. As a result, the virtual machine 263 is changed from the suspended state (Stopped) to the saved state (Shelved). The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 263 has been changed to the saved state. Based on the notification, the VM state management unit 160 registers in the management table 121 that the virtual machine 263 has been in the saved state. In this way, downsizing is stopped.

図10(B)は、ダウンサイズの実行例を示す。VM切り替え処理部150は、仮想マシン262に対し、条件D1が充足された後、条件D2が充足されたことを検出すると、ダウンサイズを実行すると決定する。この場合、VM切り替え処理部150は、仮想マシン263を、一時停止状態(Stopped)から、稼働状態(Active)に変更し、仮想マシン263に切り替えるVM切り替え命令をVMホスト200に送信する。 FIG. 10B shows an execution example of downsizing. The VM switching processing unit 150 determines that the virtual machine 262 is downsized when it detects that the condition D2 is satisfied after the condition D1 is satisfied. In this case, the VM switching processing unit 150 changes the virtual machine 263 from the suspended state (Stopped) to the operating state (Active), and transmits a VM switching command for switching to the virtual machine 263 to the VM host 200.

VM切り替え実行部230は、VM切り替え命令を受け付けると、VM切り替え命令に基づいて、仮想マシン263を、一時停止状態(Stopped)から稼働状態(Active)に変更する。すなわち、VM切り替え実行部230は、仮想マシン263にCPUを割り当て、VMホスト200のRAMにロード済のVMデータから、仮想マシン263を起動する。そして、VM切り替え実行部230は、負荷分散部280を制御して、仮想マシン262に振り分けられていたリクエストを、仮想マシン263に振り分けるようにする。 When the VM switching execution unit 230 receives the VM switching instruction, the VM switching execution unit 230 changes the virtual machine 263 from the suspended state (Stopped) to the operating state (Active) based on the VM switching instruction. That is, the VM switching execution unit 230 allocates a CPU to the virtual machine 263 and starts the virtual machine 263 from the VM data loaded in the RAM of the VM host 200. Then, the VM switching execution unit 230 controls the load balancing unit 280 to distribute the requests distributed to the virtual machine 262 to the virtual machine 263.

また、VM切り替え実行部230は、仮想マシン262を、稼働状態(Active)から一時停止状態(Stopped)に変更する。VM状態通知部240は、仮想マシン263が稼働状態に変更されたこと、および、仮想マシン262が一時停止状態に変更されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン263が稼働状態になったこと、および、仮想マシン262が一時停止状態になったことを、管理テーブル121に登録する。 Further, the VM switching execution unit 230 changes the virtual machine 262 from the operating state (Active) to the paused state (Stopped). The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 263 has been changed to the operating state and that the virtual machine 262 has been changed to the suspended state. Based on the notification, the VM state management unit 160 registers in the management table 121 that the virtual machine 263 has been in the operating state and that the virtual machine 262 has been in the suspended state.

更に、VM配備部130は、仮想マシン263よりも低い性能の仮想マシン264を退避状態で配備するVM配備命令、および、仮想マシン261を削除するVM削除命令をVMホスト200に送信する。 Further, the VM deployment unit 130 transmits a VM deployment command for deploying the virtual machine 264 having a performance lower than that of the virtual machine 263 in the saved state and a VM deletion command for deleting the virtual machine 261 to the VM host 200.

VM配備実行部210は、当該VM配備命令およびVM削除命令を受け付けると、これらの命令に基づいて、仮想マシン261を削除する(仮想マシン261のVMデータをHDD203または外部ストレージから削除する)。また、VM配備実行部210は、仮想マシン264を退避状態(Shelved)で配備する。例えば、仮想マシン264のVM名は「VM1-SS」である。 When the VM deployment execution unit 210 receives the VM deployment instruction and the VM deletion instruction, it deletes the virtual machine 261 based on these instructions (deletes the VM data of the virtual machine 261 from the HDD 203 or the external storage). In addition, the VM deployment execution unit 210 deploys the virtual machine 264 in a saved state (Shelved). For example, the VM name of the virtual machine 264 is "VM1-SS".

VM状態通知部240は、仮想マシン261が削除されたこと、および、仮想マシン264が退避状態で配備されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン261のレコードを管理テーブル121から削除し、仮想マシン264に関するレコードを管理テーブル121に追加する。 The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 261 has been deleted and that the virtual machine 264 has been deployed in the saved state. Based on the notification, the VM state management unit 160 deletes the record of the virtual machine 261 from the management table 121 and adds the record related to the virtual machine 264 to the management table 121.

次に、仮想マシンのアップサイズを行う切り替え例を説明する。
図11は、アップサイズの準備例を示す図である。
VMホスト200では、仮想マシン261,262,263が配備されている。仮想マシン262は、稼働状態(Active)である。仮想マシン261,263は、退避状態(Shelved)である。
Next, a switching example for upsizing the virtual machine will be described.
FIG. 11 is a diagram showing an example of preparation for upsizing.
Virtual machines 261,262,263 are deployed in the VM host 200. The virtual machine 262 is in an active state. The virtual machines 261,263 are in the evacuated state (Shelved).

VM切り替え処理部150は、負荷計算部140により計算される仮想マシン262の負荷を定期的に監視する。
VM切り替え処理部150は、仮想マシン262に対して条件U1が充足されたことを検出する。すると、VM切り替え処理部150は、仮想マシン261を、退避状態(Shelved)から、一時停止状態(Stopped)に変更するVM状態変更命令をVMホスト200に送信する。
The VM switching processing unit 150 periodically monitors the load of the virtual machine 262 calculated by the load calculation unit 140.
The VM switching processing unit 150 detects that the condition U1 is satisfied for the virtual machine 262. Then, the VM switching processing unit 150 transmits a VM state change command for changing the virtual machine 261 from the saved state (Shelved) to the paused state (Stopped) to the VM host 200.

VM切り替え実行部230は、VM状態変更命令を受け付けると、VM状態変更命令に基づいて、仮想マシン261のVMデータを、VMホスト200のRAMにロードし、仮想マシン261を一時停止状態(Stopped)に変更する。VM状態通知部240は、仮想マシン261が一時停止状態に変更されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン261が一時停止状態になったことを管理テーブル121に登録する。こうして、アップサイズの準備(切替準備)が完了する。 When the VM switching execution unit 230 receives the VM state change instruction, the VM switching execution unit 230 loads the VM data of the virtual machine 261 into the RAM of the VM host 200 based on the VM state change instruction, and puts the virtual machine 261 in a suspended state (Stopped). Change to. The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 261 has been changed to the paused state. Based on the notification, the VM state management unit 160 registers in the management table 121 that the virtual machine 261 has been suspended. In this way, the preparation for upsizing (preparation for switching) is completed.

VM切り替え処理部150は、仮想マシン262に対して条件U1が充足されたことを管理テーブル121に登録し、引き続き、仮想マシン262の負荷を監視して、条件U2に基づく判定を行う。 The VM switching processing unit 150 registers in the management table 121 that the condition U1 is satisfied for the virtual machine 262, subsequently monitors the load of the virtual machine 262, and makes a determination based on the condition U2.

図12は、アップサイズの中止例および実行例を示す図である。
図12(A)は、アップサイズの中止例を示す。VM切り替え処理部150は、仮想マシン262に対し、条件U1が充足された後、条件U2が充足されない場合(条件U1の充足後の30分間継続してCPU使用率が90%を超過しなかった場合)、アップサイズを中止すると決定する。この場合、VM切り替え処理部150は、仮想マシン261を、一時停止状態(Stopped)から、退避状態(Shelved)に変更するVM状態変更命令をVMホスト200に送信する。
FIG. 12 is a diagram showing an example of stopping the upsizing and an example of executing the upsizing.
FIG. 12A shows an example of discontinuing the upsizing. In the VM switching processing unit 150, when the condition U1 is satisfied and the condition U2 is not satisfied for the virtual machine 262 (the CPU usage rate does not exceed 90% continuously for 30 minutes after the condition U1 is satisfied). If), decide to stop upsizing. In this case, the VM switching processing unit 150 transmits a VM state change command for changing the virtual machine 261 from the suspended state (Stopped) to the saved state (Shelved) to the VM host 200.

VM配備実行部210は、VM状態変更命令を受け付けると、VM状態変更命令に基づいて、仮想マシン261のVMデータを、HDD203または外部ストレージに退避させ、VMホスト200のRAMから削除する。これにより、仮想マシン261が一時停止状態(Stopped)から、退避状態(Shelved)に変更される。VM状態通知部240は、仮想マシン261が退避状態に変更されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン261が退避状態になったことを管理テーブル121に登録する。こうして、アップサイズが中止される。 When the VM deployment execution unit 210 receives the VM state change command, the VM deployment execution unit 210 saves the VM data of the virtual machine 261 in the HDD 203 or the external storage based on the VM state change command, and deletes the VM data from the RAM of the VM host 200. As a result, the virtual machine 261 is changed from the suspended state (Stopped) to the saved state (Shelved). The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 261 has been changed to the saved state. Based on the notification, the VM state management unit 160 registers in the management table 121 that the virtual machine 261 has been in the saved state. In this way, the upsizing is stopped.

なお、この場合、VM切り替え処理部150は、仮想マシン262に対して、条件U1のCPU使用率閾値を、所定量(例えば、10%程度)だけ増加させ、増加後のCPU使用率閾値を管理テーブル121に登録する。 In this case, the VM switching processing unit 150 increases the CPU usage threshold of the condition U1 by a predetermined amount (for example, about 10%) with respect to the virtual machine 262, and manages the increased CPU usage threshold. Register in table 121.

図12(B)は、アップサイズの実行例を示す。VM切り替え処理部150は、仮想マシン262に対し、条件U1が充足された後、条件U2が充足されたことを検出すると、アップサイズを実行すると決定する。この場合、VM切り替え処理部150は、仮想マシン261を、一時停止状態(Stopped)から、稼働状態(Active)に変更し、仮想マシン261に切り替えるVM切り替え命令をVMホスト200に送信する。 FIG. 12B shows an execution example of upsizing. The VM switching processing unit 150 determines that the virtual machine 262 is upsized when it detects that the condition U2 is satisfied after the condition U1 is satisfied. In this case, the VM switching processing unit 150 changes the virtual machine 261 from the suspended state (Stopped) to the operating state (Active), and transmits a VM switching command for switching to the virtual machine 261 to the VM host 200.

VM切り替え実行部230は、VM切り替え命令を受け付けると、VM切り替え命令に基づいて、仮想マシン261を、一時停止状態(Stopped)から稼働状態(Active)に変更する。すなわち、VM切り替え実行部230は、仮想マシン261にCPUを割り当て、VMホスト200のRAMにロード済のVMデータから、仮想マシン261を起動する。そして、VM切り替え実行部230は、負荷分散部280を制御して、仮想マシン262に振り分けられていたリクエストを、仮想マシン261に振り分けるようにする。 When the VM switching execution unit 230 receives the VM switching instruction, the VM switching execution unit 230 changes the virtual machine 261 from the suspended state (Stopped) to the operating state (Active) based on the VM switching instruction. That is, the VM switching execution unit 230 allocates a CPU to the virtual machine 261 and starts the virtual machine 261 from the VM data loaded in the RAM of the VM host 200. Then, the VM switching execution unit 230 controls the load balancing unit 280 to distribute the requests distributed to the virtual machine 262 to the virtual machine 261.

また、VM切り替え実行部230は、仮想マシン262を、稼働状態(Active)から一時停止状態(Stopped)に変更する。VM状態通知部240は、仮想マシン261が稼働状態に変更されたこと、および、仮想マシン262が一時停止状態に変更されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン261が稼働状態になったこと、および、仮想マシン262が一時停止状態になったことを、管理テーブル121に登録する。 Further, the VM switching execution unit 230 changes the virtual machine 262 from the operating state (Active) to the paused state (Stopped). The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 261 has been changed to the operating state and that the virtual machine 262 has been changed to the suspended state. Based on the notification, the VM state management unit 160 registers in the management table 121 that the virtual machine 261 has been in the operating state and that the virtual machine 262 has been in the suspended state.

更に、VM配備部130は、仮想マシン261よりも高い性能の仮想マシン265を退避状態で配備するVM配備命令および仮想マシン263を削除するVM削除命令をVMホスト200に送信する。 Further, the VM deployment unit 130 transmits a VM deployment command for deploying the virtual machine 265 having higher performance than the virtual machine 261 in the saved state and a VM deletion command for deleting the virtual machine 263 to the VM host 200.

VM配備実行部210は、VM配備命令およびVM削除命令を受け付けると、これらの命令に基づいて、仮想マシン263を削除する(仮想マシン263のVMデータをHDD203または外部ストレージから削除する)。また、VM配備実行部210は、仮想マシン265を退避状態(Shelved)で配備する。例えば、仮想マシン265のVM名は「VM1-LL」である。 When the VM deployment execution unit 210 receives the VM deployment instruction and the VM deletion instruction, it deletes the virtual machine 263 based on these instructions (deletes the VM data of the virtual machine 263 from the HDD 203 or the external storage). Further, the VM deployment execution unit 210 deploys the virtual machine 265 in a saved state (Shelved). For example, the VM name of the virtual machine 265 is "VM1-LL".

VM状態通知部240は、仮想マシン263が削除されたこと、および、仮想マシン265が退避状態で配備されたことをVM状態管理部160に通知する。VM状態管理部160は、当該通知に基づいて、仮想マシン263のレコードを管理テーブル121から削除し、仮想マシン265に関するレコードを管理テーブル121に追加する。 The VM status notification unit 240 notifies the VM status management unit 160 that the virtual machine 263 has been deleted and that the virtual machine 265 has been deployed in the saved state. Based on the notification, the VM state management unit 160 deletes the record of the virtual machine 263 from the management table 121 and adds the record related to the virtual machine 265 to the management table 121.

次に、管理サーバ100およびVMホスト200,300,…による処理手順を説明する。以下では、VMホスト200に着目して説明するが、他のVMホストについても同様の手順である。 Next, the processing procedure by the management server 100 and the VM hosts 200, 300, ... Will be described. Hereinafter, the description will be focused on the VM host 200, but the procedure is the same for other VM hosts.

図13は、管理サーバの処理例を示すフローチャートである。
(S1)VM配備部130は、ユーザによる仮想マシン262の配備指示を受け付ける。すると、VM配備部130は、仮想マシン262をActiveの状態で配備し、仮想マシンよりも1段階上の性能の仮想マシン261と1段階下の性能の仮想マシン262とをShelvedの状態で配備するVM配備命令をVMホスト200に送信する。VMホスト200は、VM配備命令に基づいて、仮想マシン262をActiveの状態で配備し、仮想マシン261,263をShelvedの状態で配備する。VM状態管理部160は、当該配備が行われた旨の通知をVMホスト200から受け付け、管理テーブル121に、仮想マシン261,262,263のレコードを追加する。
FIG. 13 is a flowchart showing a processing example of the management server.
(S1) The VM deployment unit 130 receives a user's instruction to deploy the virtual machine 262. Then, the VM deployment unit 130 deploys the virtual machine 262 in the active state, and deploys the virtual machine 261 having the performance one step higher than the virtual machine and the virtual machine 262 having the performance one step lower than the virtual machine in the shelved state. A VM deployment command is sent to the VM host 200. The VM host 200 deploys the virtual machine 262 in the Active state and deploys the virtual machines 261,263 in the Shelved state based on the VM deployment instruction. The VM state management unit 160 receives a notification from the VM host 200 that the deployment has been performed, and adds records of virtual machines 261,262,263 to the management table 121.

(S2)負荷計算部140は、VMホスト200から仮想マシン262の負荷情報を定期的に受信し、負荷情報に基づいて仮想マシン262の負荷を計算する。VM切り替え処理部150は、負荷計算部140により計算された仮想マシン262の負荷状況を監視する。 (S2) The load calculation unit 140 periodically receives the load information of the virtual machine 262 from the VM host 200, and calculates the load of the virtual machine 262 based on the load information. The VM switching processing unit 150 monitors the load status of the virtual machine 262 calculated by the load calculation unit 140.

(S3)VM切り替え処理部150は、仮想マシン262の負荷状況に基づいて、VM切り替え制御を行う。VM切り替え制御の詳細は、後述される。
(S4)VM削除部170は、一定期間VM切り替えが行われない場合に、切替先VMを削除する不要VM削除を行う。不要VM削除の詳細は後述される。そして、処理が終了する。
(S3) The VM switching processing unit 150 performs VM switching control based on the load status of the virtual machine 262. Details of the VM switching control will be described later.
(S4) The VM deletion unit 170 deletes unnecessary VMs that delete the switching destination VM when the VMs are not switched for a certain period of time. Details of deleting unnecessary VMs will be described later. Then, the process ends.

ここで、管理サーバ100は、ステップS2,S3の処理と、ステップS4の処理とを並行して実行し得る。
次に、管理サーバ100およびVMホスト200による仮想マシンのVM切り替え制御の手順を説明する。まず、ダウンサイズのVM切り替え制御の手順を説明する。
Here, the management server 100 can execute the processes of steps S2 and S3 and the processes of steps S4 in parallel.
Next, the procedure of VM switching control of the virtual machine by the management server 100 and the VM host 200 will be described. First, the procedure of downsizing VM switching control will be described.

図14は、VM切り替え制御(ダウンサイズ)の例を示すフローチャートである。
VM切り替え制御(ダウンサイズ)は、ステップS3(ただし、ダウンサイズを行う場合)に相当する。
FIG. 14 is a flowchart showing an example of VM switching control (downsize).
The VM switching control (downsize) corresponds to step S3 (however, when downsizing is performed).

ステップS10の前の時点で、仮想マシン261,262,263がVMホスト200に配備されており、仮想マシン262が稼働状態、仮想マシン261,263が退避状態であるとする。 It is assumed that the virtual machines 261,262,263 are deployed on the VM host 200 at the time before step S10, the virtual machines 262 are in the operating state, and the virtual machines 261,263 are in the evacuated state.

(S10)負荷計算部140は、VMホスト200から仮想マシン262の負荷状態を1分毎に取得する。ただし、負荷状態を取得する周期について、1分は例示であり、他の周期でもよい。負荷計算部140は、仮想マシン262の負荷を計算し、VM切り替え処理部150に提供する。 (S10) The load calculation unit 140 acquires the load state of the virtual machine 262 from the VM host 200 every minute. However, 1 minute is an example of the cycle for acquiring the load state, and other cycles may be used. The load calculation unit 140 calculates the load of the virtual machine 262 and provides it to the VM switching processing unit 150.

(S11)VM切り替え処理部150は、仮想マシン262の負荷が条件D1を充足しているか否かを判定する。仮想マシン262の負荷が条件D1を充足している場合、ステップS14に処理が進む。仮想マシン262の負荷が条件D1を充足していない場合、ステップS12に処理が進む。 (S11) The VM switching processing unit 150 determines whether or not the load of the virtual machine 262 satisfies the condition D1. When the load of the virtual machine 262 satisfies the condition D1, the process proceeds to step S14. If the load of the virtual machine 262 does not satisfy the condition D1, the process proceeds to step S12.

なお、VM切り替え処理部150は、仮想マシン262に対し、管理テーブル121の条件D1充足の項目のフラグにより、仮想マシン262の負荷に対する条件D1の充足状況を管理する。VM切り替え処理部150は、仮想マシン262の負荷が条件D1を充足していない状態から条件D1を充足している状態になったことを検出すると、仮想マシン262に対し、管理テーブル121の条件D1充足を、FalseからTrueに変更する。VM切り替え処理部150は、条件D1の充足後、仮想マシン262の負荷状況が、条件D1を満たさなくなった(CPU使用率が条件D1の閾値を下回った)場合、管理テーブル121の条件D1充足を、TrueからFalseに変更する。 The VM switching processing unit 150 manages the virtual machine 262 to satisfy the condition D1 with respect to the load of the virtual machine 262 by using the flag of the condition D1 satisfying item in the management table 121. When the VM switching processing unit 150 detects that the load of the virtual machine 262 has changed from the state where the condition D1 is not satisfied to the state where the condition D1 is satisfied, the VM switching processing unit 150 tells the virtual machine 262 the condition D1 of the management table 121. Change the sufficiency from False to True. After the condition D1 is satisfied, the VM switching processing unit 150 satisfies the condition D1 of the management table 121 when the load status of the virtual machine 262 does not satisfy the condition D1 (the CPU usage rate falls below the threshold value of the condition D1). , Change from True to False.

(S12)VM切り替え処理部150は、管理テーブル121を参照して、切替先VM(ここでは、仮想マシン263)の状態がShelvedであるか否かを判定する。切替先VMの状態がShelvedである場合、ステップS10に処理が進む。切替先VMの状態がShelvedでない場合、ステップS13に処理が進む。ここで、ステップS12において、切替先VMの状態がShelvedでない場合とは、切替先VMの状態がStoppedである場合である。 (S12) The VM switching processing unit 150 determines whether or not the state of the switching destination VM (here, the virtual machine 263) is Shelved with reference to the management table 121. When the state of the switching destination VM is Shelved, the process proceeds to step S10. If the state of the switching destination VM is not Shelved, the process proceeds to step S13. Here, in step S12, the case where the state of the switching destination VM is not Shelved is the case where the state of the switching destination VM is Stopped.

(S13)VM切り替え処理部150は、切替先VMをStoppedからShelvedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン263がStoppedからShelvedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン263の状態をShelvedに変更し、状態更新日を更新する。そして、ステップS10に処理が進む。 (S13) The VM switching processing unit 150 transmits a VM state change command for changing the switching destination VM from Stopped to Shelved to the VM host 200. In the VM host 200, the virtual machine 263 is changed from Stopped to Shelved based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 263 in the management table 121 to Shelved, and updates the state update date. Then, the process proceeds to step S10.

(S14)VM切り替え処理部150は、管理テーブル121を参照して、切替先VMの状態がStoppedであるか否かを判定する。切替先VMの状態がStoppedである場合、ステップS16に処理が進む。切替先VMの状態がStoppedでない場合、ステップS15に処理が進む。ここで、ステップS14において、切替先VMの状態がStoppedでない場合とは、切替先VMの状態がShelvedである場合である。 (S14) The VM switching processing unit 150 refers to the management table 121 and determines whether or not the state of the switching destination VM is Stopped. When the state of the switching destination VM is Stopped, the process proceeds to step S16. If the state of the switching destination VM is not Stopped, the process proceeds to step S15. Here, in step S14, the case where the state of the switching destination VM is not Stopped is the case where the state of the switching destination VM is Shelved.

(S15)VM切り替え処理部150は、切替先VMをShelvedからStoppedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン263がShelvedからStoppedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン263の状態をStoppedに変更し、状態更新日を更新する。そして、ステップS10に処理が進む。 (S15) The VM switching processing unit 150 transmits a VM state change command for changing the switching destination VM from Shelved to Stopped to the VM host 200. In the VM host 200, the virtual machine 263 is changed from Shelved to Stopped based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 263 in the management table 121 to Stopped, and updates the state update date. Then, the process proceeds to step S10.

(S16)VM切り替え処理部150は、仮想マシン262の負荷が条件D2を充足しているか否かを判定する。仮想マシン262の負荷が条件D2を充足している場合、ステップS19に処理が進む。仮想マシン262の負荷が条件D2を充足していない場合、ステップS17に処理が進む。 (S16) The VM switching processing unit 150 determines whether or not the load of the virtual machine 262 satisfies the condition D2. When the load of the virtual machine 262 satisfies the condition D2, the process proceeds to step S19. If the load of the virtual machine 262 does not satisfy the condition D2, the process proceeds to step S17.

なお、VM切り替え処理部150は、仮想マシン262に対し、管理テーブル121の条件D2充足の項目のフラグにより、仮想マシン262の負荷に対する条件D2の充足状況を管理する。VM切り替え処理部150は、仮想マシン262の負荷が条件D2を充足していない状態から条件D2を充足している状態になったことを検出すると、仮想マシン262に対し、管理テーブル121の条件D2充足を、FalseからTrueに変更する。 The VM switching processing unit 150 manages the virtual machine 262 to satisfy the condition D2 with respect to the load of the virtual machine 262 by using the flag of the condition D2 satisfying item in the management table 121. When the VM switching processing unit 150 detects that the load of the virtual machine 262 has changed from the state where the condition D2 is not satisfied to the state where the condition D2 is satisfied, the VM switching processing unit 150 tells the virtual machine 262 the condition D2 of the management table 121. Change the sufficiency from False to True.

(S17)VM切り替え処理部150は、ステップS15で切替先VMをStoppedに変更した時点から所定時間、VM切り替えが未発生であるか否かを判定する。切替先VMをStoppedに変更した時点から所定時間、VM切り替えが未発生である場合、ステップS18に処理が進む。切替先VMをStoppedに変更した時点から所定時間が経過していない場合は、ステップS10に処理が進む。ここで、所定時間は、例えば、30分(条件D2の監視時間以上の時間とする)である。 (S17) The VM switching processing unit 150 determines whether or not VM switching has not occurred for a predetermined time from the time when the switching destination VM is changed to Stopped in step S15. If the VM switching has not occurred for a predetermined time from the time when the switching destination VM is changed to Stopped, the process proceeds to step S18. If a predetermined time has not elapsed since the switching destination VM was changed to Stopped, the process proceeds to step S10. Here, the predetermined time is, for example, 30 minutes (a time equal to or longer than the monitoring time of the condition D2).

(S18)VM切り替え処理部150は、切替先VMをStoppedからShelvedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン263がStoppedからShelvedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン263の状態をShelvedに変更し、状態更新日を更新する。そして、ステップS10に処理が進む。 (S18) The VM switching processing unit 150 transmits a VM state change command for changing the switching destination VM from Stopped to Shelved to the VM host 200. In the VM host 200, the virtual machine 263 is changed from Stopped to Shelved based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 263 in the management table 121 to Shelved, and updates the state update date. Then, the process proceeds to step S10.

(S19)VM切り替え処理部150は、VM切り替え(ダウンサイズ)を行う。具体的には、VM切り替え処理部150は、切替先VMをStoppedからActiveに変更し、現行のVM(仮想マシン262)から切替先VM(仮想マシン263)に切り替えるVM切り替え命令をVMホスト200に送信する。VMホスト200では、VM切り替え命令に基づいて、仮想マシン263がStoppedからActiveに変更される。そして、負荷分散部280により、クライアント50からのリクエストの振り分け先が、仮想マシン262から仮想マシン263に切り替えられる。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン263の状態をActiveに変更し、状態更新日を更新する。この後、負荷の監視対象の仮想マシンは、切り替え後の仮想マシンとなる。 (S19) The VM switching processing unit 150 performs VM switching (downsize). Specifically, the VM switching processing unit 150 changes the switching destination VM from Stopped to Active, and sends a VM switching instruction to the VM host 200 to switch from the current VM (virtual machine 262) to the switching destination VM (virtual machine 263). Send. In the VM host 200, the virtual machine 263 is changed from Stopped to Active based on the VM switching instruction. Then, the load balancing unit 280 switches the distribution destination of the request from the client 50 from the virtual machine 262 to the virtual machine 263. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 263 in the management table 121 to Active, and updates the state update date. After that, the virtual machine whose load is monitored becomes the virtual machine after switching.

(S20)VM切り替え処理部150は、ダウンサイズ後処理を実行する。ダウンサイズ後処理の詳細は後述される。そして、ステップS10に処理が進む。
図15は、ダウンサイズ後処理の例を示すフローチャートである。
(S20) The VM switching processing unit 150 executes downsize post-processing. Details of downsize post-processing will be described later. Then, the process proceeds to step S10.
FIG. 15 is a flowchart showing an example of downsize post-processing.

ダウンサイズ後処理は、ステップS20に相当する。
(S30)VM切り替え処理部150は、切替元VM(ここでは仮想マシン262)をActiveからStoppedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン262がActiveからStoppedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン262の状態をStoppedに変更し、状態更新日を更新する。
The downsizing post-processing corresponds to step S20.
(S30) The VM switching processing unit 150 transmits a VM state change command for changing the switching source VM (here, the virtual machine 262) from Active to Stopped to the VM host 200. In the VM host 200, the virtual machine 262 is changed from Active to Stopped based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 262 in the management table 121 to Stopped, and updates the state update date.

(S31)VM配備部130は、切替先VM(ここでは仮想マシン263)の1段階下の性能の仮想マシン(仮想マシン264)を退避状態(Shelved)で配備するVM配備命令をVMホスト200に送信する。VMホスト200では、VM配備命令に基づいて、仮想マシン264が退避状態で配備される。また、VM状態管理部160は、当該配備が行われた旨の通知をVMホスト200から受け付け、管理テーブル121に仮想マシン264のレコードを追加する。 (S31) The VM deployment unit 130 issues a VM deployment instruction to the VM host 200 to deploy a virtual machine (virtual machine 264) having a performance one step lower than that of the switching destination VM (here, virtual machine 263) in a saved state (shelved). Send. In the VM host 200, the virtual machine 264 is deployed in the saved state based on the VM deployment instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the deployment has been performed, and adds a record of the virtual machine 264 to the management table 121.

(S32)VM配備部130は、切替元VMの1段階上の性能の仮想マシン(ここでは仮想マシン261)を削除するVM削除命令をVMホスト200に送信する。VMホスト200では、VM削除命令に基づいて、仮想マシン261が削除される。また、VM状態管理部160は、当該削除が行われた旨の通知をVMホスト200から受け付け、管理テーブル121から仮想マシン261のレコードを削除する。 (S32) The VM deployment unit 130 transmits a VM deletion command to the VM host 200 to delete a virtual machine (here, virtual machine 261) having a performance one step higher than that of the switching source VM. In the VM host 200, the virtual machine 261 is deleted based on the VM delete instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the deletion has been performed, and deletes the record of the virtual machine 261 from the management table 121.

次に、仮想マシン262から仮想マシン261へダウンサイズする場合のダウンサイズ後処理の具体例を説明する。
図16は、ダウンサイズ後処理の具体例を示す図である。
Next, a specific example of downsize post-processing in the case of downsizing from the virtual machine 262 to the virtual machine 261 will be described.
FIG. 16 is a diagram showing a specific example of downsize post-processing.

まず、管理サーバ100のVM切り替え制御により、クライアント50からのリクエストの振り分け先が、仮想マシン262から仮想マシン263へ切り替えられる(ステップT10)。このタイミングでは、仮想マシン261はShelvedである。仮想マシン262はActiveである。仮想マシン263はActiveである。 First, the VM switching control of the management server 100 switches the distribution destination of the request from the client 50 from the virtual machine 262 to the virtual machine 263 (step T10). At this timing, the virtual machine 261 is Shelved. The virtual machine 262 is Active. The virtual machine 263 is Active.

次に、仮想マシン262がStoppedに変更される(ステップT11)。仮想マシン263よりも1段階下の性能の仮想マシン264が配備される(ステップT12)。仮想マシン261が削除される(ステップT13)。その結果、稼働中の仮想マシン263に対して、1段階上の性能の仮想マシン262がStoppedで配備され、1段階下の性能の仮想マシン264がShelvedで配備された状態となる(ステップT14)。 Next, the virtual machine 262 is changed to Stopped (step T11). A virtual machine 264 having a performance one step lower than that of the virtual machine 263 is deployed (step T12). The virtual machine 261 is deleted (step T13). As a result, the virtual machine 262 with the performance one step higher is deployed in Stopped with respect to the virtual machine 263 in operation, and the virtual machine 264 with the performance one step lower is deployed in Shelved (step T14). ..

ステップT14の後、管理サーバ100は、仮想マシン263に対して、負荷状況の監視を行い、仮想マシン262に対する手順と同様の手順により、VM切り替え制御を行う。なお、VM切り替え処理部150は、例えば、仮想マシン263をActiveの状態にしてから所定時間(例えば、30分)経過後に、切替元VMである仮想マシン262をShelvedに変更する。これにより、ユーザへの課金を低減する。 After step T14, the management server 100 monitors the load status of the virtual machine 263, and performs VM switching control by the same procedure as the procedure for the virtual machine 262. The VM switching processing unit 150 changes the virtual machine 262, which is the switching source VM, to Shelved, for example, after a predetermined time (for example, 30 minutes) has elapsed after the virtual machine 263 is set to the Active state. This reduces the charge to the user.

次に、アップサイズのVM切り替え制御の手順を説明する。
図17は、VM切り替え制御(アップサイズ)の例を示すフローチャートである。
VM切り替え制御(アップサイズ)は、ステップS3(ただし、アップサイズを行う場合)に相当する。
Next, the procedure for upsizing VM switching control will be described.
FIG. 17 is a flowchart showing an example of VM switching control (upsize).
The VM switching control (upsize) corresponds to step S3 (however, when upsizing is performed).

ステップS40の前の時点で、仮想マシン261,262,263がVMホスト200に配備されており、仮想マシン262が稼働状態、仮想マシン261,263が退避状態であるとする。 It is assumed that the virtual machines 261,262,263 are deployed on the VM host 200 at the time before step S40, the virtual machines 262 are in the operating state, and the virtual machines 261,263 are in the evacuated state.

(S40)負荷計算部140は、VMホスト200から仮想マシン262の負荷状態を1分毎に取得する。ただし、負荷状態を取得する周期について、1分は例示であり、他の周期でもよい。負荷計算部140は、仮想マシン262の負荷を計算し、VM切り替え処理部150に提供する。 (S40) The load calculation unit 140 acquires the load state of the virtual machine 262 from the VM host 200 every minute. However, 1 minute is an example of the cycle for acquiring the load state, and other cycles may be used. The load calculation unit 140 calculates the load of the virtual machine 262 and provides it to the VM switching processing unit 150.

(S41)VM切り替え処理部150は、仮想マシン262の負荷が条件U1を充足しているか否かを判定する。仮想マシン262の負荷が条件U1を充足している場合、ステップS44に処理が進む。仮想マシン262の負荷が条件U1を充足していない場合、ステップS42に処理が進む。 (S41) The VM switching processing unit 150 determines whether or not the load of the virtual machine 262 satisfies the condition U1. When the load of the virtual machine 262 satisfies the condition U1, the process proceeds to step S44. If the load of the virtual machine 262 does not satisfy the condition U1, the process proceeds to step S42.

なお、VM切り替え処理部150は、仮想マシン262に対し、管理テーブル121の条件U1充足の項目のフラグにより、仮想マシン262の負荷に対する条件U1の充足状況を管理する。VM切り替え処理部150は、仮想マシン262の負荷が条件U1を充足していない状態から条件U1を充足している状態になったことを検出すると、仮想マシン262に対し、管理テーブル121の条件U1充足を、FalseからTrueに変更する。VM切り替え処理部150は、条件U1の充足後、仮想マシン262の負荷状況が、条件U1を満たさなくなった(CPU使用率が条件U1の閾値を下回った)場合、管理テーブル121の条件U1充足を、TrueからFalseに変更する。 The VM switching processing unit 150 manages the virtual machine 262 to satisfy the condition U1 with respect to the load of the virtual machine 262 by using the flag of the condition U1 satisfying item in the management table 121. When the VM switching processing unit 150 detects that the load of the virtual machine 262 has changed from the state in which the condition U1 is not satisfied to the state in which the condition U1 is satisfied, the VM switching processing unit 150 tells the virtual machine 262 that the condition U1 in the management table 121 is satisfied. Change the sufficiency from False to True. After the condition U1 is satisfied, the VM switching processing unit 150 satisfies the condition U1 of the management table 121 when the load status of the virtual machine 262 does not satisfy the condition U1 (the CPU usage rate falls below the threshold value of the condition U1). , Change from True to False.

(S42)VM切り替え処理部150は、管理テーブル121を参照して、切替先VM(ここでは、仮想マシン261)の状態がShelvedであるか否かを判定する。切替先VMの状態がShelvedである場合、ステップS40に処理が進む。切替先VMの状態がShelvedでない場合、ステップS43に処理が進む。ここで、ステップS42において、切替先VMの状態がShelvedでない場合とは、切替先VMの状態がStoppedである場合である。 (S42) The VM switching processing unit 150 determines whether or not the state of the switching destination VM (here, the virtual machine 261) is Shelved with reference to the management table 121. When the state of the switching destination VM is Shelved, the process proceeds to step S40. If the state of the switching destination VM is not Shelved, the process proceeds to step S43. Here, in step S42, the case where the state of the switching destination VM is not Shelved is the case where the state of the switching destination VM is Stopped.

(S43)VM切り替え処理部150は、切替先VMをStoppedからShelvedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン261がStoppedからShelvedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン261の状態をShelvedに変更し、状態更新日を更新する。そして、ステップS40に処理が進む。 (S43) The VM switching processing unit 150 transmits a VM state change command for changing the switching destination VM from Stopped to Shelved to the VM host 200. In the VM host 200, the virtual machine 261 is changed from Stopped to Shelved based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 261 in the management table 121 to Shelved, and updates the state update date. Then, the process proceeds to step S40.

(S44)VM切り替え処理部150は、管理テーブル121を参照して、切替先VMの状態がStoppedであるか否かを判定する。切替先VMの状態がStoppedである場合、ステップS46に処理が進む。切替先VMの状態がStoppedでない場合、ステップS45に処理が進む。ここで、ステップS44において、切替先VMの状態がStoppedでない場合とは、切替先VMの状態がShelvedである場合である。 (S44) The VM switching processing unit 150 refers to the management table 121 and determines whether or not the state of the switching destination VM is Stopped. When the state of the switching destination VM is Stopped, the process proceeds to step S46. If the state of the switching destination VM is not Stopped, the process proceeds to step S45. Here, in step S44, the case where the state of the switching destination VM is not Stopped is the case where the state of the switching destination VM is Shelved.

(S45)VM切り替え処理部150は、切替先VMをShelvedからStoppedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン261がShelvedからStoppedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン261の状態をStoppedに変更し、状態更新日を更新する。そして、ステップS40に処理が進む。 (S45) The VM switching processing unit 150 transmits a VM state change command for changing the switching destination VM from Shelved to Stopped to the VM host 200. In the VM host 200, the virtual machine 261 is changed from Shelved to Stopped based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 261 in the management table 121 to Stopped, and updates the state update date. Then, the process proceeds to step S40.

(S46)VM切り替え処理部150は、仮想マシン262の負荷が条件U2を充足しているか否かを判定する。仮想マシン262の負荷が条件U2を充足している場合、ステップS50に処理が進む。仮想マシン262の負荷が条件U2を充足していない場合、ステップS47に処理が進む。 (S46) The VM switching processing unit 150 determines whether or not the load of the virtual machine 262 satisfies the condition U2. When the load of the virtual machine 262 satisfies the condition U2, the process proceeds to step S50. If the load of the virtual machine 262 does not satisfy the condition U2, the process proceeds to step S47.

なお、VM切り替え処理部150は、仮想マシン262に対し、管理テーブル121の条件U2充足の項目のフラグにより、仮想マシン262の負荷に対する条件U2の充足状況を管理する。VM切り替え処理部150は、仮想マシン262の負荷が条件U2を充足していない状態から条件U2を充足している状態になったことを検出すると、仮想マシン262に対し、管理テーブル121の条件U2充足を、FalseからTrueに変更する。 The VM switching processing unit 150 manages the virtual machine 262 to satisfy the condition U2 with respect to the load of the virtual machine 262 by using the flag of the condition U2 satisfying item in the management table 121. When the VM switching processing unit 150 detects that the load of the virtual machine 262 has changed from the state in which the condition U2 is not satisfied to the state in which the condition U2 is satisfied, the VM switching processing unit 150 tells the virtual machine 262 that the condition U2 in the management table 121 is satisfied. Change the sufficiency from False to True.

(S47)VM切り替え処理部150は、ステップS45で切替先VMをStoppedに変更した時点から所定時間、VM切り替えが未発生であるか否かを判定する。切替先VMをStoppedに変更した時点から所定時間、VM切り替えが未発生である場合、ステップS48に処理が進む。切替先VMをStoppedに変更した時点から所定時間が経過していない場合は、ステップS40に処理が進む。ここで、所定時間は、例えば、30分(条件U2の監視時間以上の時間とする)である。 (S47) The VM switching processing unit 150 determines whether or not VM switching has not occurred for a predetermined time from the time when the switching destination VM is changed to Stopped in step S45. If the VM switching has not occurred for a predetermined time from the time when the switching destination VM is changed to Stopped, the process proceeds to step S48. If a predetermined time has not elapsed since the switching destination VM was changed to Stopped, the process proceeds to step S40. Here, the predetermined time is, for example, 30 minutes (a time equal to or longer than the monitoring time of the condition U2).

(S48)VM切り替え処理部150は、切替先VMをStoppedからShelvedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン261がStoppedからShelvedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン261の状態をShelvedに変更し、状態更新日を更新する。 (S48) The VM switching processing unit 150 transmits a VM state change command for changing the switching destination VM from Stopped to Shelved to the VM host 200. In the VM host 200, the virtual machine 261 is changed from Stopped to Shelved based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 261 in the management table 121 to Shelved, and updates the state update date.

(S49)VM状態管理部160は、管理テーブル121における条件U1-CPU使用率閾値を10%増加させる。例えば、VM状態管理部160は、条件U1-CPU使用率閾値に10%を加算してもよいし、条件U1-CPU使用率閾値に1.1を乗じた値としてもよい。なお、条件U1-CPU使用率閾値の増加量について、10%は例示であり、他の増加量としてもよい。そして、ステップS40に処理が進む。 (S49) The VM state management unit 160 increases the condition U1-CPU usage threshold in the management table 121 by 10%. For example, the VM state management unit 160 may add 10% to the condition U1-CPU usage threshold or multiply the condition U1-CPU usage threshold by 1.1. Regarding the increase amount of the condition U1-CPU usage rate threshold value, 10% is an example and may be another increase amount. Then, the process proceeds to step S40.

(S50)VM切り替え処理部150は、VM切り替え(アップサイズ)を行う。具体的には、VM切り替え処理部150は、切替先VMをStoppedからActiveに変更し、現行のVM(仮想マシン262)から切替先VM(仮想マシン261)に切り替えるVM切り替え命令をVMホスト200に送信する。VMホスト200では、VM切り替え命令に基づいて、仮想マシン261がStoppedからActiveに変更される。そして、負荷分散部280により、クライアント50からのリクエストの振り分け先が、仮想マシン262から仮想マシン261に切り替えられる。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン261の状態をActiveに変更し、状態更新日を更新する。この後、負荷の監視対象の仮想マシンは、切り替え後の仮想マシンとなる。 (S50) The VM switching processing unit 150 performs VM switching (upsize). Specifically, the VM switching processing unit 150 changes the switching destination VM from Stopped to Active, and sends a VM switching instruction to the VM host 200 to switch from the current VM (virtual machine 262) to the switching destination VM (virtual machine 261). Send. In the VM host 200, the virtual machine 261 is changed from Stopped to Active based on the VM switching instruction. Then, the load balancing unit 280 switches the distribution destination of the request from the client 50 from the virtual machine 262 to the virtual machine 261. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 261 in the management table 121 to Active, and updates the state update date. After that, the virtual machine whose load is monitored becomes the virtual machine after switching.

(S51)VM切り替え処理部150は、アップサイズ後処理を実行する。アップサイズ後処理の詳細は後述される。そして、ステップS40に処理が進む。
ここで、ステップS49のように、条件U1-CPU使用率閾値を増加させることで、切替先VMが直ちにStoppedに移行されることを抑制する。これにより、リソース(RAM202)の使用量を抑えられる。また、リソースの使用量を抑えることで、ユーザに対する課金額を抑えられる。
(S51) The VM switching processing unit 150 executes upsize post-processing. Details of upsize post-processing will be described later. Then, the process proceeds to step S40.
Here, as in step S49, by increasing the condition U1-CPU usage rate threshold value, it is possible to prevent the switching destination VM from being immediately shifted to Stopped. As a result, the amount of resources (RAM 202) used can be suppressed. In addition, by reducing the amount of resources used, the amount charged to the user can be reduced.

図18は、アップサイズ後処理の例を示すフローチャートである。
アップサイズ後処理は、ステップS51に相当する。
(S60)VM切り替え処理部150は、切替元VM(ここでは仮想マシン262)をActiveからStoppedに変更するVM状態変更命令をVMホスト200に送信する。VMホスト200では、VM状態変更命令に基づいて、仮想マシン262がActiveからStoppedに変更される。また、VM状態管理部160は、当該変更が行われた旨の通知をVMホスト200から受け付け、管理テーブル121における仮想マシン262の状態をStoppedに変更し、状態更新日を更新する。
FIG. 18 is a flowchart showing an example of upsize post-processing.
The upsize post-processing corresponds to step S51.
(S60) The VM switching processing unit 150 transmits a VM state change command for changing the switching source VM (here, the virtual machine 262) from Active to Stopped to the VM host 200. In the VM host 200, the virtual machine 262 is changed from Active to Stopped based on the VM state change instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the change has been made, changes the state of the virtual machine 262 in the management table 121 to Stopped, and updates the state update date.

(S61)VM配備部130は、切替先VM(ここでは仮想マシン261)の1段階上の性能の仮想マシン(仮想マシン265)を退避状態(Shelved)で配備するVM配備命令をVMホスト200に送信する。VMホスト200では、VM配備命令に基づいて、仮想マシン265が退避状態で配備される。また、VM状態管理部160は、当該配備が行われた旨の通知をVMホスト200から受け付け、管理テーブル121に仮想マシン265のレコードを追加する。 (S61) The VM deployment unit 130 issues a VM deployment instruction to the VM host 200 to deploy a virtual machine (virtual machine 265) having a performance one step higher than that of the switching destination VM (here, virtual machine 261) in a saved state (shelved). Send. In the VM host 200, the virtual machine 265 is deployed in the saved state based on the VM deployment instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the deployment has been performed, and adds a record of the virtual machine 265 to the management table 121.

(S62)VM配備部130は、切替元VMの1段階下の性能の仮想マシン(ここでは仮想マシン263)を削除するVM削除命令をVMホスト200に送信する。VMホスト200では、VM削除命令に基づいて、仮想マシン263が削除される。また、VM状態管理部160は、当該削除が行われた旨の通知をVMホスト200から受け付け、管理テーブル121から仮想マシン263のレコードを削除する。 (S62) The VM deployment unit 130 transmits a VM deletion command to the VM host 200 to delete a virtual machine (here, virtual machine 263) having a performance one step lower than that of the switching source VM. On the VM host 200, the virtual machine 263 is deleted based on the VM delete instruction. Further, the VM state management unit 160 receives a notification from the VM host 200 that the deletion has been performed, and deletes the record of the virtual machine 263 from the management table 121.

次に、仮想マシン262から仮想マシン263へアップサイズする場合のアップサイズ後処理の具体例を説明する。
図19は、アップサイズ後処理の具体例を示す図である。
Next, a specific example of the upsizing post-processing in the case of upsizing from the virtual machine 262 to the virtual machine 263 will be described.
FIG. 19 is a diagram showing a specific example of upsize post-processing.

まず、管理サーバ100のVM切り替え制御により、クライアント50からのリクエストの振り分け先が、仮想マシン262から仮想マシン261へ切り替えられる(ステップT20)。このタイミングでは、仮想マシン261はActiveである。仮想マシン262はActiveである。仮想マシン263はShelvedである。 First, the VM switching control of the management server 100 switches the distribution destination of the request from the client 50 from the virtual machine 262 to the virtual machine 261 (step T20). At this timing, the virtual machine 261 is Active. The virtual machine 262 is Active. Virtual machine 263 is Shelved.

次に、仮想マシン262がStoppedに変更される(ステップT21)。仮想マシン261よりも1段階上の性能の仮想マシン265が配備される(ステップT22)。仮想マシン263が削除される(ステップT23)。その結果、稼働中の仮想マシン261に対して、1段階下の性能の仮想マシン262がStoppedで配備され、1段階上の性能の仮想マシン265がShelvedで配備された状態となる(ステップT24)。 Next, the virtual machine 262 is changed to Stopped (step T21). A virtual machine 265 having a performance one step higher than that of the virtual machine 261 is deployed (step T22). The virtual machine 263 is deleted (step T23). As a result, the virtual machine 262 with the performance one step lower is deployed in Stopped with respect to the virtual machine 261 in operation, and the virtual machine 265 with the performance one step higher is deployed in Shelved (step T24). ..

ステップT24の後、管理サーバ100は、仮想マシン261に対して、負荷状況の監視を行い、仮想マシン262に対する手順と同様の手順により、VM切り替え制御を行う。なお、VM切り替え処理部150は、例えば、仮想マシン261をActiveの状態にしてから所定時間(例えば、30分)経過後に、切替元VMである仮想マシン262をShelvedに変更する。これにより、ユーザへの課金を低減する。 After step T24, the management server 100 monitors the load status of the virtual machine 261 and performs VM switching control by the same procedure as the procedure for the virtual machine 262. The VM switching processing unit 150 changes the virtual machine 262, which is the switching source VM, to Shelved, for example, after a predetermined time (for example, 30 minutes) has elapsed after the virtual machine 261 is set to the Active state. This reduces the charge to the user.

次に、管理サーバ100およびVMホスト200による不要VM削除の手順を説明する。
図20は、不要VM削除の例を示すフローチャートである。
Next, the procedure for deleting unnecessary VMs by the management server 100 and the VM host 200 will be described.
FIG. 20 is a flowchart showing an example of deleting unnecessary VMs.

不要VM削除は、ステップS4に相当する。
(S70)VM削除部170は、管理テーブル121を参照して、切替先VMの状態更新日を1分間隔で監視する。ここで、監視の周期について、1分は例示であり、他の周期でもよい。
Deleting unnecessary VMs corresponds to step S4.
(S70) The VM deletion unit 170 monitors the status update date of the switching destination VM at 1-minute intervals with reference to the management table 121. Here, regarding the monitoring cycle, 1 minute is an example, and other cycles may be used.

(S71)VM削除部170は、切替先VMに対して記録されている状態更新日から1週間が経過しているか否かを判定する。切替先VMに対して記録されている状態更新日から1週間が経過している場合、ステップS72に処理が進む。切替先VMに対して記録されている状態更新日から1週間が経過していない場合、ステップS70に処理が進む。ここで、上記の例では、稼働中VMに対して切替先VMは2つある。VM削除部170は、例えば切替先VM毎に、ステップS71の判定を行う。 (S71) The VM deletion unit 170 determines whether or not one week has passed from the state update date recorded for the switching destination VM. If one week has passed from the state update date recorded for the switching destination VM, the process proceeds to step S72. If one week has not passed from the state update date recorded for the switching destination VM, the process proceeds to step S70. Here, in the above example, there are two switching destination VMs for the operating VM. The VM deletion unit 170 determines step S71 for each switching destination VM, for example.

(S72)VM削除部170は、状態更新日から1週間が経過している切替先VMを削除する。具体的には、VM削除部170は、当該切替先VMを削除するVM削除命令をVMホスト200に送信する。VM削除実行部250は、VM削除命令に基づいて、該当の切替先VMのインスタンスを削除する。これにより、Shelved状態となっていた該当の切替先VMのVMデータは、HDD203または外部ストレージから削除される。VM状態管理部160は、当該削除が行われた旨の通知をVMホスト200から受け付け、削除された切替先VMのレコードを管理テーブル121から削除する。そして、ステップS70に処理が進む。 (S72) The VM deletion unit 170 deletes the switching destination VM for which one week has passed from the state update date. Specifically, the VM deletion unit 170 transmits a VM deletion command for deleting the switching destination VM to the VM host 200. The VM deletion execution unit 250 deletes the instance of the corresponding switching destination VM based on the VM deletion instruction. As a result, the VM data of the corresponding switching destination VM that has been in the Shelved state is deleted from the HDD 203 or the external storage. The VM state management unit 160 receives a notification from the VM host 200 that the deletion has been performed, and deletes the deleted switching destination VM record from the management table 121. Then, the process proceeds to step S70.

このように、管理サーバ100は、切替先VMのうち、比較的長い期間、状態更新が行われていない切替先VMのVMデータをHDD203または外部ストレージから削除する。当該切替先VMへの切り替えが今後も行われない可能性が高いと推定されるからである。当該切替先VMのVMデータをHDD203または外部ストレージから削除することで、リソース使用量を一層抑えられる。また、リソース使用量を抑えることで、HDD203や外部ストレージなど補助記憶装置の容量の使用に対してユーザに課金される場合に、ユーザに対する課金額を抑えられる。 In this way, the management server 100 deletes the VM data of the switching destination VM whose state has not been updated for a relatively long period of time from the HDD 203 or the external storage among the switching destination VMs. This is because it is highly probable that switching to the switching destination VM will not be performed in the future. By deleting the VM data of the switching destination VM from the HDD 203 or the external storage, the resource usage can be further suppressed. Further, by suppressing the resource usage amount, when the user is charged for the use of the capacity of the auxiliary storage device such as the HDD 203 or the external storage, the charge amount for the user can be suppressed.

以上で説明したように、管理サーバ100によれば、リソースの使用量を抑えて、仮想マシンの迅速な切り替えを可能にする。具体的には、管理サーバ100は、通常時は仮想マシン262を稼働させる。管理サーバ100は、仮想マシン262の負荷が第1の閾値よりも高まると、仮想マシン262よりも高性能な仮想マシン261のVMデータをVMホスト200のRAMにロードさせて準備状態とさせる。このため、通常時において、仮想マシン261をRAMにロードさせずに済み、RAMの使用量を抑えられる。その結果、ユーザに対するRAMの利用に伴う課金を抑えられる。 As described above, the management server 100 reduces the amount of resources used and enables rapid switching of virtual machines. Specifically, the management server 100 normally operates the virtual machine 262. When the load of the virtual machine 262 becomes higher than the first threshold value, the management server 100 loads the VM data of the virtual machine 261 having higher performance than the virtual machine 262 into the RAM of the VM host 200 to prepare the virtual machine 262. Therefore, in the normal state, it is not necessary to load the virtual machine 261 into the RAM, and the amount of the RAM used can be suppressed. As a result, it is possible to suppress the charge associated with the use of the RAM for the user.

なお、HDD203や外部ストレージなど補助記憶装置の容量の使用に対してユーザに対する課金が発生することもある。ただし、補助記憶装置の容量の使用に対する課金額は、RAMの容量の使用に対する課金額に比べて安価であり、仮想マシンのインスタンスを補助記憶装置に退避させている状態でのユーザへの課金額を低く抑えることができる。 The user may be charged for using the capacity of the auxiliary storage device such as the HDD 203 or the external storage. However, the charge for using the capacity of the auxiliary storage device is cheaper than the charge for using the capacity of the RAM, and the charge for the user when the virtual machine instance is saved in the auxiliary storage device. Can be kept low.

更に、仮想マシン261が準備状態(一時停止状態)となっている間は、仮想マシン261が起動しておらず、VMホスト200のCPUを使用していない。したがって、仮想マシン261の準備状態では、ユーザに対するCPUの利用に伴う課金を抑えられる。 Further, while the virtual machine 261 is in the ready state (paused state), the virtual machine 261 is not started and the CPU of the VM host 200 is not used. Therefore, in the prepared state of the virtual machine 261, it is possible to suppress the charge for the user due to the use of the CPU.

しかも、仮想マシン261のVMデータは、VMホスト200のRAMに既にロードされている。このため、仮想マシン262の負荷が、第1の閾値よりも高い第2の閾値を超えた場合に、VMホスト200は、仮想マシン261を迅速に起動して、仮想マシン262から仮想マシン261への切り替えを行うことができる。 Moreover, the VM data of the virtual machine 261 has already been loaded into the RAM of the VM host 200. Therefore, when the load of the virtual machine 262 exceeds the second threshold value higher than the first threshold value, the VM host 200 quickly starts the virtual machine 261 and moves from the virtual machine 262 to the virtual machine 261. Can be switched.

こうして、リソースの使用量を抑えて、仮想マシンの迅速な切り替えを可能にすることができる。また、リソースの使用量を抑えることで、ユーザに対する課金額を抑えることができる。 In this way, resource usage can be reduced and virtual machines can be switched quickly. In addition, by reducing the amount of resources used, it is possible to reduce the amount charged to the user.

なお、切り替え後には、VMホスト200は、仮想マシン262を停止させ、例えば、所定時間の経過後に仮想マシン262のVMデータをVMホスト200のRAMから補助記憶装置などに退避させてもよい。これにより、仮想マシン262によるリソースの使用量を一層抑えられる。 After switching, the VM host 200 may stop the virtual machine 262 and, for example, save the VM data of the virtual machine 262 from the RAM of the VM host 200 to an auxiliary storage device or the like after a lapse of a predetermined time. As a result, the amount of resources used by the virtual machine 262 can be further reduced.

更に、管理サーバ100は、仮想マシン262の負荷が第1の閾値よりも低い第3の閾値より低下すると、仮想マシン263のVMデータをVMホスト200のRAMにロードさせて準備状態とさせる。そして、管理サーバ100は、仮想マシン262の負荷が第3の閾値よりも低い第4の閾値より低下した場合に、VMホスト200により、仮想マシン262を低性能の仮想マシン263に切り替えさせる。これにより、リソースの使用量を一層抑えられる。リソースの使用量を抑えることでユーザに対する課金額を抑えることができる。また、仮想マシン263のVMデータは、VMホスト200のRAMに既にロードされている。このため、仮想マシン262の負荷が、第4の閾値よりも低下した場合に、VMホスト200は、仮想マシン263を迅速に起動して、仮想マシン262から仮想マシン263への切り替えを行うことができる。 Further, when the load of the virtual machine 262 is lower than the third threshold value lower than the first threshold value, the management server 100 loads the VM data of the virtual machine 263 into the RAM of the VM host 200 to prepare it. Then, when the load of the virtual machine 262 is lower than the fourth threshold value, which is lower than the third threshold value, the management server 100 causes the VM host 200 to switch the virtual machine 262 to the low-performance virtual machine 263. As a result, the amount of resources used can be further reduced. By reducing the amount of resources used, the amount charged to the user can be reduced. Also, the VM data of the virtual machine 263 has already been loaded into the RAM of the VM host 200. Therefore, when the load of the virtual machine 262 is lower than the fourth threshold value, the VM host 200 can quickly start the virtual machine 263 and switch from the virtual machine 262 to the virtual machine 263. can.

なお、第1の実施の形態の情報処理は、処理部12にプログラムを実行させることで実現できる。また、第2の実施の形態の情報処理は、CPU101にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体113に記録できる。 The information processing of the first embodiment can be realized by causing the processing unit 12 to execute the program. Further, the information processing of the second embodiment can be realized by causing the CPU 101 to execute the program. The program can be recorded on a computer-readable recording medium 113.

例えば、プログラムを記録した記録媒体113を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体113に記録されたプログラムまたは他のコンピュータから受信したプログラムを、RAM102やHDD103などの記憶装置に格納し(インストールし)、当該記憶装置からプログラムを読み込んで実行してもよい。 For example, the program can be distributed by distributing the recording medium 113 on which the program is recorded. Alternatively, the program may be stored in another computer and distributed via the network. For example, the computer may store (install) a program recorded on the recording medium 113 or a program received from another computer in a storage device such as a RAM 102 or an HDD 103, read the program from the storage device, and execute the program. good.

1 情報処理システム
10 情報処理装置
11 記憶部
12 処理部
20 物理マシン
21 ハードウェア
21a メモリ
21b プロセッサ
22 ハイパーバイザ
23,24 仮想マシン
30 記憶装置
31,32,33 VMデータ
40 ネットワーク
1 Information processing system 10 Information processing device 11 Storage unit 12 Processing unit 20 Physical machine 21 Hardware 21a Memory 21b Processor 22 Hypervisor 23,24 Virtual machine 30 Storage device 31,32,33 VM data 40 Network

Claims (8)

性能の異なる複数の仮想マシンの対応関係を示す情報を記憶する記憶部と、
前記複数の仮想マシンに対応する複数のイメージデータを記憶装置に配置する命令を物理マシンに送信し、前記物理マシンで稼働中の第1の仮想マシンの負荷を監視し、前記負荷が第1の閾値を超えると、前記記憶部に記憶された情報に基づいて、前記第1の仮想マシンよりも高性能な第2の仮想マシンのイメージデータを、前記記憶装置からメモリにロードして前記第2の仮想マシンを準備状態にする命令を前記物理マシンに送信し、前記負荷が前記第1の閾値よりも高い第2の閾値を超えると、前記第1の仮想マシンを前記第2の仮想マシンに切り替える命令を前記物理マシンに送信する処理部と、
を有する情報処理装置。
A storage unit that stores information indicating the correspondence between multiple virtual machines with different performances,
An instruction for arranging a plurality of image data corresponding to the plurality of virtual machines in the storage device is transmitted to the physical machine, the load of the first virtual machine running on the physical machine is monitored, and the load is the first. When the threshold value is exceeded, the image data of the second virtual machine having higher performance than that of the first virtual machine is loaded into the memory from the storage device based on the information stored in the storage unit, and the second virtual machine is loaded. When an instruction to prepare the virtual machine is sent to the physical machine and the load exceeds a second threshold value higher than the first threshold value, the first virtual machine is sent to the second virtual machine. A processing unit that sends a switching command to the physical machine,
Information processing device with.
前記処理部は、前記負荷が前記第1の閾値を継続して超えた時間が第1の時間に達した場合に前記第2の仮想マシンを準備状態にする命令を前記物理マシンに送信し、前記負荷が前記第2の閾値を継続して超えた時間が第2の時間に達した場合に前記第1の仮想マシンを前記第2の仮想マシンに切り替える命令を前記物理マシンに送信する、
請求項1記載の情報処理装置。
The processing unit transmits an instruction to prepare the second virtual machine to the physical machine when the time when the load continuously exceeds the first threshold reaches the first time. When the time when the load continuously exceeds the second threshold reaches the second time, an instruction to switch the first virtual machine to the second virtual machine is transmitted to the physical machine.
The information processing device according to claim 1.
前記処理部は、前記第2の仮想マシンを準備状態にする命令を送信した後、前記第1の仮想マシンから前記第2の仮想マシンへの切り替えが行われずに所定時間が経過すると、前記第2の仮想マシンのイメージデータを前記メモリから削除する命令を前記物理マシンに送信する、
請求項1または2記載の情報処理装置。
After the processing unit transmits the command to prepare the second virtual machine, when a predetermined time elapses without switching from the first virtual machine to the second virtual machine, the first virtual machine Sends an instruction to delete the image data of the virtual machine 2 from the memory to the physical machine.
The information processing device according to claim 1 or 2.
前記処理部は、前記第2の仮想マシンのイメージデータを前記メモリから削除する命令を前記物理マシンに送信すると共に、前記第1の閾値を増加させる、
請求項3記載の情報処理装置。
The processing unit transmits an instruction to delete the image data of the second virtual machine from the memory to the physical machine, and increases the first threshold value.
The information processing device according to claim 3.
前記処理部は、前記第1の仮想マシンの前記負荷が前記第1の閾値よりも低い第3の閾値より下がると、前記記憶部に記憶された情報に基づいて、前記第1の仮想マシンよりも低性能な第3の仮想マシンのイメージデータを、前記記憶装置から前記メモリにロードして前記第3の仮想マシンを準備状態にする命令を前記物理マシンに送信し、前記負荷が前記第3の閾値よりも低い第4の閾値よりも下がると、前記第1の仮想マシンを前記第3の仮想マシンに切り替える命令を前記物理マシンに送信する、
請求項1記載の情報処理装置。
When the load of the first virtual machine falls below the third threshold value, which is lower than the first threshold value, the processing unit receives the information stored in the storage unit from the first virtual machine. An instruction to load the low-performance image data of the third virtual machine from the storage device into the memory and prepare the third virtual machine is transmitted to the physical machine, and the load is the third. When the value falls below the fourth threshold value, which is lower than the threshold value of, an instruction to switch the first virtual machine to the third virtual machine is transmitted to the physical machine.
The information processing device according to claim 1.
前記処理部は、前記第1の仮想マシンとは性能の異なる他の仮想マシンが前記記憶装置に退避されてから準備状態に変更されずに所定期間が経過すると、前記他の仮想マシンのイメージデータを前記記憶装置から削除する命令を前記物理マシンに送信する、
請求項1記載の情報処理装置。
When a predetermined period elapses without changing to the ready state after another virtual machine having a performance different from that of the first virtual machine is saved in the storage device, the processing unit performs image data of the other virtual machine. Is sent to the physical machine to delete the
The information processing device according to claim 1.
コンピュータに、
性能の異なる複数の仮想マシンに対応する複数のイメージデータを記憶装置に配置する命令を物理マシンに送信し、
前記物理マシンで稼働中の第1の仮想マシンの負荷を監視し、
前記負荷が第1の閾値を超えると、前記第1の仮想マシンよりも高性能な第2の仮想マシンのイメージデータを前記記憶装置からメモリにロードして前記第2の仮想マシンを準備状態とする命令を前記物理マシンに送信し、
前記負荷が前記第1の閾値よりも高い第2の閾値を超えると、前記第1の仮想マシンを前記第2の仮想マシンに切り替える命令を前記物理マシンに送信する、
処理を実行させる仮想マシン管理プログラム。
On the computer
Sends an instruction to the physical machine to place multiple image data corresponding to multiple virtual machines with different performance in the storage device,
Monitor the load of the first virtual machine running on the physical machine and
When the load exceeds the first threshold value, the image data of the second virtual machine having higher performance than the first virtual machine is loaded from the storage device into the memory to prepare the second virtual machine. Is sent to the physical machine to
When the load exceeds a second threshold value higher than the first threshold value, an instruction to switch the first virtual machine to the second virtual machine is transmitted to the physical machine.
A virtual machine management program that executes processing.
情報処理システムが実行する仮想マシン管理方法であって、
性能の異なる複数の仮想マシンに対応する複数のイメージデータを記憶装置に配置し、
前記情報処理システムで稼働中の第1の仮想マシンの負荷を監視し、
前記負荷が第1の閾値を超えると、前記第1の仮想マシンよりも高性能な第2の仮想マシンのイメージデータを前記記憶装置からメモリにロードして前記第2の仮想マシンを準備状態とし、
前記負荷が前記第1の閾値よりも高い第2の閾値を超えると、前記第1の仮想マシンを前記第2の仮想マシンに切り替える、
仮想マシン管理方法。
A virtual machine management method executed by an information processing system.
Multiple image data corresponding to multiple virtual machines with different performances are placed in the storage device,
Monitor the load of the first virtual machine running in the information processing system,
When the load exceeds the first threshold value, the image data of the second virtual machine having higher performance than the first virtual machine is loaded from the storage device into the memory to prepare the second virtual machine. ,
When the load exceeds a second threshold value higher than the first threshold value, the first virtual machine is switched to the second virtual machine.
Virtual machine management method.
JP2018197657A 2018-10-19 2018-10-19 Information processing device, virtual machine management program and virtual machine management method Active JP7104327B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018197657A JP7104327B2 (en) 2018-10-19 2018-10-19 Information processing device, virtual machine management program and virtual machine management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018197657A JP7104327B2 (en) 2018-10-19 2018-10-19 Information processing device, virtual machine management program and virtual machine management method

Publications (2)

Publication Number Publication Date
JP2020064567A JP2020064567A (en) 2020-04-23
JP7104327B2 true JP7104327B2 (en) 2022-07-21

Family

ID=70387378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018197657A Active JP7104327B2 (en) 2018-10-19 2018-10-19 Information processing device, virtual machine management program and virtual machine management method

Country Status (1)

Country Link
JP (1) JP7104327B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112423004B (en) * 2020-11-05 2024-02-06 深圳Tcl新技术有限公司 Video data transmission method, device, transmitting end and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086145A (en) 2008-09-30 2010-04-15 Hitachi East Japan Solutions Ltd Distributed processing system
US20140107855A1 (en) 2011-12-29 2014-04-17 Huawei Technologies Co., Ltd. Energy Saving Monitoring Method and Device
JP2014115905A (en) 2012-12-11 2014-06-26 Canon Marketing Japan Inc Information processing apparatus, information processing method, and program
US20150052254A1 (en) 2012-05-04 2015-02-19 Huawei Technologies Co., Ltd. Virtual Machine Live Migration Method, Virtual Machine Deployment Method, Server, and Cluster System
JP2016126562A (en) 2015-01-05 2016-07-11 富士通株式会社 Information processing system, management apparatus, and control method of information processing system
JP2017004266A (en) 2015-06-10 2017-01-05 富士通株式会社 Determination control program, determination control method, and virtual machine management device
JP2017191542A (en) 2016-04-15 2017-10-19 日本電気株式会社 Instance start device, instance start method, and instance start program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086145A (en) 2008-09-30 2010-04-15 Hitachi East Japan Solutions Ltd Distributed processing system
US20140107855A1 (en) 2011-12-29 2014-04-17 Huawei Technologies Co., Ltd. Energy Saving Monitoring Method and Device
US20150052254A1 (en) 2012-05-04 2015-02-19 Huawei Technologies Co., Ltd. Virtual Machine Live Migration Method, Virtual Machine Deployment Method, Server, and Cluster System
JP2014115905A (en) 2012-12-11 2014-06-26 Canon Marketing Japan Inc Information processing apparatus, information processing method, and program
JP2016126562A (en) 2015-01-05 2016-07-11 富士通株式会社 Information processing system, management apparatus, and control method of information processing system
JP2017004266A (en) 2015-06-10 2017-01-05 富士通株式会社 Determination control program, determination control method, and virtual machine management device
JP2017191542A (en) 2016-04-15 2017-10-19 日本電気株式会社 Instance start device, instance start method, and instance start program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
石井 嘉明,予見化によるシームレスなスケーラビリティと統合的システム復旧を実現するクラウドシステム,第74回(平成24年)全国大会講演論文集(1),一般社団法人情報処理学会,2012年03月06日,p.1-1 - 1-2

Also Published As

Publication number Publication date
JP2020064567A (en) 2020-04-23

Similar Documents

Publication Publication Date Title
US10379967B2 (en) Live rollback for a computing environment
JP6219512B2 (en) Virtual hadoop manager
US8260840B1 (en) Dynamic scaling of a cluster of computing nodes used for distributed execution of a program
US8078824B2 (en) Method for dynamic load balancing on partitioned systems
US9027017B2 (en) Methods and apparatus for movement of virtual resources within a data center environment
JP6589417B2 (en) Start control program, start control method, and start control device
US9852008B2 (en) Computer-readable recording medium storing execution information notification program, information processing apparatus, and information processing system
JP5967215B2 (en) Information processing apparatus, program, and virtual machine migration method
JP6412244B2 (en) Dynamic integration based on load
US10846079B2 (en) System and method for the dynamic expansion of a cluster with co nodes before upgrade
US20160156568A1 (en) Computer system and computer resource allocation management method
JP2013148984A (en) Program, virtual machine control method, information processor and information processing system
JP6123626B2 (en) Process resumption method, process resumption program, and information processing system
JP2008293117A (en) Method for monitoring performance of virtual computer, and device using the method
JP6533623B2 (en) Management computer, performance monitoring method and computer system
JP2021048513A (en) Information processing device, information processing method, and virtual machine connection management program
JP2016167143A (en) Information processing system and control method of the same
JP2016170669A (en) Load distribution function deployment method, load distribution function deployment device, and load distribution function deployment program
JP2014191752A (en) Migration processing program, migration method, and cloud system
US20160352821A1 (en) Method and system for allocating resources for virtual hosts
TW201347459A (en) Management method and system using the same
US10754368B1 (en) Method and system for load balancing backup resources
JP7104327B2 (en) Information processing device, virtual machine management program and virtual machine management method
CN111949442B (en) System and method for scalable backup service
JP5597293B2 (en) Computer system and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210709

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210715

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210715

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220428

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220620

R150 Certificate of patent or registration of utility model

Ref document number: 7104327

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150