Method and system for optimizing server energy efficiency performance of a data center

By calculating the load in the data center server cluster and adjusting the server status according to the load threshold, the problems of low server utilization and high energy consumption are solved, and energy efficiency is optimized.

CN115774619BActive Publication Date: 2025-11-28STATE GRID ZHEJIANG ELECTRIC POWER CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211661914.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-23
Publication Date
2025-11-28
Estimated Expiration
2042-12-23

AI Technical Summary

Technical Problem

Low utilization of data center servers and high energy consumption under no-load conditions lead to serious energy waste.

Method used

By calculating the load of each server node in the server cluster and setting upper and lower thresholds, the server is put into a sleep state when the load is low and woken up when the load is high. The state of the server nodes is optimized by combining the jitter coefficient and migration index, thereby optimizing energy efficiency.

Benefits of technology

It effectively reduces energy consumption, improves server energy efficiency, and optimizes server utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115774619B_ABST
    Figure CN115774619B_ABST
Patent Text Reader

Abstract

The application provides a method and system for optimizing energy efficiency performance of a server of a data center, the method comprising: calculating loads of each server node in a server cluster of the data center; calculating an average load according to the loads of each server node; in a case where the average load is lower than a lower threshold, selecting a first target server node from each server node according to the load of each server node; adjusting the first target server node to a sleep state; and in a case where the average load is higher than an upper threshold, waking up any server node in the sleep state, so as to optimize the energy efficiency performance of the server of the data center.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data center server energy efficiency performance analysis, and particularly relates to a data center server energy efficiency performance optimization method and system. BACKGROUND

[0002] Data centers play a huge business support role as enterprise information infrastructure, and the energy consumption of data centers has also attracted much attention. In order to meet the needs of cloud computing, the traffic processing capacity and room area of data centers need to be continuously increased, and the huge power consumption and growth rate of data centers have brought great challenges to energy saving and emission reduction targets.

[0003] At present, the utilization rate of servers in data centers is generally not high, and the energy consumption of idle load is high, which will lead to a large amount of energy waste, so it is necessary to optimize the energy efficiency performance of the servers in the data center. SUMMARY

[0004] Therefore, the embodiments of the present application provide a data center server energy efficiency performance optimization method and system to optimize the energy efficiency performance of the servers in the data center.

[0005] To achieve the above object, the embodiments of the present application provide the following technical solutions:

[0006] The first aspect of the embodiments of the present application discloses a data center server energy efficiency performance optimization method, which comprises:

[0007] calculating the load of each server node in the server cluster of the data center;

[0008] calculating the average load according to the load of each server node;

[0009] in the case that the average load is lower than the lower threshold, selecting a first target server node from each server node according to the load of each server node;

[0010] adjusting the first target server node to a sleep state;

[0011] in the case that the average load is higher than the upper threshold, waking up any server node in the sleep state.

[0012] Preferably, the load of each server node in the server cluster of the data center is calculated, comprising:

[0013] for each server node in the server cluster of the data center, obtaining the specified parameters of the server node, the specified parameters at least including: virtual machine utilization rate, CPU utilization rate, memory utilization rate, hard disk load and network load;

[0014] According to the designated parameter of the server node, the load of the server node is calculated.

[0015] Preferably, in the case that the average load is lower than the lower threshold, a first target server node is selected from each of the server nodes according to the load of each of the server nodes, comprising:

[0016] In the case that the average load is lower than the lower threshold, the jitter coefficient of each of the server nodes is calculated according to the load of each of the server nodes in the current period and the last period;

[0017] For each server node, the product between the jitter coefficient of the server node and the load of the server node in the current period is calculated;

[0018] The server node with the minimum product is determined as the first target server node.

[0019] Preferably, the method further comprises:

[0020] The first migration index and the second migration index of the server node are calculated according to the virtual machine utilization and the memory utilization of the server node;

[0021] The server node with the first migration index higher than the first threshold is selected from each of the server nodes as a second target server node;

[0022] The second target server node with the second migration index higher than the second threshold is selected from each of the second target server nodes as a third target server node;

[0023] The data in the third target server node is migrated to any other server node with the load less than the third threshold, and the third target server node is closed.

[0024] Preferably, the method further comprises:

[0025] The power of each server node in the server cluster of the data center is calculated according to a preset energy-saving analysis model.

[0026] The second aspect of the embodiment of the application discloses a system for optimizing the energy efficiency performance of the servers of a data center, comprising:

[0027] A first calculation unit is configured to calculate the load of each server node in the server cluster of the data center;

[0028] A second calculation unit is configured to calculate the average load according to the load of each of the server nodes;

[0029] a selecting unit, configured to select a first target server node from each of the server nodes according to the load of each of the server nodes when the average load is lower than a lower threshold value;

[0030] an adjusting unit, configured to adjust the first target server node to a sleep state;

[0031] a waking unit, configured to wake up any server node in the sleep state when the average load is higher than an upper threshold value.

[0032] Preferably, the first calculating unit is specifically configured to: acquire a specified parameter of each server node in the centralized server cluster, the specified parameter at least including virtual machine utilization, CPU utilization, memory utilization, hard disk load and network load; and calculate the load of the server node according to the specified parameter of the server node.

[0033] Preferably, the selecting unit includes:

[0034] a first calculating module, configured to calculate a jitter coefficient of each of the server nodes by using the load of each of the server nodes in a current period and a last period when the average load is lower than the lower threshold value;

[0035] a second calculating module, configured to calculate, for each server node, a product between the jitter coefficient of the server node and the load of the server node in the current period;

[0036] a determining module, configured to determine the server node with the minimum product as the first target server node.

[0037] Preferably, the method further includes:

[0038] a third calculating unit, configured to calculate a first migration index and a second migration index of the server node by using the virtual machine utilization and the memory utilization in the server node;

[0039] a first screening unit, configured to screen, from each of the server nodes, a server node with the first migration index higher than a first threshold value as a second target server node;

[0040] a second screening unit, configured to screen, from each of the second target server nodes, a second target server node with the second migration index higher than a second threshold value as a third target server node;

[0041] a migration unit, configured to migrate data in the third target server node to any other server node with a load less than a third threshold value, and to shut down the third target server node.

[0042] Preferably, further comprising:

[0043] A fourth computing unit is configured to calculate the power of each server node in the server cluster of the data center by using a preset energy-saving analysis model.

[0044] The method for optimizing the energy efficiency performance of the servers of the data center provided by the embodiment of the present application is as follows: the load of each server node in the server cluster of the data center is calculated; the average load is calculated according to the load of each server node; in the case that the average load is lower than the lower threshold, the first target server node is selected from each server node according to the load of each server node; the first target server node is adjusted to the sleep state; and in the case that the average load is higher than the upper threshold, any server node in the sleep state is woken up. In the present scheme, the load of each server node in the server cluster of the data center is calculated and the average load is calculated accordingly. When the average load is lower than the lower threshold, the first target server node is selected from the server nodes and is adjusted to the sleep state, and when the average load is higher than the upper threshold, any server node in the sleep state is woken up, so as to optimize the energy efficiency performance of the servers of the data center. BRIEF DESCRIPTION OF DRAWINGS

[0045] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings needed to be used in the embodiments or the prior art description will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative effort on the basis of the provided drawings.

[0046] Figure 1 The flowchart of the method for optimizing the energy efficiency performance of the servers of the data center provided by the embodiment of the present application is as follows:

[0047] Figure 2 The structural block diagram of the system for optimizing the energy efficiency performance of the servers of the data center provided by the embodiment of the present application is as follows. DETAILED DESCRIPTION

[0048] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative effort fall within the scope of the present application.

[0049] In this application, the terms "comprising", "containing" or any other similar words are intended to encompass non-exclusive inclusion, so that the process, method, article or equipment including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or equipment. Without more limitations, the element defined by the statement "comprising a" does not exclude the presence of other identical elements in the process, method, article or equipment including the element.

[0050] As known from the background art, the utilization rate of the servers in the data center is generally not high and the energy consumption of the idle load is high, which results in a large amount of energy being wasted, so it is necessary to optimize the energy efficiency performance of the servers in the data center.

[0051] Therefore, the embodiment of the present application provides a method and system for optimizing the energy efficiency performance of the servers in the data center, the load of each server node in the server cluster of the data center is calculated and the average load is calculated accordingly. When the average load is lower than the lower threshold, the first target server node is selected from the server nodes and is adjusted to the sleep state, and when the average load is higher than the upper threshold, any server node in the sleep state is woken up, so as to optimize the energy efficiency performance of the servers in the data center.

[0052] Referring to Figure 1 , a flowchart of a method for optimizing the energy efficiency performance of the servers in the data center is shown, the optimization method comprises:

[0053] Step S101: calculating the load of each server node in the server cluster of the data center.

[0054] It should be noted that the server node includes a plurality of virtual machines (the virtual machine is also referred to as a data center server); when measuring the load of the server node, the load of the server node is measured by a plurality of indexes such as the virtual machine utilization rate (that is, the virtual machine load), the CPU utilization rate (which can be used as the CPU load), the memory utilization rate (which can be used to measure the memory load), the hard disk load and the network load. Specifically, the load of the server node can be calculated by constructing a load information model.

[0055] The energy consumption and the load have a strong correlation, generally the higher the load of the server node is, the larger the corresponding energy consumption is, and the higher the energy consumption is, the larger the load is.

[0056] Therefore, in some embodiments, a preset energy-saving analysis model is used to calculate the power of each server node in the server cluster of the data center, and then the energy consumption of the server node can be determined. The energy-saving analysis model is described below.

[0057] Description of the energy-saving analysis model:

[0058] The reference energy consumption of the virtual machine is determined, and an energy-saving analysis model is established according to the reference energy consumption of the virtual machine. Specifically, the reference energy consumption of the virtual machine refers to the energy consumed by the virtual machine when completing a certain benchmark test case on average in a certain execution environment. The specific execution environment refers to how many virtual machines of what type, how the virtual machines are distributed, how much data, what neural network model is used, and the number of iterations.

[0059] For a server cluster performing a data processing task, there are N server nodes, each of which can be denoted as N i (i is greater than or equal to 1 and less than or equal to N), the power of the virtual machine of the server node N i at time t is denoted as p i (t), then the total time consumed for executing the same benchmark test case M times is T, and the specific content of the reference energy consumption of the virtual machine obtained is as formula (1).

[0060]

[0061] To better perform energy-saving analysis, a model between the data processing task and the energy consumption is constructed; since the virtual machine is the main energy-consuming part of the data processing task, the energy consumption of the data processing task mainly considers the relationship between the task completion time and the energy consumption, so the specific content of the constructed energy-saving analysis model is as formula (2).

[0062]

[0063] In formula (2), P max is the power of the virtual machine under full load, P i is the power of the server node i in the server cluster, P none is the power under empty load, and is the average usage rate of the server node i within a certain time.

[0064] The power of the server node can be determined through the energy-saving analysis model, and the energy consumption of the virtual machine can be analyzed to obtain the energy consumption status of the virtual machine.

[0065] The above is a description of the energy-saving analysis model.

[0066] It can be understood that since the accuracy of the load of the server node has a direct impact on the dynamic energy-saving decision of the server cluster, in order to better measure the real situation of the load of the server node, multiple indicators such as virtual machine utilization rate, CPU utilization rate, memory utilization rate, hard disk load, and network load are used to measure the load of the server node.

[0067] In the implementation of step S101, for each server node in the centralized server cluster, the specified parameters of the server node are obtained, and the specified parameters at least include: virtual machine utilization, CPU utilization, memory utilization, hard disk load and network load. According to the specified parameters of the server node, the load of the server node is calculated.

[0068] Specifically, the load of the server node i is Load(i) = (G i , C i , M i , D i , N i ), wherein G i is the virtual machine utilization, C i is the CPU utilization, M i is the memory utilization, D i is the hard disk load, and N i is the network load; the virtual machine utilization G i can be calculated by formula (3).

[0069]

[0070] In formula (3), G 1i to G ni are the virtual machine utilization of each virtual machine in the server node.

[0071] When G i , C i and M i have greater proportion than D i and N i , the calculation load of the server node i is greater, and considering the relationship between the cluster utilization, energy efficiency and cluster load, the server node i has higher energy utilization.

[0072] In the process of calculating the load of the server node i, for the universality of different applications, five coefficients P g , P c , P m , P d and P n are introduced, the value range of P g , P c , P m , P d and P n is in the interval [0, 1], and P g + P c + P m + P d + P n = 1. Therefore, the load of the server node i can be calculated by formula (4).

[0073] Load(i) = P g G i + P c C i + P m M i + P d D i + P n N i (4)

[0074] Since there are n server nodes in the server cluster, the average load of the n server nodes at time t can be calculated by formula (5).

[0075]

[0076] It should be noted that the specific values of P g , P c , P m , P d and P n need to be determined according to the characteristics of the data processing task. For a computationally intensive data processing task, the values of P g , P c and P m are large, while the values of P d and P n are small. For a data processing task with a large number of network operations, the values of P g , P c and P m are small, while the values of P d and P n are large. In the extreme case, already full and with typical high-computing data processing tasks, the values of P g , P c and P m are large, while the values of P d and P n are small.

[0077] It should be further noted that in a distributed server cluster, because multiple virtual machines are not necessarily on the same physical machine, network delays, task start or task stop will affect data collection, which may cause the collected virtual machine energy consumption data and host load data to have some jitter. In order to reduce the data error caused by jitter, and to improve the accuracy of collected data and load, an adjustment amount is added at the input time to offset the case where the change is too large, so that the test data is more accurate.

[0078] Let the value of the last cycle be X(t-1) and the observed value of the current cycle be X'(t), then the value of the current cycle is calculated according to formula (6).

[0079]

[0080] In formula (6), A is usually selected as a value close to X(t-1).

[0081] The above formula (6) is introduced into the correction of the data processing task, and it is assumed that the load of the server node in the last cycle is Load(t i-1 ), A is set as Load(t i-1 ), and the load of the server node in the current cycle is Load(t i ), so the load Load(t) of the server node can be derived according to formula (7).

[0082]

[0083] Step S102: calculating the average load according to the loads of the server nodes.

[0084] In the process of implementing step S102, after the loads of the server nodes are calculated, the average load is calculated according to the loads of the server nodes and formula (5).

[0085] It can be understood that the user can set the upper threshold value (Loadhigh) and the lower threshold value (Loadlow) in advance. Every certain cycle, the average load is calculated according to the loads of the server nodes collected.

[0086] When the average load is higher than the upper threshold value, it represents high load, step S105 is executed to wake up the server node in the sleep state (such as waking up one) from the sleep queue, or increase the number of virtual machines in the open continuous mode state (such as one), and enter the processing of the next cycle. The next cycle will also calculate the average load and perform the corresponding operation.

[0087] When the average load is lower than the lower threshold value, it represents light load, and steps S103 and S104 are executed to adjust the server node with the smallest load to the sleep state, or change the state of the server node with the smallest load to the closed virtual machine continuous mode.

[0088] When the average load is between the lower threshold value and the upper threshold value, it indicates that the load is in an ideal state, and no processing is performed at this time.

[0089] Step S103: in the case where the average load is lower than the lower threshold value, a first target server node is selected from the server nodes according to the loads of the server nodes.

[0090] It should be noted that when the average load is lower than the lower threshold, the server node with the minimum load can be determined by the minimum load algorithm. The minimum load algorithm is that each time the load of each server node is calculated, each server node is sorted according to the load, and when the average load is lower than the lower threshold, the server node with the minimum load is put to sleep or adjusted in the node state.

[0091] However, when the server node with the minimum load is determined by the minimum load algorithm, it can cause the same server node to be put to sleep or adjusted in the state each time, which can cause the same server node to be repeatedly started or paused, the I / O operation is very frequent, and thus the overall performance is affected and self-jitter is generated.

[0092] To solve the above problems, the load of the server node is collected every certain period, and the server nodes are sorted according to the minimum load algorithm. When the average load is lower than the lower threshold, the number of server nodes with the load lower than the lower threshold is determined, so that the load of no more than one server node is lower than the lower threshold, the other server nodes with the load lower than the lower threshold are put to sleep or the continuous mode is changed to the non-continuous mode, and one idle server node is left to bear the assigned data processing task. When the average load is higher than the upper threshold, one server node is woken up and the continuous mode is started.

[0093] Further, in order to improve and optimize the minimum load algorithm, a jitter coefficient is introduced to prevent the problems existing in the selection of the server node by the minimum load algorithm. The server node can be selected by increasing the jitter coefficient on the basis of the minimum load algorithm. For the server node n, the jitter coefficient K n The formula (8) can be used.

[0094]

[0095] In the formula (8), K n is greater than 0, L n (t i ) is the load of the server node n in the current period, L n (t i-1 ) is the load of the server node n in the last period, and Δt is the period time interval. The worse the stability of the server node n is, the larger K n is. If K n is relatively large compared with the load of the server node, the server node should not be selected, which can improve the stability of the server node.

[0096] In light of the above, in the process of implementing step S103, in the case where the average load is lower than the lower threshold, the load of each server node in the current period and the last period is used to calculate the jitter coefficient of each server node according to formula (8).

[0097] For each server node, the product of the jitter coefficient of the server node and the load in the current period (K n *Load n (t i )) is calculated, which can be used as a criterion for whether the server node is selected. Load n (t i ) is the load of server node n in the current period.

[0098] After the product of the jitter coefficient of the server node and the load in the current period is calculated, the server node with the minimum product is determined as the first target server node. That is, the product of the jitter coefficient of each server node and the load in the current period is calculated, and the server node with the minimum product is selected as the first target server node (i.e., the selected server node). In this way, it can effectively prevent the same server node from being selected every time, thereby improving the stability of the server.

[0099] As can be seen from the above, the method of introducing the jitter coefficient to determine the first target server node has low complexity and solves the jitter problem. Each time the load of the server node increases, the first target server node can be selected by the above method.

[0100] Step S104: adjusting the first target server node to a sleep state.

[0101] In the process of implementing step S104, after the first target server node is selected, the first target server node is adjusted to a sleep state; or the state of the first target server node can be adjusted (close the virtual machine continuous mode).

[0102] Step S105: in the case where the average load is higher than the upper threshold, waking up any server node in a sleep state.

[0103] In the process of implementing step S105, when the average load is higher than the upper threshold, any server node in a sleep state (e.g., one) is woken up from the sleep queue, or the number of virtual machines in the open continuous mode state (e.g., one) is increased.

[0104] In some embodiments, the server nodes can be integrated, and the data processed by the server nodes with high load can be migrated to the server nodes with idle load capacity. The goal of integrating the server nodes is to obtain the tradeoff between performance and cost. The revenue maximization model shown in equation (9) can be used to measure the revenue.

[0105]

[0106] In equation (9), S(X i,j ) is a revenue function, which in the integration of the multi-server nodes for data processing represents the absolute value of the difference between the energy consumption of the server nodes after integration and the default energy consumption of the server nodes, i.e., the saved energy consumption. E(A) is the energy consumption for container migration integration. A0and A j represent the server nodes, respectively. Mig(A) is the cost of migrating the containers for integration. X i,j To ensure the revenue, equation (10) and equation (11) must be satisfied, i.e., the former is maximized (as shown in equation (10)), and the latter is minimized (as shown in equation (11)).

[0107]

[0108]

[0109] In the process of integrating the server nodes, the first problem to be considered is to select which data on the server nodes to migrate for integration, so as to minimize the cost and release more resources, thereby minimizing the cost of integration and saving the maximum energy. Therefore, it is an important problem to use which factors as indicators to select the server nodes to be integrated. According to the particularity of the data processing task itself, the main factors considered by the present scheme are virtual machine utilization and memory utilization.

[0110] In selecting which data on the server nodes to migrate, the present scheme introduces a static threshold selection strategy to complete the selection of the server nodes to be migrated.

[0111] In some embodiments, the virtual machine utilization and the memory utilization in the server nodes are used to calculate a first migration indicator (denoted as T1) and a second migration indicator (denoted as T2) of the server nodes. Specifically, the first migration indicator T1 is calculated by equation (12), and the second migration indicator T2 is calculated by equation (13).

[0112] T1=a*b=S(12)

[0113] T2=b / a=tanθ(13)

[0114] In the formula (12) and formula (13), a is the virtual machine utilization rate, and b is the memory utilization rate.

[0115] From each server node, a server node with a first migration index higher than a first threshold value is selected as a second target server node. From each second target server node, a second target server node with a second migration index higher than a second threshold value is selected as a third target server node. That is, the server nodes are first screened by T1 to obtain the second target server nodes, and then the second target server nodes are screened by T2 to obtain the third target server nodes.

[0116] The data in the third target server node is migrated to any other server node with a load less than a third threshold value, and the third target server node is closed. The any other server node with a load less than the third threshold value is a server node with idle load capacity.

[0117] As can be seen from the above formula (12) and formula (13), the virtual machine utilization rate and the memory utilization rate are the length and width of the rectangle, and the area S of the rectangle is obtained by multiplying the virtual machine utilization rate a and the memory utilization rate b, S is less than or equal to 1. When the virtual machine utilization rate and the memory utilization rate of the server node increase or decrease, the load of the server node will also increase or decrease, so the area S of the rectangle can represent the high or low of the load of the server node.

[0118] As can be seen from formula (12), S = T1; at this time, T1 can be set to select the server nodes with excessively high or low loads. Specifically, the upper and lower limits of T1 can be set to (0.1, 0.8), and the first threshold value is 0.8. When the S (that is, the first migration index T1) corresponding to the server node is greater than 0.8, it represents that the server node has a high load. For example, when the virtual machine utilization rate and the memory utilization rate of the server node are both 90%, the calculated T1 is 0.81, and at this time, the server node has a high load.

[0119] The server nodes with the first migration index higher than the first threshold value should all be migrated, but since the data processing task is a computing and storage intensive task, according to the characteristic that a too high memory utilization rate will affect the operation, the second migration index T2 is introduced. T2 is used to indicate that if the memory utilization rate of the server node is very high but the virtual machine utilization rate is not high, the server node should also be migrated. In this scheme, the second threshold value corresponding to T2 is set. The server nodes are first screened by T1 to obtain the second target server nodes with T1 higher than the first threshold value, and then the second target server nodes are screened by T2 to obtain the third target server nodes with T2 higher than the second threshold value. Finally, the data of the third target server nodes are added to the migration queue to wait for migration.

[0120] After the third target server node is screened, it is needed to consider which server nodes the data on the third target server node is migrated to, and the third target server node is needed to be closed after the migration is completed to save energy consumption.

[0121] Specifically, the server nodes with idle load capacity (the server nodes with load less than the third threshold value) are selected to undertake the data on the third target server node; in the process of selecting the server nodes with idle load capacity, the virtual machine utilization and the memory utilization are introduced as two indexes, and then the bin packing problem is introduced to solve the problem that the third target server node is mapped to the server nodes with idle load capacity, and the final target of the migration is to accommodate all the servers with the least host quantity, so that the energy saving purpose is achieved.

[0122] In the embodiment of the application, the load of each server node in the server cluster of the data center is calculated, and the average load is calculated according to the load. When the average load is lower than the lower threshold value, the first target server node is selected from the server nodes and is adjusted to the sleep state, and when the average load is higher than the upper threshold value, any server node in the sleep state is woken up, so that the energy efficiency performance of the server of the data center is optimized.

[0123] Corresponding to the method for optimizing the energy efficiency performance of the server of the data center provided by the above-mentioned embodiment of the application, referring to Figure 2 The embodiment of the application also provides a structural diagram of an optimization system for the energy efficiency performance of the server of the data center, and the optimization system comprises a first calculation unit 201, a second calculation unit 202, a selection unit 203, an adjustment unit 204 and a wake-up unit 205.

[0124] The first calculation unit 201 is used to calculate the load of each server node in the server cluster of the data center.

[0125] In the specific implementation, the first calculation unit 201 is specifically used to: for each server node in the server cluster of the data center, obtain the specified parameters of the server node, and the specified parameters at least comprise the virtual machine utilization, the CPU utilization, the memory utilization, the hard disk load and the network load; and calculate the load of the server node according to the specified parameters of the server node.

[0126] The second calculation unit 202 is used to calculate the average load according to the load of each server node.

[0127] The selection unit 203 is used to select the first target server node from each server node according to the load of each server node when the average load is lower than the lower threshold value.

[0128] The adjusting unit 204 is configured to adjust a first target server node to a hibernation state.

[0129] The waking unit 205 is configured to wake up any server node in the hibernation state when the average load is higher than the upper threshold.

[0130] In the embodiment of the present application, the load of each server node in the server cluster of the data center is calculated and the average load is calculated accordingly. When the average load is lower than the lower threshold, a first target server node is selected from the server nodes and is adjusted to a hibernation state, and any server node in the hibernation state is woken up when the average load is higher than the upper threshold, so as to optimize the energy efficiency performance of the servers of the data center.

[0131] Preferably, in combination with Figure 2 As shown, the selecting unit 203 comprises a first calculating module, a second calculating module and a determining module, and the execution principles of the modules are as follows:

[0132] The first calculating module is configured to calculate the jitter coefficient of each server node by using the load of each server node in the current period and the last period when the average load is lower than the lower threshold.

[0133] The second calculating module is configured to calculate the product between the jitter coefficient and the load in the current period of each server node.

[0134] The determining module is configured to determine the server node with the minimum product as the first target server node.

[0135] Preferably, in combination with Figure 2 As shown, the optimization system further comprises:

[0136] The third calculating unit is configured to calculate the first migration index and the second migration index of the server node by using the virtual machine utilization rate and the memory utilization rate of the server node.

[0137] The first screening unit is configured to screen the server node with the first migration index higher than the first threshold from the server nodes as the second target server node.

[0138] The second screening unit is configured to screen the second target server node with the second migration index higher than the second threshold from the second target server nodes as the third target server node.

[0139] The migration unit is configured to migrate the data in the third target server node to any other server node with the load less than the third threshold, and to shut down the third target server node.

[0140] Preferably, in combination with Figure 2As shown, the optimization system further comprises:

[0141] A fourth computing unit is configured to calculate the power of each server node in the server cluster of the data center by using a preset energy-saving analysis model.

[0142] In summary, the embodiments of the present application provide a method and system for optimizing the energy efficiency performance of servers in a data center, the load of each server node in the server cluster of the data center is calculated and the average load is calculated accordingly. When the average load is lower than the lower threshold, the first target server node is selected from the server nodes and is adjusted to the sleep state, and when the average load is higher than the upper threshold, any server node in the sleep state is woken up, thereby optimizing the energy efficiency performance of the servers in the data center.

[0143] Each embodiment in the present specification is described in a progressive manner, and the same or similar parts between each embodiment can be referred to each other, and each embodiment mainly describes the difference from other embodiments. In particular, for the system or system embodiments, since it is basically similar to the method embodiments, it is described more simply, and the relevant parts can be referred to the part of the method embodiments. The above-described system and system embodiments are only illustrative, and the units described as separate components can be or can not be physically separated, and the components displayed as units can be or can not be physical units, that is, they can be located in one place, or can be distributed on multiple network units. According to the actual needs, part or all of the modules can be selected to achieve the purpose of the present embodiment. Those skilled in the art can understand and implement without creative labor.

[0144] The skilled person can further realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be realized by electronic hardware, computer software or a combination of both. In order to clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been described in the above description. Whether the functions are realized in hardware or software depends on the specific application and design constraints of the technical solution. Skilled person can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0145] The foregoing description of the disclosed embodiments enables a person skilled in the art to make or use the application. Modifications of these embodiments will occur to persons of skill in the art, and, while certain modifications are discussed, it is desired to be protected in accordance with the scope of this application, which is defined in the following claims.

Claims

1. A method for optimizing the energy efficiency of servers in a data center, characterized in that, The method comprises: calculating the load of each server node in a server cluster of a data center; calculating an average load according to the load of each server node; selecting a first target server node from each server node according to the load of each server node if the average load is lower than a lower threshold value; adjusting the first target server node to a hibernation state; waking up any server node in a hibernation state if the average load is higher than an upper threshold value; The method further comprises: calculating a first migration index and a second migration index of the server node by using the virtual machine utilization rate and the memory utilization rate in the server node; the first migration index is the product of the virtual machine utilization rate and the memory utilization rate, and the second migration index is the ratio of the memory utilization rate to the virtual machine utilization rate; selecting a server node with a first migration index higher than a first threshold value from each server node as a second target server node; selecting a second target server node with a second migration index higher than a second threshold value from each second target server node as a third target server node; migrating the data in the third target server node to any other server node with a load less than a third threshold value, and shutting down the third target server node.

2. The method of claim 1, wherein, The method for calculating the load of each server node in a server cluster of a data center comprises: for each server node in the server cluster of the data center, obtaining specified parameters of the server node, wherein the specified parameters at least include: virtual machine utilization rate, CPU utilization rate, memory utilization rate, hard disk load and network load; calculating the load of the server node according to the specified parameters of the server node.

3. The method of claim 1, wherein, The method further comprises: if the average load is lower than a lower threshold value, calculating a jitter coefficient of each server node by using the load of each server node in a current period and a previous period; for each server node, calculating the product between the jitter coefficient of the server node and the load of the server node in the current period; determining the server node with the minimum product as a first target server node.

4. The method according to any one of claims 1 to 3, characterized in that, The method further comprises: calculating the power of each server node in a server cluster of a data center by using a preset energy-saving analysis model.

5. A system for optimizing server energy efficiency performance of a data center, the system comprising: The system comprises: a first calculation unit for calculating the load of each server node in a server cluster of a data center; a second calculation unit for calculating an average load according to the load of each server node; a selection unit for selecting a first target server node from each server node according to the load of each server node if the average load is lower than a lower threshold value; an adjustment unit for adjusting the first target server node to a hibernation state; The wake-up unit is configured to wake up any server node in a dormant state when the average load is higher than an upper threshold value. The third calculation unit is configured to calculate a first migration index and a second migration index of the server node by using a virtual machine utilization rate and a memory utilization rate of the server node; the first migration index is a product of the virtual machine utilization rate and the memory utilization rate, and the second migration index is a ratio of the memory utilization rate to the virtual machine utilization rate. The first screening unit is configured to screen, from each of the server nodes, a server node with the first migration index higher than a first threshold value as a second target server node. The second screening unit is configured to screen, from each of the second target server nodes, a second target server node with the second migration index higher than a second threshold value as a third target server node. The migration unit is configured to migrate data in the third target server node to any other server node with a load less than a third threshold value, and to shut down the third target server node.

6. The system of claim 5, wherein, The first calculation unit is specifically configured to: acquire, for each server node in a server cluster of a data center, specified parameters of the server node, the specified parameters at least including a virtual machine utilization rate, a CPU utilization rate, a memory utilization rate, a hard disk load, and a network load; and calculate a load of the server node according to the specified parameters of the server node.

7. The system of claim 5, wherein, The selection unit includes: The first calculation module is configured to calculate, when the average load is lower than a lower threshold value, a jitter coefficient of each server node by using a load of each server node in a current period and a load of each server node in a previous period. The second calculation module is configured to calculate, for each server node, a product between the jitter coefficient of the server node and the load of the server node in the current period. The determination module is configured to determine that the server node with the minimum product is a first target server node.

8. The system of claim 5, wherein, The fourth calculation unit is configured to calculate, by using a preset energy-saving analysis model, power of each server node in a server cluster of a data center. ​

Citation Information

Patent Citations

  • Energy-saving method of cloud data center based on virtual machine migration and load perception integration

    CN102096461A

  • Dynamic load balance achieving method and system in distributed network

    CN103428102A