Virtual data center dispatching method and system
Technical field
The present invention relates to data center's dispatching technique, relate in particular to a kind of virtual data center dispatching method and system.
Background technology
Data center is meant the distributed computing system of being made up of server a plurality of isomeries, that linked together by network that is used to carry the enterprise-level application that online service is provided.In data center, a large amount of servers is carried out centralized and unified management, can ensure that server moves needed stabilized power source environment, suitable Temperature and Humidity Control and network bandwidth condition.
Traditional server application deployment is often taked the mode of private server (Dedicated server); Under this mode; The assembly that a general physical node is only disposed single application or used influences each other on same physical node to avoid a plurality of application deployments to each other.But this mode must cause the utilization factor of hardware resource low excessively, and the expense of buying hardware resource is excessive, also has the loss of power that physical node own dallies and air-conditioning equipment brought certainly, and the cost of management maintenance also increases simultaneously.
The energy-saving distribution Mechanism Study that appears as data center of Intel Virtualization Technology provides new opportunity, and Intel Virtualization Technology is that multiple online service is aggregated to that the operation service polymerization provides a kind of feasible program on a spot of server.Intel Virtualization Technology can be transformed into single server a plurality of virtual machines that have the performance isolation each other, and then lets each virtual machine carry the web application.Intel Virtualization Technology can also be realized the distribution according to need of resource; Through dynamically increasing or reduce virtual machine, polymerization operating load and On/Off server; Data center can carry out energy-saving distribution effectively, and then improves its other resources utilization factor and energy use efficiency.
Fig. 1 is the principle of work block diagram of the virtual data center scheduling system of prior art; As shown in Figure 1; The dispatching system 200 of data center is obtained the current system state S of data center; And according to current system state S the input parameter of next stage is predicted that the input parameter and the current system state S of system that draw according to prediction calculate system's system state of next stage, and produce control commands corresponding C and transfer to the state that data center 100 carries out the change systems.
But in actual application; The subject matter that the virtual data center scheduling system of prior art exists is the time interval that executing state shifts to be difficult to confirm: if the time interval that executing state shifts is long, then can reduce the energy-saving effect of scheduling mechanism; If the time that executing state shifts is too short, then can cause a large amount of bookkeepings.A large amount of bookkeepings produces following problem at least in virtual data center operational process:
One, too frequent bookkeeping not only may take a large amount of computational resources; Be unfavorable for the stable operation of data center; Can take a large amount of network bandwidths and central processing unit (Central Processing Unit like a large amount of virtual machine (vm) migration operations; Be called for short CPU) resource, and because the peak power of the electric power peak value in the On/Off physical machine process when being greater than physical machine CPU usage 100%, this too frequent bookkeeping can increase the power consumption of data center.
Two, general bookkeeping all needs the running time, and the time required like the On/Off physical server, bookkeeping also might make and use the service-level agreement (Service-Level Agreement is called for short SLA) of violating self simultaneously improperly.A station server has just been closed according to lower workload demands on last stage in the tentation data center, and next stage operating load significantly increased, opening server again needs the regular hour again, can't be the operating load service in time.
Summary of the invention
The present invention provides a kind of virtual data center dispatching method and system, to avoid the wasting of resources.
The present invention provides a kind of virtual data center dispatching method, comprising:
According to system status information and the application performance information of current generation of data center, each stage system status information in [1, H] individual stage after the prediction current generation; Wherein said H is a natural number, and H>1, wherein; Said [1, H] the individual stage is meant for 1 to H stage;
Confirm to comprise the optimal path at least two stages according to the system status information in said each stage;
Produce dispatch command, switch with the state of indicating said data center to carry out the next stage of data center according to the system status information in the 1st stage in the said optimal path in the said dispatch command.
Aforesaid virtual data center dispatching method; Wherein, the current generation is the 1st stage, system status information and the application performance information of said current generation according to data center; Each stage system status information in [1, H] individual stage comprises after the prediction current generation:
Each control input information of confirming i stage according to the system status information and the predetermined system condition in i stage of data center;
According to the application performance information in i stage of system status information, each control input information and the data center in said i stage, obtain one or more system status informations in i+1 stage of data center respectively;
Application performance information according to i+1 stage of application performance information prediction in i stage of data center;
Wherein, i is a natural number, and 1≤i≤H, according to the order of i from 1 to H, repeats aforesaid operations.
Aforesaid virtual data center dispatching method, wherein, confirm that according to the system status information in said each stage the optimal path that comprises at least two stages comprises:
According to the power consumption in each stage, confirm that the minimum path of power consumption sum at least two continuous stages is an optimal path.
Aforesaid virtual data center dispatching method; Wherein, Confirm that according to the system status information in said each stage the optimal path that comprises at least two stages is specially: set up the State Tree in each stage of data center according to the system status information in said each stage, confirm said optimal path according to said State Tree.
Aforesaid virtual data center dispatching method; Wherein, System status information and the application performance information of said current generation according to data center; Before each stage system status information in [1, H] individual stage, also comprise: the system status information and the application performance information that obtain the current generation of said data center after the prediction current generation.
Aforesaid virtual data center dispatching method, wherein,
Said application performance information comprises the request rate of application.
Aforesaid virtual data center dispatching method; Wherein, the application performance information according to i+1 stage of application performance information prediction in i stage of data center is specially: predict the application performance information in said i+1 stage through using ARMA model.
The present invention provides a kind of virtual data center scheduling system, comprises scheduler module, and said scheduler module comprises:
The system state prediction module is used for each the stage system state according to system state [1, H] individual stage after the prediction current generation of data center's current generation; Wherein said H is a natural number, and H>1, wherein; Said [1, H] the individual stage is meant for 1 to H stage;
The system state optimal module is used for confirming to comprise according to the system status information in said each stage the optimal path at least two stages;
The dispatch command generation module is used to produce dispatch command, switches with the state of indicating said data center to carry out the next stage of data center according to the system status information in the 1st stage in the said optimal path in the said dispatch command.
Aforesaid virtual data center scheduling system, the current generation is the 1st stage, wherein, said system state prediction module comprises:
The parameter prediction module is used for the application performance information according to each stage in [1, H] individual stage after the application performance information prediction current generation of current generation of data center;
The control adjusting module is used for each control input information of confirming i stage according to the system status information and the predetermined system condition in i stage of data center;
The model management module is used for the application performance information in i stage of system status information, each control input information and data center according to said i the stage, obtains one or more system status informations in i+1 stage of data center respectively;
Wherein, i is a natural number, and 1≤i≤H.
Aforesaid virtual data center scheduling system also comprises:
Monitoring module; Said monitoring module comprises application message monitoring unit and physical node monitoring unit; Said application message monitoring unit is used to obtain the application performance information of said current generation; And being sent to said parameter prediction module, said physical node monitoring unit is used to obtain the system status information of said current generation;
Execution module; Said execution module comprises virtual machine performance element and physical machine performance element; Said virtual machine performance element is used for carrying out virtual machine operations according to said dispatch command, and said physical machine performance element is used for carrying out the physical machine operation according to said dispatch command.
Can know by technique scheme; Virtual data center dispatching method provided by the invention and system; System status information through at least two stages after the current generation of predicted data center comes the system status information of the next stage of determining data center; Can be each allocated resources of data center as required, dynamically, reduce unnecessary bookkeeping, avoid the waste of resource.
Description of drawings
Fig. 1 is the principle of work block diagram of the virtual data center scheduling system of prior art;
The process flow diagram of the virtual data center dispatching method that Fig. 2 provides for the embodiment of the invention one;
The process flow diagram of the method for the prognoses system status information that Fig. 3 provides for the embodiment of the invention two;
The structural representation of data center's State Tree that Fig. 4 provides for the embodiment of the invention two;
The virtual data center scheduling system structural representation that Fig. 5 provides for the embodiment of the invention three.
Reference numeral:
10~30,110~130-step; The 40-monitoring module;
The 50-scheduler module; The 60-execution module;
510-system state prediction module; 520-system state optimal module;
530-dispatch command generation module; 5101-parameter prediction module;
5102-controls adjusting module; 5103-model management module;
410-application message monitoring unit; 420-physical node monitoring unit;
610-virtual machine performance element; 620-physical machine performance element;
100-data center; The 200-dispatching system;
The system state that S-is current; The C-control command.
Embodiment
For the purpose, technical scheme and the advantage that make the embodiment of the invention is clearer, will combine the embodiment of the invention below, to the technical scheme in the embodiment of the invention carry out clear, intactly describe.Need to prove that in accompanying drawing or instructions, similar or components identical is all used identical Reference numeral.
Embodiment one
The process flow diagram of the virtual data center dispatching method that Fig. 2 provides for the embodiment of the invention one, as shown in Figure 2, in the present embodiment, virtual data center dispatching method comprises:
Step 10, according to system status information and the application performance information of current generation of data center, each stage system status information in [1, H] individual stage after the prediction current generation, wherein H is a natural number, and H>1;
Step 20, confirm to comprise the optimal path at least two stages according to the system status information in each stage;
Step 30, generation dispatch command, the state of carrying out the next stage of data center according to the system status information in the 1st stage in the optimal path in the dispatch command with the designation data center switches.
The technical scheme of present embodiment is sought optimal path through predicting a plurality of stage system status informations; This optimal path comprises the system status information at least two stages, and promptly this system state of carrying out at least two stages in proper order along this optimal path is optimum.The most optimized parameter index can be set according to concrete needs, and multiple implementation is arranged.
In the present embodiment; The system status information of data center can reflect data center's power consumption; Through the prediction system status information at least two stages after the current generation; Confirm an optimal path; The system status information in first stage in the optimal path as data center's system status information in next stage, can be taken all factors into consideration data center and confirmed that from the system state in current generation in a plurality of stages the system state in next one stage carries out bookkeeping again, the instability of the data center that has avoided causing because of frequent bookkeeping; And, improved the utilization factor of resource owing to opening the waste of electric energy that physical machine causes continually.
Embodiment two
The process flow diagram of the method for the prognoses system status information that Fig. 3 provides for the embodiment of the invention two; As shown in Figure 3; The virtual data center dispatching method that embodiment two is provided is the basis with embodiment one; If the current generation of system centre is the 1st stage, specifically can come performing step 10 in the following manner.
Step 110, each control input information of confirming i stage according to the system status information and the predetermined system condition in i stage of data center;
The application performance information in i stage of step 120, the system status information according to i stage, each control input information and data center obtains one or more system status informations in i+1 stage of data center respectively;
Step 130, according to the application performance information in i+1 stage of application performance information prediction in i stage of data center;
Wherein, i is a natural number, and 1≤i≤H, according to the order of i from 1 to H, repeats aforesaid operations.When i>H, execution in step 20.
In the present embodiment; A concrete implementation method of round-robin in the technique scheme can for: the system status information in k stage of data center specifically can use x (k) to represent; With k stage of data center as the current generation, the system status information in k+1 stage of data center is x (k+1).Concrete x (k+1)=Φ (x (k), λ (k), u (k)), wherein, λ (k) is the application performance information in k stage of data center, i.e. environment input information, u (k) is the control input information in k stage of data center.System status information x (k) through k stage of data center of knowing and predetermined system condition can obtain to reach all possible control input information u (k) of predetermined system condition.Function phi is the behavior model of data center.Application performance information λ (k) through k the stage of data center; Application performance information λ (k+1) that can k+1 the stage of predicted data center; Preferably; Can predict that the ARIMA model is the limited mechanism of PREDICTIVE CONTROL forward through using autoregression moving average (Autoregressive Integrated Moving Average Model is called for short ARIMA) model; Specifically can go out the application performance information in each stage in [1, H] individual stage after data center's current generation according to the application performance information prediction of data center's current generation through the ARIMA model.Use the ARIMA model and predict, the operation steps standard, and analysis result is easy to explain.Those skilled in the art also can adopt other prediction algorithms to predict using performance information, like the neural network method, does not exceed with the algorithm that present embodiment was provided.
In the present embodiment, optimal path is the minimum path of power consumption sum in each stage.Promptly confirm that according to the system status information in each stage the optimal path that comprises at least two stages comprises:, confirm that the minimum path of power consumption sum at least two continuous stages is an optimal path according to the power consumption in each stage.
Preferably, can set up the State Tree in each stage of data center according to the system status information in each stage, confirm said optimal path according to State Tree, as shown in Figure 4, this method is simple, is easy to realize.Those skilled in the art also can adopt other algorithms to confirm optimal path, do not exceed with the algorithm that present embodiment was provided.
In the present embodiment; System status information and application performance information according to current generation of data center; Also comprise before the system status information in [1, H] individual each stage in stage after the prediction current generation: the system status information and the application performance information that obtain the current generation of data center.The system status information of the current generation of data center specifically can obtain the parameter of data center and calculate obtaining through monitoring; Parameter specifically can for the average response time used and application etc. pending request queue length, application performance information comprises the request rate of application.
Embodiment three
The virtual data center scheduling system structural representation that Fig. 5 provides for the embodiment of the invention three, as shown in Figure 5, this virtual data center scheduling system can be used virtual data center provided by the invention dispatching method, but not as limit.This virtual data center scheduling system comprises scheduler module 50; Scheduler module 50 comprises system state prediction module 510, system state optimal module 520 and dispatch command generation module 530; System state prediction module 510 is used for according to the system state of data center's current generation after the prediction current generation the [1; H] system state in each stage in individual stage, wherein H is a natural number, and H>1; System state optimal module 520 is used for confirming to comprise according to the system status information in each stage the optimal path at least two stages; Dispatch command generation module 530 is used to produce dispatch command, and the state of carrying out the next stage of data center according to the system status information in the 1st stage in the optimal path in the dispatch command with the designation data center switches.Usually the control input information that data center is switched to the state of next stage can not directly be carried out; Dispatch command generation module 530 is converted into the dispatch command that can discern and carry out; Like On/Off physical server, migration virtual machine, On/Off virtual machine etc., to change the running status of data center.Setting through system state prediction module 510; Can take all factors into consideration the system status information at least two stages after data center's current generation; With the determining data center system status information of next stage, the waste of the resource of having avoided causing because of frequent bookkeeping.
In the present embodiment; Current generation is the 1st stage; System state prediction module 510 specifically can comprise parameter prediction module 5101, control adjusting module 5102 and model management module 5103; Parameter prediction module 5101 is used for the application performance information according to each stage in [1, H] individual stage after the application performance information prediction current generation of the current generation of data center; Control adjusting module 5102 is used for each control input information of confirming i stage according to the system status information and the predetermined system condition in i stage of data center; Model management module 5103 is used for the application performance information in i stage of system status information, each control input information and data center according to i stage, obtains one or more system status informations in i+1 stage of data center respectively; Wherein, i is a natural number, and 1≤i≤H.
In the present embodiment; This virtual data center scheduling system can also comprise monitoring module 40 and execution module 60; Monitoring module 40 comprises application message monitoring unit 410 and physical node monitoring unit 420; Application message monitoring unit 410 is used to obtain the application performance information of current generation, and is sent to parameter prediction module 5101, and physical node monitoring unit 420 is used to obtain the system status information of current generation; Execution module 60 comprises virtual machine performance element 610 and physical machine performance element 620, and virtual machine performance element 610 is used for carrying out virtual machine operations according to dispatch command, and physical machine performance element 620 is used for carrying out the physical machine operation according to dispatch command.Concrete; Execution module 60 needs to carry out closing/operations such as Remote Wake Up of the closing of virtual machines/unlatching, virtual machine (vm) migration and physical machine; These operations can pass through that Simple Object Access Protocol (Simple Object Access Protocol, be called for short SOAP) calls.What the associative operation of virtual machine was called is that the corresponding Virtual Machine Manager API that libvirt provides realizes; What the physical machine shutoff operation called is the linux shutdown command; The Remote Wake Up of physical machine then adopts the wake-on-lan agreement to realize.Those skilled in the art can select additive method to realize the operation of dispatch command, and the method that does not provide with present embodiment is exceeded.
Virtual data center dispatching method provided by the invention and system; System status information through at least two stages after the current generation of predicted data center comes the system status information of the next stage of determining data center; Can to the data center next the system state of several stages synthetically analyze; Be each allocated resources of data center as required, dynamically, reduced unnecessary bookkeeping, avoided the wasting of resources that causes because of frequent bookkeeping.
What should explain at last is: above embodiment is only in order to explaining technical scheme of the present invention, but not to its restriction; Although with reference to previous embodiment the present invention has been carried out detailed explanation, those of ordinary skill in the art is to be understood that: it still can be made amendment to the technical scheme that previous embodiment is put down in writing, and perhaps part technical characterictic wherein is equal to replacement; And these are revised or replacement, do not make the spirit and the scope of the essence disengaging various embodiments of the present invention technical scheme of relevant art scheme.