Moving destination determination device, moving destination determination system, moving destination determination method, and program
The destination determination device addresses the challenge of resource depletion by analyzing resource patterns to find suitable migration destinations, ensuring efficient virtual machine migration and resource management during power outages.
Patent Information
- Application Number
- JP2023542043
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-08-16
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2041-08-16
AI Technical Summary
Existing technologies fail to efficiently determine a destination for migrating virtual machines during a power outage to prevent resource depletion on the destination physical server, especially when resource requirements vary and combinations of source and destination become complex.
A destination determination device that extracts resource usage patterns from multiple physical servers and determines a destination based on similarity between the source and destination patterns, using methods like NTF, CP decomposition, and Tucker decomposition to minimize resource competition.
Enables efficient migration of virtual machines by determining destinations that minimize resource competition, ensuring resources are not exceeded and maintaining service continuity during power outages.
Smart Images

Figure 0007713141000001 
Figure 0007713141000002 
Figure 0007713141000003
Abstract
Description
Technical Field
[0001] The present invention relates to migration for moving a virtual machine from one physical server to another physical server.
Background Art
[0002] Service providers such as telecommunications carriers and data center operators sequentially monitor the service status and perform settings and controls of communication facilities and server devices in order to maintain services such as network services and ICT (Information and Communication Technology) services.
[0003] Normally, the facilities are operated based on the power supply conditions contracted for each building. However, in the event of a power outage due to a disaster or the like, it is necessary to maintain the service within the range of power supply by the generators installed in each building. Since the power that can be supplied from the generators (output, maintenance time alone) is small compared to the normal power supply, measures such as restricting the services to be maintained in case of a long-term power outage are required.
[0004] Conventionally, physical resources such as communication facilities and server devices installed in each building and the services provided thereon have been closely linked. However, with the recent progress of virtualization technology, various services have come to be provided on virtual machines, and physical resources (physical servers) and services (virtual machines) can be handled independently. As a result, operations such as moving (migrating) a virtual machine from one physical resource to another physical resource or aggregating virtual machines distributed across multiple physical resources onto a single physical resource have become easier. By utilizing this virtualization technology, in addition to restricting the services to be maintained during a long-term power outage, it is possible to take measures such as moving the services to buildings where there is no power outage.
Prior Art Documents
Non-Patent Documents
[0005]
Non-Patent Document 1
Non-Patent Document 2
Non-Patent Document 3
Summary of the Invention
Problems to be Solved by the Invention
[0006] When migrating services between buildings, since there are services already running in the destination building, it is not always possible to perform a one-to-one migration from the physical server in the source building to the physical server in the destination building. Therefore, it is necessary to determine the destination in units of virtual machines. Fig. 1 shows an example of migrating a plurality of virtual machines housed in the physical server A-1 of building A, which is the source, to two physical servers B-1 and B-2 in the destination building B.
[0007] In addition, in order not to cause resource exhaustion at the destination due to the migration of virtual machines, it is necessary to confirm that when the amount of resources required by the virtual machines accommodated at the source (power / virtual CPU / virtual memory size / virtual storage capacity / network bandwidth, etc.) is superimposed on the amount of resources consumed by the virtual machines accommodated at the destination, it does not exceed the allowable upper limit value of the physical resources at the destination. Also, since the amount of resources required by virtual machines varies depending on service demand, it is also important to confirm that the allowable upper limit of the amount of resources is not exceeded until the power supply at the source is restored. However, in the case of a large-scale power outage or the like where migration is required between multiple buildings, the combinations of the source and the destination become enormous, and it is not easy to confirm. Fig. 2 shows an example of the case where migration is performed between multiple buildings in the power outage area and multiple buildings in the destination area 1 and destination area 2.
[0008] Non-Patent Document 1 discloses a technique for remote live migration during a disaster, but only points out problems with data transfer associated with migration, and does not mention resource competition in the physical server at the destination.
[0009] Non-Patent Document 2 discloses a technique for migration between clouds with heterogeneous environments, but it is a study focusing on the virtualization overhead of I / O devices and does not mention the avoidance of competition including other resources.
[0010] Non-Patent Document 3 points out that excessive overcommitment has an adverse effect on performance regarding overcommitment that allocates a number of virtual machines exceeding the resource upper limit value of a physical server, but it only stays at the performance analysis regarding virtual CPUs and does not mention competition of other resources.
[0011] The present invention has been made in view of the above points, and an object thereof is to provide a technology that enables determination of a destination for migration of a virtual machine from one physical server to another physical server so that resource depletion does not occur on the destination physical server in the migration.
Means for Solving the Problems
[0012] According to the disclosed technology, there is provided a destination determination device that determines a physical server that is a destination for migration of a virtual machine in the migration of the virtual machine, the destination determination device including: an extraction unit that extracts one or more variation patterns regarding resource usage amounts from resource amount logs acquired from a plurality of physical servers; a destination determination unit that determines a physical server that is a destination for migration of the virtual machine based on a similarity between a variation pattern of the resource usage amount of the virtual machine in the source area and a variation pattern of the resource usage amount of a physical server in another area. A destination determination device including these is provided.
Effects of the Invention
[0013] According to the disclosed technology, there is provided a technology that enables determination of a destination for migration of a virtual machine from one physical server to another physical server so that resource depletion does not occur on the destination physical server in the migration.
Brief Description of the Drawings
[0014]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Embodiments for Carrying Out the Invention
[0015] Hereinafter, embodiments of the present invention (these embodiments) will be described with reference to the drawings. The embodiments described below are merely examples, and the embodiments to which the present invention is applied are not limited to the following embodiments.
[0016] (Outline of the Embodiment) In these embodiments, paying attention to the similarity of the variation patterns of resource usage amounts between virtual machines and physical servers based on the collected information of power consumption, device load, and traffic volume, the ICT resource migration destination determination device 100 described later determines the physical server to which a virtual machine is to be migrated based on the similarity.
[0017] In order to avoid resource depletion when performing migration from another physical server to a physical server on which a service is running, it is necessary to coexist virtual machines that require resources different from those of the service on the destination physical server, or virtual machines that require the same resources but have different usage time zones on the destination physical server. Requiring different resources or having the same resources but different usage time zones are examples indicating low similarity in the variation patterns of resource usage amounts.
[0018] By the technology described in detail below, the ICT resource migration destination determination device 100 can quickly find a destination with a variation pattern that is less similar to the variation pattern of the resource usage of the virtual machine at the source by grasping the similarity of the variation patterns of resource usage between different building servers, and can realize migration with reduced resource competition.
[0019] (System configuration example) FIG. 3 is a diagram showing the functional configuration of the ICT resource migration destination determination device 100 according to an embodiment of the present invention. In FIG. 3, a plurality of physical servers 10, an ICT device monitoring device 20, and a control device 30 are also shown. Note that the ICT resource migration destination determination device 100 may be referred to as a "migration destination determination device". Also, a system including the ICT resource migration destination determination device 100 and the ICT device monitoring device 20 may be referred to as a migration destination determination system.
[0020] In the example of FIG. 3, the plurality of physical servers 10 are distributed and housed in a plurality of buildings. The ICT device monitoring device 20 is connected to the plurality of physical servers 10 via a network and collects device logs from the plurality of physical servers 10. The ICT resource migration destination determination device 100 is connected to the ICT device monitoring device 20 via a network and acquires device logs from the ICT device monitoring device 20.
[0021] The control device 30 receives information (such as an address) of the migration destination of the virtual machine, which is the processing result, from the ICT device monitoring device 20, and based on the information, gives instructions to the corresponding physical servers (for example, each of the source physical server and the destination physical server), thereby causing the virtual machine to migrate from the source physical server to the destination physical server. Note that the ICT resource migration destination determination device 100 may include the functions of the control device 30.
[0022] As shown in FIG. 3, the ICT resource destination determination device 100 includes a preprocessing unit 110, an extraction unit 120, a priority calculation unit 130, and a destination determination unit 140. Note that the function of the preprocessing unit 110 may be included in the extraction unit 120. Also, the function of the priority calculation unit 130 may be included in the destination determination unit 140. The functional outlines of each unit are as follows.
[0023] The preprocessing unit 110 reads the resource amount log from the ICT device monitoring device 20 and performs narrowing down and processing of the data to be analyzed. The extraction unit 120 performs analysis using the processed data as input, extracts an arbitrary number of representative variation patterns specified in advance from the input data, and calculates the "degree of relevance" indicating how related the items on each axis of the input data are to each pattern.
[0024] The priority calculation unit 130 calculates weights for determining the order in which the destinations of the virtual machines are evaluated based on the priorities for each resource separately specified by the person performing the analysis.
[0025] The destination determination unit 140 determines the order in which the destinations of the virtual machines are evaluated using the weights in the previous priority calculation unit 130, evaluates the destinations of the virtual machines in the power outage area according to the evaluation order, determines the destination, and outputs it. Note that in this embodiment, it is assumed that the virtual machines on the physical servers of the buildings in the power outage area are moved, but this is just an example, and the reason for the movement is arbitrary. For example, there may be a case where the virtual machines are moved to the physical servers of another building in advance for building construction.
[0026] Also, the unit of "area" in this embodiment is arbitrary. The "area" may be a unit such as a municipality, or a grid unit of a predetermined size, or one building may be one area.
[0027] FIG. 4 shows a more detailed connection configuration example regarding the ICT device monitoring device and the physical server. In the example shown in FIG. 4, the ICT device monitoring device 21 is provided in Building A, and the ICT device monitoring device 22 is provided at the monitoring base.
[0028] The ICT device monitoring apparatuses 21 and 22 collect and store the device logs of physical servers as observation information. Devices such as sensors capable of transmitting observation information may be added to observe the state of the physical servers. Although it is assumed that the device logs of the ICT devices including these physical servers are periodically transmitted to the ICT device monitoring apparatuses 21 and 22, the ICT device monitoring apparatuses 21 and 22 may actively acquire the device logs of the ICT devices from the physical servers.
[0029] The ICT device monitoring apparatuses may be installed for each building, may be installed at an external monitoring site, or may be configured in multiple stages. The example in FIG. 4 is an example in which the ICT device monitoring apparatuses are configured in multiple stages in Building A and the monitoring site.
[0030] As shown in FIG. 5, the ICT device monitoring apparatus 20 may monitor a plurality of areas. Also, as the recording destination of the device logs of the ICT devices, the main memory and secondary storage device (collectively referred to as storage means) of the ICT device monitoring apparatus 20 are assumed, but it is not limited thereto.
[0031] In the following description, it is assumed that the ICT device in which the virtual machine operates is a physical server. Note that the ICT device including the physical server may be referred to as an information communication device.
[0032] FIG. 6 shows an example of the functional configuration of the physical server 10. As shown in FIG. 6, the physical server 10 includes a virtual machine 11 and a migration execution unit 12. The migration execution unit 12 receives, for example, from the control device 30 the information on the migration destination of the virtual machine 11 determined by the ICT resource migration destination determination device 100, and based on the information, executes a migration to move the virtual machine 11 to the physical server at the migration destination. In the migration, for example, the memory image of the virtual machine 11 is transferred to the physical server at the migration destination.
[0033] (Example of device log) In this embodiment, the ICT device monitoring apparatus 20 records, in a storage means, a resource amount log indicating an individual usage amount, a resource amount log indicating a total usage amount, and a resource amount log indicating a remaining amount, in the formats shown in FIGS. 7(a), (b), and (c), from the device logs of the physical servers collected from the physical servers.
[0034] The timestamp in the resource amount log of the individual usage amount shown in FIG. 7(a) is the time when the resource amount log was saved. The area ID, building ID, and server ID are identifiers arbitrarily assigned by a communications carrier. The area ID is the ID of the area where the log was acquired, the building ID is the ID of the building where the log was acquired, and the server ID is the ID of the physical server where the log was acquired.
[0035] The virtual machine ID is the ID of the virtual machine where the log was acquired, and may be arbitrarily assigned by a communications carrier or may be automatically assigned by a virtualization system. Examples of resource items specifically include power, virtual CPU, virtual memory size, virtual storage capacity, and network bandwidth. The resource value is a value associated with each resource item, and represents the resource consumption amount for each virtual machine, such as the power consumption amount of the corresponding virtual machine in the case of power, or the logical CPU allocation amount to the corresponding virtual machine in the case of virtual CPU.
[0036] The resource amount log of the total usage amount shown in FIG. 7(b) is a log of the total usage amount of resources in the physical server indicated by a resource position ID described later. The value of the log may be directly collected from each server or may be calculated from logs in which the area ID, building ID, and server ID in the resource amount log of the individual usage amount are common.
[0037] The resource amount log of the remaining amount shown in FIG. 7(c) is a log of the remaining amount of resources in the physical server indicated by the resource position ID. Regarding the value of the log, the observed resource value may be used if it is observable, or it may be calculated by the difference between the upper limit amount for each given resource item and the resource value of the total usage amount. Even when the resource upper limit amount is not given, the maximum value of the past resource values may be regarded as the resource upper limit amount and calculated by the difference from the resource value of the total usage amount.
[0038] Note that the resource amount log of the total usage amount and the resource amount log of the remaining amount are stored in the same format as the resource amount log of the individual usage amount. For example, in order to distinguish them from the resource amount log of the individual usage amount, a 0 or a string representing the total usage amount is given to the virtual machine ID part in the resource amount log of the total usage amount, and a -1 or a string representing the remaining amount is given to the virtual machine ID part in the resource amount log of the remaining amount.
[0039] Hereinafter, unless otherwise specified, the three types of the resource amount log of the individual usage amount, the resource amount log of the total usage amount, and the resource amount log of the remaining amount are collectively referred to as the resource amount log, and the combination of the area ID, building ID, server ID, and virtual machine ID is referred to as the resource position ID. The resource position ID is a unique value under the ICT device monitoring apparatus 20.
[0040] (Operation Example) Hereinafter, an operation example of the ICT resource destination determination apparatus 100 will be described. FIG. 8 is a flowchart for explaining an example of the processing procedure executed by the ICT resource destination determination apparatus 100. The processing procedure will be described according to the procedure of the flowchart in FIG. 8. Note that the series of processing procedures described with reference to FIG. 8 can be implemented in any programming language, script language, or a combination thereof.
[0041] <S101~S104> The preprocessing unit 110 reads the resource amount logs recorded in the ICT device monitoring apparatus 20, and performs narrowing down and processing of data necessary for analysis by the processes described later. As an output result of the preprocessing unit 110, one three-dimensional array X is obtained. The detailed procedure is as follows.
[0042] First, in S101, the preprocessing unit 110 acquires, from the ICT device monitoring apparatus 20 with reference to time stamps, a set of resource amount logs (three types of resource amount logs) for a predetermined period T. The start time t1 and the end time t2 of the period T are numerical values arbitrarily determined by the person performing the analysis, but it is preferable to target logs for several days in order to observe the variation trend of the resources. Also, it is assumed that each resource value of the resource amount log is discretized at a time granularity such as one minute or five minutes based on the aggregation specification of the ICT device monitoring apparatus 20.
[0043] Next, in S102 and S103, the preprocessing unit 110 extracts, from the resource amount logs acquired in S101, the resource amount logs of the individual usage amounts associated with the physical servers existing in the power outage area based on the power outage area information separately specified by the person performing the analysis. At the same time, the resource amount logs of the total usage amounts and the remaining amounts associated with the physical servers existing in the neighboring area within a distance d from the power outage area are extracted.
[0044] Here, in S102, the preprocessing unit 110 specifies the neighboring area within a distance d from the power outage area as follows based on the adjacent area list defined in advance by the person performing the analysis.
[0045] Now, when paying attention to a certain specific area (for example, area A in FIG. 9(a)), the area A and the areas (A, B, C, D) adjacent to area A become the neighboring areas within a distance 1 from area A. Next, the neighboring areas within a distance 1 from area A and the areas including the areas adjacent thereto (A, B, C, D, E, F) become the neighboring areas within a distance 2 from area A. By following the adjacent area list (FIG. 9(b)) in this way, the neighboring area within a distance d (d is an integer) from the specified area is specified.
[0046] Furthermore, in S104, the preprocessing unit 110 generates a three-dimensional array X that represents the relationship among the resource position ID, resource item, and timestamp from the set of extracted resource amount logs. The three-dimensional array X is data with each resource position ID, each resource item name, and each timestamp as items on each axis and the resource value as an element. Note that data of multiple timestamps may be converted to a larger time granularity such as 30 minutes or 1 hour, and the resource value may be used as a statistical value of a time interval at the corresponding time granularity. At this time, as the method for calculating the statistical value, an average value, a maximum value, a median value, etc. are assumed.
[0047] Any one of these statistical values may be used, or multiple statistical values may be used in the form of the interval average value of the resource item, the interval maximum value of the resource item, the interval median value of the resource item, etc. This is to adjust how much the exceeding of the physical resource upper limit amount is allowed during migration in consideration of the fact that the influence when exceeding the physical resource upper limit amount varies depending on the resource item. For example, when the resource item to be handled is power, if the physical resource upper limit amount is exceeded, the power supply to the corresponding physical server will be cut off by the breaker, so it is necessary to use the maximum value as the statistic. On the other hand, when the resource item to be handled is a virtual CPU or a line bandwidth, even if the physical resource upper limit amount is temporarily exceeded, the influence is only limited to the occurrence of waiting times for processing and transfer, so an average value or a median value may be used as the statistic.
[0048] FIG. 10 shows an example of the three-dimensional array X. In FIG. 10, the time interval, resource item name, and resource position ID are used as items on each axis. The number of items L on the time interval axis is a number that depends on the period T of the input observation information and the aggregation granularity. The number of items M on the resource item axis is a number that depends on the resource items collected by the ICT device monitoring apparatus 20. The number of items N of the resource position ID is a number that depends on the physical servers and virtual machines existing in the vicinity area of the distance d selected by the preprocessing unit 110. The element of the three-dimensional array X corresponding to a certain time interval l ∈ L, a certain resource item m ∈ M, and a certain resource position ID n ∈ N is x l,m,nIt is represented by. The three-dimensional array X created in S104 is stored in a storage means such as a memory in the ICT resource transfer destination determination device 100 and is read out in subsequent processing.
[0049] <s105> In S105, the extraction unit 120 takes the three-dimensional array X processed by the preprocessing unit 110 as input, and by applying a pattern extraction method described later, extracts an arbitrary number K of representative ICT resource load fluctuation patterns specified in advance from the input data, and calculates the "degree of relevance" indicating how related the items on each axis of the input data are to each pattern. As the output result of the extraction unit 120, three two-dimensional arrays A, B, C and one three-dimensional array H are obtained.
[0050] Here, the obtained two-dimensional array has, as elements, the degree of relevance between the items on each axis of the three-dimensional array X and the specified K representative ICT resource load fluctuation patterns by the pattern extraction method described later.
[0051] Among the obtained two-dimensional arrays, the two-dimensional array with the time stamp (or time interval) and the representative ICT resource load fluctuation pattern as axes is hereinafter referred to as A, the two-dimensional array with the resource item name and the representative ICT resource load fluctuation pattern as axes is hereinafter referred to as B, and the two-dimensional array with the resource position ID and the representative ICT resource load fluctuation pattern as axes is hereinafter referred to as C.
[0052] FIG. 11 shows an example of the two-dimensional arrays A, B, C which are the output results of the pattern extraction method. As shown in FIG. 11, K time-series fluctuations can be obtained from the two-dimensional array A.
[0053] Also, from the two-dimensional array B, it is possible to grasp the resource item names that are the basis for extracting each representative ICT resource load fluctuation pattern. That is, resource items with a high degree of relevance to a certain fluctuation pattern are considered to be the basis for extracting that fluctuation pattern.
[0054] Also, from the two-dimensional array C, it is possible to grasp the resource position IDs that are the basis for extracting each representative ICT resource load fluctuation pattern. On the other hand, the three-dimensional array H is data for calculating a three-dimensional array from the three two-dimensional arrays.
[0055] Next, an example of the pattern extraction method applied by the extraction unit 120 will be described. As the pattern extraction method, any method for extracting the relevance between each axis and each pattern with a three-dimensional array as the input, such as NTF (Non-negative Tensor Factorization), CP decomposition, Tucker decomposition, etc., can be used.
[0056] Regarding NTF, for example, "Max Welling, and Markus Weber. 'Positive tensor factorization.' Pattern Recognition Letters 22.12, 1255-1261 (2001)." etc. can be utilized. Also, regarding CP decomposition, "Carroll, J.D., Chang, J. 'Analysis of individual differences in multidimensional scaling via an n-way generalization of "Eckart-Young" decomposition.' Psychometrika 35, 283-319 (1970)." etc. can be utilized. Regarding Tucker decomposition, "Tucker, L.R. 'Some mathematical notes on three-mode factor analysis.' Psychometrika 31, 279-311 (1966)." etc. can be utilized.
[0057] <s106> In S106, the priority calculation unit 130 calculates the weight of the variation pattern to be used for determining the order (order of virtual machines) in which the destinations of the virtual machines in the power outage area are evaluated according to the priority for each resource item separately specified by the person performing the analysis. Regarding the priority, for example, information indicating the priority for each resource item is pre-transmitted from the terminal of the person performing the analysis to the ICT resource movement destination determination device 100, and the ICT resource movement destination determination device 100 holds the information indicating the priority in a memory or the like. In S106, the ICT resource movement destination determination device 100 performs calculations using the information indicating the priority.
[0058] The priority can be arbitrarily specified by the person performing the analysis. For example, memory / storage that needs to exclusively secure resources is given the highest priority, power that allows a certain degree of temporal fluctuation in resource utilization although physical resource overage is not allowed is given high priority, CPU / bandwidth that causes only a temporary performance degradation even if physical resources are exceeded for a short time is given medium priority, and other items for which data is collected as resource items but the performance impact when physical resources are exceeded is unknown are given low priority, etc. can be considered.
[0059] More specifically, the person performing the analysis sets, as information indicating the priority, a coefficient w corresponding to the degree of priority in the priority order. m The coefficient assigns a larger value to a resource item with a higher priority order (w1≧w2≧···≧w m ≧0). The priority calculation unit 130 calculates the weight for the variation pattern k based on this coefficient w m and the two-dimensional array B. Specifically, when the value of the relevance between the variation pattern k and the resource item m in the two-dimensional array B is b k,m , Σ m∈{1,…,M} w m b k,m is set as the weight of the variation pattern k. This value represents the relevance between the variation pattern k and the resource item with a high priority.
[0060] <S107, S108> In S107 and S108, the destination determination unit 140 determines the destination of each virtual machine in the power outage area based on the weight for each variation pattern calculated by the priority calculation unit 130 and the two-dimensional array C. The destination determination unit 140 transmits the determined destination to the control device 30.
[0061] First, in S107, the destination determination unit 140 divides the two-dimensional array C into three sub-arrays based on the information of the resource position ID. That is, there are three sub-arrays: a sub-array associated with the set of resource position IDs of virtual machines in the power outage area, a sub-array associated with the set of resource position IDs of physical servers in the neighboring area, and each sub-array regarding the total resource utilization amount and the remaining resource amount of the corresponding physical server.
[0062] FIG. 12 shows a simple example of the three sub-arrays. In the upper part of FIG. 12, for the sake of easy understanding of the explanation, the variation pattern axis of the two-dimensional array C is sorted in descending order of the weight (Σ m∈{1,…,M} w m b k,m ), and the resource position ID axis is sorted in descending order of the degree of association with each variation pattern. Here, first, the resource position ID axis is sorted in descending order of the degree of association in the first (maximum weight) variation pattern, and for the resource position ID axes with the same degree of association, they are sorted in descending order of the degree of association in the variation pattern with the next largest weight. In this way, the resource position ID axis is sorted in descending order of the degree of association with each variation pattern.
[0063] Also, the resource position ID is each value of the area ID, building ID, server ID, and virtual machine ID, 0, -1. In this example, a power outage occurs in area A, and the destination of the virtual machine is evaluated with neighboring areas B and C as candidates.
[0064] Hereafter, for the sake of convenience of explanation, new order indicators are given to each. That is, for the individual resource utilization amounts of virtual machines in the power outage area, in descending order of the degree of association with each variation pattern, n u ={1,…,N u For the total resource utilization of the physical servers in the vicinity area, in descending order of the degree of association with each variation pattern, n t ={1,…,N t For the resource surplus of the physical servers in the vicinity area, in descending order of the degree of association with each variation pattern, n r ={1,…,N r Let it be. Note that N u +N t +N r =N, N t =N r is.
[0065] n u ={1,…,N u} indicates the order of evaluation of the destination of the virtual machine migration. For example, in the example of FIG. 11, the virtual machine with the resource position ID = {A, 1, 1, 1} has n u =1, the virtual machine with the resource position ID = {A, 1, 2, 2} has n u =2,....
[0066] Also, for the sake of simplifying the determination, the values of the two-dimensional array are converted to 0 and 1 by a separately determined threshold value (the converted ones are shown below FIG. 11). This threshold value can be arbitrarily set by the person performing the analysis, or the average value or median value of the values of the two-dimensional array C can be set. Hereinafter, the processing is performed using the three sub-arrays after this conversion.
[0067] For the variation pattern k, order index n u , n t , n r corresponding values (the values of the elements of the sub-array) in the two-dimensional array C are respectively c k,n_u , c k,n_t , c k,n_r Let it be. In S108, the destination determination unit 140 determines the physical server as the destination for the virtual machine n u in the power outage area by the following procedure.
[0068] The destination determination unit 140 evaluates the following (1), (2), (3-1), and (3-2) for the virtual machine n u ={1,…,N u} in this order.
[0069] (1) For the physical servers n in the neighboring area that are candidate destinations, where n = {1, …, N}, evaluate the following Equation 1 in this order. r ={1,…,N r} and evaluate the following Equation 1 in this order.
[0070] min k (c k,n_r -c k,n_u ) ≥ 0 Equation 1 Note that min(c - c) represents the minimum value of "c - c" among k = 1 to K. The same applies to the equations using min hereinafter. k (c k,n_r -c k,n_u ) is the minimum value of "c - c" among k = 1 to K of "c - c". The same applies to the equations using min hereinafter. k,n_r -c k,n_u ", which means that for any k, "c = 0, c = 1" does not occur. "c = 0, c = 1" indicates that for a variable pattern highly related to the resource usage of virtual machine n, the remaining resource amount of physical server n is less related. In this case, there may be a high similarity between the variable pattern of the resource usage of virtual machine n and the variable pattern of the resource usage of physical server n. k,n_r -c k,n_u ", which means that for any k, "c = 0, c = 1" does not occur. "c = 0, c = 1" indicates that for a variable pattern highly related to the resource usage of virtual machine n, the remaining resource amount of physical server n is less related. In this case, there may be a high similarity between the variable pattern of the resource usage of virtual machine n and the variable pattern of the resource usage of physical server n.
[0071] That is, the above Equation 1 means selecting a physical server n such that the similarity of the variable patterns of resource usage between virtual machine n and physical server n is low. k,n_r = 0, c k,n_u = 1" does not occur. "c k,n_r = 0, c k,n_u = 1" indicates that for a variable pattern highly related to the resource usage of virtual machine n, the remaining resource amount of physical server n is less related. In this case, there may be a high similarity between the variable pattern of the resource usage of virtual machine n and the variable pattern of the resource usage of physical server n. u 's resource usage and the remaining resource amount of physical server n r is less related. In this case, there may be a high similarity between the variable pattern of the resource usage of virtual machine n u and the variable pattern of the resource usage of physical server n r .
[0072] That is, the above Equation 1 means selecting a physical server n such that the similarity of the variable patterns of resource usage between virtual machine n u and physical server n r is low. r
[0073] For one or more physical servers n for which the above Equation 1 holds, use the physical server n r as virtual machine n r for virtual machine n u As the movement destination candidate, evaluate the following equation for all resource items m.
[0074] min l (x l,m,n_r -x l,m,n_u )≧-δ m Equation 2 The fact that the above Equation 2 holds means that, for all time intervals, with respect to resource item m, the excess of the resource usage amount of virtual machine n u over the remaining resource amount of physical server n r is δ m or less.
[0075] When the above Equation 2 holds for all resource items m, determine physical server n r as the movement destination server n u of virtual machine n * u . δ m is the excess tolerance set for the resource item, and it may be separately specified by the person performing the analysis, or using the coefficient w m corresponding to the degree of priority in the priority order, give it as "δ m =R m max / w m ". That is, the higher the priority, the smaller the excess tolerance, so that a physical server with a larger remaining amount can be selected for the resource item. Here, R m max represents the upper limit value in resource item m.
[0076] (2) If the movement destination of virtual machine n u is not determined in the process of (1) above, for the physical servers n t ={N t ,…,1} in the neighboring area that are movement destination candidates, evaluate the following Equation 3 in this order (in the order of lower relevance to the variation pattern).
[0077] max k (c k,n_t +c k,n_u )≦1 Equation 3 Note that max k (c k,n_t +c k,n_u ) represents the maximum value of "c k,n_t +c k,n_u " among "c k,n_t +c k,n_u " for k = 1 to K. The same applies to the equations using max below.
[0078] The fact that the above Equation 3 holds indicates that c k,n_t and c k,n_u do not both become 1 at the same time. Therefore, it shows that the similarity of the resource usage variation patterns between the virtual machine n u and the physical server n t is low.
[0079] When the above Equation 3 holds, for the physical server n t as a candidate destination for moving the virtual machine n u , for the remaining amount n t corresponding to the physical server n r , evaluate the following Equation 4 for all resource items m.
[0080] max l (x l,m,n_u ) ≤ x l,m,n_r + δ m Equation 4 The fact that the above Equation 4 holds indicates that for all time intervals, with respect to the resource item m, the resource usage of the virtual machine n u is less than or equal to the sum of the resource remaining amount and the excess tolerance of the physical server n t .
[0081] When the above Equation 4 holds for all resource items m, determine the physical server n t as the destination server n u for moving the virtual machine n * u .
[0082] (3 - 1) When the destination for moving the virtual machine n u is determined by the above (1) or (2) process, the destination server n * u Based on the area ID, building ID, and server ID, update the total utilization (x n_t,m,l ), surplus (x n_r,m,l ) of the corresponding physical server as follows. For all m and l: x l,m,n_t ←x l,m,n_t +x l,m,n_u , x l,m,n_r ←x l,m,n_r -x l,m,n_u Here, when min l (x l,m,n_r )≦δ m for all m and l, exclude the corresponding physical server from the candidate destinations in subsequent processing.
[0083] (3 - 2) If the destination of virtual machine n u is not determined in the above processes (1) and (2), assume that virtual machine n u cannot be accommodated in the neighboring area as a candidate destination, and add it to the list of virtual machines with undetermined destinations. The list of virtual machines with undetermined destinations is stored in a storage unit such as the memory of the ICT resource destination determination device 100.
[0084] The above are the processes of (1), (2), (3 - 1), and (3 - 2).
[0085] For the virtual machines with undetermined destinations listed in the list of virtual machines with undetermined destinations, after a series of processes are completed, perform the same processes on the servers existing in the neighboring area at a distance of d + 1.
[0086] Also, if you want to summarize the destinations of virtual machines by building unit and server unit, you can perform the above evaluation after rounding by building unit and server unit.
[0087] To start a faster migration, it is advisable to perform the processes according to this embodiment for each area during normal times and calculate the candidate destinations for the virtual machines in each area.
[0088] (Hardware Configuration Example) The ICT resource migration destination determination device 100, the ICT device monitoring device 20, the physical server 10 (ICT device, information and communication device), and the control device 30 can all be realized, for example, by causing a computer to execute a program. Regarding the ICT resource migration destination determination device 100, the ICT device monitoring device 20, and the control device 30, this computer may be a physical computer or a virtual machine. Hereinafter, the ICT resource migration destination determination device 100, the ICT device monitoring device 20, the physical server 10, and the control device 30 are collectively referred to as "devices".
[0089] That is, the device can be realized by using hardware resources such as a CPU and a memory built into the computer to execute a program corresponding to the processing performed by the device. The above program can be recorded on a computer-readable recording medium (such as a portable memory), stored, distributed, or provided through a network such as the Internet or email.
[0090] FIG. 13 is a diagram showing a hardware configuration example of the above computer. The computer in FIG. 13 includes a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, etc., which are mutually connected by a bus BS.
[0091] A program for realizing the processing on the computer is provided by a recording medium 1001 such as a CD-ROM or a memory card, for example. When the recording medium 1001 storing the program is set in the drive device 1000, the program is installed from the recording medium 1001 via the drive device 1000 to the auxiliary storage device 1002. However, the program does not necessarily have to be installed from the recording medium 1001, and it may be downloaded from another computer via a network. The auxiliary storage device 1002 stores the installed program and also stores necessary files, data, etc.
[0092] When an instruction to start the program is given, the memory device 1003 reads out and stores the program from the auxiliary storage device 1002. The CPU 1004 realizes the functions related to the device according to the program stored in the memory device 1003. The interface device 1005 is used as an interface for connecting to a network or the like. The display device 1006 displays a GUI (Graphical User Interface) or the like by the program. The input device 1007 is composed of a keyboard, a mouse, buttons, or a touch panel, etc., and is used to input various operation instructions. The output device 1008 outputs the calculation result.
[0093] (Effects of the Embodiment) According to the technology of this embodiment, since the destination can be determined based on the similarity between the load status of the virtual machine in the power outage area and the load status of the physical server in the neighboring area, it is possible to realize migration that suppresses the competition of resource fluctuations associated with the overlap of loads.
[0094] (Summary of the Embodiment) This specification discloses at least a destination determination device, a physical server, a destination determination system, a destination determination method, and a program according to the following respective items. (Item 1) A destination determination device that determines a physical server to be the destination of the virtual machine in the migration of the virtual machine, An extraction unit that extracts one or more variation patterns regarding resource usage amounts from resource amount logs acquired from a plurality of physical servers, and a destination determination unit that determines a physical server to be the destination of the virtual machine based on the similarity between the variation pattern of the resource usage amount of the virtual machine in the source area and the variation pattern of the resource usage amount of the physical server in another area A destination determination device comprising the above. (Item 2) The extraction unit generates a three-dimensional array having resource values as elements, which has axes of time intervals, resource positions, and resource items, from the resource amount logs, and calculates a degree of association indicating how related each item of each axis is to each variation pattern from the three-dimensional array, The destination determination unit determines the similarity using the degree of association. The destination determination device according to Item 1. (Item 3) When it is determined that the similarity of the variation pattern between the virtual machine and the physical server is low based on the degree of association between the virtual machine and each variation pattern and the degree of association between the physical server and each variation pattern, the destination determination unit determines the physical server as a candidate for the destination. The destination determination device according to Item 2. (Item 4) The destination determination unit determines the physical server as the destination from one or more physical servers that are candidates for the destination based on the remaining resource amounts in the one or more physical servers that are candidates for the destination and the resource usage amount of the virtual machine. The destination determination device according to Item 3. (Item 5) The destination determination device according to any one of Items 1 to 4, and an ICT device monitoring device that collects the resource amount logs from the plurality of physical servers, A destination determination system comprising the above. (Item 6) A physical server that is a target for acquiring a resource amount log used in the destination determination device according to any one of Items 1 to 4, A migration execution unit that receives information on the destination of a virtual machine determined by the destination determination device and migrates the virtual machine to the destination. A physical server comprising the same. (Item 7) A destination determination method executed by a destination determination device that determines a physical server as the destination of a virtual machine in the migration of the virtual machine, the method comprising: An extraction step of extracting one or more variation patterns of resource utilization amounts from resource amount logs acquired from a plurality of physical servers; and A destination determination step of determining a physical server as the destination of the virtual machine based on the similarity between the variation pattern of the resource utilization amount of the virtual machine in the source area and the variation pattern of the resource utilization amount of the physical servers in other areas. A destination determination method comprising the same. (Item 8) A program for causing a computer to function as the destination determination device according to any one of Items 1 to 4.
[0095] As described above, the present embodiment has been described. However, the present invention is not limited to such a specific embodiment, and various modifications and changes are possible within the scope of the gist of the present invention described in the claims.
Explanation of Signs
[0096] 10 Physical server 11 Virtual machine 12 Migration execution unit 20 ICT device monitoring device 30 Control device 100 ICT resource destination determination device 110 Preprocessing unit 120 Extraction unit 130 Priority calculation unit 140 Destination determination unit 1000 Drive device 1001 Recording medium 1002 Auxiliary storage device 1003 Memory device 1004 CPU 1005 Interface device 1006 Display device 1007 Input device 1008 Output device
Claims
1. A destination determination device that determines a physical server to be the destination of a virtual machine, comprising a destination determination unit that determines a physical server to be the destination of the virtual machine based on the similarity between the variation pattern of the resource utilization amount of the virtual machine in the source area and the variation pattern of the resource utilization amount of a physical server in another area, further comprising a calculation unit that calculates a degree of correlation indicating how closely related the information associated with the resource value identifying the virtual machine or the physical server within a predetermined time period is to the variation pattern of the resource utilization amount of the virtual machine or the physical server, wherein the destination determination unit determines the similarity using the degree of correlation. Destination determination device.
2. The calculation unit: extracts one or more variation patterns of the resource utilization amount from the resource amount logs acquired from a plurality of physical servers, generates a three-dimensional array having as elements resource values with axes of time intervals, resource positions, and resource items from the resource amount logs, and calculates the degree of correlation indicating how closely related each item of each axis is to each variation pattern from the three-dimensional array. The destination determination device according to Claim 1.
3. When the destination determination unit determines that the similarity of the variation patterns between the virtual machine and the physical server is low based on the degree of correlation between the virtual machine and each variation pattern and the degree of correlation between the physical server and each variation pattern, the destination determination unit determines the physical server as a candidate for the destination. The destination determination device according to Claim 2.
4. The destination determination unit determines a physical server as the destination from one or more physical servers that are candidates for the destination based on the remaining resource amount in one or more physical servers that are candidates for the destination and the resource utilization amount of the virtual machine. The destination determination device according to Claim 3.
5. A destination determination system comprising the destination determination device according to any one of Claims 1 to 4, and an ICT device monitoring device that collects information on the resource utilization amount from the physical server.
6. A destination determination system comprising the destination determination device according to any one of Claims 1 to 4, and a physical server that is a target for acquiring information on the resource utilization amount used in the destination determination device.
7. A destination determination method executed by a destination determination device that determines a physical server to which a virtual machine will be moved, the method comprising: a destination determination step of determining a physical server to which the virtual machine will be moved based on a similarity between a variation pattern of resource usage of the virtual machine in a source area and a variation pattern of resource usage of a physical server in another area; further comprising a calculation step of calculating a degree of correlation indicating how closely the information and the variation pattern of resource usage of the virtual machine or the physical server are related, using a resource value associated with information identifying the virtual machine or the physical server in a predetermined time period; in the destination determination step, determining the similarity using the degree of correlation; destination determination method. **Claim 8** A program for causing a computer to function as the destination determination device according to any one of claims 1 to 4.
Citation Information
Patent Citations
Virtual machine movement management server and virtual machine movement method
JP2010117760A
Virtualization system control method and virtualization system control program
JP2010277208A
Virtual machine control device, virtual machine control program and virtual machine control method
JP2012088808A
QoS AWARE BALANCING IN DATA CENTERS
JP2013175177A
Load calculation method, load calculation program and load calculation device
JP2016126677A