Management device, management method, and program

The management device addresses inefficiencies in virtual machine resource allocation by scoring virtual machines based on usage frequency and dynamically placing them in appropriate resource allocation areas, leading to improved resource utilization and system stability.

JP7675144B2Active Publication Date: 2025-05-12SOFTBANK CORPORATION
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023166427
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-09-27
Publication Date
2025-05-12
Estimated Expiration
2043-09-27

AI Technical Summary

Technical Problem

Existing virtual machine management systems face inefficiencies in resource allocation as they do not effectively account for the varying frequency of use among virtual machines, leading to suboptimal utilization of physical resources on virtual machine servers.

Method used

A management device that acquires statistical information on virtual machine operations, calculates a usage frequency score, and dynamically places virtual machines in either a 'guarantee area' or a 'best effort area' based on their usage scores, ensuring efficient resource allocation.

Benefits of technology

This approach enables efficient use of physical resources by matching high-frequency virtual machines with guaranteed resources and low-frequency ones with flexible resource allocation, thereby improving overall system stability and resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007675144000001
    Figure 0007675144000001
  • Figure 0007675144000002
    Figure 0007675144000002
  • Figure 0007675144000003
    Figure 0007675144000003
Patent Text Reader

Abstract

To enable physical resources in virtual machine servers to be efficiently used on the basis of the usage frequency of virtual machines.SOLUTION: A management device comprises: an acquisition unit that acquires statistical information regarding the operation of a first virtual machine arranged on a first virtual machine server that does not permit overcommitment; a calculation unit that calculates a score indicating the usage frequency of the first virtual machine from the statistical information; and an arrangement control unit that arranges the first virtual machine on the first virtual machine server or a second virtual machine server that permits overcommitment on the basis of the score.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a management device, a management method, and a program. [Background technology]

[0002] Currently, there are known technologies that allow multiple virtual machines to run simultaneously within one server. For example, Patent Document 1 discloses a technology that determines a combination of virtual machines and virtual machine servers that maximizes the performance of each virtual machine. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2005-115653 A Summary of the Invention [Problem to be solved by the invention]

[0004] Among the virtual machines running on a virtual machine server, there may be virtual machines that are used infrequently. For example, when using virtual machines in a testing environment, it is expected that the virtual machine being tested will be used frequently, but will be used less frequently once testing is completed. Therefore, it is considered inefficient to reserve physical resources of the virtual machine server even for virtual machines that are used infrequently.

[0005] Therefore, an object of the present invention is to provide a technique that enables efficient use of physical resources of a virtual machine server based on the usage frequency of the virtual machine. [Means for solving the problem]

[0006] A management device according to one embodiment of the present invention includes an acquisition unit that acquires statistical information regarding the operation of a first virtual machine that is placed on a first virtual machine server that does not allow overcommitment, a calculation unit that calculates a score indicating a usage frequency of the first virtual machine from the statistical information, and a placement control unit that places the first virtual machine on the first virtual machine server or a second virtual machine server that allows overcommitment based on the score. Effect of the Invention

[0007] According to the present invention, it is possible to provide a technique that enables efficient use of physical resources of a virtual machine server based on the usage frequency of a virtual machine. [Brief description of the drawings]

[0008] [Figure 1] FIG. 1 illustrates an example of a virtual machine management system according to an embodiment of the present invention. [Diagram 2] FIG. 2 illustrates an example of a hardware configuration of a management device 10. [Diagram 3] FIG. 2 is a diagram illustrating an example of a functional block configuration of a management device 10. [Figure 4] 13 is a flowchart illustrating an example of a processing procedure for selecting an area in which to place a virtual machine. [Diagram 5] 13 is a flowchart illustrating an example of a processing procedure for deleting a virtual machine. [Figure 6] 13 is a flowchart illustrating an example of a process for migrating a virtual machine for which an increase in load is predicted to occur to a guarantee area. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described with reference to the accompanying drawings, in which the same reference numerals denote the same or similar configurations.

[0010] <System configuration> 1 is a diagram showing an example of a virtual machine management system 1 according to this embodiment. The virtual machine management system 1 includes a management device 10, multiple virtual machine servers 20-1 to 20-4, and multiple virtual machines A to E operating in the virtual machine servers 20-1 to 20-4. In the following description, when there is no need to distinguish between the virtual machine servers 20-1 to 20-4, they will be referred to as virtual machine server 20. When there is no need to distinguish between the virtual machines A to E, they will be referred to as virtual machines.

[0011] The management device 10 and the multiple virtual machine servers 20-1 to 20-4 are connected via a wireless or wired communication network N, and can communicate with each other.

[0012] Management device 10 manages the operating states of virtual machines A to E operating on virtual machine servers 20-1 to 20-4, and performs operations such as selecting a virtual machine server 20 on which to place virtual machines A to E. Management device 10 may also be referred to as a computer.

[0013] Virtual machine servers 20-1 to 20-4 are equipped with a hypervisor and can run one or more virtual machines. Virtual machine servers 20-1 and 20-2 are virtual machine servers 20 that do not allow overcommit, and are called the "guaranteed region" and "operation guaranteed region" in this embodiment. On the other hand, virtual machine servers 20-1 and 20-2 are virtual machine servers 20 that allow overcommit, and are called the "best effort region" in this embodiment.

[0014] Overcommit refers to allocating resources to virtual machines so that the total value of the resources allocated to the virtual machines exceeds the physical resources of the virtual machine server 20. For example, when memory and vCPUs (virtual CPUs) are allocated to the virtual machines, overcommit refers to allowing the total amount of memory and the total number of vCPUs allocated to all the virtual machines to exceed the amount of physical memory and the number of CPU cores of the virtual machine server 20, respectively.

[0015] Generally, it is rare for a virtual machine to always use the resources allocated to it to the maximum extent. Therefore, by allowing overcommit, it is possible to effectively utilize the physical resources of the virtual machine server 20. However, when each virtual machine in a virtual machine server 20 that allows overcommit operates under a high load, the physical resources of the virtual machine server 20 may become insufficient, resulting in a disadvantage that the operation of the virtual machine may become unstable.

[0016] Therefore, in this embodiment, based on the usage frequency of the virtual machines, the virtual machines that are used frequently are placed in the guaranteed area, and the virtual machines that are used less frequently are placed in the best effort area, which makes it possible to use the physical resources of the virtual machine server efficiently.

[0017] <Hardware configuration> 2 is a diagram showing an example of a hardware configuration of the management device 10. The management device 10 includes a processor 11 such as a CPU (Central Processing Unit) or a GPU (Graphical Processing Unit), a memory (e.g., a RAM (Random Access Memory) or a ROM (Read Only Memory)), a storage device 12 such as an HDD (Hard Disk Drive) and / or an SSD (Solid State Drive), a network IF (Network Interface) 13 for wired or wireless communication, an input device 14 for accepting input operations, and an output device 15 for outputting information. The input device 14 is, for example, a keyboard, a touch panel, a mouse, and / or a microphone. The output device 15 is, for example, a display, a touch panel, and / or a speaker.

[0018] <Function block configuration> FIG. 3 is a diagram showing an example of a functional block configuration of the management device 10. The management device 10 includes a storage unit 100, an acquisition unit 101, a calculation unit 102, an arrangement control unit 103, and a prediction unit 104. The storage unit 100 can be realized by using a storage device 12 included in the management device 10. The acquisition unit 101, the calculation unit 102, the arrangement control unit 103, and the prediction unit 104 can be realized by the processor 11 of the management device 10 executing a program stored in the storage device 12. The program can be stored in a storage medium. The storage medium storing the program may be a non-transitory computer readable storage medium. The non-transitory storage medium is not particularly limited, and may be, for example, a storage medium such as a Universal Serial Bus (USB) memory or a Compact Disc Read-Only Memory (CD-ROM).

[0019] The storage unit 100 stores various data for managing the virtual machine server 20.

[0020] The acquiring unit 101 acquires statistical information on the operation of a virtual machine (first virtual machine) arranged on a virtual machine server that does not allow overcommit (first virtual machine server, ie, a guaranteed area).

[0021] The acquiring unit 101 also acquires an operation log of a virtual machine (second virtual machine) that is allocated to a virtual machine server that allows overcommit (second virtual machine server, ie, the best effort region).

[0022] The calculation unit 102 calculates a score indicating the usage frequency of the virtual machine from the statistical information acquired by the acquisition unit. For example, when the virtual machine is used for verifying an application or the like, the usage frequency of the virtual machine may mean the proportion of time during which the virtual machine is used for verification in a given time. Note that a higher score may mean a higher usage frequency, or a higher score may mean a lower usage frequency. In this embodiment, the explanation is given on the premise that a higher score means a lower usage frequency. The time during which the virtual machine is used for verification may be an example of the usage frequency, and various information such as the number or interval of connections from a specified client, the number or interval of logins to a specified account, etc. may be used as the usage frequency.

[0023] Based on the score calculated by the calculation unit 102, the placement control unit 103 places the virtual machine (first virtual machine) to be placed in the guarantee area on a virtual machine server 20 (first virtual machine server) in the guarantee area or a virtual machine server 20 (second virtual machine server) in the best effort area.

[0024] In addition, when the score calculated by the calculation unit 102 is equal to or greater than a threshold value and it is determined that the virtual machine is used infrequently, the placement control unit 103 may move the virtual machine (first virtual machine) placed in the guarantee area to a virtual machine server 20 (second virtual machine server) in the best effort area.

[0025] In addition, when the score calculated by the calculation unit 102 is less than a threshold value and it is determined that the virtual machine is frequently used, the placement control unit 103 may continue to place the virtual machine (first virtual machine) placed in the guarantee area on the virtual machine server 20 (first virtual machine server) in the guarantee area.

[0026] In addition, when the future load of a virtual machine (second virtual machine) to be placed in the best effort region, as predicted by the prediction unit 104, is equal to or greater than a threshold value and it is determined that the load of the virtual machine (second virtual machine) will increase in the future, the placement control unit 103 may place the virtual machine on a virtual machine server 20 (first virtual machine server) in the guarantee region.

[0027] In addition, when the period during which a virtual machine (second virtual machine) placed in the best effort region exists in the best effort region is equal to or longer than a threshold, the placement control unit 103 may store a snapshot of the virtual machine (second virtual machine) in the memory unit 100 and delete the virtual machine (second virtual machine) from the virtual machine server 20.

[0028] The prediction unit 104 predicts the future load of a virtual machine (second virtual machine) placed in the best effort region based on an operation log of the virtual machine (second virtual machine). For example, the prediction unit 104 may predict the future load of the virtual machine using a learning model that is learned based on the relationship between the operation log and the future load of the virtual machine.

[0029] <Processing Procedure> Fig. 4 is a flowchart showing an example of a procedure for selecting an area in which a virtual machine is to be placed. The management device 10 repeats the procedure shown in Fig. 4 at predetermined intervals to periodically change the virtual machine server 20 in which a virtual machine is to be placed. The predetermined interval is not particularly limited, and may be a relatively long period, such as one week.

[0030] In step S10, the acquiring unit 101 acquires statistical information for each virtual machine from the virtual machine servers 20-1 to 20-4 in the guarantee area and the best effort area. The statistical information is information obtained by tallying up data related to the operation of the virtual machines A to E for a predetermined period, and examples of the statistical information include memory usage, CPU usage, disk size increase rate, Syslog size increase rate, and SSH (Secure Shell) log size increase rate. The predetermined period is not particularly limited, and may be the same as the period (e.g., one week) at which the management device 10 executes the processing procedure shown in FIG. 4. Note that the statistical information is not limited to these, and may include other data as long as it is data related to the operation of the virtual machines. Also, the statistical information is not limited to the case where all of these are used, and any data may be selected and used.

[0031] In step S11, the calculation unit 102 calculates a score indicating the usage frequency for each virtual machine using the acquired statistical information. The calculation unit 102 may calculate the score value by counting the number of items that are less than a predetermined threshold for each of five items, namely, memory usage, CPU usage, disk size increase rate, Syslog size increase rate, and SSH log size increase rate.

[0032] Specifically, the calculation unit 102 may calculate the score value according to steps 1 to 5 below. The initial score value is set to 0. The threshold value may differ for each item. The increase rate (%) means the increase rate from the point in time when the score was last calculated. For example, if the point in time when the score was last calculated is a predetermined period ago (e.g., one week ago), the increase rate of disk usage can be calculated by dividing the current disk usage by the disk usage from the predetermined period ago and multiplying the result by 100. 1. If memory usage is below the threshold, add 1 to the score. 2. If CPU usage is below the threshold, add 1 to the score. 3. If the rate of increase in disk usage is less than the threshold, add 1 to the score. 4. If the growth rate of Syslog size is less than the threshold, add 1 to the score. 5. If the SSH log size growth rate is less than the threshold, add 1 to the score.

[0033] For example, when the memory usage and CPU usage rate of virtual machine A are less than the thresholds, but the other items are equal to or greater than the thresholds, the calculation unit 102 calculates that the score of virtual machine A is 2.

[0034] Furthermore, when calculating the score, weighting coefficients determined for each item may be taken into consideration. For example, the calculation unit 102 may calculate the score using the weighting coefficients a to e according to the following steps 1 to 5. 1. If memory usage is less than the threshold, add 1×a to the score. 2. If CPU usage is below the threshold, add 1×b to the score. 3. If the rate of increase in disk usage is less than the threshold, add 1×c to the score. 4. If the growth rate of the Syslog size is less than the threshold, add 1 x d to the score. 5. If the SSH log size growth rate is less than the threshold, add 1 x e to the score.

[0035] In step S12, the placement control unit 103 judges whether or not the score of each virtual machine is equal to or greater than a threshold. The threshold can be any value, but for example, when the score is expressed as a value between 0 and 5, the threshold may be set to 4 or greater. For virtual machines whose scores are equal to or greater than the threshold, the placement control unit 103 executes the processing procedure of step S13. For virtual machines whose scores are less than the threshold, the placement control unit 103 executes the processing procedure of step S14.

[0036] In step S13, the placement control unit 103 moves the virtual machines whose scores are equal to or greater than the threshold from the guarantee area to the best effort area. Specifically, the placement control unit 103 copies various files constituting the virtual machines to the virtual machine server 20-3 or virtual machine server 20-4 in the best effort area. After the copy is completed, the placement control unit 103 deletes various files of the guarantee area of ​​the copy source of the virtual machine copied to the best effort area from the virtual machine server 20 in the guarantee area where the virtual machine was placed. Note that the placement control unit 103 does not perform the migration process on the virtual machines already existing in the best effort area, and continues to place them in the best effort area as they are.

[0037] Here, the threshold value may be a fixed value. In this way, a virtual machine whose usage frequency falls below a certain frequency can be reliably moved to the best effort area, and the criteria become clear for the virtual machine user, which leads to, for example, a notification of voluntary termination of usage, thereby improving the governance of facility usage.

[0038] In step S14, the placement control unit 103 moves the virtual machines whose scores are less than the threshold from the best effort area to the guarantee area. Specifically, the placement control unit 103 copies various files constituting the virtual machines to the virtual machine server 20-1 or virtual machine server 20-2 in the guarantee area. After the copy is completed, the placement control unit 103 deletes various files from the best effort area of ​​the virtual machine copied to the guarantee area from the virtual machine server 20 in the best effort area where the virtual machine was placed. Note that the placement control unit 103 does not perform the move process on the virtual machines already existing in the guarantee area, and continues to place them in the guarantee area as they are.

[0039] Here, when deciding which virtual machines to place on the virtual machine server 20 in the guaranteed area based on the score calculated for each virtual machine, there is a risk that the total resource amount required by the virtual machines whose scores are below the threshold may exceed the virtual machine server 20 in the guaranteed area. If the virtual machine server 20 in the guaranteed area runs out of resources, the operation of the virtual servers in the guaranteed area becomes unstable. Therefore, the placement control unit 103 may notify the administrator in advance when a certain amount of the resource amount (e.g., the amount of physical memory and the number of vCPUs) of the virtual machine server 20 in the guaranteed area is allocated to the virtual machines. For example, the placement control unit 103 may notify the administrator when 80% of the resource amount of the virtual machine server 20 in the guaranteed area is allocated to the virtual machines. In this way, the administrator can take measures such as changing the threshold or increasing the resource of the virtual machine server 20 in the guaranteed area before the resource of the virtual machine server 20 in the guaranteed area runs out.

[0040] The threshold value may be a variable value. For example, assuming that virtual machines with low scores are moved to the guaranteed area in ascending order, the threshold value may be automatically calculated so that the total amount of resources allocated to each virtual machine to be moved to the guaranteed area does not exceed the amount of resources owned by the virtual machine server 20 in the guaranteed area.

[0041] For example, assume that virtual machines A to E exist in the virtual machine management system 1, and the scores of virtual machines A to E are 0, 1, 2, 5, and 5, respectively. Furthermore, when virtual machines A and B are moved to the guaranteed area, the total amount of resources allocated to virtual machines A and B does not exceed the amount of physical resources of the virtual machine server 20 in the guaranteed area. Furthermore, when virtual machines A, B, and C are moved to the guaranteed area, the total amount of resources allocated to virtual machines A, B, and C exceeds the amount of physical resources of the virtual machine server 20 in the guaranteed area. In this case, the placement control unit 103 may set the threshold to 2.

[0042] By doing this, even if it is not possible to place all virtual machines whose usage frequency exceeds a certain level in the guarantee area, virtual machines that are used more frequently can be placed in the guarantee area on a priority basis, thereby ensuring the stability of virtual machines that are used frequently.

[0043] (Variation 1) 4, virtual machines that are used less frequently are moved to the virtual machine server 20 in the best effort domain. When this embodiment is applied to a virtual machine test environment, it is assumed that the virtual machines are tested in the guarantee domain, and the virtual machines for which the tests have been completed are moved to the best effort domain. In such an environment, virtual machines for which the tests have been completed may accumulate in the virtual machine server 20 in the best effort domain, which may put a strain on the resources of the virtual machine server 20. Therefore, the management device 10 may delete virtual machines that exist in the best effort domain for a predetermined period of time.

[0044] Fig. 5 is a flowchart showing an example of a procedure for deleting a virtual machine. The management device 10 may repeat the procedure shown in Fig. 5 at predetermined intervals. The predetermined interval is not particularly limited, but the management device 10 may repeat the procedure shown in Fig. 5 at a longer interval than the procedure shown in Fig. 4, such as once a month or once every six months.

[0045] In step S20, the placement control unit 103 determines whether or not the period during which each virtual machine resides on the virtual machine server 20 in the best effort region is equal to or longer than a threshold. For example, the placement control unit 103 may determine the period during which each virtual machine resides on the virtual machine server 20 based on log data recorded on the virtual machine server 20 in the best effort region. If there is a virtual machine whose period on the virtual machine server 20 is equal to or longer than the threshold, the placement control unit 103 proceeds to the processing procedure of step S21, and if there is no virtual machine whose period on the virtual machine server 20 is equal to or longer than the threshold, the processing ends.

[0046] In step S21, for a virtual machine that has been present on the virtual machine server 20 for a period of time equal to or longer than a threshold, the placement control unit 103 stores a virtual machine snapshot constituting the actual state of the virtual machine in the storage unit 100, etc. Note that a snapshot is data that records the latest operating state of a virtual machine, and includes, for example, all the latest data stored in memory and all the latest data written to a disk.

[0047] In step S22, the arrangement control unit 103 deletes, from the virtual machine server 20 in the best effort region, any virtual machine that has been present on the virtual machine server 20 for a period of time equal to or longer than the threshold (that is, deletes various files that configure the virtual machine).

[0048] In addition, when an operation for restoring a deleted virtual machine from a snapshot (restoration operation) is performed (for example, when a login is requested), a snapshot acquired before the deletion may be restored to the virtual machine server 20 in the best effort area. In this case, the latest snapshot related to the virtual machine may be used. In this way, the user can resume the use of the virtual machine without being aware that the virtual machine has been deleted from the virtual machine server 20. In addition, when there are multiple snapshots related to the virtual machine, the snapshot to resume the use may be selected by a predetermined method. The predetermined method may be, for example, selection by the user. In this way, the user can restore the virtual machine based on a snapshot at any time and resume the use of the restored virtual machine. For example, when the environment is to be significantly changed from the time when the last verification was performed, the burden of the preparation work for verification may be reduced. In addition, the timing of the restoration is not limited to a request for login to the deleted virtual machine, and the user of the virtual machine may be able to operate it from a management screen or the like. Since restoration from a snapshot takes a certain amount of time, the verification work can be smoothly resumed by performing restoration in advance.

[0049] (Variation 2) In the processing procedure shown in FIG. 4, a frequently used virtual machine existing in the best effort area is moved to the guarantee area based on the statistical information of the virtual machine. However, in the processing procedure shown in FIG. 4, a frequently used virtual machine has to operate in the best effort area before moving to the guarantee area. Therefore, depending on the usage mode of the virtual machine (for example, when verifying a high load state), resources may not be secured sufficiently, and the operation of the virtual machine may become temporarily unstable. Specifically, for example, if a virtual machine that was operating at a low load until the day before suddenly starts operating at a high load, resources may not be secured sufficiently in the best effort area, and the operation of the virtual machine may become unstable. Here, before a high load process is performed, as preparation for the process, for example, a process that does not itself impose a high load but is a precursor to a later high load process, such as changing settings in the virtual machine, adding new software, or storing files used in the process, may be performed. Therefore, when there is a precursor to a high load process, the virtual machine may be moved from the best effort area to the guarantee area in advance to avoid the operation of the virtual machine becoming temporarily unstable.

[0050] Therefore, when it is predicted that the load of a virtual machine existing in the best effort region will become high in the future, the management device 10 may move the virtual machine to the guaranteed region in advance.

[0051] Fig. 6 is a flowchart showing an example of a process for moving a virtual machine for which an increase in load is predicted to occur to a guarantee area. The management device 10 may repeat the process procedure shown in Fig. 6 at predetermined intervals. The predetermined period is not particularly limited, but the management device 10 may repeat the process procedure shown in Fig. 6 at a shorter cycle than the process procedure shown in Fig. 4, such as every day. When executing the process procedure shown in Modification 2, the process procedure of step S14 in the process procedure of Fig. 4 may be omitted.

[0052] In step S30, the acquiring unit 101 acquires, from the virtual machine server 20 in the best effort domain, operation log information of each virtual machine present in the virtual machine server 20. The period for which the operation log information is acquired may be the same as the predetermined period for which the management device 10 repeats the processing procedure shown in Fig. 6. For example, when the management device 10 repeats the processing procedure shown in Fig. 6 every day, the operation log information acquired may be the latest 24 hours' worth.

[0053] In step S31, the prediction unit 104 predicts the future load of each virtual machine by inputting the operation log information of each virtual machine into a learning model that predicts the future load of the virtual machine.

[0054] Data included in the operation log information includes, for example, data regarding the number of accesses to the virtual machine, the amount of communication data, the number of logs indicating that the virtual machine has gone down (abnormally terminated), the frequency with which the swap space is used, the number of times snapshots of the virtual server have been taken, the number of processes on the OS, the number of users of the OS, the number of times the OOM killer was activated, etc.

[0055] The learning model is a model generated by learning the relationship between operation log information and information indicating the future load of the virtual machine. The information indicating the future load of the virtual machine may be, for example, a load level indicating the load of the virtual machine one day later. For example, the load level may be expressed by 1 to 10, and a higher load level may mean a higher load. In other words, the learning model may be, for example, a model that has been trained to output a load level when operation log information is input.

[0056] The learning model may be a model that outputs information indicating the future load of the virtual machine by inputting the previous operation log information and the latest operation log information. That is, the prediction unit 104 may predict the future load of each virtual machine by inputting the previous and latest operation log information of each virtual machine into a learning model that predicts the future load of the virtual machine. This makes it possible to more appropriately predict the future load of the virtual machine.

[0057] In step S32, the placement control unit 103 determines whether or not there is a virtual server whose future load is equal to or greater than the threshold among the virtual machines predicted in the processing procedure of step S31. If there is a virtual server whose future load is equal to or greater than the threshold, the placement control unit 103 proceeds to the processing procedure of step S33. On the other hand, if there is no virtual server whose future load is equal to or greater than the threshold, the placement control unit 103 ends the processing.

[0058] In step S33, the placement control unit 103 migrates the virtual servers whose future loads are equal to or greater than a threshold from the virtual machine servers 20 in the best effort domain to the virtual machine servers 20 in the guaranteed domain. The migration method may be the same as the method described in step S14 of FIG. 4.

[0059] <Summary> According to the embodiment described above, the management device 10 allocates a virtual machine to either the virtual machine server 20 in the guaranteed domain or the virtual machine server 20 in the best effort domain based on the usage frequency of the virtual machine. This makes it possible to efficiently use the physical resources of the virtual machine server.

[0060] In addition, the management device 10 stores a snapshot of a virtual machine that exists in the best effort region for a certain period of time and then deletes the virtual machine. This makes it possible to prevent the resources of the virtual machine server 20 corresponding to the best effort region from being overloaded.

[0061] Furthermore, the management device 10 moves a virtual machine that is expected to have a high load in the future to the virtual machine server 20 in the guaranteed area in advance. This makes it possible to move the virtual machine to the guaranteed area before the load on the virtual machine actually becomes high, and allows the virtual machine to operate stably.

[0062] In addition, the technology related to this embodiment can contribute to achieving Goal 9 of the Sustainable Development Goals (SDGs), which is to "build resilient infrastructure, promote industry, innovation and infrastructure."

[0063] The above-described embodiments are intended to facilitate understanding of the present invention, and are not intended to limit the present invention. The flow charts, sequences, elements included in the embodiments, and their arrangements, materials, conditions, shapes, sizes, etc. are not limited to those illustrated, and can be changed as appropriate. In addition, configurations shown in different embodiments can be partially replaced or combined with each other. [Explanation of symbols]

[0064] 1 Virtual Machine Management System, 10 Management Device, 11 Processor, 12 Storage Device, 13 Network IF, 14 Input Device, 15 Output Device, 20 Virtual Machine Server, 100 Storage Unit, 101 Acquisition Unit, 102 Calculation Unit, 103 Placement Control Unit, 104 Prediction Unit

Claims

1. an acquisition unit that acquires statistical information about an operation of a first virtual machine arranged on a first virtual machine server that does not allow overcommit; a calculation unit that calculates a score indicating a usage frequency of the first virtual machine from the statistical information; a placement control unit that places the first virtual machine on the first virtual machine server or a second virtual machine server that allows overcommit based on the score; A management device having the above configuration.

2. The arrangement control unit is If the score is equal to or greater than a threshold and it is determined that the virtual machine is used infrequently, the first virtual machine is migrated to the second virtual machine server; If the score is less than a threshold value and it is determined that the usage frequency of the virtual machine is high, the first virtual machine is continued to be placed on the first virtual machine server. The management device according to claim 1 .

3. the placement control unit determines the threshold so that a total of requested resource amounts of the first virtual machines placed on the first virtual machine server does not exceed a resource amount of the first virtual machine server. The management device according to claim 2 .

4. The acquisition unit acquires an operation log of a second virtual machine arranged on the second virtual machine server, a prediction unit that predicts a future load of the second virtual machine based on an operation log of the second virtual machine, The arrangement control unit is When it is determined that the load of the second virtual machine will increase in the future because the future load is equal to or greater than a threshold, the second virtual machine is allocated to the first virtual machine server. The management device according to claim 1 .

5. the placement control unit, when a second virtual machine is placed on the second virtual machine server and a period during which the second virtual machine exists on the second virtual machine server is equal to or longer than a threshold, stores a snapshot of the second virtual machine and deletes the second virtual machine from the second virtual machine server. The management device according to claim 1 .

6. the placement control unit restores the second virtual machine based on a snapshot of the second virtual machine in response to a restore operation being performed on the second virtual machine, the restore operation being an operation of restoring the virtual machine from a snapshot; The management device according to claim 5 .

7. the arrangement control unit, when there are a plurality of snapshots of the second virtual machine, restores the second virtual machine based on one snapshot of the second virtual machine selected by a predetermined method; The management device according to claim 6.

8. acquiring statistical information on an operation of a first virtual machine arranged on a first virtual machine server that does not allow overcommit; calculating a score indicating a usage frequency of the first virtual machine from the statistical information; placing the first virtual machine on the first virtual machine server or a second virtual machine server that allows overcommit based on the score; A management method executed by a management device, comprising:

9. acquiring statistical information on an operation of a first virtual machine arranged on a first virtual machine server that does not allow overcommit; calculating a score indicating a usage frequency of the first virtual machine from the statistical information; placing the first virtual machine on the first virtual machine server or a second virtual machine server that allows overcommit based on the score; A program for causing a computer to execute the following.

Citation Information

Patent Citations

  • Virtual machine management device and program

    JP2005115653A

  • VM migration system and VM migration method

    JP2019204309A

  • Control apparatus, program, and control method

    JP2023147397A