WO2022104500A1 - 一种负载控制方法、装置、计算机设备及存储介质 - Google Patents

一种负载控制方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
WO2022104500A1
WO2022104500A1 PCT/CN2020/129285 CN2020129285W WO2022104500A1 WO 2022104500 A1 WO2022104500 A1 WO 2022104500A1 CN 2020129285 W CN2020129285 W CN 2020129285W WO 2022104500 A1 WO2022104500 A1 WO 2022104500A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
virtual machine
utilization
component
utilization rate
Prior art date
Application number
PCT/CN2020/129285
Other languages
English (en)
French (fr)
Other versions
WO2022104500A9 (zh
Inventor
徐敏贤
宋承浩
须成忠
Original Assignee
深圳先进技术研究院
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳先进技术研究院 filed Critical 深圳先进技术研究院
Priority to PCT/CN2020/129285 priority Critical patent/WO2022104500A1/zh
Publication of WO2022104500A1 publication Critical patent/WO2022104500A1/zh
Publication of WO2022104500A9 publication Critical patent/WO2022104500A9/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present application belongs to the technical field of cloud computing, and in particular relates to a load control method, device, computer equipment and storage medium.
  • cloud computing technology As an important part of information technology, is widely used in life with its pay-as-you-go pricing model, low operating costs, high scalability and easy accessibility of many fields.
  • cloud computing data centers often encounter the problem of an instantaneous increase in load due to sudden increases in requests, which will lead to overloaded server resource usage and performance degradation.
  • the high energy consumption of cloud computing data centers has also become a constraint restricting the development of cloud computing, and existing energy-saving technologies are difficult to produce effective results when the data center is in an overall overload state.
  • VM consolidation virtual machine migration
  • DVFS dynamic voltage frequency scaling
  • Virtual machine migration refers to the purpose of minimizing energy consumption by distributing task load among fewer machines and shutting down unused machines. Cloud computing servers can use this method to migrate virtual machines working on underutilized servers to other servers, and these spare servers will enter a low-power mode or shut down.
  • DVFS Dynamic Voltage Frequency Scaling
  • the present application provides a load control method, device, computer equipment and storage medium, so as to at least solve the problem that the traditional load control method is not intelligent and cannot utilize the server to the fullest.
  • server status information which includes at least the number of servers enabled and the number of servers overloaded
  • the server Based on the control adjustment parameters and the server energy consumption model, the server reduces the utilization rate of the overloaded server
  • the technical solution adopted in the embodiment of the present application further includes the step of calculating the reduction utilization rate of the virtual machines of the virtual machines in the overloaded server based on the reduction utilization rate of the server, which specifically includes:
  • the technical solution adopted in the embodiment of the present application further includes the steps of performing the screening operation based on the minimum utilization component priority algorithm, and performing the screening operation on the overloaded server based on the application component selection strategy and the virtual machine utilization variable to obtain the component to be shut down, which specifically includes:
  • the non-starting components that satisfy the reduced utilization rate of the virtual machine are calculated, and the components to be shut down are obtained.
  • the technical solution adopted in the embodiment of the present application further includes the steps of calculating the non-startup components that satisfy the reduced utilization rate of the virtual machine based on the sequence of the ascending component list, and obtaining the components to be shut down, which specifically includes:
  • the current non-starting component is used as the end position
  • a load control device including:
  • a status information collection module used to collect server status information, the server status information at least includes the number of servers enabled and the number of server overloads;
  • the overload ratio calculation module is used to calculate the overload ratio data based on the number of servers enabled and the number of overloaded servers;
  • the adjustment parameter calculation module is used to calculate the control adjustment parameters based on the overload ratio data
  • the server reduction utilization calculation module is used to calculate the server reduction utilization rate of the overloaded server based on the control adjustment parameters and the server energy consumption model;
  • the virtual machine utilization reduction calculation module is used to calculate the virtual machine utilization reduction of the virtual machine in the overloaded server based on the server utilization reduction;
  • the screening operation module is used for screening the overloaded server based on the application component selection strategy and the reduction of the utilization rate of the virtual machine to obtain the components to be shut down;
  • the component shutdown module is used to shut down the components to be shut down of the overloaded server.
  • the component list creation unit is used to create a non-open component list in the virtual machine in the overloaded server;
  • the virtual machine utilization calculation unit is used to calculate the virtual machine utilization of the virtual machine based on the virtual machine utilization model
  • the synchronization ratio obtaining unit is used to obtain the synchronization ratio of virtual machine utilization and server utilization reduction
  • the synchronization difference calculation unit is configured to calculate the synchronization difference of the virtual machine utilization based on the synchronization ratio, and use the synchronization difference as the virtual machine to reduce the utilization.
  • the utilization sorting unit is used to obtain the component utilization of the non-start components of the virtual machine, and arrange them in ascending order to obtain a list of components in ascending order;
  • the to-be-shutdown component acquisition unit is configured to accumulate and calculate the non-startup components that satisfy the reduced utilization rate of the virtual machine based on the order of the ascending component list, and obtain the to-be-shutdown component.
  • the end position obtaining subunit is used to use the current non-start component as the end position if the cumulatively calculated utilization rate of the current non-starting component exceeds the virtual machine reduction utilization rate;
  • the output subunit of the component to be shut down is used to take all the non-starting components before the ending position as the component to be shut down in the ascending component list.
  • a computer device including:
  • a memory and a processor where a computer program is stored in the memory, and when the processor executes the computer program, the steps of any one of the above load control methods are implemented.
  • Another technical solution provided by the embodiments of the present application includes a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, any one of the above load control methods is implemented. step.
  • the present application provides a load control method, which includes: collecting server status information, where the server status information includes at least the number of servers enabled and the number of servers overloaded; calculating overload ratio data based on the number of servers enabled and the number of servers overloaded; calculating based on the overload ratio data Control the adjustment parameters; calculate the server utilization rate of overloaded servers based on the control adjustment parameters and the server energy consumption model; calculate the virtual machine utilization rate reduction of the virtual machines in the overloaded server based on the server utilization rate reduction; based on the application component selection strategy and the virtual machine utilization rate reduction Screen the overloaded servers at a rate to obtain the components to be shut down; shut down the components to be shut down of the overloaded servers.
  • the control and adjustment parameters are obtained based on the number of servers enabled and the number of overloaded servers in the collected server status information, and the relationship between the number of overloaded servers and the overall number of servers can be intuitively reflected through the control and adjustment parameters.
  • the consumption model is used to calculate the server utilization reduction and the virtual machine utilization reduction of the virtual machines in the overloaded server, and then based on the virtual machine utilization reduction and the application of the component selection strategy to find the components that meet the utilization constraints, and find the components that meet the utilization constraints. Contact other components, and finally close these found components. It can selectively and dynamically adjust the shutdown status of application components, reduce cloud server energy consumption, and improve server utilization.
  • FIG. 1 is an exemplary system architecture diagram to which the present application can be applied;
  • FIG. 2 is an exemplary model architecture diagram to which the present application may be applied
  • FIG. 3 is a flowchart of an embodiment of a load control method according to the present application.
  • Fig. 4 is a flow chart of a specific implementation of step S5 in Fig. 3;
  • Fig. 5 is a flow chart of a specific implementation of step S6 in Fig. 3;
  • Fig. 6 is a flow chart of a specific implementation manner of step S602 in Fig. 5;
  • FIG. 7 is a schematic structural diagram of an embodiment of a load control device according to the present application.
  • FIG. 8 is a schematic structural diagram of a specific implementation manner of the virtual machine utilization reduction calculation module shown in FIG. 7;
  • FIG. 9 is a schematic structural diagram of a specific embodiment of the screening operation module shown in FIG. 7;
  • FIG. 10 is a schematic structural diagram of a specific implementation of the to-be-closed component acquisition unit shown in FIG. 9;
  • FIG. 11 is a schematic structural diagram of an embodiment of a computer device according to the present application.
  • the system architecture 100 may include terminal devices 101 , 102 , and 103 , a network 104 and a server 105 .
  • the network 104 is a medium used to provide a communication link between the terminal devices 101 , 102 , 103 and the server 105 .
  • the network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
  • the user can use the terminal devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send messages and the like.
  • Various communication client applications may be installed on the terminal devices 101 , 102 and 103 , such as web browser applications, shopping applications, search applications, instant messaging tools, email clients, social platform software, and the like.
  • the terminal devices 101, 102, and 103 can be various electronic devices that have a display screen and support web browsing, including but not limited to smart phones, tablet computers, e-book readers, MP3 players (Moving Picture Experts Group Audio Layer III, dynamic Picture Experts Compression Standard Audio Layer 3), MP4 (Moving Picture Experts Group Audio Layer IV, Moving Picture Experts Compression Standard Audio Layer 4) Players, Laptops and Desktops, etc.
  • MP3 players Moving Picture Experts Group Audio Layer III, dynamic Picture Experts Compression Standard Audio Layer 3
  • MP4 Moving Picture Experts Group Audio Layer IV, Moving Picture Experts Compression Standard Audio Layer 4
  • the server 105 may be a server that provides various services, such as a background server that provides support for the pages displayed on the terminal devices 101 , 102 , and 103 .
  • the load control method provided by the embodiments of the present application is generally executed by a server/terminal device, and accordingly, the load control apparatus is generally set in the server/terminal device.
  • terminal devices, networks and servers in FIG. 1 are merely illustrative. There can be any number of terminal devices, networks and servers according to implementation needs.
  • the model architecture includes users, applications, and cloud server providers.
  • the user is a user who submits a task processing request to the cloud data center.
  • a user entity is defined as containing the user ID and the requested application or service information. When users use the service, they need to pay.
  • the application is composed of many components or microservices, and these components are marked as required components and optional components.
  • the required components are always in the running state when the system is running, such as key components in the system, such as the database; optional components can be dynamically set to be on or off.
  • the utilization rate represents the server utilization rate that can be reduced after the component is shut down, and the discount represents the cost returned to the user.
  • optional components are turned on and off by a controller, which makes decisions based on system state and component attribute selection policies. Since components can also be connected to each other, this means they can communicate with each other and there are data dependencies between them. That is, it can be understood that if a component is closed, all its connected optional components will also be set to the closed state. For example, in Figure 1, if Com3 in Application 1 is closed, Com2 should also be closed; in Application 2, if Com1 is closed, Com3 should also be closed. In application n, if Com4 is closed, Com3 should also be closed, but Com2 is still working, it is because Com1 is connected with Com3, but Com1 is mandatory, so it is not closed.
  • the cloud service provider provides resources to meet the service demand, and this server has a set of virtual machines running on it to run the application.
  • the load control method includes the following steps:
  • Step S1 collecting server status information, where the server status information at least includes the number of servers enabled and the number of servers overloaded.
  • the electronic device for example, the server/terminal device shown in FIG. 1
  • the load control method can receive a request for using server state information through a wired connection or a wireless connection.
  • the above wireless connection methods may include but are not limited to 3G/4G connection, WiFi connection, Bluetooth connection, WiMAX connection, Zigbee connection, UWB (ultra wideband) connection, and other wireless connection methods currently known or developed in the future .
  • the number of servers enabled and the number of overloaded servers refers to calculating the number of all servers in the working state in the current state after a preset time interval t has elapsed, that is, the number M of servers being enabled, and calculating The number of servers in the overloaded state in the current state, that is, the number of overloaded servers nt .
  • Step S2 Calculate the overload ratio data based on the number of servers enabled and the number of overloaded servers.
  • the overload ratio data refers to the ratio of the number of overloaded servers to the overall number of servers, that is, the ratio of the number M of servers enabled to the number of overloaded servers nt , which can be used to reflect the degree of server energy overload.
  • the ratio of the number M of servers enabled to the number of overloaded servers nt is calculated, through Calculate the overload ratio data.
  • Step S3 calculating control adjustment parameters based on the overload ratio data.
  • the adjustment parameter is a control parameter used to determine the degree of adjustment of the energy consumption of the server at the preset time t.
  • the overload ratio data The value of is assigned to the adjustment parameter ⁇ t , based on the adjustment parameter ⁇ t , it can be understood that if all the servers are in an overload state at the preset time t, the adjustment parameter is 1.0, that is, the controller will manage the components on all servers ; and if there is no server overload and no application component throttling is triggered at time t, the value of the throttling parameter is 0.0. Therefore, it can be understood that the value of the adjustment parameter will change with the ratio of the number M of computing servers to the number of overloaded servers nt , and the higher the ratio, the closer the value of the adjustment parameter is to 1.
  • step S4 the server reduction utilization rate of the overloaded server is calculated based on the control adjustment parameter and the server energy consumption model.
  • the reduced utilization rate of the server is the size of the utilization rate expected to be reduced on the server; wherein, the utilization rate indicates the utilization rate of the server that can be reduced after the components on the server are shut down.
  • the optimization goal in terms of energy consumption is expressed as minimizing the total energy consumption of the server as follows:
  • P i server represents the total energy consumption of a single server
  • M represents the total number of servers.
  • this embodiment writes the total energy consumption of the server in the form of the following expression:
  • VM i,j represents the jth virtual machine running on the ith server
  • ⁇ i represents the allocation to the ith server number of virtual machines.
  • u(VM i,j ) is expressed as:
  • u(VM i,j ) represents the utilization rate of the virtual machine, which is the sum of the utilization rates of all applications in the jth virtual machine; in the above formula, c represents the number of components, and A j represents all components It can be understood that because the CPU occupies most of the energy consumption of the server, this embodiment achieves energy saving by optimizing the CPU utilization.
  • n t represents the number of hosts in the overloaded state in the time interval t; M represents the total number of virtual machines.
  • HMP represents the host power supply model for calculating the expected utilization reduction, which can be obtained from the data provided by the hardware manufacturer, and is not limited here.
  • Step S5 calculating the reduced utilization rate of virtual machines of the virtual machines in the overloaded server based on the reduced utilization rate of the server.
  • the reduced utilization rate of the virtual machine is the size of the utilization rate that the virtual machine is expected to need to reduce.
  • an empty non-enabled component list is created in the virtual machine in the overloaded server, and the virtual machine utilization rate of the virtual machine is calculated based on the virtual machine utilization model, and then the virtual machine utilization rate and the server utilization rate are obtained by obtaining the virtual machine utilization rate and the server utilization rate.
  • the synchronization ratio of the utilization ratio is reduced to further calculate the synchronization difference of the virtual machine utilization, that is, the virtual machine reduces the utilization, so that the components to be turned off or turned on can be accurately obtained according to the reduced utilization of the virtual machine, so as to achieve selective Dynamically adjusts the on and off components of microservices to reduce server energy consumption.
  • step S6 a screening operation is performed on the overloaded server based on the application component selection policy and the reduction of the utilization rate of the virtual machine, and the component to be shut down is obtained.
  • the application component selection strategy is responsible for finding a group of components that satisfy the utilization constraints, and finding other components associated with them and setting these components to a closed state.
  • the component to be shut down is a component with a low utilization rate.
  • the numerical value can be sorted by reducing the utilization rate of the virtual machine, and then combined with the constraint condition of the application component selection policy rate, the components with low utilization rate and satisfying the constraint conditions can be selected as the components to be shut down, so as to accurately obtain the The components to be shut down, so as to selectively and dynamically adjust the shut down components of microservices to reduce server energy consumption.
  • Step S7 shutting down the components to be shut down of the overloaded server.
  • the components to be shut down of the overloaded server are shut down to accurately shut down the components to be shut down, so as to selectively and dynamically adjust the shut down components of the microservices to reduce the energy consumption of the server.
  • the optional components that have been set to be off can be turned on based on the load control method of the present application, and then conventional virtual machines can be applied to optimize the location allocation of virtual machines.
  • Machine migration algorithm to achieve selective and dynamic adjustment of microservices on or off components, thereby reducing server energy consumption.
  • the present application provides a load control method, which includes: collecting server status information, where the server status information includes at least the number of servers enabled and the number of servers overloaded; calculating overload ratio data based on the number of servers enabled and the number of servers overloaded; calculating based on the overload ratio data Control the adjustment parameters; calculate the server utilization rate of overloaded servers based on the control adjustment parameters and the server energy consumption model; calculate the virtual machine utilization rate reduction of the virtual machines in the overloaded server based on the server utilization rate reduction; based on the application component selection strategy and the virtual machine utilization rate reduction Screen the overloaded servers at a rate to obtain the components to be shut down; shut down the components to be shut down of the overloaded servers.
  • the control and adjustment parameters are obtained based on the number of servers enabled and the number of overloaded servers in the collected server status information, and the relationship between the number of overloaded servers and the overall number of servers can be intuitively reflected through the control and adjustment parameters.
  • the consumption model is used to calculate the server utilization reduction and the virtual machine utilization reduction of the virtual machines in the overloaded server, and then based on the virtual machine utilization reduction and the application of the component selection strategy to find the components that meet the utilization constraints, and find the components that meet the utilization constraints. Contact other components, and finally close these found components. It can selectively and dynamically adjust the shutdown status of application components, reduce cloud server energy consumption, and improve server utilization.
  • step S5 in FIG. 3 a flow chart of the implementation of step S5 in FIG. 3 is shown. For the convenience of description, only the part related to the present application is shown.
  • step S5 specifically includes: steps S501 to S504.
  • Step S501 creating a list of disabled components in the virtual machine in the overloaded server
  • Step S502 calculating the virtual machine utilization rate of the virtual machine based on the virtual machine utilization model
  • Step S503 obtaining the synchronization ratio of the virtual machine utilization rate and the reduction utilization rate of the server;
  • Step S504 Calculate the synchronization difference of the virtual machine utilization based on the synchronization ratio, and use the synchronization difference as the virtual machine to reduce the utilization.
  • the non-enabled component list is to establish a list for an empty non-enabled component, which is denoted as dcl i,j,t .
  • the virtual machine utilization model is as follows:
  • N represents the total number of virtual machines
  • M represents the total number of servers
  • u refers to the utilization of virtual machines
  • formula (1) indicates that the total number of virtual machines wi allocated to the server is equal to the sum of virtual machines
  • formula ( 7) Indicates that the utilization of all virtual machines cannot exceed the sum of the available utilization of their servers.
  • the synchronization ratio is the ratio between the utilization rate of the virtual machine and the reduced utilization rate of the server, denoted as
  • the synchronization difference is a size calculated based on the virtual machine utilization model combined with the synchronization ratio, which can be used to represent the expected utilization rate of the virtual machine that needs to be reduced, that is, the virtual machine reduces the utilization rate.
  • the energy consumption of the server and the energy consumption of the virtual machine can be obtained from the above-mentioned server energy consumption model, that is, calculated by the above-mentioned formulas (1) to (6); specific energy consumption.
  • this embodiment first establishes a list of an empty non-enabled component included in the virtual machine VM j of the server hi, that is, the non-enabled component list dcl i, j ,t , and initializes it to pass
  • the list of non-enabled components stores the components that are in the off state at time t; then, the utilization of the virtual machine is calculated based on the utilization model of the virtual machine, and the ratio between the utilization of the virtual machine and the expected decrease in utilization is the synchronization ratio. to further calculate the synchronization difference value that can be used to represent the size of the virtual machine's expected utilization reduction, and use the synchronization difference value as the virtual machine utilization reduction.
  • step S6 in FIG. 3 a flowchart of the implementation of step S6 in FIG. 3 is shown. For the convenience of description, only the parts related to the present application are shown.
  • step S6 specifically includes: step S601 and step S602.
  • step S601 the component utilization rate of the non-starting components of the virtual machine is acquired, and sorted in ascending order to obtain a component list in ascending order.
  • Step S602 based on the order of the ascending component list, the non-start components that satisfy the reduction of the utilization rate of the virtual machine are cumulatively calculated, and the components to be shut down are obtained.
  • this embodiment selects the component with the lowest utilization rate from the components by adopting the lowest utilization component priority algorithm (LUFCS), so as to accurately obtain the lower utilization rate. Low need to shut down components to be shut down.
  • LFCS lowest utilization component priority algorithm
  • the cloud service provider can turn off some components with low utilization to meet the requirement of reducing utilization; this embodiment is based on LUFCS slave components Select the component with the lowest utilization rate, and keep doing this operation until the sum of the overall utilization of this component meets the expected utilization standard ur VM i ,j , that is, the input of LUFCS is the expected configuration utilization ur VM i , j , the output is a list of components that are set to the off state dcl i,j,t . Specifically, the component utilization rate of the non-starting components of the virtual machine can be obtained, and then the obtained component utilization rate can be sorted from small to large.
  • the front end of the list is the component with the least utilization; further, since there are actually components between are connected, so for connected components, LUFCS treats them as a whole component and uses the sum of their utilization to sort them; although this move reduces the priority of shutting down those low-utilization components, it is effective It avoids the possibility of closing multiple components at the same time due to the interconnection between components; therefore, this embodiment initializes a data set S t to store the relationship between the components to be set to be closed; then , judging whether the average utilization parameter of the first component is greater than ur VM i ,j , if it satisfies the condition of being greater than ur VM i ,j , then this component and its connected components are placed in the off state; Furthermore, these closed components are written into the ascending component list occl i, j, t , and the connection
  • the total discount d(VMi,j) of the components that have been shut down can be calculated.
  • this embodiment expresses the optimization objective in terms of discount as minimizing the total discount, that is, reducing the cost returned to the user:
  • E pa is the energy consumption of the load control method of the present application
  • E b is the energy consumption of the benchmark algorithm
  • D pa is the total discount provided in advance by the load control method of the present application
  • the control method is more energy efficient than the baseline algorithm, then will be between 0 and 1
  • D pa will represent the ratio of the discount provided, and its value will be between 0 and 1; therefore, when Eff pa is lower, it means that the required energy consumption is lower,
  • the total amount of discounts offered will also be reduced; where ⁇ represents the weight of discounts, usually its value is 1; it is understandable that if cloud server operators focus more on discounts, then its value will be greater than 1. If the cloud server operator focuses on energy saving, then its value will be set to less than 1.
  • step S602 in FIG. 5 a flowchart of the implementation of step S602 in FIG. 5 is shown. For the convenience of description, only the part related to the present application is shown.
  • step S602 specifically includes: step S6021 and step S6022.
  • Step S6021 if the cumulatively calculated utilization rate of the current non-starting component exceeds the virtual machine reduction utilization rate, the current non-starting component is used as the end position.
  • Step S6022 in the ascending component list, all non-starting components before the stop position are regarded as components to be shut down.
  • the cut-off position is the component whose utilization rate of the first non-boot component is greater than that of the reduced utilization rate of the virtual machine.
  • LUFCS will Find a position p in the selectable components, that is, the sum of the utilization parameters of all combinations before position p-1 is less than ur VM i ,j , and the component at position p is the first utilization rate greater than The component of u , that is, the end position; further, in order to select the position of ur VM i,j that is the closest to the utilization parameter, in this embodiment, in the ascending component list, all non-starting components before the end position are regarded as pending shutdown.
  • Components specifically, by using LUFCS to write all the components in the sublist selected in the previous step into the ascending component list ocl i, j, t , and write the connection relationship of these components into the data set S t ; Then, find other interconnected components through LUFCS, and write them into the ascending component list ocl i,j,t ; further, the total discount d(VMi,j of these components that have been closed can also be calculated ).
  • the present application provides a load control method, including: collecting server status information, where the server status information at least includes the number of servers enabled and the number of servers overloaded; calculating overload ratio data based on the number of servers enabled and the number of servers overloaded; Calculate the control adjustment parameters based on the control adjustment parameters and the server energy consumption model; calculate the server reduction utilization rate of the overloaded server based on the server utilization reduction rate; calculate the virtual machine reduction utilization rate of the virtual machines in the overloaded server based on the server utilization reduction rate;
  • the overloaded server is screened by the machine to reduce the utilization rate, and the components to be shut down are obtained; the components to be shut down of the overloaded server are shut down.
  • the control and adjustment parameters are obtained based on the number of servers enabled and the number of overloaded servers in the collected server status information, and the relationship between the number of overloaded servers and the overall number of servers can be intuitively reflected through the control and adjustment parameters;
  • the energy consumption model is used to calculate the server utilization reduction; then, by establishing a list of empty non-enabled components contained in the virtual machine VM j of the server hi, that is, the non-enabled component list dcl i, j ,t , and perform initialization, and based on the utilization rate model of the virtual machine, the utilization rate of the virtual machine and the expected reduced utilization rate are calculated to calculate the reduced utilization rate of the virtual machine that can be used to represent the size of the expected utilization rate of the virtual machine; further, In order to achieve a better effect of reducing the utilization rate, the component with the lowest utilization rate is selected from the components by selecting the component with the lowest utilization rate (LUFCS), so as to accurately obtain the components to be shut down that need to be shut down with low utilization rate.
  • the server when it does not exceed the energy consumption threshold, it can be based on the load control method of the present application to turn on those components that have been set to off
  • An optional component of the virtual machine which in turn can apply conventional virtual machine migration algorithms to optimize the location allocation of virtual machines. It can selectively and dynamically adjust the on or off status of application components, reduce cloud server energy consumption, and improve server utilization.
  • the aforementioned storage medium may be a non-volatile storage medium such as a magnetic disk, an optical disk, a read-only memory (Read-Only Memory, ROM), or a random access memory (Random Access Memory, RAM) or the like.
  • the present application provides an embodiment of a load control device, which corresponds to the method embodiment shown in FIG. 3 , and the device may specifically be Used in various electronic devices.
  • the load control device 700 in this embodiment includes a state information collection module 701 , an overload ratio calculation module 702 , an adjustment parameter calculation module 703 , a server utilization reduction calculation module 704 , and a virtual machine utilization reduction calculation module 704 .
  • module 705 filter operation module 706 and component shutdown module 707 . in:
  • a state information collection module 701, configured to collect server state information, where the server state information at least includes the number of servers enabled and the number of servers overloaded;
  • the number of servers enabled and the number of overloaded servers refers to calculating the number of all servers in the working state in the current state after a preset time interval t has elapsed, that is, the number M of servers being enabled, and calculating The number of servers in the overloaded state in the current state, that is, the number of overloaded servers nt .
  • An overload ratio calculation module 702 configured to calculate overload ratio data based on the number of servers enabled and the number of overloaded servers;
  • the overload ratio data refers to the ratio of the number of overloaded servers to the overall number of servers, that is, the ratio of the number M of servers enabled to the number of overloaded servers nt , which can be used to reflect the degree of server energy overload.
  • the ratio of the number M of servers enabled to the number of overloaded servers nt is calculated, through Calculate the overload ratio data.
  • An adjustment parameter calculation module 703, configured to calculate a control adjustment parameter based on the overload ratio data
  • the adjustment parameter is a control parameter used to determine the degree of adjustment of the energy consumption of the server at the preset time t.
  • the overload ratio data The value of is assigned to the adjustment parameter ⁇ t , based on the adjustment parameter ⁇ t , it can be understood that if all the servers are in an overload state at the preset time t, the adjustment parameter is 1.0, that is, the controller will manage the components on all servers ; and if there is no server overload and no application component throttling is triggered at time t, the value of the throttling parameter is 0.0. Therefore, it can be understood that the value of the adjustment parameter will change with the ratio of the number M of computing servers to the number of overloaded servers nt , and the higher the ratio, the closer the value of the adjustment parameter is to 1.
  • a server reduction utilization calculation module 704 configured to calculate the server reduction utilization rate of the overloaded server based on the control adjustment parameter and the server energy consumption model;
  • the reduced utilization rate of the server is the size of the utilization rate expected to be reduced on the server; wherein, the utilization rate indicates the utilization rate of the server that can be reduced after the components on the server are shut down.
  • the optimization goal in terms of energy consumption is expressed as minimizing the total energy consumption of the server as follows:
  • P i server represents the total energy consumption of a single server
  • M represents the total number of servers.
  • this embodiment writes the total energy consumption of the server in the form of the following expression:
  • VM i,j represents the jth virtual machine running on the ith server
  • ⁇ i represents the allocation to the ith server number of virtual machines.
  • u(VM i,j ) is expressed as:
  • u(VM i,j ) represents the utilization rate of the virtual machine, which is the sum of the utilization rates of all applications in the jth virtual machine; in the above formula, c represents the number of components, and A j represents all components It can be understood that because the CPU occupies most of the energy consumption of the server, this embodiment achieves energy saving by optimizing the CPU utilization.
  • n t represents the number of hosts in the overloaded state in the time interval t; M represents the total number of virtual machines.
  • HMP represents the host power supply model for calculating the expected utilization reduction, which can be obtained from the data provided by the hardware manufacturer, and is not limited here.
  • a virtual machine reduction utilization calculation module 705, configured to calculate the virtual machine reduction utilization rate of the virtual machines in the overloaded server based on the server reduction utilization rate;
  • the reduced utilization rate of the virtual machine is the size of the utilization rate that the virtual machine is expected to need to reduce.
  • an empty non-enabled component list is created in the virtual machine in the overloaded server, and the virtual machine utilization rate of the virtual machine is calculated based on the virtual machine utilization model, and then the virtual machine utilization rate and the server utilization rate are obtained by obtaining the virtual machine utilization rate and the server utilization rate.
  • the synchronization ratio of the utilization ratio is reduced to further calculate the synchronization difference of the virtual machine utilization, that is, the virtual machine reduces the utilization, so that the components to be turned off or turned on can be accurately obtained according to the reduced utilization of the virtual machine, so as to achieve selective Dynamically adjusts the on and off components of microservices to reduce server energy consumption.
  • a screening operation module 706, configured to perform a screening operation on the overloaded server based on the application component selection policy and the reduction of the utilization rate of the virtual machine to obtain the component to be shut down;
  • the application component selection strategy is responsible for finding a group of components that satisfy the utilization constraints, and finding other components associated with them and setting these components to a closed state.
  • the component to be shut down is a component with a low utilization rate.
  • the numerical value can be sorted by reducing the utilization rate of the virtual machine, and then combined with the constraint condition of the application component selection policy rate, the components with low utilization rate and satisfying the constraint conditions can be selected as the components to be shut down, so as to accurately obtain the The components to be shut down, so as to selectively and dynamically adjust the shut down components of microservices to reduce server energy consumption.
  • a component shutdown module 707 configured to shut down the components to be shut down of the overloaded server.
  • the components to be shut down of the overloaded server are shut down to accurately shut down the components to be shut down, so as to selectively and dynamically adjust the shut down components of the microservices to reduce the energy consumption of the server.
  • the load control device of the present application may turn on the optional components that have been set to be turned off, and then the conventional virtual machine can be applied to optimize the location allocation of virtual machines.
  • Machine migration algorithm to achieve selective and dynamic adjustment of microservices on or off components, thereby reducing server energy consumption.
  • the application provides a load control device, which obtains control adjustment parameters based on the number of servers enabled and the number of overloaded servers in the collected server status information, and can intuitively reflect the difference between the number of overloaded servers and the overall number of servers through the control adjustment parameters.
  • FIG. 8 a schematic structural diagram of the virtual machine utilization reduction calculation module 705 provided in Embodiment 2 of the present application is shown. For the convenience of description, only parts related to the present application are shown.
  • the foregoing virtual machine utilization reduction calculation module 705 includes: a component list creation unit 801 , a virtual machine utilization calculation unit 802 , and a synchronization ratio acquisition unit 803 and a synchronization difference calculation unit 804. in:
  • a component list creation unit 801 configured to create a non-enabled component list in the virtual machine in the overloaded server
  • a virtual machine utilization calculation unit 802 configured to calculate the virtual machine utilization of the virtual machine based on the virtual machine utilization model
  • a synchronization ratio obtaining unit 803, configured to obtain the synchronization ratio of the virtual machine utilization rate and the reduction utilization rate of the server;
  • the synchronization difference calculation unit 804 is configured to calculate the synchronization difference of the virtual machine utilization based on the synchronization ratio, and use the synchronization difference as the virtual machine to reduce the utilization.
  • the non-enabled component list is to establish a list for an empty non-enabled component, which is denoted as dcl i,j,t .
  • the virtual machine utilization model is as follows:
  • N represents the total number of virtual machines
  • M represents the total number of servers
  • u refers to the utilization of virtual machines
  • formula (1) indicates that the total number of virtual machines wi allocated to the server is equal to the sum of virtual machines
  • formula ( 7) Indicates that the utilization of all virtual machines cannot exceed the sum of the available utilization of their servers.
  • the synchronization ratio is the ratio between the utilization rate of the virtual machine and the reduced utilization rate of the server, denoted as
  • the energy consumption of the server and the energy consumption of the virtual machine can be obtained from the above-mentioned server energy consumption model, that is, calculated by the above-mentioned formulas (1) to (6); specific energy consumption.
  • the synchronization difference is a size calculated based on the virtual machine utilization model combined with the synchronization ratio, which can be used to represent the expected utilization rate of the virtual machine that needs to be reduced, that is, the virtual machine reduces the utilization rate.
  • this embodiment first establishes a list of an empty non-enabled component included in the virtual machine VM j of the server hi, that is, the non-enabled component list dcl i, j ,t , and initializes it to pass
  • the list of non-enabled components stores the components that are in the off state at time t; then, the utilization of the virtual machine is calculated based on the utilization model of the virtual machine, and the ratio between the utilization of the virtual machine and the expected decrease in utilization is the synchronization ratio. to further calculate the synchronization difference value that can be used to represent the size of the virtual machine's expected utilization reduction, and use the synchronization difference value as the virtual machine utilization reduction.
  • FIG. 9 a schematic structural diagram of the screening operation module 706 provided in the second embodiment of the present application is shown. For the convenience of description, only the parts related to the present application are shown.
  • the foregoing screening operation module 706 includes: a utilization sorting unit 901 and a to-be-closed component acquiring unit 902 . in:
  • a utilization sorting unit 901 configured to obtain the component utilization of the non-starting components of the virtual machine, and arrange them in ascending order to obtain a list of components in ascending order;
  • the to-be-shutdown component acquisition unit 902 is configured to cumulatively calculate the non-start components that satisfy the reduced utilization rate of the virtual machine based on the order of the ascending component list, and obtain the to-be-shutdown component.
  • this embodiment selects the component with the lowest utilization rate from the components by adopting the lowest utilization component priority algorithm (LUFCS), so as to accurately obtain the lower utilization rate. Low need to shut down components to be shut down.
  • LFCS lowest utilization component priority algorithm
  • the cloud service provider can turn off some components with low utilization to meet the requirement of reducing utilization; this embodiment is based on LUFCS slave components Select the component with the lowest utilization rate, and keep doing this operation until the sum of the overall utilization of this component meets the expected utilization standard ur VM i ,j , that is, the input of LUFCS is the expected configuration utilization ur VM i , j , the output is a list of components that are set to the off state dcl i,j,t . Specifically, the component utilization rate of the non-starting components of the virtual machine can be obtained, and then the obtained component utilization rate can be sorted from small to large.
  • the front end of the list is the component with the least utilization; further, since there are actually components between are connected, so for connected components, LUFCS treats them as a whole component and uses their utilization sum to sort; although this move reduces the priority of shutting down those low-utilization components, it is effective It avoids the possibility of closing multiple components at the same time due to the interconnection between components; therefore, this embodiment initializes a data set S t to store the relationship between the components to be set to be closed; then , judging whether the average utilization parameter of the first component is greater than ur VM i ,j , if it satisfies the condition of being greater than ur VM i ,j , then this component and its connected components are placed in the off state; Furthermore, these closed components are written into the ascending component list occl i, j, t , and the connection relationship of these
  • the total discount d(VMi,j) of the components that have been shut down can be calculated.
  • this embodiment expresses the optimization objective in terms of discount as minimizing the total discount, that is, reducing the cost returned to the user:
  • E pa is the energy consumption of the load control method used by the load control device of the present application
  • E b is the energy consumption of the reference algorithm
  • D pa is the total discount provided in advance by the load control method used by the load control device of the present application.
  • FIG. 10 a schematic structural diagram of the to-be-closed component acquisition unit 902 provided in Embodiment 2 of the present application is shown. For convenience of description, only parts related to the present application are shown.
  • the above-mentioned component acquisition unit 902 to be shut down includes: an end position acquisition subunit 1001 and a component output subunit 1002 to be shut down. in:
  • the end position obtaining subunit is used to use the current non-start component as the end position if the cumulatively calculated utilization rate of the current non-starting component exceeds the virtual machine reduction utilization rate;
  • the output subunit of the component to be shut down is used to take all the non-starting components before the ending position as the component to be shut down in the ascending component list.
  • the cut-off position is the component whose utilization rate of the first non-boot component is greater than that of the reduced utilization rate of the virtual machine.
  • LUFCS will Find a position p in the selectable components, that is, the sum of the utilization parameters of all combinations before position p-1 is less than ur VM i ,j , and the component at position p is the first utilization rate greater than The component of u , that is, the end position; further, in order to select the position of ur VM i,j that is the closest to the utilization parameter, in this embodiment, in the ascending component list, all non-starting components before the end position are regarded as pending shutdown.
  • Components specifically, by using LUFCS to write all the components in the sublist selected in the previous step into the ascending component list ocl i, j, t , and write the connection relationship of these components into the data set S t ; Then, find other interconnected components through LUFCS, and write them into the ascending component list ocl i,j,t ; further, the total discount d(VMi,j of these components that have been closed can also be calculated ).
  • the present application provides a load control device, including: a state information collection module for collecting server state information, the server state information at least includes the number of servers enabled and the number of server overloads; an overload ratio calculation module for server-based The number of activations and the number of server overloads are used to calculate the overload ratio data; the adjustment parameter calculation module is used to calculate the control adjustment parameters based on the overload ratio data; the server reduction utilization calculation module is used to calculate the overloaded server based on the control adjustment parameters and the server energy consumption model The utilization rate of the server is reduced; the virtual machine utilization rate reduction calculation module is used to calculate the virtual machine utilization rate reduction of the virtual machines in the overloaded server based on the server utilization rate reduction rate; the filtering operation module is used to select the policy based on the application components and the virtual machine utilization rate reduction.
  • the component shutdown module is used to shut down the components to be shut down of the overloaded servers.
  • the control and adjustment parameters are obtained based on the number of servers enabled and the number of overloaded servers in the collected server status information, and the relationship between the number of overloaded servers and the overall number of servers can be intuitively reflected through the control and adjustment parameters;
  • the energy consumption model is used to calculate the server utilization reduction; then, by establishing a list of empty non-enabled components contained in the virtual machine VM j of the server hi, that is, the non-enabled component list dcl i, j ,t , and perform initialization, and based on the utilization rate model of the virtual machine, the utilization rate of the virtual machine and the expected reduced utilization rate are calculated to calculate the reduced utilization rate of the virtual machine that can be used to represent the size of the expected utilization rate of the virtual machine; further, In order to achieve a better effect of reducing the utilization rate, the component with the lowest utilization rate is selected from the components
  • the server when it does not exceed the energy consumption threshold, it can be based on the load control method of the present application to turn on those components that have been set to off
  • An optional component of the virtual machine which in turn can apply conventional virtual machine migration algorithms to optimize the location allocation of virtual machines. It can selectively and dynamically adjust the on or off status of application components, reduce cloud server energy consumption, and improve server utilization.
  • FIG. 11 is a block diagram of the basic structure of a computer device according to this embodiment.
  • the computer device 11 includes a memory 111 , a processor 112 , and a network interface 113 that communicate with each other through a system bus. It should be noted that only the computer device 11 with components 111-113 is shown in the figure, but it should be understood that it is not required to implement all of the shown components, and more or less components may be implemented instead.
  • the computer device here is a device that can automatically perform numerical calculation and/or information processing according to pre-set or stored instructions, and its hardware includes but is not limited to microprocessors, special-purpose Integrated circuit (Application Specific Integrated Circuit, ASIC), programmable gate array (Field-Programmable Gate Array, FPGA), digital processor (Digital Signal Processor, DSP), embedded equipment, etc.
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • DSP Digital Signal Processor
  • embedded equipment etc.
  • the computer equipment may be a desktop computer, a notebook computer, a palmtop computer, a cloud server and other computing equipment.
  • the computer device can perform human-computer interaction with the user through a keyboard, a mouse, a remote control, a touch pad or a voice control device.
  • the memory 111 includes at least one type of readable storage medium, and the readable storage medium includes flash memory, hard disk, multimedia card, card-type memory (for example, SD or DX memory, etc.), random access memory (RAM), static Random Access Memory (SRAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), Programmable Read Only Memory (PROM), Magnetic Memory, Magnetic Disk, Optical Disk, etc.
  • the memory 111 may be an internal storage unit of the computer device 11 , such as a hard disk or a memory of the computer device 11 .
  • the memory 111 may also be an external storage device of the computer device 11, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, flash memory card (Flash Card), etc.
  • the memory 111 may also include both the internal storage unit of the computer device 11 and its external storage device.
  • the memory 111 is generally used to store the operating system and various application software installed in the computer device 11 , such as program codes of a load control method, and the like.
  • the memory 111 can also be used to temporarily store various types of data that have been output or will be output.
  • the processor 112 may be a central processing unit (Central Processing Unit, CPU), a controller, a microcontroller, a microprocessor, or other data processing chips in some embodiments.
  • the processor 112 is typically used to control the overall operation of the computer device 11 .
  • the processor 112 is configured to run the program code or process data stored in the memory 111, for example, run the program code of the load control method.
  • the network interface 113 may include a wireless network interface or a wired network interface, and the network interface 113 is generally used to establish a communication connection between the computer device 11 and other electronic devices.
  • the present application also provides another embodiment, which is to provide a computer-readable storage medium, where the computer-readable storage medium stores a load control program, and the load control program can be executed by at least one processor, so that all The at least one processor executes the steps of the load control method as described above.
  • the method of the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is better implementation.
  • the technical solution of the present application can be embodied in the form of a software product in essence or in a part that contributes to the prior art, and the computer software product is stored in a storage medium (such as ROM/RAM, magnetic disk, CD-ROM), including several instructions to make a terminal device (which may be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) execute the methods described in the various embodiments of this application.
  • a storage medium such as ROM/RAM, magnetic disk, CD-ROM

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请属于云计算领域,特别涉及一种负载控制方法,包括采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量;基于服务器启用数量以及服务器过载数量计算过载占比数据;基于过载占比数据计算控制调节参数;基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率;基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件;关闭过载服务器的待关闭组件。本申请还提供一种负载控制装置、计算机设备及存储介质。本申请采用了有选择性的动态调整微服务的关闭组件来降低服务器能耗的消耗。

Description

一种负载控制方法、装置、计算机设备及存储介质 技术领域
本申请属于云计算技术领域,特别涉及一种负载控制方法、装置、计算机设备及存储介质。
背景技术
随着信息技术行业的发展,云计算技术作为信息技术的重要组成部分,以其现收现付的定价模式、较低的运营成本、高扩展性和易访问性使得它被广泛应用在生活中的诸多领域。在现实场景中,云计算数据中心经常会遇到由于突发性的请求量增多而产生的负载瞬时增加的问题,这将会导致服务器资源使用量出现过载以及性能下降的情况。云计算数据中心的高能耗也成了制约云计算发展的一个约束,而现有的节能技术在数据中心处于整体过载状态时,难以产生有效的效果。
而云服务器的高能耗问题已经成为了云服务器提供商需要考虑的重点问题之一。目前来说,现有的云数据中心降低能耗的方法有,虚拟机迁移(VM consolidation)和动态电压频率调整(DVFS)。
(1)虚拟机迁移(VM consolidation):指通过在较少的机器之间分配任务负载并关闭未使用的机器,来达到最大程度地减少能耗的目的。云计算服务器可以通过使用这种方法,使得那些在未充分利用的服务器上工作的虚拟机迁移到其他服务器上,而这些空余下来的服务器将会进入低能耗模式或者关闭。
(2)动态电压频率调整(DVFS):该技术侧重于在计算性能和服务器能耗之间的权衡。即DVFS技术在处理器轻度负载时会降低频率和电压,以达到降 低能耗的目的,而在处理器重度负载时则会使用最大频率和电压。目前基于DVFS的工作主要有利用线程迁移和主动冷却来控制内核以最大化总体能源效率以及协调CPU与内存来找到最优频率。
发明内容
本申请提供了一种负载控制方法、装置、计算机设备及存储介质,以至少解决传统的负载控制方法不智能,不能最大化利用服务器的问题。
为了解决上述问题,本申请提供了如下技术方案:
一种负载控制方法,采用了如下所述的技术方案:
采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量;
基于服务器启用数量以及服务器过载数量计算过载占比数据;
基于过载占比数据计算控制调节参数;
基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;
基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率;
基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件;
关闭过载服务器的待关闭组件。
本申请实施例采取的技术方案还包括,基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率的步骤,具体包括:
在过载服务器中虚拟机中创建非开启组件列表;
基于虚拟机利用率模型计算虚拟机的虚拟机利用率;
获取虚拟机利用率以及服务器降低利用率的同步比值;
基于同步比值计算虚拟机利用率的同步差值,并将同步差值作为虚拟机降低利用率。
本申请实施例采取的技术方案还包括,筛选操作基于最小利用率组件优先算法进行,基于应用组件选择策略以及虚拟机利用率变量对过载服务器进行筛选操作,得到待关闭组件的步骤,具体包括:
获取虚拟机的非启动组件的组件利用率,并进行升序排列,得到升序组件列表;
基于升序组件列表的顺序累计计算满足虚拟机降低利用率的非启动组件,得到待关闭组件。
本申请实施例采取的技术方案还包括,基于升序组件列表的顺序计算满足虚拟机降低利用率的非启动组件,得到待关闭组件的步骤,具体包括:
若累计计算的当前的非启动组件的利用率超出虚拟机降低利用率,则将当前的非启动组件作为截至位置;
在升序组件列表中,将截至位置之前的所有非启动组件作为待关闭组件。
本申请实施例采取的又一技术方案包括,一种负载控制装置,包括:
状态信息采集模块,用于采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量;
过载占比计算模块,用于基于服务器启用数量以及服务器过载数量计算过载占比数据;
调节参数计算模块,用于基于过载占比数据计算控制调节参数;
服务器降低利用率计算模块,用于基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;
虚拟机降低利用率计算模块,用于基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率;
筛选操作模块,用于基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件;
组件关闭模块,用于关闭过载服务器的待关闭组件。
本申请实施例采取的技术方案还包括,虚拟机降低利用率计算模块包括:
组件列表创建单元,用于在过载服务器中虚拟机中创建非开启组件列表;
虚拟机利用率计算单元,用于基于虚拟机利用率模型计算虚拟机的虚拟机利用率;
同步比值获取单元,用于获取虚拟机利用率以及服务器降低利用率的同步比值;
同步差值计算单元,用于基于同步比值计算虚拟机利用率的同步差值,并将同步差值作为虚拟机降低利用率。
本申请实施例采取的技术方案还包括,筛选操作模块包括:
利用率排序单元,用于获取虚拟机的非启动组件的组件利用率,并进行升序排列,得到升序组件列表;
待关闭组件获取单元,用于基于升序组件列表的顺序累计计算满足虚拟机降低利用率的非启动组件,得到待关闭组件。
本申请实施例采取的技术方案还包括,待关闭组件获取单元包括:
截至位置获取子单元,用于若累计计算的当前的非启动组件的利用率超出虚拟机降低利用率,则将当前的非启动组件作为截至位置;
待关闭组件输出子单元,用于在升序组件列表中,将截至位置之前的所有非启动组件作为待关闭组件。
本申请实施例提供的又一技术方案包括,一种计算机设备,包括:
存储器和处理器,存储器中存储有计算机程序,处理器执行计算机程序时实现如上任一项的负载控制方法的步骤。
本申请实施例提供的又一技术方案包括,一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上任一项的负载控制方法的步骤。
相对于现有技术,本申请实施例产生的有益效果在于:
本申请提供了一种负载控制方法,包括:采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量;基于服务器启用数量以及服务器过载数量计算过载占比数据;基于过载占比数据计算控制调节参数;基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率;基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件;关闭过载服务器的待关闭组件。基于采集到的服务器状态信息中服务器启用数量以及服务器过载数量来获取控制调节参数,能够通过该控制调节参数直观反映过载服务器的数量与整体服务器数量之间的关系,再结合控制调节参数以及服务器能耗模型进行服务器降低利用率以及过载服务器中虚拟机的虚拟机降低利用率的计算,进而基于虚拟机降低利用率以及应用组件选择策略来查找满足利用率约束条件的组件,并找到与该组件相联系的其他组件,最后将查找到的这些组件进行关闭。能够有选择地、动态地调节应用组件的关闭状态,降低云服务器能耗,提高对服务器的利用率。
附图说明
图1是本申请可以应用于其中的示例性系统架构图;
图2是本申请可以应用于其中的示例性模型架构图;
图3根据本申请的负载控制方法的一个实施例的流程图;
图4是图3中步骤S5的一种具体实施方式的流程图;
图5是图3中步骤S6的一种具体实施方式的流程图;
图6是图5中步骤S602的一种具体实施方式的流程图;
图7是根据本申请的负载控制装置的一个实施例的结构示意图;
图8是图7所示虚拟机降低利用率计算模块一种具体实施方式的结构示意图;
图9是图7所示筛选操作模块一种具体实施方式的结构示意图;
图10是图9所示待关闭组件获取单元一种具体实施方式的结构示意图;
图11是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
实施例一
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的负载控制方法一般由服务器/终端设备执行,相应地,负载控制装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,模型架构包括用户,应用程序和云服务器提供商。
其中,用户是指向云数据中心提交任务处理请求的使用者。用户实体的定义为包含了用户ID和请求的应用程序或服务信息。用户使用服务时,需要进行付费。
在本申请实施例提供的模型中,应用程序由许多组件或称微服务组成,这些组件被标记为必选组件与可选组件。
其中,必选组件是当系统运行时,必选组件始终处于运行状态,如系统中的关键组件,如数据库;可选组件可以被动态设置为开启或关闭状态。
应该理解,图2中的这些组件具有诸如利用率和折扣之类的参数。其中,利用率表示该组件关闭后,可以降低的服务器利用率,折扣表示返还给用户的费用。而可选组件的开启和关闭由控制器决定,该控制器根据系统状态和组件属性选择策略进行决策。由于组件之间也可以相互连接,这意味着它们可以彼此进行通信,并且它们之间存在数据依赖性。即可以理解为如果某个组件被关闭,那么其所有连接着的可选组件也将被设置为关闭状态。例如,在图1中,如果应用程序1中的Com3被关闭,则Com2也应被关闭;在应用程序2中,如果Com1被关闭,则Com3也应被关闭。在应用程序n中,如果关闭了Com4,则也应该关闭Com3,但是Com2仍在工作,是由于Com1与Com3连接,但是Com1是必选的,因此未关闭。
其中,云服务提供商提供资源以满足服务需求,该服务器上运行有一组虚 拟机以运行应用程序。
继续参考图3,示出了根据本申请的负载控制的方法的一个实施例的流程图。所述的负载控制方法,包括以下步骤:
步骤S1,采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量。
在本实施例中,负载控制方法运行于其上的电子设备(例如图1所示的服务器/终端设备)可以通过有线连接方式或者无线连接方式接收需要采用服务器状态信息的请求。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
在本实施例中,服务器启用数量以及服务器过载数量是指在经历了一个预设的时间间隔t之后,计算出当前状态下的所有在工作状态的服务器数量,即服务器启用数量M,以及计算出当前状态下处于过载状态的服务器数量,即服务器过载数量n t
步骤S2,基于服务器启用数量以及服务器过载数量计算过载占比数据。
在本实施例中,过载占比数据是指过载服务器的数量与整体服务器数量的比值,即服务器启用数量M与服务器过载数量n t比值,能够用于反映服务器能耗过载程度。
具体地,计算服务器启用数量M与服务器过载数量n t比值,通过
Figure PCTCN2020129285-appb-000001
计算出过载占比数据。
步骤S3,基于过载占比数据计算控制调节参数。
在本实施例中,调节参数是用于确定在预设的时间t时刻的服务器能耗调 整程度的控制参数。
具体地,将过载占比数据
Figure PCTCN2020129285-appb-000002
的值赋值给调节参数θ t,基于该调节参数θ t,可以理解为如果所有服务器都在预设的时间t时刻处于过载状态,则调节参数为1.0,即控制器将管理所有服务器上的组件;而如果没有服务器过载并且在时间t不会触发应用组件管制,则调节参数的值为0.0。故可以理解的是调节参数的值将会随计算服务器启用数量M与服务器过载数量n t比值的变化而发生变化,并且这个比值越高,调节参数的值越接近于1。
步骤S4,基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率。
在本实施例中,服务器降低利用率是服务器上预期需要降低的利用率的大小;其中,利用率是表示服务器上的组件关闭后,可以降低的服务器利用率。
在本实施例中,本实施例将能耗方面的优化目标表述为最小化服务器的总能耗如下:
Figure PCTCN2020129285-appb-000003
其中,P i server代表着单个服务器的总能耗,M代表着服务器的总数。
例如,在实际应用中,本实施例将服务器的总能耗以如下所示的表达式的形式写出:
Figure PCTCN2020129285-appb-000004
其中,
Figure PCTCN2020129285-appb-000005
代表着当主机处于空闲状态时的能耗,
Figure PCTCN2020129285-appb-000006
代表着服务器处于负载状态下的能耗;可以理解的是服务器的空闲状态下的能耗是恒定的,而负载状态下的能耗与服务器上所有虚拟机的总CPU利用率成线性关系,即如果 服务器上未托管任何虚拟机,则可以将服务器关闭以节省能耗;VM i,j代表着在第i个服务器上运行着的第j个虚拟机,ω i代表着给第i个服务器分配的虚拟机数量。
进一步地,本实施例中u(VM i,j)表示为:
Figure PCTCN2020129285-appb-000007
其中,u(VM i,j)代表着虚拟机的利用率,它是第j个虚拟机中所有的应用的利用率之和;上式中c代表着组件的编号,A j代表着所有组件的总数;可以理解的是由于CPU占用了服务器的能源消耗的绝大部分,因此本实施例通过优化CPU利用率来实现能耗节省。
进一步地,调节参数θ t的计算公式如下所示:
Figure PCTCN2020129285-appb-000008
其中,n t代表着在时间间隔t内处于过载状态的主机数量;M代表着虚拟机的总数。
进一步地,预期降低的服务器能耗P i r的计算公式如下所示:
Figure PCTCN2020129285-appb-000009
其中,
Figure PCTCN2020129285-appb-000010
为第i个服务器的功耗。
进一步地,预期降低的利用率
Figure PCTCN2020129285-appb-000011
的计算公式如下所示:
Figure PCTCN2020129285-appb-000012
其中,HMP代表着计算预期利用率降低的主机电源模型,具体可以通过硬件厂家提供数据获得,此处不作具体限制。
具体地,调节参数θ t的大小以及服务器的能耗模型可以计算出预期降低的服务器能耗P i r以及预期降低的利用率
Figure PCTCN2020129285-appb-000013
具体可以是依据服务器的能耗模型, 计算得到处在不同利用率水平下的服务器能耗,进而通过利用服务器能耗的变化来计算利用率变化。例如,在服务器能耗模型中,假设利用率为100%的服务器为247瓦,利用率为80%的服务器为211瓦,如果要求将功率从247降低到211瓦,则预期利用率降低为100%-80%=20%。
步骤S5,基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率。
在本实施例中,虚拟机降低利用率是虚拟机预期需要降低的利用率的大小。
具体地,本实施例先通过在过载服务器中虚拟机中创建一个空的非开启组件列表,并基于虚拟机利用率模型先计算虚拟机的虚拟机利用率,然后通过获取虚拟机利用率以及服务器降低利用率的同步比值来进一步计算出虚拟机利用率的同步差值,即虚拟机降低利用率,以便于后续根据该虚拟机降低利用率准确获取所要关闭或开启的组件,从而实现有选择性的动态调整微服务的开启与关闭组件来降低服务器能耗的消耗。
步骤S6,基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件。
在本实施例中,应用组件选择策略是负责查找满足利用率约束条件的一组组件,并找到与它们相联系的其他组件并将这些组件设置为关闭状态。
在本实施例中,待关闭组件是利用率较低的组件。
具体地,本实施例可以通过虚拟机降低利用率进行数值大小的排序,再结合应用组件选择策略率的约束条件来筛选出利用率较低且满足约束条件的组件作为待关闭组件,以准确获取所要关闭的组件,从而实现有选择性的动态调整微服务的关闭组件来降低服务器能耗的消耗。
步骤S7,关闭过载服务器的待关闭组件。
具体地,对过载服务器的待关闭组件进行关闭,以准确关闭所要关闭的组件,从而实现有选择性的动态调整微服务的关闭组件来降低服务器能耗的消耗。
需要说明的是,如果服务器没有超过能耗阈值,则可以基于本申请的负载控制方法将开启那些已被设置为关闭的可选组件,进而可以在优化虚拟机的位置分配上可以应用常规的虚拟机迁移算法,以实现有选择性的动态调整微服务的开启或关闭组件,从而降低服务器能耗的消耗。
本申请提供了一种负载控制方法,包括:采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量;基于服务器启用数量以及服务器过载数量计算过载占比数据;基于过载占比数据计算控制调节参数;基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率;基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件;关闭过载服务器的待关闭组件。基于采集到的服务器状态信息中服务器启用数量以及服务器过载数量来获取控制调节参数,能够通过该控制调节参数直观反映过载服务器的数量与整体服务器数量之间的关系,再结合控制调节参数以及服务器能耗模型进行服务器降低利用率以及过载服务器中虚拟机的虚拟机降低利用率的计算,进而基于虚拟机降低利用率以及应用组件选择策略来查找满足利用率约束条件的组件,并找到与该组件相联系的其他组件,最后将查找到的这些组件进行关闭。能够有选择地、动态地调节应用组件的关闭状态,降低云服务器能耗,提高对服务器的利用率。
继续参考图4,示出了图3中步骤S5的实现流程图,为了便于说明,仅示出与本申请相关的部分。
作为本申请实施例一的一些可选实现方式中,上述步骤S5具体包括:步 骤S501至步骤S504。
步骤S501,在过载服务器中虚拟机中创建非开启组件列表;
步骤S502,基于虚拟机利用率模型计算虚拟机的虚拟机利用率;
步骤S503,获取虚拟机利用率以及服务器降低利用率的同步比值;
步骤S504,基于同步比值计算虚拟机利用率的同步差值,并将同步差值作为虚拟机降低利用率。
在本实施例中,非开启组件列表是对一个空的非开启的组件建立一个列表,记为dcl i,j,t
在本实施例中,虚拟机利用率模型如下:
Figure PCTCN2020129285-appb-000014
Figure PCTCN2020129285-appb-000015
其中,N代表着虚拟机的总数,M代表着服务器的总数,u指的是虚拟机的利用率;公式(1)表示分配给服务器的虚拟机的总数w i等于虚拟机的总和;公式(7)表示所有虚拟机利用率不能超过其服务器可用利用率的总和。
在本实施例中,同步比值是虚拟机利用率以及服务器降低利用率之间的比值,记为
Figure PCTCN2020129285-appb-000016
在本实施例中,同步差值是基于虚拟机利用率模型结合同步比值计算出的能够用于表示虚拟机预期需要降低的利用率的大小,即虚拟机降低利用率。
可以理解的是,本实施例中服务器能耗以及虚拟机能耗可以由上述服务器能耗模型,即通过上述公式(1)至(6)计算得到;或可以通过硬件设备如电表等进行测量获取具体能耗。
具体地,本实施例先通过对包含在服务器h i的虚拟机VM j中的一个空的非开启的组件建立一个列表,即非开启组件列表dcl i,j,t,并进行初始化,以通过非开启组件列表储存在t时刻处于关闭状态的组件;然后,基于虚拟机的利用率模型来虚拟机的利用率,并结合虚拟机的利用率与预期降低地利用率之间的比值即同步比值
Figure PCTCN2020129285-appb-000017
来进一步地计算出能够用于表示虚拟机预期需要降低的利用率的大小的同步差值,并将该同步差值作为该虚拟机降低利用率。
继续参考图5,示出了图3中步骤S6的实现流程图,为了便于说明,仅示出与本申请相关的部分。
作为本申请实施例一的一些可选实现方式中,上述步骤S6具体包括:步骤S601以及步骤S602。
步骤S601,获取虚拟机的非启动组件的组件利用率,并进行升序排列,得到升序组件列表。
步骤S602,基于升序组件列表的顺序累计计算满足虚拟机降低利用率的非启动组件,得到待关闭组件。
在本实施例中,为了实现更加良好的降低利用率的效果,本实施例通过采用选择最小利用率组件优先算法(LUFCS)来从组件中选择出利用率最低的组件,以准确获取利用率较低的需要进行关闭的待关闭组件。
具体地,由于LUFCS假定利用率较低的组件对用户而言相对不重要,因此云服务提供者可以关闭一些利用率较低的组件,以满足降低利用率的要求;本实施例基于LUFCS从组件中选择利用率最低的组件,一直进行这个操作直到这一组件整体的利用率之和符合预期的利用率标准u rVM i,j,即LUFCS的输入为预期的配置利用率u rVM i,j,其输出为被设置为关闭状态的组件的列表dcl i,j,t,具体可以是通过获取虚拟机的非启动组件的组件利用率,进而对获取到的组件利 用率进行从小到大的排序,并排序完成后的列表作为升序组件列表,记为ocl i,j,t,可以理解的是该列表的最前端即为利用率最小的组件;进一步地,由于实际上组件之间会存在着连接关系,所以对于有连接关系的组件,LUFCS将它们视为一个整体组件,并使用它们的利用率总和来进行排序;尽管这一举措降低了关闭那些低利用率组件的优先级,但是有效的避免了由于组件之间的相互连接而同时关闭多个组件的可能性;因此,本实施例通过初始化一个数据集S t,用来存放将要被设置为关闭的组件之间的联系关系;然后,判断第一个组件的平均利用率参数是否大于u rVM i,j,若满足大于u rVM i,j这一条件,则将这一个组件及其相连接的组件均置于关闭状态;进而,将这些已经被关闭的组件写入升序组件列表ocl i,j,t中,并将这些组件的连接关系写入数据集S t中。
进一步地,本实施例通过重复上述操作直到达到需要降低的利用率标准,进而可以出计算已经被关闭的组件的折扣总量d(VMi,j)。
其中,本实施例将折扣方面的优化目标表述为最小化总的折扣,即减少返还给用户的费用:
Figure PCTCN2020129285-appb-000018
其中,D代表单个服务器中总的折扣,M代表着服务器的总数。结合公式(7)至公式(9)能够出总能耗和折扣之间的平衡方案。
进一步地,本实施例为了衡量本申请负载控制方法的性能,提出了算法度量指标Eff pa,具体如下式(10)所示:
Figure PCTCN2020129285-appb-000019
其中,E pa是采用的本申请负载控制方法的能耗,E b是基准算法能耗,D pa是采用的本申请负载控制方法预先提供的折扣总量;可以理解的是如果采用本申请负载控制方法比基准算法更节能,那么
Figure PCTCN2020129285-appb-000020
将会处在0与1之间;D pa将会代表着提供折扣的比值,其数值处在0与1之间;因此,当Eff pa更低时,表明所需要消耗的能耗更低,而提供的折扣总量也将会降低;其中,α代表着折扣的权重,通常来说它的值为1;可以理解的是如果云服务器运营商更加侧重于折扣,那么它的值将会大于1,若云服务器运营商侧重于节能,那么它的值将被设置为小于1。
继续参考图6,示出了图5中步骤S602的实现流程图,为了便于说明,仅示出与本申请相关的部分。
作为本申请实施例一的一些可选实现方式中,上述步骤S602具体包括:步骤S6021以及步骤S6022。
步骤S6021,若累计计算的当前的非启动组件的利用率超出虚拟机降低利用率,则将当前的非启动组件作为截至位置。
步骤S6022,在升序组件列表中,将截至位置之前的所有非启动组件作为待关闭组件。
在本实施例中,截至位置是第一个非启动组件的利用率大于虚拟机降低利用率的组件。
具体地,若累计计算的当前的非启动组件的利用率超出虚拟机降低利用率,即可以理解为通过LUFCS找到的第一个组件没有满足预期降低的利用率,则本实施例中LUFCS将会在可选择的组件中寻找到一个位置p,即在位置p-1之前的所有组合的利用率参数之和小于u rVM i,j,且在位置p上的组件是第一个利用 率大于u的组件,即截至位置;进而,为了选择出利用率参数只和最接近的u rVM i,j位置,本实施例在升序组件列表中,将截至位置之前的所有非启动组件作为待关闭组件,具体可以是通过使用LUFCS将所有的在上一步选择出来的子列表中的组件写入升序组件列表ocl i,j,t中,并将这些组件的连接关系写入数据集S t中;然后,通过LUFCS找到其他的相互连接的组件,并将他们写入升序组件列表ocl i,j,t中;进一步地,还可以出计算这些已经被关闭的组件的折扣总量d(VMi,j)。
综上,本申请提供了一种负载控制方法,包括:采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量;基于服务器启用数量以及服务器过载数量计算过载占比数据;基于过载占比数据计算控制调节参数;基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率;基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件;关闭过载服务器的待关闭组件。基于采集到的服务器状态信息中服务器启用数量以及服务器过载数量来获取控制调节参数,能够通过该控制调节参数直观反映过载服务器的数量与整体服务器数量之间的关系;进而,通过控制调节参数以及服务器能耗模型进行服务器降低利用率的计算;然后,通过对包含在服务器h i的虚拟机VM j中的一个空的非开启的组件建立一个列表,即非开启组件列表dcl i,j,t,并进行初始化,基于虚拟机的利用率模型来虚拟机的利用率以及预期降低地利用率来计算出能够用于表示虚拟机预期需要降低的利用率的大小的虚拟机降低利用率;进一步地,为了实现更加良好的降低利用率的效果,通过采用选择最小利用率组件优先算法(LUFCS)来从组件中选择出利用率最低的组件,以准确获取利用率较低的需要进行关闭的待关闭组件, 并找到与该组件相联系的其他组件,最后将获取到的这些组件进行关闭;最后,当服务器没有超过能耗阈值时,则可以基于本申请的负载控制方法将开启那些已被设置为关闭的可选组件,进而可以在优化虚拟机的位置分配上可以应用常规的虚拟机迁移算法。能够有选择地、动态地调节应用组件的开启或关闭状态,降低云服务器能耗,提高对服务器的利用率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
实施例二
进一步参考图7,作为对上述图3所示方法的实现,本申请提供了一种负载控制装置的一个实施例,该装置实施例与图3所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图7所示,本实施例所述的负载控制装置700包括状态信息采集模块 701、过载占比计算模块702、调节参数计算模块703、服务器降低利用率计算模块704、虚拟机降低利用率计算模块705、筛选操作模块706以及组件关闭模块707。其中:
状态信息采集模块701,用于采集服务器状态信息,所述服务器状态信息至少包括服务器启用数量以及服务器过载数量;
在本实施例中,服务器启用数量以及服务器过载数量是指在经历了一个预设的时间间隔t之后,计算出当前状态下的所有在工作状态的服务器数量,即服务器启用数量M,以及计算出当前状态下处于过载状态的服务器数量,即服务器过载数量n t
过载占比计算模块702,用于基于所述服务器启用数量以及所述服务器过载数量计算过载占比数据;
在本实施例中,过载占比数据是指过载服务器的数量与整体服务器数量的比值,即服务器启用数量M与服务器过载数量n t比值,能够用于反映服务器能耗过载程度。
具体地,计算服务器启用数量M与服务器过载数量n t比值,通过
Figure PCTCN2020129285-appb-000021
计算出过载占比数据。
调节参数计算模块703,用于基于所述过载占比数据计算控制调节参数;
在本实施例中,调节参数是用于确定在预设的时间t时刻的服务器能耗调整程度的控制参数。
具体地,将过载占比数据
Figure PCTCN2020129285-appb-000022
的值赋值给调节参数θ t,基于该调节参数θ t,可以理解为如果所有服务器都在预设的时间t时刻处于过载状态,则调节参数为1.0,即控制器将管理所有服务器上的组件;而如果没有服务器过载并且在 时间t不会触发应用组件管制,则调节参数的值为0.0。故可以理解的是调节参数的值将会随计算服务器启用数量M与服务器过载数量n t比值的变化而发生变化,并且这个比值越高,调节参数的值越接近于1。
服务器降低利用率计算模块704,用于基于所述控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;
在本实施例中,服务器降低利用率是服务器上预期需要降低的利用率的大小;其中,利用率是表示服务器上的组件关闭后,可以降低的服务器利用率。
在本实施例中,本实施例将能耗方面的优化目标表述为最小化服务器的总能耗如下:
Figure PCTCN2020129285-appb-000023
其中,P i server代表着单个服务器的总能耗,M代表着服务器的总数。
例如,在实际应用中,本实施例将服务器的总能耗以如下所示的表达式的形式写出:
Figure PCTCN2020129285-appb-000024
其中,
Figure PCTCN2020129285-appb-000025
代表着当主机处于空闲状态时的能耗,
Figure PCTCN2020129285-appb-000026
代表着服务器处于负载状态下的能耗;可以理解的是服务器的空闲状态下的能耗是恒定的,而负载状态下的能耗与服务器上所有虚拟机的总CPU利用率成线性关系,即如果服务器上未托管任何虚拟机,则可以将服务器关闭以节省能耗;VM i,j代表着在第i个服务器上运行着的第j个虚拟机,ω i代表着给第i个服务器分配的虚拟机数量。
进一步地,本实施例中u(VM i,j)表示为:
Figure PCTCN2020129285-appb-000027
其中,u(VM i,j)代表着虚拟机的利用率,它是第j个虚拟机中所有的应用的利用率之和;上式中c代表着组件的编号,A j代表着所有组件的总数;可以理解的是由于CPU占用了服务器的能源消耗的绝大部分,因此本实施例通过优化CPU利用率来实现能耗节省。
进一步地,调节参数θ t的计算公式如下所示:
Figure PCTCN2020129285-appb-000028
其中,n t代表着在时间间隔t内处于过载状态的主机数量;M代表着虚拟机的总数。
进一步地,预期降低的服务器能耗P i r的计算公式如下所示:
Figure PCTCN2020129285-appb-000029
其中,
Figure PCTCN2020129285-appb-000030
为第i个服务器的功耗。
进一步地,预期降低的利用率
Figure PCTCN2020129285-appb-000031
的计算公式如下所示:
Figure PCTCN2020129285-appb-000032
其中,HMP代表着计算预期利用率降低的主机电源模型,具体可以通过硬件厂家提供数据获得,此处不作具体限制。
具体地,调节参数θ t的大小以及服务器的能耗模型可以计算出预期降低的服务器能耗P i r以及预期降低的利用率
Figure PCTCN2020129285-appb-000033
具体可以是依据服务器的能耗模型,计算得到处在不同利用率水平下的服务器能耗,进而通过利用服务器能耗的变化来计算利用率变化。例如,在服务器能耗模型中,假设利用率为100%的服务器为247瓦,利用率为80%的服务器为211瓦,如果要求将功率从247降低到211瓦,则预期利用率降低为100%-80%=20%。
虚拟机降低利用率计算模块705,用于基于所述服务器降低利用率计算所述过载服务器中虚拟机的虚拟机降低利用率;
在本实施例中,虚拟机降低利用率是虚拟机预期需要降低的利用率的大小。
具体地,本实施例先通过在过载服务器中虚拟机中创建一个空的非开启组件列表,并基于虚拟机利用率模型先计算虚拟机的虚拟机利用率,然后通过获取虚拟机利用率以及服务器降低利用率的同步比值来进一步计算出虚拟机利用率的同步差值,即虚拟机降低利用率,以便于后续根据该虚拟机降低利用率准确获取所要关闭或开启的组件,从而实现有选择性的动态调整微服务的开启与关闭组件来降低服务器能耗的消耗。
筛选操作模块706,用于基于应用组件选择策略以及所述虚拟机降低利用率对所述过载服务器进行筛选操作,得到待关闭组件;
在本实施例中,应用组件选择策略是负责查找满足利用率约束条件的一组组件,并找到与它们相联系的其他组件并将这些组件设置为关闭状态。
在本实施例中,待关闭组件是利用率较低的组件。
具体地,本实施例可以通过虚拟机降低利用率进行数值大小的排序,再结合应用组件选择策略率的约束条件来筛选出利用率较低且满足约束条件的组件作为待关闭组件,以准确获取所要关闭的组件,从而实现有选择性的动态调整微服务的关闭组件来降低服务器能耗的消耗。
组件关闭模块707,用于关闭所述过载服务器的所述待关闭组件。
具体地,对过载服务器的待关闭组件进行关闭,以准确关闭所要关闭的组件,从而实现有选择性的动态调整微服务的关闭组件来降低服务器能耗的消耗。
需要说明的是,如果服务器没有超过能耗阈值,则可以基于本申请的负载控制装置将开启那些已被设置为关闭的可选组件,进而可以在优化虚拟机的位 置分配上可以应用常规的虚拟机迁移算法,以实现有选择性的动态调整微服务的开启或关闭组件,从而降低服务器能耗的消耗。
本申请提供了一种负载控制装置,基于采集到的服务器状态信息中服务器启用数量以及服务器过载数量来获取控制调节参数,能够通过该控制调节参数直观反映过载服务器的数量与整体服务器数量之间的关系,再结合控制调节参数以及服务器能耗模型进行服务器降低利用率以及过载服务器中虚拟机的虚拟机降低利用率的计算,进而基于虚拟机降低利用率以及应用组件选择策略来查找满足利用率约束条件的组件,并找到与该组件相联系的其他组件,最后将查找到的这些组件进行关闭。能够有选择地、动态地调节应用组件的关闭状态,降低云服务器能耗,提高对服务器的利用率。
继续参考图8,示出了本申请实施例二提供的虚拟机降低利用率计算模块705的结构示意图,为了便于说明,仅示出与本申请相关的部分。
在本申请实施例二的一些可选的实现方式中,如图7所示,上述虚拟机降低利用率计算模块705包括:组件列表创建单元801、虚拟机利用率计算单元802、同步比值获取单元803以及同步差值计算单元804。其中:
组件列表创建单元801,用于在过载服务器中虚拟机中创建非开启组件列表;
虚拟机利用率计算单元802,用于基于虚拟机利用率模型计算虚拟机的虚拟机利用率;
同步比值获取单元803,用于获取虚拟机利用率以及服务器降低利用率的同步比值;
同步差值计算单元804,用于基于同步比值计算虚拟机利用率的同步差值,并将同步差值作为虚拟机降低利用率。
在本实施例中,非开启组件列表是对一个空的非开启的组件建立一个列表,记为dcl i,j,t
在本实施例中,虚拟机利用率模型如下:
Figure PCTCN2020129285-appb-000034
Figure PCTCN2020129285-appb-000035
其中,N代表着虚拟机的总数,M代表着服务器的总数,u指的是虚拟机的利用率;公式(1)表示分配给服务器的虚拟机的总数w i等于虚拟机的总和;公式(7)表示所有虚拟机利用率不能超过其服务器可用利用率的总和。
在本实施例中,同步比值是虚拟机利用率以及服务器降低利用率之间的比值,记为
Figure PCTCN2020129285-appb-000036
可以理解的是,本实施例中服务器能耗以及虚拟机能耗可以由上述服务器能耗模型,即通过上述公式(1)至(6)计算得到;或可以通过硬件设备如电表等进行测量获取具体能耗。
在本实施例中,同步差值是基于虚拟机利用率模型结合同步比值计算出的能够用于表示虚拟机预期需要降低的利用率的大小,即虚拟机降低利用率。
具体地,本实施例先通过对包含在服务器h i的虚拟机VM j中的一个空的非开启的组件建立一个列表,即非开启组件列表dcl i,j,t,并进行初始化,以通过非开启组件列表储存在t时刻处于关闭状态的组件;然后,基于虚拟机的利用率模型来虚拟机的利用率,并结合虚拟机的利用率与预期降低地利用率之间的比值即同步比值
Figure PCTCN2020129285-appb-000037
来进一步地计算出能够用于表示虚拟机预期需要降低的利用率的大小的同步差值,并将该同步差值作为该虚拟机降低利用率。
继续参考图9,示出了本申请实施例二提供的筛选操作模块706的结构示意图,为了便于说明,仅示出与本申请相关的部分。
在本申请实施例二的一些可选的实现方式中,如图7所示,上述筛选操作模块706包括:利用率排序单元901以及待关闭组件获取单元902。其中:
利用率排序单元901,用于获取虚拟机的非启动组件的组件利用率,并进行升序排列,得到升序组件列表;
待关闭组件获取单元902,用于基于升序组件列表的顺序累计计算满足虚拟机降低利用率的非启动组件,得到待关闭组件。
在本实施例中,为了实现更加良好的降低利用率的效果,本实施例通过采用选择最小利用率组件优先算法(LUFCS)来从组件中选择出利用率最低的组件,以准确获取利用率较低的需要进行关闭的待关闭组件。
具体地,由于LUFCS假定利用率较低的组件对用户而言相对不重要,因此云服务提供者可以关闭一些利用率较低的组件,以满足降低利用率的要求;本实施例基于LUFCS从组件中选择利用率最低的组件,一直进行这个操作直到这一组件整体的利用率之和符合预期的利用率标准u rVM i,j,即LUFCS的输入为预期的配置利用率u rVM i,j,其输出为被设置为关闭状态的组件的列表dcl i,j,t,具体可以是通过获取虚拟机的非启动组件的组件利用率,进而对获取到的组件利用率进行从小到大的排序,并排序完成后的列表作为升序组件列表,记为ocl i,j,t,可以理解的是该列表的最前端即为利用率最小的组件;进一步地,由于实际上组件之间会存在着连接关系,所以对于有连接关系的组件,LUFCS将它们视为一个整体组件,并使用它们的利用率总和来进行排序;尽管这一举措降低了关闭那些低利用率组件的优先级,但是有效的避免了由于组件之间的相互连接而同时关闭多个组件的可能性;因此,本实施例通过初始化一个数据集S t,用来 存放将要被设置为关闭的组件之间的联系关系;然后,判断第一个组件的平均利用率参数是否大于u rVM i,j,若满足大于u rVM i,j这一条件,则将这一个组件及其相连接的组件均置于关闭状态;进而,将这些已经被关闭的组件写入升序组件列表ocl i,j,t中,并将这些组件的连接关系写入数据集S t中。
进一步地,本实施例通过重复上述操作直到达到需要降低的利用率标准,进而可以出计算已经被关闭的组件的折扣总量d(VMi,j)。
其中,本实施例将折扣方面的优化目标表述为最小化总的折扣,即减少返还给用户的费用:
Figure PCTCN2020129285-appb-000038
其中,D代表单个服务器中总的折扣,M代表着服务器的总数。结合公式(7)至公式(9)能够出总能耗和折扣之间的平衡方案。
进一步地,本实施例为了衡量本申请负载控制装置使用的负载控制方法的性能,提出了算法度量指标Eff pa,具体如下式(10)所示:
Figure PCTCN2020129285-appb-000039
其中,E pa是采用的本申请负载控制装置使用的负载控制方法的能耗,E b是基准算法能耗,D pa是采用的本申请负载控制装置使用的负载控制方法预先提供的折扣总量;可以理解的是如果采用本申请负载控制装置使用的负载控制方法比基准算法更节能,那么
Figure PCTCN2020129285-appb-000040
将会处在0与1之间;D pa将会代表着提供折扣的比值,其数值处在0与1之间;因此,当Eff pa更低时,表明所需要消耗的能耗更低,而提供的折扣总量也将会降低;其中,α代表着折扣的权重,通常来 说它的值为1;可以理解的是如果云服务器运营商更加侧重于折扣,那么它的值将会大于1,若云服务器运营商侧重于节能,那么它的值将被设置为小于1。
继续参考图10,示出了本申请实施例二提供的待关闭组件获取单元902的结构示意图,为了便于说明,仅示出与本申请相关的部分。
在本申请实施例二的一些可选的实现方式中,如图9所示,上述待关闭组件获取单元902包括:截至位置获取子单元1001以及待关闭组件输出子单元1002。其中:
截至位置获取子单元,用于若累计计算的当前的非启动组件的利用率超出虚拟机降低利用率,则将当前的非启动组件作为截至位置;
待关闭组件输出子单元,用于在升序组件列表中,将截至位置之前的所有非启动组件作为待关闭组件。
在本实施例中,截至位置是第一个非启动组件的利用率大于虚拟机降低利用率的组件。
具体地,若累计计算的当前的非启动组件的利用率超出虚拟机降低利用率,即可以理解为通过LUFCS找到的第一个组件没有满足预期降低的利用率,则本实施例中LUFCS将会在可选择的组件中寻找到一个位置p,即在位置p-1之前的所有组合的利用率参数之和小于u rVM i,j,且在位置p上的组件是第一个利用率大于u的组件,即截至位置;进而,为了选择出利用率参数只和最接近的u rVM i,j位置,本实施例在升序组件列表中,将截至位置之前的所有非启动组件作为待关闭组件,具体可以是通过使用LUFCS将所有的在上一步选择出来的子列表中的组件写入升序组件列表ocl i,j,t中,并将这些组件的连接关系写入数据集S t中;然后,通过LUFCS找到其他的相互连接的组件,并将他们写入升序组件列表ocl i,j,t中;进一步地,还可以出计算这些已经被关闭的组件的折扣总量 d(VMi,j)。
综上,本申请提供了一种负载控制装置,包括:状态信息采集模块,用于采集服务器状态信息,服务器状态信息至少包括服务器启用数量以及服务器过载数量;过载占比计算模块,用于基于服务器启用数量以及服务器过载数量计算过载占比数据;调节参数计算模块,用于基于过载占比数据计算控制调节参数;服务器降低利用率计算模块,用于基于控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;虚拟机降低利用率计算模块,用于基于服务器降低利用率计算过载服务器中虚拟机的虚拟机降低利用率;筛选操作模块,用于基于应用组件选择策略以及虚拟机降低利用率对过载服务器进行筛选操作,得到待关闭组件;组件关闭模块,用于关闭过载服务器的待关闭组件。基于采集到的服务器状态信息中服务器启用数量以及服务器过载数量来获取控制调节参数,能够通过该控制调节参数直观反映过载服务器的数量与整体服务器数量之间的关系;进而,通过控制调节参数以及服务器能耗模型进行服务器降低利用率的计算;然后,通过对包含在服务器h i的虚拟机VM j中的一个空的非开启的组件建立一个列表,即非开启组件列表dcl i,j,t,并进行初始化,基于虚拟机的利用率模型来虚拟机的利用率以及预期降低地利用率来计算出能够用于表示虚拟机预期需要降低的利用率的大小的虚拟机降低利用率;进一步地,为了实现更加良好的降低利用率的效果,通过采用选择最小利用率组件优先算法(LUFCS)来从组件中选择出利用率最低的组件,以准确获取利用率较低的需要进行关闭的待关闭组件,并找到与该组件相联系的其他组件,最后将获取到的这些组件进行关闭;最后,当服务器没有超过能耗阈值时,则可以基于本申请的负载控制方法将开启那些已被设置为关闭的可选组件,进而可以在优化虚拟机的位置分配上可以应用常规的虚拟机迁移算法。能够有选择地、动态 地调节应用组件的开启或关闭状态,降低云服务器能耗,提高对服务器的利用率。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图11,图11为本实施例计算机设备基本结构框图。
所述计算机设备11包括通过系统总线相互通信连接存储器111、处理器112、网络接口113。需要指出的是,图中仅示出了具有组件111-113的计算机设备11,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器111至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器111可以是所述计算机设备11的内部存储单元,例如该计算机设备11的硬盘或内存。在另一些实施例中,所述存储器111也可以是所述计算机设备11的外部存储设备,例如该计算机设备11上配备 的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器111还可以既包括所述计算机设备11的内部存储单元也包括其外部存储设备。本实施例中,所述存储器111通常用于存储安装于所述计算机设备11的操作系统和各类应用软件,例如负载控制方法的程序代码等。此外,所述存储器111还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器112在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器112通常用于控制所述计算机设备11的总体操作。本实施例中,所述处理器112用于运行所述存储器111中存储的程序代码或者处理数据,例如运行所述负载控制方法的程序代码。
所述网络接口113可包括无线网络接口或有线网络接口,该网络接口113通常用于在所述计算机设备11与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有负载控制程序,所述负载控制程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的负载控制方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

  1. 一种负载控制方法,其特征在于,包括下述步骤:
    采集服务器状态信息,所述服务器状态信息至少包括服务器启用数量以及服务器过载数量;
    基于所述服务器启用数量以及所述服务器过载数量计算过载占比数据;
    基于所述过载占比数据计算控制调节参数;
    基于所述控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;
    基于所述服务器降低利用率计算所述过载服务器中虚拟机的虚拟机降低利用率;
    基于应用组件选择策略以及所述虚拟机降低利用率对所述过载服务器进行筛选操作,得到待关闭组件;
    关闭所述过载服务器的所述待关闭组件。
  2. 根据权利要求1所述的负载控制方法,其特征在于,所述基于所述服务器降低利用率计算所述过载服务器中虚拟机的虚拟机降低利用率的步骤,具体包括:
    在所述过载服务器中虚拟机中创建非开启组件列表;
    基于虚拟机利用率模型计算所述虚拟机的虚拟机利用率;
    获取所述虚拟机利用率以及所述服务器降低利用率的同步比值;
    基于所述同步比值计算虚拟机利用率的同步差值,并将所述同步差值作为所述虚拟机降低利用率。
  3. 根据权利要求1所述的负载控制方法,其特征在于,所述筛选操作基于 最小利用率组件优先算法进行,所述基于应用组件选择策略以及所述虚拟机利用率变量对所述过载服务器进行筛选操作,得到待关闭组件的步骤,具体包括:
    获取所述虚拟机的非启动组件的组件利用率,并进行升序排列,得到升序组件列表;
    基于所述升序组件列表的顺序累计计算满足所述虚拟机降低利用率的所述非启动组件,得到所述待关闭组件。
  4. 根据权利要求3所述的负载控制方法,其特征在于,所述基于所述升序组件列表的顺序计算满足所述虚拟机降低利用率的所述非启动组件,得到所述待关闭组件的步骤,具体包括:
    若累计计算的当前的非启动组件的利用率超出所述虚拟机降低利用率,则将所述当前的非启动组件作为截至位置;
    在所述升序组件列表中,将所述截至位置之前的所有非启动组件作为所述待关闭组件。
  5. 一种负载控制装置,其特征在于,包括:
    状态信息采集模块,用于采集服务器状态信息,所述服务器状态信息至少包括服务器启用数量以及服务器过载数量;
    过载占比计算模块,用于基于所述服务器启用数量以及所述服务器过载数量计算过载占比数据;
    调节参数计算模块,用于基于所述过载占比数据计算控制调节参数;
    服务器降低利用率计算模块,用于基于所述控制调节参数以及服务器能耗模型计算过载服务器的服务器降低利用率;
    虚拟机降低利用率计算模块,用于基于所述服务器降低利用率计算所述过载服务器中虚拟机的虚拟机降低利用率;
    筛选操作模块,用于基于应用组件选择策略以及所述虚拟机降低利用率对所述过载服务器进行筛选操作,得到待关闭组件;
    组件关闭模块,用于关闭所述过载服务器的所述待关闭组件。
  6. 根据权利要求5所述的负载控制装置,其特征在于,所述虚拟机降低利用率计算模块包括:
    组件列表创建单元,用于在所述过载服务器中虚拟机中创建非开启组件列表;
    虚拟机利用率计算单元,用于基于虚拟机利用率模型计算所述虚拟机的虚拟机利用率;
    同步比值获取单元,用于获取所述虚拟机利用率以及所述服务器降低利用率的同步比值;
    同步差值计算单元,用于基于所述同步比值计算虚拟机利用率的同步差值,并将所述同步差值作为所述虚拟机降低利用率。
  7. 根据权利要求5所述的负载控制装置,其特征在于,所述筛选操作模块包括:
    利用率排序单元,用于获取所述虚拟机的非启动组件的组件利用率,并进行升序排列,得到升序组件列表;
    待关闭组件获取单元,用于基于所述升序组件列表的顺序累计计算满足所述虚拟机降低利用率的所述非启动组件,得到所述待关闭组件。
  8. 根据权利要求7所述的负载控制装置,其特征在于,所述待关闭组件获取单元包括:
    截至位置获取子单元,用于若累计计算的当前的非启动组件的利用率超出所述虚拟机降低利用率,则将所述当前的非启动组件作为截至位置;
    待关闭组件输出子单元,用于在所述升序组件列表中,将所述截至位置之前 的所有非启动组件作为所述待关闭组件。
  9. 一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至4中任一项所述的负载控制方法的步骤。
  10. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的负载控制方法的步骤。
PCT/CN2020/129285 2020-11-17 2020-11-17 一种负载控制方法、装置、计算机设备及存储介质 WO2022104500A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/129285 WO2022104500A1 (zh) 2020-11-17 2020-11-17 一种负载控制方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/129285 WO2022104500A1 (zh) 2020-11-17 2020-11-17 一种负载控制方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
WO2022104500A1 true WO2022104500A1 (zh) 2022-05-27
WO2022104500A9 WO2022104500A9 (zh) 2022-11-03

Family

ID=81707942

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/129285 WO2022104500A1 (zh) 2020-11-17 2020-11-17 一种负载控制方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
WO (1) WO2022104500A1 (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077082A (zh) * 2013-01-08 2013-05-01 中国科学院深圳先进技术研究院 一种数据中心负载分配及虚拟机迁移节能方法及系统
US20140196056A1 (en) * 2013-01-08 2014-07-10 Commvault Systems, Inc. Virtual server agent load balancing
CN104536832A (zh) * 2015-01-21 2015-04-22 北京邮电大学 一种虚拟机部署方法
US20170255890A1 (en) * 2015-01-24 2017-09-07 Vmware, Inc. Methods and systems to optimize operating system license costs in a virtual data center
CN108170522A (zh) * 2017-12-06 2018-06-15 南京邮电大学 一种基于动态阈值的云计算虚拟机迁移控制方法
CN109901932A (zh) * 2019-03-12 2019-06-18 东北大学 一种基于虚拟机的服务器整合方法
US20190391836A1 (en) * 2018-06-26 2019-12-26 Fujitsu Limited Operation management apparatus, migration destination recommendation method, and storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077082A (zh) * 2013-01-08 2013-05-01 中国科学院深圳先进技术研究院 一种数据中心负载分配及虚拟机迁移节能方法及系统
US20140196056A1 (en) * 2013-01-08 2014-07-10 Commvault Systems, Inc. Virtual server agent load balancing
CN104536832A (zh) * 2015-01-21 2015-04-22 北京邮电大学 一种虚拟机部署方法
US20170255890A1 (en) * 2015-01-24 2017-09-07 Vmware, Inc. Methods and systems to optimize operating system license costs in a virtual data center
CN108170522A (zh) * 2017-12-06 2018-06-15 南京邮电大学 一种基于动态阈值的云计算虚拟机迁移控制方法
US20190391836A1 (en) * 2018-06-26 2019-12-26 Fujitsu Limited Operation management apparatus, migration destination recommendation method, and storage medium
CN109901932A (zh) * 2019-03-12 2019-06-18 东北大学 一种基于虚拟机的服务器整合方法

Also Published As

Publication number Publication date
WO2022104500A9 (zh) 2022-11-03

Similar Documents

Publication Publication Date Title
Zhou et al. Minimizing SLA violation and power consumption in Cloud data centers using adaptive energy-aware algorithms
AU2007213901B2 (en) Application software initiated speedup
Arshad et al. Utilizing power consumption and SLA violations using dynamic VM consolidation in cloud data centers
US9618997B2 (en) Controlling a turbo mode frequency of a processor
JP5744707B2 (ja) メモリ使用量照会ガバナのためのコンピュータ実装方法、コンピュータ・プログラム、およびシステム(メモリ使用量照会ガバナ)
CN106528266B (zh) 一种云计算系统中的资源动态调整方法及装置
CN113672383A (zh) 一种云计算资源调度方法、系统、终端以及存储介质
Li et al. Energy-efficient and QoS-aware model based resource consolidation in cloud data centers
US8140873B2 (en) User imposed power constraints on web server based on user preferences
US9395785B2 (en) Method and device for controlling terminal and terminal thereof
US20170212581A1 (en) Systems and methods for providing power efficiency via memory latency control
CN110832434A (zh) 针对节能性能使用有效利用率进行核心频率管理
Jiang et al. Adaptive thresholds determination for saving cloud energy using three-way decisions
Jiang et al. An energy-aware virtual machine migration strategy based on three-way decisions
CN110795323A (zh) 负载统计方法、装置、存储介质及电子设备
US20140033207A1 (en) System and Method for Managing P-States and C-States of a System
WO2022104500A1 (zh) 一种负载控制方法、装置、计算机设备及存储介质
CN110308991B (zh) 一种基于随机任务的数据中心节能优化方法及系统
WO2017059716A1 (zh) 多磁盘阵列共享写缓存的方法及装置
Leite et al. Power‐aware server consolidation for federated clouds
Li et al. SLA‐Aware and Energy‐Efficient VM Consolidation in Cloud Data Centers Using Host State 3rd‐Order Markov Chain Model
CN112379970A (zh) 一种负载控制方法、装置、计算机设备及存储介质
Sun et al. An incentive to share resource-based crowdfunding and repeated game in green cloud computing
Islam et al. Online energy budgeting for virtualized data centers
Malhotra An adaptive threshold policy for host overload detection in cloud data centre

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20961792

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20961792

Country of ref document: EP

Kind code of ref document: A1