WO2022100306A1 - 一种虚拟机部署方法、装置、设备及可读存储介质 - Google Patents

一种虚拟机部署方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
WO2022100306A1
WO2022100306A1 PCT/CN2021/121216 CN2021121216W WO2022100306A1 WO 2022100306 A1 WO2022100306 A1 WO 2022100306A1 CN 2021121216 W CN2021121216 W CN 2021121216W WO 2022100306 A1 WO2022100306 A1 WO 2022100306A1
Authority
WO
WIPO (PCT)
Prior art keywords
firefly
average
virtual machine
iteration
objective function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2021/121216
Other languages
English (en)
French (fr)
Inventor
沈新新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Wave Intelligent Technology Co Ltd
Original Assignee
Suzhou Wave Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Wave Intelligent Technology Co Ltd filed Critical Suzhou Wave Intelligent Technology Co Ltd
Priority to US18/029,705 priority Critical patent/US20250265104A1/en
Publication of WO2022100306A1 publication Critical patent/WO2022100306A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • 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 relates to the field of computer technologies, and in particular, to a virtual machine deployment method, apparatus, device, and readable storage medium.
  • Virtual machines in the cloud platform can be scheduled on different hosts.
  • a host with a light load can be selected to deploy a new virtual machine, or a virtual machine on a host with a heavy load can be migrated to a host with a light load, so as to balance the load of each host as much as possible.
  • By scheduling virtual machines in this way although the load of individual hosts can be avoided from being too large or too small, it does not take into account the external service capability of the entire cloud platform, and it is difficult to ensure the running performance of all hosts in the cloud platform.
  • the purpose of the present application is to provide a virtual machine deployment method, apparatus, device and readable storage medium, so as to maximize the running performance of all hosts in a cloud platform while scheduling virtual machines. Its specific plan is as follows:
  • the present application provides a method for deploying a virtual machine, including:
  • the function calculation step comprises: calculating an objective function according to the position of the processing object, and the objective function can represent : the average performance size of all candidate hosts after the virtual machine is assumed to be deployed to the processing object;
  • the calculation formula of the objective function is:
  • F is the objective function
  • f p is the average power consumption of all the hosts to be selected after the virtual machine is assumed to be deployed to the processing object
  • f CPU is the assumption that the virtual machine is deployed to the processing object, The average CPU utilization of all candidate hosts
  • f load is the average resource balance of all candidate hosts assuming that the virtual machine is deployed to the processing object
  • K 1 , K 2 , and K 3 are preset weight values .
  • the average resource balance degree is calculated and obtained according to the average CPU utilization, average memory utilization, average disk utilization, and average bandwidth utilization of all candidate hosts after the virtual machine is deployed to the processing object. ; the calculation formula of the average resource balance is:
  • f load is the average resource balance
  • u cpu is the average CPU utilization
  • u mem is the average memory utilization
  • u hw is the average bandwidth utilization
  • u disk is the average disk utilization Rate.
  • the target parameters include fluorescein and step size
  • the updating target parameters of each firefly includes:
  • the luciferin of each firefly is updated using the first formula, which is:
  • the step size of each firefly is updated using a second formula that is:
  • li (t+1) is the fluorescein of firefly i at the t+1th iteration
  • ⁇ (0 ⁇ 1) is the fluorescein volatilization rate of firefly i
  • li(t) is the fluorescein volatilization rate of firefly i at Fluorescein at the t-th iteration
  • is the fluorescein update rate of firefly i
  • F i (t+1) is the objective function value of firefly i at the t+1-th iteration
  • s i (t+1) is The step size of the firefly i at the t+1th iteration
  • s min is the preset minimum step size
  • s max is the preset maximum step size
  • t+1 is the current number of iterations
  • t max is the maximum number of iterations.
  • the updating of the position of each firefly according to the updated target parameters includes:
  • x i (t+1) is the position of firefly i at the t+1th iteration
  • x i (t) is the position of firefly i at the t-th iteration
  • s i (t+1) is the firefly i
  • is the position of firefly i and firefly j the Euclidean distance;
  • firefly j is the neighbor firefly selected in the decision domain of firefly i at the t-th iteration based on the roulette rule, and the fluorescein of firefly j is greater than that of firefly i.
  • the target parameter further includes a decision domain, and the decision domain of each firefly is updated using a fourth formula, and the fourth formula is:
  • n i the threshold of the neighborhood set
  • N i (t) the neighborhood set of firefly i at the t-th iteration.
  • the average power consumption, the average CPU utilization and the average resource balance are all normalized, and the normalization formula is:
  • f p is the average power consumption after normalization
  • f p_o is the average power consumption before normalization
  • f p_min is the minimum average power consumption
  • f p_max is the maximum average power consumption
  • f cpu is the normalized power consumption
  • the average CPU utilization after normalization f cpu_o is the average CPU utilization before normalization
  • f cpu_min is the minimum average CPU utilization
  • f cpu_max is the maximum average CPU utilization
  • f load is the normalized After the average resource balance degree
  • f load_o is the average resource balance degree before normalization
  • f load_min is the minimum average resource balance degree
  • f load_max is the maximum average resource balance degree.
  • the present application provides a virtual machine deployment device, including:
  • the initialization module is used to randomly set the position of each firefly and initialize the target parameters of each firefly; the position of each firefly is the position of each candidate host;
  • the function calculation module is used to take each firefly as a processing object, and execute a function calculation step to obtain the corresponding target function value of each firefly; the function calculation step comprises: calculating the target function according to the position of the processing object, The objective function can represent: assuming that the virtual machine is deployed to the processing object, the average performance size of all the hosts to be selected;
  • the judgment module is used to judge whether the maximum number of iterations has been reached
  • the deployment module is used to determine the firefly corresponding to the largest objective function value in all objective function values as the target firefly if the maximum number of iterations is reached, and determine the candidate host corresponding to the target firefly as the target host, and deploy the the virtual machine to the destination host;
  • the iterative module is used to update the target parameter of each firefly if the maximum number of iterations is not reached, update the position of each firefly according to the updated target parameter, and execute each firefly as a processing object, and execute the function Calculation steps to get the corresponding objective function value for each firefly.
  • the present application provides a virtual machine deployment device, including:
  • the processor is configured to execute the computer program to implement the virtual machine deployment method disclosed above.
  • the present application provides a readable storage medium for storing a computer program, wherein when the computer program is executed by a processor, the aforementioned method for deploying a virtual machine is implemented.
  • the present application provides a virtual machine deployment method, including: randomly setting the positions of each firefly, and initializing the target parameters of each firefly; the position of each firefly is the position of each host to be selected; Fireflies are respectively used as processing objects, and a function calculation step is performed to obtain an objective function value corresponding to each firefly; the function calculation step includes: calculating an objective function according to the position of the processing object, and the objective function can represent: assuming a virtual After the machine is deployed to the processing object, the average performance of all the candidates to be selected; determine whether the maximum number of iterations is reached; if the maximum number of iterations is reached, the firefly corresponding to the maximum objective function value among all objective function values is determined as the target firefly , determine the candidate host corresponding to the target firefly as the target host, and deploy the virtual machine to the target host; if the maximum number of iterations is not reached, then update the target parameter of each firefly, according to the updated described The target
  • this application uses the firefly algorithm to determine the deployment position of the virtual machine, and uses the average performance of all the hosts to be selected as the objective function, and the position of each firefly is the position of each host to be selected. Therefore, the iterative optimization process of the firefly algorithm is : Find the host that maximizes the performance of all hosts in the cloud platform after the virtual machine is deployed. Since the objective function is the average performance of all candidate hosts after the virtual machine is deployed, selecting the candidate host corresponding to the maximum objective function value can maximize the average performance of all candidate hosts after the virtual machine is deployed to the destination host. , so as to maximize the running performance of all hosts in the cloud platform while scheduling virtual machines.
  • a virtual machine deployment apparatus, device and readable storage medium provided by the present application also have the above technical effects.
  • FIG. 1 is a flowchart of a method for deploying a virtual machine disclosed in the present application
  • Fig. 2 is a kind of method flow chart of utilizing firefly algorithm to solve objective function disclosed by the application;
  • FIG. 3 is a schematic diagram of a virtual machine deployment apparatus disclosed in the present application.
  • FIG. 4 is a schematic diagram of a virtual machine deployment device disclosed in the present application.
  • virtual machine scheduling is required in the following three scenarios.
  • each user who uses the cloud platform applies for different resources and applications, and the load on each physical host is also different, which also causes the resource usage of the cloud platform to be unstable.
  • the ant colony algorithm can be used to find the destination host for deploying virtual machines.
  • the ant colony algorithm results in a large amount of calculation, slow convergence speed, and easy to fall into local optimum.
  • scheduling virtual machines maximize the performance of all hosts in the cloud platform.
  • the present application provides a virtual machine deployment solution, which can maximize the running performance of all hosts in the cloud platform while scheduling virtual machines.
  • an embodiment of the present application discloses a method for deploying a virtual machine, including:
  • the position of each firefly is the position of each candidate host.
  • the location of fireflies is equal to the number of hosts to be selected, but the number of fireflies and the number of hosts to be selected may or may not be equal. If the number of fireflies is greater than the number of hosts to be selected, then there may be multiple fireflies at the location of one firefly.
  • the function calculation step includes: calculating an objective function according to the position of the processing object, and the objective function can represent: assuming that the virtual machine is deployed to the processing object, the average performance size of all the hosts to be selected.
  • the calculation formula of the objective function is:
  • F is the objective function
  • f p is the average power consumption of all candidate hosts after the virtual machine is assumed to be deployed to the processing object
  • f CPU is the average CPU utilization of all candidate hosts after the virtual machine is assumed to be deployed to the processing object
  • f load is the average resource balance of all candidate hosts assuming that the virtual machine is deployed to the processing object
  • K 1 , K 2 , and K 3 are all preset weight values. A larger preset weight value indicates that the current cloud platform focuses on its corresponding parameters (power consumption, CPU utilization, or resource balance).
  • Firefly A For Firefly A, it is considered that it corresponds to the candidate host A, then assuming that the virtual machine is deployed to the candidate host A, at this time, based on the relevant parameters of the virtual machine, such as power consumption, CPU utilization, bandwidth utilization, and memory utilization, adjust the pending Select the power consumption, CPU utilization, and resource balance of host A. Then calculate the average power consumption, average CPU utilization and average resource balance of all candidate hosts (including candidate host A where virtual machines are deployed) at a certain moment. The larger the F, the better the average performance of all candidate hosts.
  • the average resource balance is assumed to be based on the average CPU utilization, average memory utilization, average disk utilization, and average bandwidth utilization of all candidate hosts at a certain moment after the virtual machine is deployed to the processing object. Calculated; the calculation formula of the average resource balance is:
  • f load is the average resource balance
  • u cpu is the average CPU utilization
  • u mem is the average memory utilization
  • u hw is the average bandwidth utilization
  • u disk is the average disk utilization.
  • the average power consumption, average CPU utilization, and average resource balance are all normalized, and the normalization formula is:
  • f p is the average power consumption after normalization
  • f p_o is the average power consumption before normalization
  • f p_min is the minimum average power consumption
  • f p_max is the maximum average power consumption
  • f cpu is the normalized power consumption Average CPU utilization
  • f cpu_o is the average CPU utilization before normalization
  • f cpu_min is the minimum average CPU utilization
  • f cpu_max is the maximum average CPU utilization
  • f load is the normalized average resource balance
  • f load_o is the average resource balance before normalization
  • f load_min is the minimum average resource balance
  • f load_max is the maximum average resource balance.
  • the normalized average power consumption, average CPU utilization, and average resource balance are between 0 and 1.
  • S104 Determine the firefly corresponding to the largest objective function value among all the objective function values as the target firefly, determine the candidate host corresponding to the target firefly as the target host, and deploy the virtual machine to the target host.
  • the target parameters include fluorescein and step size, and the target parameters for each firefly are updated, including:
  • the fluorescein of each firefly is updated using the first formula, which is:
  • l i (t+1) is the fluorescein of firefly i at the t+1th iteration, that is, the currently updated fluorescein
  • ⁇ (0 ⁇ 1) is the fluorescein volatilization rate of firefly i
  • l i (t) is the fluorescein of firefly i at the t-th iteration
  • is the fluorescein update rate of firefly i
  • F i (t+1) is the objective function value of firefly i at the t+1-th iteration
  • s i (t+1) is the step size of firefly i at the t+1th iteration, that is, the current updated step size
  • s min is the preset minimum step size, which is a value close to 0
  • s max is the preset maximum step size, and the value is close to 1
  • t+1 is the current iteration number
  • t max is the maximum iteration number.
  • step size of each firefly will change as the number of iterations increases, so that the step size of the firefly can be kept within a reasonable range.
  • the position of each firefly is updated according to the updated target parameters, including:
  • x i (t+1) is the position of firefly i at the t+1th iteration
  • x i (t) is the position of firefly i at the t-th iteration
  • s i (t+1) is the firefly i
  • is the position of firefly i and firefly j the Euclidean distance;
  • firefly j is the neighbor firefly selected in the decision domain of firefly i at the t-th iteration based on the roulette rule, and the fluorescein of firefly j is greater than that of firefly i.
  • the target parameter also includes a decision domain, and the decision domain of each firefly is updated by a fourth formula, and the fourth formula is:
  • n i the threshold of the neighborhood set
  • N i (t) the neighborhood set of firefly i at the t-th iteration, that is, firefly The number of neighbor fireflies in the decision domain of i in the t-th iteration.
  • the firefly algorithm is used to determine the deployment position of the virtual machine, and the average performance of all the hosts to be selected is used as the objective function, and the position of each firefly is the position of each host to be selected. Therefore, the iterative optimization process of the firefly algorithm That is: to find the host that can maximize the running performance of all hosts in the cloud platform after the virtual machine is deployed. Since the objective function is the average performance of all candidate hosts after the virtual machine is deployed, selecting the candidate host corresponding to the maximum objective function value can maximize the average performance of all candidate hosts after the virtual machine is deployed to the destination host. , so as to maximize the running performance of all hosts in the cloud platform while scheduling virtual machines.
  • the embodiment of the present application discloses a virtual machine deployment solution, including: defining an objective function, solving the objective function, and deploying a virtual machine.
  • f p is the average power consumption of all the hosts to be selected
  • f CPU is the average CPU utilization of all the hosts to be selected
  • f load is the average resource balance of all the hosts to be selected
  • K 1 , K 2 , and K 3 are Default weight value.
  • f load is the average resource balance
  • u cpu is the average CPU utilization
  • u mem is the average memory utilization
  • u hw is the average bandwidth utilization
  • u disk is the average disk utilization.
  • f p , f cpu , and f load are all normalized values, and the normalization formula is:
  • f p is the average power consumption after normalization
  • f p_o is the average power consumption before normalization
  • f p_min is the minimum average power consumption
  • f p_max is the maximum average power consumption
  • f cpu is the normalized power consumption Average CPU utilization
  • f cpu_o is the average CPU utilization before normalization
  • f cpu_min is the minimum average CPU utilization
  • f cpu_max is the maximum average CPU utilization
  • f load is the normalized average resource balance
  • f load_o is the average resource balance before normalization
  • f load_min is the minimum average resource balance
  • f load_max is the maximum average resource balance.
  • each preset value such as: fluorescein volatilization speed ⁇ (0 ⁇ 1), fluorescein update rate ⁇ , minimum step size s min , maximum step size s max , maximum number of iterations t max , perception field rs s , the neighborhood set threshold n i .
  • the luciferin of fireflies is directly related to their location. The larger the fluorescein, the higher the fitness value of its location.
  • the size of fluorescein is also related to the size of fluorescein and its volatilization speed in the previous iteration, as well as the value of the objective function.
  • the update formula is:
  • l i (t+1) is the fluorescein of firefly i at the t+1th iteration, that is, the currently updated fluorescein
  • ⁇ (0 ⁇ 1) is the fluorescein volatilization rate of firefly i
  • l i (t) is the fluorescein of firefly i at the t-th iteration
  • is the fluorescein update rate of firefly i
  • F i (t+1) is the objective function value of firefly i at the t+1-th iteration .
  • the step size remains large. In order to avoid premature maturity of the algorithm and fall into local optimum; in the later stage of the algorithm iteration, the step size is gradually reduced to avoid skipping the optimal solution because the step size is too large in the later stage of the algorithm iteration.
  • the step size update formula is:
  • s i (t+1) is the step size of firefly i at the t+1th iteration, that is, the current updated step size;
  • s min is the preset minimum step size, which is a value close to 0;
  • s max is the preset maximum step size, which is a value close to 1;
  • l i (t) is the fluorescein of firefly i at the t-th iteration;
  • t+1 is the current iteration number, and
  • t max is the maximum iteration number.
  • the conditions for finding neighbor fireflies are: the position of the neighbor firefly is within the decision domain of the current firefly, and the fluorescein of the neighbor firefly is greater than that of the current firefly.
  • the neighbor fireflies that meet the above conditions are combined into a neighborhood set, and the probability of each neighbor firefly in the neighborhood set is calculated according to the following formula:
  • N i (t) is the neighborhood set of any firefly i in the t-th iteration
  • d i,j (t)
  • is the t-th iteration Euclidean distance between firefly i and firefly j in the iteration.
  • the neighbor firefly j is selected by the roulette rule, and then the spatial position of the firefly i is updated according to the following formula:
  • x i (t+1) is the position of firefly i at the t+1th iteration
  • x i (t) is the position of firefly i at the t-th iteration
  • s i (t+1) is the firefly i
  • x j (t) the position of firefly j at the t-th iteration
  • is the position of firefly i and firefly j Euclidean distance.
  • n i the threshold of the neighborhood set
  • N i (t) the neighborhood set of firefly i at the t-th iteration, that is, firefly The number of neighbor fireflies in the decision domain of i in the t-th iteration.
  • step (2) If the current number of iterations is greater than the maximum number of iterations t max , end the iteration, and use the latest firefly position to calculate the objective function value, select the maximum objective function value and the corresponding firefly position output; if the current number of iterations is not greater than the maximum number of iterations t max , return In step (2), the next iteration is performed until the constraint condition of the number of iterations is satisfied.
  • the firefly position corresponding to the maximum objective function value is the deployment position of the virtual machine. Deploying the virtual machine to this position can maximize the running performance of all the hosts to be selected.
  • this embodiment takes into account the resource balance obtained by the CPU utilization, memory utilization, bandwidth utilization and disk utilization, and normalizes the CPU utilization and power consumption to define a definition that can represent all the candidate The objective function of the average performance size of the host.
  • the algorithm has a strong local search ability and can find the optimal solution in a small area. Easy to operate and simple to implement. And the firefly algorithm has fewer parameters, and the parameters have little influence on the algorithm.
  • the firefly algorithm used in this embodiment can prevent individuals from oscillating near the peak value.
  • the optimal physical host position is output as the destination physical host of the virtual machine, so that after the virtual machine is deployed, the cloud platform maintains high CPU utilization. , lower energy consumption and balanced resources to improve the overall performance of the system.
  • a virtual machine deployment apparatus provided by an embodiment of the present application is introduced below.
  • a virtual machine deployment apparatus described below and a virtual machine deployment method described above may be referred to each other.
  • an embodiment of the present application discloses a virtual machine deployment apparatus, including:
  • the initialization module 301 is used to randomly set the position of each firefly and initialize the target parameters of each firefly; the position of each firefly is the position of each candidate host;
  • the function calculation module 302 is used for taking each firefly as a processing object respectively, and performing a function calculation step to obtain the corresponding objective function value of each firefly;
  • the function calculation step comprises: according to the position of the processing object, the objective function is calculated, and the objective function can Represents: the average performance size of all candidate hosts after the virtual machine is assumed to be deployed to the processing object;
  • Judging module 303 for judging whether the maximum number of iterations is reached
  • the deployment module 304 is configured to, if the maximum number of iterations is reached, determine the firefly corresponding to the maximum objective function value among all the objective function values as the target firefly, determine the candidate host corresponding to the target firefly as the target host, and deploy the virtual machine to the target firefly. destination host;
  • the iteration module 305 is used to update the target parameter of each firefly if the maximum number of iterations is not reached, update the position of each firefly according to the updated target parameter, and execute each firefly as a processing object, and perform function calculation steps to get the objective function value corresponding to each firefly.
  • the calculation formula of the objective function is:
  • F is the objective function
  • f p is the average power consumption of all candidate hosts after the virtual machine is assumed to be deployed to the processing object
  • f CPU is the average CPU utilization of all candidate hosts after the virtual machine is assumed to be deployed to the processing object
  • f load is the average resource balance of all candidate hosts assuming that the virtual machine is deployed to the processing object
  • K 1 , K 2 , and K 3 are all preset weight values.
  • the average resource balance is calculated and obtained according to the average CPU utilization, average memory utilization, average disk utilization, and average bandwidth utilization of all candidate hosts after the virtual machine is deployed to the processing object. ;
  • the formula for calculating the average resource balance is:
  • f load is the average resource balance
  • u cpu is the average CPU utilization
  • u mem is the average memory utilization
  • u hw is the average bandwidth utilization
  • u disk is the average disk utilization.
  • the iteration module is specifically used for:
  • the target parameters include fluorescein and step size, and the fluorescein of each firefly is updated using the first formula.
  • the first formula is:
  • li (t+1) is the fluorescein of firefly i at the t+1th iteration
  • ⁇ (0 ⁇ 1) is the fluorescein volatilization rate of firefly i
  • li(t) is the fluorescein volatilization rate of firefly i at Fluorescein at the t-th iteration
  • is the fluorescein update rate of firefly i
  • F i (t+1) is the objective function value of firefly i at the t+1-th iteration
  • s i (t+1) is The step size of firefly i at the t+1th iteration
  • s min is the preset minimum step size
  • s max is the preset maximum step size
  • t+1 is the current iteration number
  • t max is the maximum iteration number.
  • the iteration module is specifically used for:
  • x i (t+1) is the position of firefly i at the t+1th iteration
  • x i (t) is the position of firefly i at the t-th iteration
  • s i (t+1) is the firefly i
  • is the position of firefly i and firefly j the Euclidean distance;
  • firefly j is the neighbor firefly selected in the decision domain of firefly i at the t-th iteration based on the roulette rule, and the fluorescein of firefly j is greater than that of firefly i.
  • the target parameter also includes a decision domain, and the decision domain of each firefly is updated by a fourth formula, and the fourth formula is:
  • n i the threshold of the neighborhood set
  • N i (t) the neighborhood set of firefly i at the t-th iteration.
  • the average power consumption, average CPU utilization, and average resource balance are all normalized, and the normalization formula is:
  • f p is the average power consumption after normalization
  • f p_o is the average power consumption before normalization
  • f p_min is the minimum average power consumption
  • f p_max is the maximum average power consumption
  • f cpu is the normalized power consumption Average CPU utilization
  • f cpu_o is the average CPU utilization before normalization
  • f cpu_min is the minimum average CPU utilization
  • f cpu_max is the maximum average CPU utilization
  • f load is the normalized average resource balance
  • f load_o is the average resource balance before normalization
  • f load_min is the minimum average resource balance
  • f load_max is the maximum average resource balance.
  • this embodiment provides an apparatus for deploying virtual machines, which can maximize the running performance of all hosts in the cloud platform while scheduling virtual machines.
  • the following describes a virtual machine deployment device provided by an embodiment of the present application.
  • the virtual machine deployment device described below and the virtual machine deployment method and apparatus described above can be referred to each other.
  • an embodiment of the present application discloses a virtual machine deployment device, including:
  • the processor 402 is configured to execute the computer program to implement the method disclosed in any of the foregoing embodiments.
  • a readable storage medium provided by an embodiment of the present application is introduced below, and a readable storage medium described below and a virtual machine deployment method, apparatus, and device described above may be referred to each other.
  • a readable storage medium for storing a computer program wherein when the computer program is executed by a processor, the virtual machine deployment method disclosed in the foregoing embodiments is implemented.
  • the virtual machine deployment method disclosed in the foregoing embodiments is implemented.
  • references in this application to "first”, “second”, “third”, “fourth”, etc. are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It is to be understood that data so used may be interchanged under appropriate circumstances so that the embodiments described herein can be practiced in sequences other than those illustrated or described herein.
  • the terms “comprising” and “having”, and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method or apparatus comprising a series of steps or elements is not necessarily limited to those steps or elements expressly listed , but may include other steps or elements not expressly listed or inherent to these processes, methods or apparatus.
  • a software module can be placed in random access memory (RAM), internal memory, read only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other in the technical field. in any other form of readable storage medium that is well known.
  • RAM random access memory
  • ROM read only memory
  • EEPROM electrically programmable ROM
  • erasable programmable ROM electrically erasable programmable ROM
  • registers hard disk, removable disk, CD-ROM, or any other in the technical field. in any other form of readable storage medium that is well known.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种虚拟机部署方法、装置、设备及可读存储介质。该方法利用萤火虫算法确定虚拟机的部署位置,并且以所有待选主机的平均性能大小作为目标函数,各个萤火虫的位置即各个待选主机的位置,因此萤火虫算法的迭代寻优过程即为:寻找虚拟机部署完成后,能使云平台中所有主机的运行性能最大化的主机。由于目标函数为虚拟机部署后,所有待选主机的平均性能大小,因此选择最大目标函数值对应的待选主机,就能使虚拟机部署到目的主机后,所有待选主机的平均性能最大化,从而实现了在调度虚拟机的同时,使云平台中所有主机的运行性能最大化。

Description

一种虚拟机部署方法、装置、设备及可读存储介质
本申请要求在2020年11月12日提交中国专利局、申请号为202011261567.6、发明名称为“一种虚拟机部署方法、装置、设备及可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机技术领域,特别涉及一种虚拟机部署方法、装置、设备及可读存储介质。
背景技术
云平台中的虚拟机可以在不同主机上进行调度。一般地,可以选择负载较小的主机部署新虚拟机,或者将负载较大的主机上的虚拟机迁移至负载较小的主机,从而使各主机的负载尽可能均衡。如此调度虚拟机,虽然可以避免个别主机的负载过大或过小,但没有考虑到整个云平台的对外服务能力,难以保障云平台中所有主机的运行性能。
因此,如何在调度虚拟机的同时,使云平台中所有主机的运行性能最大化,是本领域技术人员需要解决的问题。
发明内容
有鉴于此,本申请的目的在于提供一种虚拟机部署方法、装置、设备及可读存储介质,以在调度虚拟机的同时,使云平台中所有主机的运行性能最大化。其具体方案如下:
第一方面,本申请提供了一种虚拟机部署方法,包括:
随机设置各个萤火虫的位置,并初始化各个萤火虫的目标参数;所述各个萤火虫的位置即各个待选主机的位置;
将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值;所述函数计算步骤包括:根据所述处理对象的位置计算目标函数,所述目标函数能够表示:假定虚拟机部署至所述处理对象后,所有待选主机的平均性能大小;
判断是否达到最大迭代次数;
若达到最大迭代次数,则将所有目标函数值中的最大目标函数值对应的萤火虫确定为目的萤火虫,将所述目的萤火虫对应的待选主机确定为目的主机,并部署所述虚拟机至所述目的主机;
若未达到最大迭代次数,则更新每个萤火虫的目标参数,根据更新后的所述目标参数更新每个萤火虫的位置,并执行将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值的步骤。
优选地,所述目标函数的计算公式为:
Figure PCTCN2021121216-appb-000001
其中,F为所述目标函数;f p为假定所述虚拟机部署至所述处理对象后,所有待选主机的平均电源消耗;f CPU为假定所述虚拟机部署至所述处理对象后,所有待选主机的平均CPU利用率;f load为假定所述虚拟机部署至所述处理对象后,所有待选主机的平均资源均衡度;K 1、K 2、K 3均为预设权重值。
优选地,所述平均资源均衡度是假定所述虚拟机部署至所述处理对象后,根据所有待选主机的平均CPU利用率、平均内存利用率、平均磁盘利用率和平均带宽利用率计算获得的;所述平均资源均衡度的计算公式为:
Figure PCTCN2021121216-appb-000002
其中,f load为所述平均资源均衡度,u cpu为所述平均CPU利用率,u mem为所述平均内存利用率,u hw为所述平均带宽利用率,u disk为所述平均磁盘利用率。
优选地,所述目标参数包括荧光素和步长,所述更新每个萤火虫的目标参数,包括:
利用第一公式更新每个萤火虫的荧光素,所述第一公式为:
l i(t+1)=(1-ρ)l i(t)+γF i(t+1)
利用第二公式更新每个萤火虫的步长,所述第二公式为:
Figure PCTCN2021121216-appb-000003
其中,l i(t+1)为萤火虫i在第t+1次迭代时的荧光素,ρ(0<ρ<1)为萤火虫i的荧光素挥发速度,l i(t)为萤火虫i在第t次迭代时的荧光素,γ为萤火虫i的荧光素更新率,F i(t+1) 为萤火虫i在第t+1次迭代时的目标函数值;s i(t+1)为萤火虫i在第t+1次迭代时的步长,s min为预设最小步长,s max为预设最大步长,t+1为当前迭代次数,t max为所述最大迭代次数。
优选地,所述根据更新后的所述目标参数更新每个萤火虫的位置,包括:
利用第三公式更新每个萤火虫的位置,所述第三公式为:
Figure PCTCN2021121216-appb-000004
其中,x i(t+1)为萤火虫i在第t+1次迭代时的位置,x i(t)为萤火虫i在第t次迭代时的位置,s i(t+1)为萤火虫i在第t+1次迭代时的步长,x j(t)萤火虫j在第t次迭代时的位置,||x j(t)-x i(t)||为萤火虫i与萤火虫j位置的欧式距离;
其中,萤火虫j为基于轮盘赌法则,在萤火虫i第t次迭代时的决策域内选择的邻居萤火虫,且萤火虫j的荧光素大于萤火虫i的荧光素。
优选地,所述目标参数还包括决策域,利用第四公式更新每个萤火虫的决策域,所述第四公式为:
Figure PCTCN2021121216-appb-000005
其中,
Figure PCTCN2021121216-appb-000006
为萤火虫i在第t+1次迭代时的决策域,r s为预设感知域,
Figure PCTCN2021121216-appb-000007
为萤火虫i在第t次迭代时的决策域,β为动态决策域更新率,n i为邻域集合阈值,N i(t)为萤火虫i在第t次迭代时的邻域集合。
优选地,所述平均电源消耗、所述平均CPU利用率和所述平均资源均衡度均经过归一化处理,归一化公式为:
Figure PCTCN2021121216-appb-000008
其中,f p为归一化后的所述平均电源消耗,f p_o为归一化前的所述平均电源消耗,f p_min为最小平均电源消耗,f p_max为最大平均电源消耗;f cpu为归一化后的所述平均CPU利用率,f cpu_o为归一化前的所述平均CPU利用率,f cpu_min为最小平均CPU利用率,f cpu_max为最大平均CPU利用率;f load为归一化后的所述平均资源均衡度,f load_o为归一化前的所述平均资源均衡度,f load_min为最小平均资源均衡度,f load_max为最大平均资源均衡度。
第二方面,本申请提供了一种虚拟机部署装置,包括:
初始化模块,用于随机设置各个萤火虫的位置,并初始化各个萤火虫的目标参数;所述各个萤火虫的位置即各个待选主机的位置;
函数计算模块,用于将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值;所述函数计算步骤包括:根据所述处理对象的位置计算目标函数,所述目标函数能够表示:假定虚拟机部署至所述处理对象后,所有待选主机的平均性能大小;
判断模块,用于判断是否达到最大迭代次数;
部署模块,用于若达到最大迭代次数,则将所有目标函数值中的最大目标函数值对应的萤火虫确定为目的萤火虫,将所述目的萤火虫对应的待选主机确定为目的主机,并部署所述虚拟机至所述目的主机;
迭代模块,用于若未达到最大迭代次数,则更新每个萤火虫的目标参数,根据更新后的所述目标参数更新每个萤火虫的位置,并执行将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值的步骤。
第三方面,本申请提供了一种虚拟机部署设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的虚拟机部署方法。
第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的虚拟机部署方法。
通过以上方案可知,本申请提供了一种虚拟机部署方法,包括:随机设置各个萤火虫的位置,并初始化各个萤火虫的目标参数;所述各个萤火虫的位置即各个待选主机的位置;将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值;所述函数计算步骤包括:根据所述处理对象的位置计算目标函数,所述目标函数能够表示:假定虚拟机部署至所述处理对象后,所有待选主机的平均性能大小;判断是否达到最大迭代次数;若达到最大迭代次数,则将所有目标函数值中的最大目标函数值对应的萤火虫确定为目的萤火虫,将所述目的萤火虫对应的待选主机确定为目的主机,并部署所述虚拟机至所述目的主机;若未达到最大迭代次数,则更新每个萤火虫的目标参数,根据更新后的所述目标参数更新每个萤火虫的位置,并执行将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值的步骤。
可见,本申请利用萤火虫算法确定虚拟机的部署位置,并且以所有待选主机的平均性能大小作为目标函数,各个萤火虫的位置即各个待选主机的位置,因此萤火虫算法的迭代寻优过程即为:寻找虚拟机部署完成后,能使云平台中所有主机的运行性能最大化的主机。由于目标函数为虚拟机部署后,所有待选主机的平均性能大小,因此选择最大目标函数值对应的待选主机,就能使虚拟机部署到目的主机后,所有待选主机的平均性能最大化,从而实现了在调度虚拟机的同时,使云平台中所有主机的运行性能最大化。
相应地,本申请提供的一种虚拟机部署装置、设备及可读存储介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种虚拟机部署方法流程图;
图2为本申请公开的一种利用萤火虫算法求解目标函数的方法流程图;
图3为本申请公开的一种虚拟机部署装置示意图;
图4为本申请公开的一种虚拟机部署设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在介绍本申请之前,先就相关背景技术进行如下介绍。
一般在下述三种场景中需要进行虚拟机调度。一:用户创建新虚拟机,选择将该虚拟机部署到哪台物理主机上。二:一个物理主机上的虚拟机过多,负载过重,需要将该物理主机上的部分虚拟机迁移至其他物理主机上;或者一个物理主机上的虚拟机过少,负载较低,为了实现负载均衡,需要将其他物理主机上的虚拟机迁移至当前物理主机。三:物理 主机故障,需要疏散该物理主机上的虚拟机至其他物理主机上。不合理的调度策略会引起虚拟机的多次跨物理主机迁移,严重影响整个云平台的稳定性。并且,使用云平台的每个用户所申请的资源及应用不尽相同,每个物理主机上的负载也不尽相同,也导致云平台的资源使用具有不稳定性。
目前可以使用蚁群算法寻找部署虚拟机的目的主机,但由于蚁群算法存在求解速度慢且所得解的质量难以保障的问题,导致计算量大,收敛速度慢,易陷入局部最优,不能在调度虚拟机的同时,使云平台中所有主机的运行性能最大化。为此,本申请提供了一种虚拟机部署方案,能够在调度虚拟机的同时,使云平台中所有主机的运行性能最大化。
参见图1所示,本申请实施例公开了一种虚拟机部署方法,包括:
S101、随机设置各个萤火虫的位置,并初始化各个萤火虫的目标参数。
其中,各个萤火虫的位置即各个待选主机的位置。萤火虫的位置和待选主机的个数相等,但萤火虫的个数与待选主机的个数可以相等,也可以不等。若萤火虫的个数大于待选主机的个数,那么一个萤火虫的位置可能聚集有多个萤火虫。
S102、将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值。
其中,函数计算步骤包括:根据处理对象的位置计算目标函数,目标函数能够表示:假定虚拟机部署至处理对象后,所有待选主机的平均性能大小。
在一种具体实施方式中,目标函数的计算公式为:
Figure PCTCN2021121216-appb-000009
其中,F为目标函数;f p为假定虚拟机部署至处理对象后,所有待选主机的平均电源消耗;f CPU为假定虚拟机部署至处理对象后,所有待选主机的平均CPU利用率;f load为假定虚拟机部署至处理对象后,所有待选主机的平均资源均衡度;K 1、K 2、K 3均为预设权重值。预设权重值越大,表明当前云平台侧重关注其对应的参数(电源消耗、CPU利用率或资源均衡度)。
例如:针对萤火虫A,认为其对应待选主机A,那么假定虚拟机部署至待选主机A,此时基于虚拟机的电源消耗、CPU利用率、带宽利用率、内存利用率等相关参数调整待选主机A的电源消耗、CPU利用率、资源均衡度。然后计算某一时刻所有待选主机(包括部 署有虚拟机的待选主机A)的平均电源消耗、平均CPU利用率以及平均资源均衡度。F越大,表明所有待选主机的平均性能越好。
在一种具体实施方式中,平均资源均衡度是假定虚拟机部署至处理对象后,根据所有待选主机某一时刻的平均CPU利用率、平均内存利用率、平均磁盘利用率和平均带宽利用率计算获得的;平均资源均衡度的计算公式为:
Figure PCTCN2021121216-appb-000010
其中,f load为平均资源均衡度,u cpu为平均CPU利用率,u mem为平均内存利用率,u hw为平均带宽利用率,u disk为平均磁盘利用率。
在一种具体实施方式中,平均电源消耗、平均CPU利用率和平均资源均衡度均经过归一化处理,归一化公式为:
Figure PCTCN2021121216-appb-000011
其中,f p为归一化后的平均电源消耗,f p_o为归一化前的平均电源消耗,f p_min为最小平均电源消耗,f p_max为最大平均电源消耗;f cpu为归一化后的平均CPU利用率,f cpu_o为归一化前的平均CPU利用率,f cpu_min为最小平均CPU利用率,f cpu_max为最大平均CPU利用率;f load为归一化后的平均资源均衡度,f load_o为归一化前的平均资源均衡度,f load_min为最小平均资源均衡度,f load_max为最大平均资源均衡度。归一化后的平均电源消耗、平均CPU利用率和平均资源均衡度取值在0~1之间。
S103、判断是否达到最大迭代次数;若达到最大迭代次数,则执行S104;若未达到最大迭代次数,则执行S105。
S104、将所有目标函数值中的最大目标函数值对应的萤火虫确定为目的萤火虫,将目的萤火虫对应的待选主机确定为目的主机,并部署虚拟机至目的主机。
S105、更新每个萤火虫的目标参数,根据更新后的目标参数更新每个萤火虫的位置,并执行S102。
在一种具体实施方式中,目标参数包括荧光素和步长,更新每个萤火虫的目标参数,包括:
利用第一公式更新每个萤火虫的荧光素,第一公式为:
l i(t+1)=(1-ρ)l i(t)+γF i(t+1)
利用第二公式更新每个萤火虫的步长,第二公式为:
Figure PCTCN2021121216-appb-000012
其中,l i(t+1)为萤火虫i在第t+1次迭代时的荧光素,也就是当前更新后的荧光素,ρ(0<ρ<1)为萤火虫i的荧光素挥发速度,l i(t)为萤火虫i在第t次迭代时的荧光素,γ为萤火虫i的荧光素更新率,F i(t+1)为萤火虫i在第t+1次迭代时的目标函数值;s i(t+1)为萤火虫i在第t+1次迭代时的步长,也就是当前更新后的步长;s min为预设最小步长,取值为接近于0的值;s max为预设最大步长,取值为接近于1的值;t+1为当前迭代次数,t max为最大迭代次数。
需要说明的是,每个萤火虫的步长会随着迭代次数的递增而变化,从而可保障萤火虫的步长保持在合理范围内。
在一种具体实施方式中,根据更新后的目标参数更新每个萤火虫的位置,包括:
利用第三公式更新每个萤火虫的位置,第三公式为:
Figure PCTCN2021121216-appb-000013
其中,x i(t+1)为萤火虫i在第t+1次迭代时的位置,x i(t)为萤火虫i在第t次迭代时的位置,s i(t+1)为萤火虫i在第t+1次迭代时的步长,x j(t)萤火虫j在第t次迭代时的位置,||x j(t)-x i(t)||为萤火虫i与萤火虫j位置的欧式距离;
其中,萤火虫j为基于轮盘赌法则,在萤火虫i第t次迭代时的决策域内选择的邻居萤火虫,且萤火虫j的荧光素大于萤火虫i的荧光素。
在一种具体实施方式中,目标参数还包括决策域,利用第四公式更新每个萤火虫的决策域,第四公式为:
Figure PCTCN2021121216-appb-000014
其中,
Figure PCTCN2021121216-appb-000015
为萤火虫i在第t+1次迭代时的决策域,r s为预设感知域,
Figure PCTCN2021121216-appb-000016
为萤火虫i在第t次迭代时的决策域,β为动态决策域更新率,n i为邻域集合阈值,N i(t)为萤火虫i在第t次迭代时的邻域集合,即萤火虫i在第t次迭代时的决策域内的邻居萤火虫的个数。
可见,本申请实施例利用萤火虫算法确定虚拟机的部署位置,并且以所有待选主机的平均性能大小作为目标函数,各个萤火虫的位置即各个待选主机的位置,因此萤火虫算法的迭代寻优过程即为:寻找虚拟机部署完成后,能使云平台中所有主机的运行性能最大化的主机。由于目标函数为虚拟机部署后,所有待选主机的平均性能大小,因此选择最大目标函数值对应的待选主机,就能使虚拟机部署到目的主机后,所有待选主机的平均性能最大化,从而实现了在调度虚拟机的同时,使云平台中所有主机的运行性能最大化。
本申请实施例公开了一种虚拟机部署方案,包括:定义目标函数、求解目标函数和部署虚拟机。
1、假定虚拟机部署在各个待选主机上,定义目标函数F:
Figure PCTCN2021121216-appb-000017
其中,f p为所有待选主机的平均电源消耗;f CPU为所有待选主机的平均CPU利用率;f load为所有待选主机的平均资源均衡度;K 1、K 2、K 3均为预设权重值。
其中,
Figure PCTCN2021121216-appb-000018
其中,f load为平均资源均衡度,u cpu为平均CPU利用率,u mem为平均内存利用率,u hw为平均带宽利用率,u disk为平均磁盘利用率。
其中,f p、f cpu、f load均为归一化后的值,归一化公式为:
Figure PCTCN2021121216-appb-000019
其中,f p为归一化后的平均电源消耗,f p_o为归一化前的平均电源消耗,f p_min为最小平均电源消耗,f p_max为最大平均电源消耗;f cpu为归一化后的平均CPU利用率,f cpu_o为归一化前的平均CPU利用率,f cpu_min为最小平均CPU利用率,f cpu_max为最大平均CPU 利用率;f load为归一化后的平均资源均衡度,f load_o为归一化前的平均资源均衡度,f load_min为最小平均资源均衡度,f load_max为最大平均资源均衡度。
2、参见图2所示,利用萤火虫算法求解目标函数:
(1)参数初始化:
初始化各个萤火虫的位置;各个萤火虫的位置即各个待选主机的位置。
初始化各个萤火虫的目标参数,如:荧光素、步长、决策域。
设定各个预设值,如:荧光素挥发速度ρ(0<ρ<1),荧光素更新率γ,最小步长s min、最大步长s max、最大迭代次数t max、感知域r s、邻域集合阈值n i
(2)分别假定虚拟机部署在各个待选主机上,以基于萤火虫的当前位置计算各个萤火虫对应的目标函数值。目标函数值越大,则所有待选主机的平均性能越好。
(3)更新每个萤火虫的荧光素:
萤火虫的荧光素与其所在位置有直接关系。荧光素越大,则其所位置的适应度值越高。荧光素的大小还与上一次迭代中荧光素的大小及其挥发速度,以及目标函数值有关,其更新公式为:
l i(t+1)=(1-ρ)l i(t)+γF i(t+1)
其中,l i(t+1)为萤火虫i在第t+1次迭代时的荧光素,也就是当前更新后的荧光素,ρ(0<ρ<1)为萤火虫i的荧光素挥发速度,l i(t)为萤火虫i在第t次迭代时的荧光素,γ为萤火虫i的荧光素更新率,F i(t+1)为萤火虫i在第t+1次迭代时的目标函数值。
(4)每个萤火虫的步长:
在算法迭代的初期,步长保持较大值。为避免算法过早的成熟,陷入局部最优;在算法迭代的后期,逐渐减小步长,以避免在算法迭代后期因为步长太大而跳过最优解。步长更新公式为:
Figure PCTCN2021121216-appb-000020
其中。s i(t+1)为萤火虫i在第t+1次迭代时的步长,也就是当前更新后的步长;s min为预设最小步长,取值为接近于0的值;s max为预设最大步长,取值为接近于1的值;l i(t)为萤火虫i在第t次迭代时的荧光素;t+1为当前迭代次数,t max为最大迭代次数。
(5)更新每个萤火虫的位置:
每个萤火虫按照步长移动位置之前,需要先找到一个符合条件的邻居萤火虫。找邻居萤火虫的条件为:该邻居萤火虫的位置在当前萤火虫的决策域范围内,且邻居萤火虫的荧光素大于当前萤火虫的荧光素。将满足上述条件的邻居萤火虫组合为邻域集合,并按照下述公式计算邻域集合中每个邻居萤火虫的概率:
Figure PCTCN2021121216-appb-000021
其中,j∈N i(t),
Figure PCTCN2021121216-appb-000022
N i(t)是在第t次迭代中,任一个萤火虫i的邻域集合,d i,j(t)=||x j(t)-x i(t)||是在第t次迭代中萤火虫i与萤火虫j的欧式距离。
基于每个邻居萤火虫的概率,用轮盘赌法则选出邻居萤火虫j,然后根据下式更新萤火虫i的空间位置:
Figure PCTCN2021121216-appb-000023
其中,x i(t+1)为萤火虫i在第t+1次迭代时的位置,x i(t)为萤火虫i在第t次迭代时的位置,s i(t+1)为萤火虫i在第t+1次迭代时的步长,x j(t)萤火虫j在第t次迭代时的位置,||x j(t)-x i(t)||为萤火虫i与萤火虫j位置的欧式距离。
(6)更新每个萤火虫的决策域:
萤火虫的位置更新完成之后,会进一步更新其决策域,更新公式为:
Figure PCTCN2021121216-appb-000024
其中,
Figure PCTCN2021121216-appb-000025
为萤火虫i在第t+1次迭代时的决策域,r s为预设感知域,
Figure PCTCN2021121216-appb-000026
为萤火虫i在第t次迭代时的决策域,β为动态决策域更新率,n i为邻域集合阈值,N i(t)为萤火虫i在第t次迭代时的邻域集合,即萤火虫i在第t次迭代时的决策域内的邻居萤火虫的个数。
(7)判断此刻的迭代次数:
若当前迭代次数大于最大迭代次数t max,则结束迭代,并用最新的萤火虫位置计算目标函数值,选择最大目标函数值以及相应的萤火虫位置输出;若当前迭代次数不大于最大迭代次数t max,返回步骤(2)进行下次迭代,直至满足迭代次数的约束条件。
3、部署虚拟机:最大目标函数值对应的萤火虫位置即虚拟机的部署位置,将虚拟机部署至此位置,可使所有待选主机的运行性能最大。
可见,本实施例考虑了由CPU利用率、内存利用率、带宽利用率和磁盘利用率而得的资源均衡度,并结合CPU利用率和电源消耗进行归一化,定义了能够表示所有待选主机的 平均性能大小的目标函数。使用改进的萤火虫算法求解目标函数,考虑了荧光素大小以及步长大小对于迭代过程的影响,使算法具有较强的局部搜索能力,能够在一个较小的区域内找到该区域的最优解,操作方便,实现简单。并且萤火虫算法的参数较少,参数对算法的影响也小。本实施例使用的萤火虫算法可以避免个体在峰值附近发生震荡现象,通过迭代寻优之后输出最佳物理主机位置作为该虚拟机的目的物理主机,使虚拟机部署后,云平台保持CPU高利用率,耗能较低,资源均衡,以提升系统整体性能。
下面对本申请实施例提供的一种虚拟机部署装置进行介绍,下文描述的一种虚拟机部署装置与上文描述的一种虚拟机部署方法可以相互参照。
参见图3所示,本申请实施例公开了一种虚拟机部署装置,包括:
初始化模块301,用于随机设置各个萤火虫的位置,并初始化各个萤火虫的目标参数;各个萤火虫的位置即各个待选主机的位置;
函数计算模块302,用于将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值;函数计算步骤包括:根据处理对象的位置计算目标函数,目标函数能够表示:假定虚拟机部署至处理对象后,所有待选主机的平均性能大小;
判断模块303,用于判断是否达到最大迭代次数;
部署模块304,用于若达到最大迭代次数,则将所有目标函数值中的最大目标函数值对应的萤火虫确定为目的萤火虫,将目的萤火虫对应的待选主机确定为目的主机,并部署虚拟机至目的主机;
迭代模块305,用于若未达到最大迭代次数,则更新每个萤火虫的目标参数,根据更新后的目标参数更新每个萤火虫的位置,并执行将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值的步骤。
在一种具体实施方式中,目标函数的计算公式为:
Figure PCTCN2021121216-appb-000027
其中,F为目标函数;f p为假定虚拟机部署至处理对象后,所有待选主机的平均电源消耗;f CPU为假定虚拟机部署至处理对象后,所有待选主机的平均CPU利用率;f load为假定虚拟机部署至处理对象后,所有待选主机的平均资源均衡度;K 1、K 2、K 3均为预设权重值。
在一种具体实施方式中,平均资源均衡度是假定虚拟机部署至处理对象后,根据所有待选主机的平均CPU利用率、平均内存利用率、平均磁盘利用率和平均带宽利用率计算获得的;平均资源均衡度的计算公式为:
Figure PCTCN2021121216-appb-000028
其中,f load为平均资源均衡度,u cpu为平均CPU利用率,u mem为平均内存利用率,u hw为平均带宽利用率,u disk为平均磁盘利用率。
在一种具体实施方式中,迭代模块具体用于:
目标参数包括荧光素和步长,利用第一公式更新每个萤火虫的荧光素,第一公式为:
l i(t+1)=(1-ρ)l i(t)+γF i(t+1)
利用第二公式更新每个萤火虫的步长,第二公式为:
Figure PCTCN2021121216-appb-000029
其中,l i(t+1)为萤火虫i在第t+1次迭代时的荧光素,ρ(0<ρ<1)为萤火虫i的荧光素挥发速度,l i(t)为萤火虫i在第t次迭代时的荧光素,γ为萤火虫i的荧光素更新率,F i(t+1)为萤火虫i在第t+1次迭代时的目标函数值;s i(t+1)为萤火虫i在第t+1次迭代时的步长,s min为预设最小步长,s max为预设最大步长,t+1为当前迭代次数,t max为最大迭代次数。
在一种具体实施方式中,迭代模块具体用于:
利用第三公式更新每个萤火虫的位置,第三公式为:
Figure PCTCN2021121216-appb-000030
其中,x i(t+1)为萤火虫i在第t+1次迭代时的位置,x i(t)为萤火虫i在第t次迭代时的位置,s i(t+1)为萤火虫i在第t+1次迭代时的步长,x j(t)萤火虫j在第t次迭代时的位置,||x j(t)-x i(t)||为萤火虫i与萤火虫j位置的欧式距离;
其中,萤火虫j为基于轮盘赌法则,在萤火虫i第t次迭代时的决策域内选择的邻居萤火虫,且萤火虫j的荧光素大于萤火虫i的荧光素。
在一种具体实施方式中,目标参数还包括决策域,利用第四公式更新每个萤火虫的决策域,第四公式为:
Figure PCTCN2021121216-appb-000031
其中,
Figure PCTCN2021121216-appb-000032
为萤火虫i在第t+1次迭代时的决策域,r s为预设感知域,
Figure PCTCN2021121216-appb-000033
为萤火虫i在第t次迭代时的决策域,β为动态决策域更新率,n i为邻域集合阈值,N i(t)为萤火虫i在第t次迭代时的邻域集合。
在一种具体实施方式中,平均电源消耗、平均CPU利用率和平均资源均衡度均经过归一化处理,归一化公式为:
Figure PCTCN2021121216-appb-000034
其中,f p为归一化后的平均电源消耗,f p_o为归一化前的平均电源消耗,f p_min为最小平均电源消耗,f p_max为最大平均电源消耗;f cpu为归一化后的平均CPU利用率,f cpu_o为归一化前的平均CPU利用率,f cpu_min为最小平均CPU利用率,f cpu_max为最大平均CPU利用率;f load为归一化后的平均资源均衡度,f load_o为归一化前的平均资源均衡度,f load_min为最小平均资源均衡度,f load_max为最大平均资源均衡度。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种虚拟机部署装置,该装置能在调度虚拟机的同时,使云平台中所有主机的运行性能最大化。
下面对本申请实施例提供的一种虚拟机部署设备进行介绍,下文描述的一种虚拟机部署设备与上文描述的一种虚拟机部署方法及装置可以相互参照。
参见图4所示,本申请实施例公开了一种虚拟机部署设备,包括:
存储器401,用于保存计算机程序;
处理器402,用于执行所述计算机程序,以实现上述任意实施例公开的方法。
下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种虚拟机部署方法、装置及设备可以相互参照。
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的虚拟机部署方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

  1. 一种虚拟机部署方法,其特征在于,包括:
    随机设置各个萤火虫的位置,并初始化各个萤火虫的目标参数;所述各个萤火虫的位置即各个待选主机的位置;
    将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值;所述函数计算步骤包括:根据所述处理对象的位置计算目标函数,所述目标函数能够表示:假定虚拟机部署至所述处理对象后,所有待选主机的平均性能大小;
    判断是否达到最大迭代次数;
    若达到最大迭代次数,则将所有目标函数值中的最大目标函数值对应的萤火虫确定为目的萤火虫,将所述目的萤火虫对应的待选主机确定为目的主机,并部署所述虚拟机至所述目的主机;
    若未达到最大迭代次数,则更新每个萤火虫的目标参数,根据更新后的所述目标参数更新每个萤火虫的位置,并执行将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值的步骤。
  2. 根据权利要求1所述的虚拟机部署方法,其特征在于,所述目标函数的计算公式为:
    Figure PCTCN2021121216-appb-100001
    其中,F为所述目标函数;f p为假定所述虚拟机部署至所述处理对象后,所有待选主机的平均电源消耗;f CPU为假定所述虚拟机部署至所述处理对象后,所有待选主机的平均CPU利用率;f load为假定所述虚拟机部署至所述处理对象后,所有待选主机的平均资源均衡度;K 1、K 2、K 3均为预设权重值。
  3. 根据权利要求2所述的虚拟机部署方法,其特征在于,所述平均资源均衡度是假定所述虚拟机部署至所述处理对象后,根据所有待选主机的平均CPU利用率、平均内存利用率、平均磁盘利用率和平均带宽利用率计算获得的;所述平均资源均衡度的计算公式为:
    Figure PCTCN2021121216-appb-100002
    其中,f load为所述平均资源均衡度,u cpu为所述平均CPU利用率,u mem为所述平均内存利用率,u hw为所述平均带宽利用率,u disk为所述平均磁盘利用率。
  4. 根据权利要求1所述的虚拟机部署方法,其特征在于,所述目标参数包括荧光素和步长,所述更新每个萤火虫的目标参数,包括:
    利用第一公式更新每个萤火虫的荧光素,所述第一公式为:
    l i(t+1)=(1-ρ)l i(t)+γF i(t+1)
    利用第二公式更新每个萤火虫的步长,所述第二公式为:
    Figure PCTCN2021121216-appb-100003
    其中,l i(t+1)为萤火虫i在第t+1次迭代时的荧光素,ρ(0<ρ<1)为萤火虫i的荧光素挥发速度,l i(t)为萤火虫i在第t次迭代时的荧光素,γ为萤火虫i的荧光素更新率,F i(t+1)为萤火虫i在第t+1次迭代时的目标函数值;s i(t+1)为萤火虫i在第t+1次迭代时的步长,s min为预设最小步长,s max为预设最大步长,t+1为当前迭代次数,t max为所述最大迭代次数。
  5. 根据权利要求4所述的虚拟机部署方法,其特征在于,所述根据更新后的所述目标参数更新每个萤火虫的位置,包括:
    利用第三公式更新每个萤火虫的位置,所述第三公式为:
    Figure PCTCN2021121216-appb-100004
    其中,x i(t+1)为萤火虫i在第t+1次迭代时的位置,x i(t)为萤火虫i在第t次迭代时的位置,s i(t+1)为萤火虫i在第t+1次迭代时的步长,x j(t)萤火虫j在第t次迭代时的位置,||x j(t)-x i(t)||为萤火虫i与萤火虫j位置的欧式距离;
    其中,萤火虫j为基于轮盘赌法则,在萤火虫i第t次迭代时的决策域内选择的邻居萤火虫,且萤火虫j的荧光素大于萤火虫i的荧光素。
  6. 根据权利要求5所述的虚拟机部署方法,其特征在于,所述目标参数还包括决策域,利用第四公式更新每个萤火虫的决策域,所述第四公式为:
    Figure PCTCN2021121216-appb-100005
    其中,
    Figure PCTCN2021121216-appb-100006
    为萤火虫i在第t+1次迭代时的决策域,r s为预设感知域,
    Figure PCTCN2021121216-appb-100007
    为萤火虫i在第t次迭代时的决策域,β为动态决策域更新率,n i为邻域集合阈值,N i(t)为萤火虫i在第t次迭代时的邻域集合。
  7. 根据权利要求3所述的虚拟机部署方法,其特征在于,所述平均电源消耗、所述平均CPU利用率和所述平均资源均衡度均经过归一化处理,归一化公式为:
    Figure PCTCN2021121216-appb-100008
    其中,f p为归一化后的所述平均电源消耗,f p_o为归一化前的所述平均电源消耗,f p_min为最小平均电源消耗,f p_max为最大平均电源消耗;f cpu为归一化后的所述平均CPU利用率,f cpu_o为归一化前的所述平均CPU利用率,f cpu_min为最小平均CPU利用率,f cpu_max为最大平均CPU利用率;f load为归一化后的所述平均资源均衡度,f load_o为归一化前的所述平均资源均衡度,f load_min为最小平均资源均衡度,f load_max为最大平均资源均衡度。
  8. 一种虚拟机部署装置,其特征在于,包括:
    初始化模块,用于随机设置各个萤火虫的位置,并初始化各个萤火虫的目标参数;所述各个萤火虫的位置即各个待选主机的位置;
    函数计算模块,用于将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值;所述函数计算步骤包括:根据所述处理对象的位置计算目标函数,所述目标函数能够表示:假定虚拟机部署至所述处理对象后,所有待选主机的平均性能大小;
    判断模块,用于判断是否达到最大迭代次数;
    部署模块,用于若达到最大迭代次数,则将所有目标函数值中的最大目标函数值对应的萤火虫确定为目的萤火虫,将所述目的萤火虫对应的待选主机确定为目的主机,并部署所述虚拟机至所述目的主机;
    迭代模块,用于若未达到最大迭代次数,则更新每个萤火虫的目标参数,根据更新后的所述目标参数更新每个萤火虫的位置,并执行将每个萤火虫分别作为处理对象,并执行函数计算步骤,以得到每个萤火虫对应的目标函数值的步骤。
  9. 一种虚拟机部署设备,其特征在于,包括:
    存储器,用于存储计算机程序;
    处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的虚拟机部署方法。
  10. 一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的虚拟机部署方法。
PCT/CN2021/121216 2020-11-12 2021-09-28 一种虚拟机部署方法、装置、设备及可读存储介质 Ceased WO2022100306A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/029,705 US20250265104A1 (en) 2020-11-12 2021-09-28 Virtual machine deployment method and apparatus, device, and readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011261567.6 2020-11-12
CN202011261567.6A CN112463291B (zh) 2020-11-12 2020-11-12 一种虚拟机部署方法、装置、设备及可读存储介质

Publications (1)

Publication Number Publication Date
WO2022100306A1 true WO2022100306A1 (zh) 2022-05-19

Family

ID=74825642

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/121216 Ceased WO2022100306A1 (zh) 2020-11-12 2021-09-28 一种虚拟机部署方法、装置、设备及可读存储介质

Country Status (3)

Country Link
US (1) US20250265104A1 (zh)
CN (1) CN112463291B (zh)
WO (1) WO2022100306A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118779065A (zh) * 2024-07-03 2024-10-15 华数智环 (北京)数字科技有限公司 云存储剩余容量优先的虚拟机调度处理方法、系统及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463291B (zh) * 2020-11-12 2023-01-10 苏州浪潮智能科技有限公司 一种虚拟机部署方法、装置、设备及可读存储介质
CN113407311A (zh) * 2021-08-20 2021-09-17 苏州浪潮智能科技有限公司 虚拟机的部署方法、装置、设备以及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103366362A (zh) * 2013-04-17 2013-10-23 昆明理工大学 一种基于萤火虫优化算法的矿带图像分割法
US20170337086A1 (en) * 2015-02-09 2017-11-23 Huawei Technologies Co., Ltd. Method, Apparatus, and System for Adjusting Deployment Location of Virtual Machine
CN110120892A (zh) * 2019-04-30 2019-08-13 山东工商学院 基于改进的萤火虫算法的sdn多控制器部署方法及系统
CN110362379A (zh) * 2019-06-10 2019-10-22 南京理工大学 基于改进蚁群算法的虚拟机调度方法
CN112463291A (zh) * 2020-11-12 2021-03-09 苏州浪潮智能科技有限公司 一种虚拟机部署方法、装置、设备及可读存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541622B (zh) * 2011-12-15 2014-08-13 杭州电子科技大学 一种负载相关的虚拟机放置方法
CN111324422B (zh) * 2020-02-24 2024-04-16 武汉轻工大学 多目标虚拟机部署方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103366362A (zh) * 2013-04-17 2013-10-23 昆明理工大学 一种基于萤火虫优化算法的矿带图像分割法
US20170337086A1 (en) * 2015-02-09 2017-11-23 Huawei Technologies Co., Ltd. Method, Apparatus, and System for Adjusting Deployment Location of Virtual Machine
CN110120892A (zh) * 2019-04-30 2019-08-13 山东工商学院 基于改进的萤火虫算法的sdn多控制器部署方法及系统
CN110362379A (zh) * 2019-06-10 2019-10-22 南京理工大学 基于改进蚁群算法的虚拟机调度方法
CN112463291A (zh) * 2020-11-12 2021-03-09 苏州浪潮智能科技有限公司 一种虚拟机部署方法、装置、设备及可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GONG, TINGTING: "Virtual Machine Placement Energy-efficient Optimization based on Glowworm Swarm Optimization Algorithm", COMPUTER ENGINEERING AND DESIGN, vol. 40, no. 7, 1 July 2019 (2019-07-01), XP055929793 *
NI ZHI-WEI, LIANG TING, WU ZHANG-JUN, XIAO HONG-WANG: "Intelligent Optimization Strategy for Virtual Machine Placement in Data Center", PATTERN RECOGNITION AND ARTIFICIAL INTELLIGENCE, vol. 28, no. 4, 1 April 2015 (2015-04-01), XP055929803 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118779065A (zh) * 2024-07-03 2024-10-15 华数智环 (北京)数字科技有限公司 云存储剩余容量优先的虚拟机调度处理方法、系统及存储介质

Also Published As

Publication number Publication date
CN112463291B (zh) 2023-01-10
US20250265104A1 (en) 2025-08-21
CN112463291A (zh) 2021-03-09

Similar Documents

Publication Publication Date Title
WO2022100306A1 (zh) 一种虚拟机部署方法、装置、设备及可读存储介质
CN110134495B (zh) 一种容器跨主机在线迁移方法、存储介质及终端设备
CN110362380B (zh) 一种面向网络靶场的多目标优化虚拟机部署方法
US9298249B2 (en) Partition level power management using fully asynchronous cores with software that has limited asynchronous support
CN108694077A (zh) 基于改进二进制蝙蝠算法的分布式系统任务调度方法
CN110515735A (zh) 一种基于改进q学习算法的多目标云资源调度方法
CN111324422B (zh) 多目标虚拟机部署方法、装置、设备及存储介质
CN114281690B (zh) 一种对软件进行分组模糊测试的方法
WO2023089350A1 (en) An architecture for a self-adaptive computation management in edge cloud
CN111988787B (zh) 一种任务的网络接入和服务放置位置选择方法及系统
CN115629860A (zh) 软件参数调优方法、容器管理平台、存储介质及系统
CN113377510B (zh) 无服务器计算环境中基于一致性哈希的缓存包调度优化算法
CN103106112A (zh) 一种基于最高负载的进行负载均衡调度的方法及设备
Padoin et al. Managing power demand and load imbalance to save energy on systems with heterogeneous CPU speeds
CN103870313B (zh) 一种虚拟机任务调度方法及系统
CN113504998A (zh) 一种任务调度方案的确定方法、装置和设备
CN120407166A (zh) 面向大规模并行图神经网络计算的快速数据分割方法
US20240311196A1 (en) Method and device for generating data flow policy
CN112527450A (zh) 基于不同资源的超融合自适应方法、终端及系统
CN119356815A (zh) 一种基于改进非洲秃鹰算法的云计算任务调度方法
Bao et al. An Improved Grey Wolf Optimizer for Task Scheduling in D2D-Assisted MEC Systems
US11953965B2 (en) Adaptive power management
CN106550036B (zh) 一种面向节能的启发式云计算资源分配与调度方法
CN108563489A (zh) 一种数据中心综合管理系统的虚拟机迁移方法及系统
WO2023019735A1 (zh) 虚拟机的部署方法、装置、设备以及计算机可读存储介质

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

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

Country of ref document: EP

Kind code of ref document: A1

WWP Wipo information: published in national office

Ref document number: 18029705

Country of ref document: US