CN105718310A - Virtual machine scheduling method for IO dense application under cloud platform - Google Patents

Virtual machine scheduling method for IO dense application under cloud platform Download PDF

Info

Publication number
CN105718310A
CN105718310A CN201610021270.XA CN201610021270A CN105718310A CN 105718310 A CN105718310 A CN 105718310A CN 201610021270 A CN201610021270 A CN 201610021270A CN 105718310 A CN105718310 A CN 105718310A
Authority
CN
China
Prior art keywords
virtual machine
physical host
load
resource
intensive type
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.)
Granted
Application number
CN201610021270.XA
Other languages
Chinese (zh)
Other versions
CN105718310B (en
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.)
Shanghai Institute of Technology
Original Assignee
Shanghai Institute of Technology
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 Shanghai Institute of Technology filed Critical Shanghai Institute of Technology
Priority to CN201610021270.XA priority Critical patent/CN105718310B/en
Publication of CN105718310A publication Critical patent/CN105718310A/en
Application granted granted Critical
Publication of CN105718310B publication Critical patent/CN105718310B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

Abstract

The present invention provides a virtual machine scheduling method for a dense application under a cloud platform. The method comprises: S1: setting a threshold interval [M, N]; S2: setting efficiency of running an IO dense application by each physical host; S3: presetting 4 set tables T1-T4, and initializing the set tables T1-T4; S4: keeping waiting for the IO dense application, and if the IO dense application appears, entering step S5 while waiting for a new IO dense application; S5: determining whether the set table T1 is null, and if no, allocating the IO dense application to a virtual machine started by a physical host in the set table T1 and running the IO dense application, performing load determination on the physical host, and entering step S6; and S6: determining whether the set table T4 is null, and if no, allocating the IO dense application to a virtual machine started by a newly started physical host and running the IO dense application, and performing load determination on the physical host. According to the method provided by the present invention, for the IO dense application, the virtual machine can be allocated to the physical host in real time, so as to ensure the total usage number of the physical host is minimized.

Description

The dispatching method of virtual machine of I/O intensive type application under a kind of cloud platform
Technical field
The present invention relates to field of cloud calculation, particularly to be I/O intensive type (IO Bound under cloud platform Application) dispatching method of virtual machine applied.
Background technology
The appearance of cloud computing changes the function mode of conventional data centers, and the various aspects in society all create huge Impact.Increasing data center, provides powerful resource pool, such as CPU, Memory by Intel Virtualization Technology and (deposits Reservoir), Bandwidth (bandwidth) etc..But, the most more efficiently promote the resource utilization of cloud computing and reduce energy Consumption, then become one of hot fields of research at present.
Intel Virtualization Technology is to build one of indispensable key technology of cloud architecture.At present in cloud computing data For the heart, use Intel Virtualization Technology aspect, improve utilization rate and the treatment effeciency of application of resource, mainly from the standpoint of two: 1) load balancing, the request of user with the form of virtual machine, is averagely allocated to Servers-all so that the thing of cloud data center The load of reason server is kept in balance state, it is therefore intended that ensure the efficiency that application processes;2) virtual machine is merged, as much as possible Virtual machine is merged and is deployed on the fewest physical server, make full use of the resource of physical server, reduce and use thing The quantity of reason server, reduces the energy consumption of whole cloud computation data center with this.CloudStack (the one of cloud operating system Kind) in system platform, typical resource dispatching strategy is FirstFit strategy, enters at cluster, the Host List specifying user When row sequencing selection cluster or main frame, directly or dispose as virtual machine distribution with first of satisfactory cluster or main frame Target, but application treatment effeciency the most relatively low.
Summary of the invention
Purpose to be solved by this invention is to provide the dispatching method of virtual machine of I/O intensive type application, pin under a kind of cloud platform I/O intensive type is applied so that virtual machine can distribute to physical host in real time, ensure the use sum of physical host the most simultaneously Little, promote cloud data center and process the efficiency of I/O intensive type application and reduce its process energy consumption to a certain extent.
For solving the problems referred to above, the present invention proposes the dispatching method of virtual machine of I/O intensive type application, bag under a kind of cloud platform Include following steps:
S1: setting threshold interval [M, N], wherein N is the virtual machine number in efficiency zone of reasonableness of I/O intensive type application Maximum critical value, the marginal value of virtual machine number when M is to maximally utilize resource;
S2: set every physical host and run efficiency E of I/O intensive type applicationIO, wherein, E I O = 1 , M &le; k I O &le; N 0 , k I O < M - 1 , k I O > N , kIORepresent the virtual machine number of actual motion I/O intensive type application;
S3: preset 4 collection table T1-T4, initializes collection table T1-T4, and wherein, collection table T1 is EIOThe physics master of=0 Machine set;Collection table T1 is EIOThe physical host set of=1;Collection table T1 is EIOThe physical host set of=-1;Collection table T1 For the physical host set do not opened;
S4: persistently waiting the application of I/O intensive type, I/O intensive type is applied if occurring, then waiting the same of new I/O intensive type application Time enter step S5;
S5: judge whether collection table T1 is empty, if sky, then enters step S6;If not being empty, then by this I/O intensive Type application is distributed to run in the virtual machine that the physical host in described collection table T1 is opened, and updates collection table T1-T4, to this Physical host carries out load and judges, makes efficiency E in loadIOMigrate out a certain amount of virtual machine time not in preset range, enter Enter step S6;
S6: judge whether collection table T4 is empty, if sky, then refusal distribution physical host, waits pending described new IO Intensive applications, returns step S5;If not being empty, then start a new physical host, and update collection table T1-T4, and The virtual machine apply the physical host distributing to this new startup to be opened this I/O intensive type running, this physical host is carried out Load judges, makes efficiency E in loadIOA certain amount of virtual machine is migrated out time not in preset range.
According to one embodiment of present invention, in step sl, define a five-tuple threshold determination model T, comprehensively weigh Amount I/O load, so that it is determined that physical host can bear the threshold interval of the virtual machine number of I/O intensive type application,
T={loadavg, run, avgqu, util, contexts},
Loadavg represents that CPU is currently running the statistical information of the process number run with waiting for CPU, run within a period of time Representing the length of instantaneous operation queue or wait the process number run, avgqu represents average I/O queue, IOQ length, and util represents one For the percentage of time of I/O operation in Miao, contexts represents context handover overhead;
Each load is exceeded the percentage ratio loaded most and is set to value when efficiency reduces by described five-tuple threshold determination model T, Each load is set to value when resource utilization reduces less than the percentage ratio of maximum load, sets the load of each load less than maximum The percentage ratio of load, load exceed the interval between the percentage ratio of maximum load and load as embodying each of I/O load parameter Excellent threshold interval, thus the threshold interval of 5 virtual machine numbers of correspondence is determined according to optimal threshold interval;
Using the common factor of the threshold interval of 5 virtual machine numbers as described threshold interval [M, N],
[M, N]=[Mloadavg, Nloadavg]∩[Mrun, Nrun]∩[Mavgqu, Navgqu]∩[Mutil, Nutil]∩[Mcontext, Ncontext]
According to one embodiment of present invention, set the load of each load less than the percentage ratio of maximum load as 50%, negative It is 70% that load exceedes the percentage ratio of maximum load, and optimal threshold interval is 50%~70%.
According to one embodiment of present invention, virtual machine number k of described actual motion I/O intensive type applicationIOThere is a limit Scope processed, the determination mode of described restriction scope includes:
Definition physical host resource type, a given physical host, then this physical host has multiple different physics Resource, uses RnRepresenting, n represents the numbering of the different resource type of physical host, is expressed as with resource collection R:
R={R1, R2…Rn…RNN ∈ 1,2 ..., N} (1);
Definition type of virtual machine, virtual machine then also can be divided into different virtual machines according to the difference of application resource requirement Type Vi, each type of virtual machine ViRequired every resource is different, rI, nRepresent ViThe resource characteristic that type Virtual machine consumes, It is corresponding with the resource type of physical host,
V={V1, V2…Vi…VmI ∈ 1,2 ..., m} (2)
rI, n={ rI, 1, rI, 2…rI, n…rI, NN ∈ { 1,2 ... N} (3);
Definition deploying virtual machine number restrictive condition, a physical host can only be disposed a number of within the same time Virtual machine ki, i ∈ 1,2 ..., N}, kiRepresent ViThe virtual machine number of type Virtual machine, therefore deploying virtual machine number restrictive condition It is indicated by equation below:
i(ki*Vi)≤αiRi, 0 < α < 1 (4)
Substitution, derivation according to definition type of virtual machine then have
&Sigma; n = 1 N ( k i * r i , n ) &le; &alpha; i R i , 0 < &alpha; < 1 - - - ( 5 )
Wherein, αiIt is then correlation coefficient, is used for determining the utilization rate limit of related resource;
Definition only considers the I/O type virtual machine number restrictive condition under I/O resource consumption,
&Sigma; n = 1 N ( k I O * r I O , n ) &le; &alpha; I O R I O , 0 < &alpha; I O < 1 - - - ( 6 )
rIO, nRepresenting the resource characteristic of I/O type virtual machine, n difference represents the parameter difference that I/O resource consumes, kIORepresent real The virtual machine number of I/O intensive type application is run on border;Represent the virtual machine that physical host can be opened I/O resource;αIORIORepresent the I/O resource of physical host;
Virtual machine number k of actual motion I/O intensive type applicationIORestriction scope determine according to formula (4), (5), (6), In the range of described restriction, then this physical host can receive new I/O intensive type application always, otherwise, then cannot be the most newly-built virtual Machine, i.e. on this physical host, virtual machine unlatching quantity reaches maximum.
According to one embodiment of present invention, the virtual machine number in efficiency zone of reasonableness of described I/O intensive type application Maximum critical value N is the upper limit of described restriction scope.
According to one embodiment of present invention, in described step S1, described threshold interval [M, N] is according to the change of I/O load Change and the time of I/O intensive type application process sets.
According to one embodiment of present invention, physical host carries out load judgement comprise the following steps:
A1: physical host receives the application of I/O intensive type and runs on the virtual machine opened;
A2: judge EIOWhether >=0 set up;
A3: if setting up, entering step A4, otherwise migrating out a number of virtual machine, enter step A4;
A4: judge EIOWhether=1 set up;
A5: if being false, migrates out a number of virtual machine and returns to step A4, does not the most migrate virtual machine.
According to one embodiment of present invention, in step S5 and S6, this physical host is carried out load and judges, work as EIO When=-1, virtual machine is moved out.
After using technique scheme, the present invention has the advantages that compared to existing technology by physical host Load situation of change migrates virtual machine, the quantity of the I/O intensive type application on conservative control physical server, and then improves cloud ring Under border, physical host processes the efficiency of I/O intensive type application, and reduces energy consumption to a certain extent, by true cloud environment Under great many of experiments analysis and Experimental comparison, the present invention is always held at most preferably on the treatment effeciency that I/O intensive type is applied, thing Within the I/O load of reason server also maintains essentially in normal range, it is to avoid when the application of I/O intensive type increases, I/O intensive type The phenomenon that application treatment effeciency reduces and physical server I/O load is overweight, enters towards dissimilar application under nowadays cloud environment The specific resource dispatching strategy of row has good realistic meaning.
Accompanying drawing explanation
Fig. 1 be one embodiment of the invention cloud platform under I/O intensive type application dispatching method of virtual machine flow process signal Figure;
Fig. 2 is that the physical host of one embodiment of the invention carries out the schematic flow sheet that load judges;
Fig. 3 is the avgqu relation with the virtual machine number of actual motion I/O intensive type application of one embodiment of the invention Schematic diagram;
Fig. 4 is that the relation of the virtual machine number that the util of one embodiment of the invention applies with actual motion I/O intensive type is shown It is intended to;
Fig. 5 is the contexts pass with the virtual machine number of actual motion I/O intensive type application of one embodiment of the invention It it is schematic diagram;
Fig. 6 is loadavg, run virtual machine number with the application of actual motion I/O intensive type of one embodiment of the invention Relation schematic diagram;
Fig. 7 is when virtual machine=8, the contrast schematic diagram that one embodiment of the invention is tactful with FirstFit;
Fig. 8 is when virtual machine=9, the contrast schematic diagram that one embodiment of the invention is tactful with FirstFit.
Detailed description of the invention
Understandable, below in conjunction with the accompanying drawings to the present invention for enabling the above-mentioned purpose of the present invention, feature and advantage to become apparent from Detailed description of the invention be described in detail.
Elaborate a lot of detail in the following description so that fully understanding the present invention.But the present invention can be with Much being different from alternate manner described here to implement, those skilled in the art can be in the situation without prejudice to intension of the present invention Under do similar popularization, therefore the present invention is not limited by following public being embodied as.
Referring to Fig. 1, the dispatching method of virtual machine of I/O intensive type application under the cloud platform of the present embodiment, comprise the following steps:
S1: setting threshold interval [M, N], wherein N is the virtual machine number in efficiency zone of reasonableness of I/O intensive type application Maximum critical value, the marginal value of virtual machine number when M is to maximally utilize resource;
S2: set every physical host and run efficiency E of I/O intensive type applicationIO, wherein, E I O = 1 , M &le; k I O &le; N 0 , k I O < M - 1 , k I O > N , kIORepresent the virtual machine number of actual motion I/O intensive type application;
S3: preset 4 collection table T1-T4, initializes collection table T1-T4, and wherein, collection table T1 is EIOThe physics master of=0 Machine set;Collection table T1 is EIOThe physical host set of=1;Collection table T1 is EIOThe physical host set of=-1;Collection table T1 For the physical host set do not opened;
S4: persistently waiting the application of I/O intensive type, I/O intensive type is applied if occurring, then waiting the same of new I/O intensive type application Time enter step S5;
S5: judge whether collection table T1 is empty, if sky, then enters step S6;If not being empty, then by this I/O intensive Type application is distributed to run in the virtual machine that the physical host in described collection table T1 is opened, and updates collection table T1-T4, to this Physical host carries out load and judges, makes efficiency E in loadIOMigrate out a certain amount of virtual machine time not in preset range, enter Enter step S6;
S6: judge whether collection table T4 is empty, if sky, then refusal distribution physical host, waits pending described new IO Intensive applications, returns step S5;If not being empty, then start a new physical host, and update collection table T1-T4, and The virtual machine apply the physical host distributing to this new startup to be opened this I/O intensive type running, this physical host is carried out Load judges, makes efficiency E in loadIOA certain amount of virtual machine is migrated out time not in preset range.
Below the dispatching method of virtual machine of I/O intensive type application under the cloud platform of the present embodiment is described in detail.
First, determining that physical host processes the limit of I/O intensive type application, this limit refers to do not affecting SLA (seeervice level Other agreement) in the case of service regulation, physical host can carry how many I/O intensive type virtual machines (how many I/O intensive simultaneously Type application task).In one embodiment, to the resource of physical host, type of virtual machine, deploying virtual machine number restrictive condition It is analyzed, is defined below.
Definition 1:(physical machine resource type) a given physical host, then this physical host has multiple different physics Resource, including cpu resource, memory source etc., uses RnRepresenting (i.e. representing different disposal abilities), n represents physical host not Same resource type.Such as R1Represent cpu resource, R2Represent memory source etc..It is expressed as with set R:
R={R1, R2…Rn…RNN ∈ 1,2 ..., N} (1)
Definition 2:(type of virtual machine), for specific application, cloud data center distributes corresponding virtual machine.And virtual machine Then according to the difference of application resource requirement, and different type of virtual machine V can be divided intoi(i.e. the resource characteristic of virtual machine consumption divides Class).And each type of virtual machine ViRequired every resource is again different, rI, nRepresent the money of the consumption of i type Virtual machine Source feature, corresponding with the resource type of physical host.ViType Virtual machine can be that I/O intensive type, CPU intensive type, internal memory are close These several types such as collection type or network bandwidth intensity.
V={V1, V2…Vi…VmI ∈ 1,2 ..., m} (2)
rI, n={ rI, 1, rI, 2…rI, n…rI, N}n∈{1,2…N} (3)
Definition 3:(deploying virtual machine number restrictive condition) because Intel Virtualization Technology portion can be passed through on a physical host Administration's multiple stage virtual machine, but be not that unlimited amount is disposed, because physical host configuration is limited, a physical host is in the same time In can only carry a number of virtual machine ki, i ∈ 1,2 ..., N}, kiRepresent ViThe virtual machine number of type Virtual machine, thus empty Plan machine is disposed number restrictive condition and can be indicated by equation below:
i(ki*Vi)≤αiRi, 0 < α < 1 (4)
And by definition 2, derive and then have
&Sigma; n = 1 N ( k i * r i , n ) &le; &alpha; i R i , 0 < &alpha; < 1 - - - ( 5 )
Wherein, αiBe then correlation coefficient, every physical host due to the impact of the factor such as system, hardware, system resource Utilization rate is not up to 100%, so according to the situation of its reality, having parameter alphaiDetermine the utilization rate pole of related resource Limit.
The present invention be directed to the application of I/O intensive type and carry out scheduling virtual machine.Therefore only need to pay close attention to the most main in terms of resource limit The resource consumption wanted, i.e. I/O resource, for other resources, will not become physical host and process the bottleneck of I/O intensive application.Therefore have Equation below is set up:
&Sigma; n = 1 N ( k I O * r I O , n ) &le; &alpha; I O R I O , 0 < &alpha; I O < 1 - - - ( 6 )
rIO, nRepresenting the resource characteristic of I/O type virtual machine, i.e. consume the major parameter of I/O resource, n is different, represents IO money The parameter that source consumes is different, kIORepresent the virtual machine number running the application of I/O intensive type;Represent institute's energy The virtual machine I/O resource opened;αIORIORepresent physical host I/O resource.Therefore the virtual machine I/O resource opened not can exceed that place thing I/O resource on reason main frame.
According to above-mentioned definition, when cloud data center processes one group of I/O intensive type application, if the reality on physical host Run virtual machine number k of I/O intensive type applicationIOCoincidence formula (4), (5), (6), can answer as actual motion I/O intensive type Virtual machine number kIORestriction scope, then this physical host can receive the application of new I/O intensive type always.Otherwise, then because Physical machine inadequate resource, it is impossible to the most newly-built virtual machine, i.e. on this physical host, virtual machine unlatching quantity reaches maximum.
In step sl, for I/O intensive type apply, herein set I/O intensive type application at efficiency zone of reasonableness interior-deficiency The maximum critical value of plan machine number is N, and when maximally utilizing resource, the marginal value of virtual machine number is M, setting threshold interval [M, N], it is E that physical host processes the efficiency of I/O intensive type applicationIO
Efficiency E that I/O intensive type is applied is processed weighing physical hostIOTime, can be directly from the process of I/O intensive type application Time change draws.But it is when processing application under cloud environment, it is impossible to carry out scheduling virtual machine by running the deadline, this Cold migration only can increase system load, reduces resource treatment effeciency and increases energy consumption.So, hold on physical host to find out Carry the maximum critical value N of virtual machine number in efficiency zone of reasonableness of I/O intensive type application, and maximally utilize during resource empty Marginal value M of plan machine number, can take react the most representational several parameters of I/O load situation, comprehensively weigh Threshold interval and the situation of I/O load of the virtual machine number of I/O intensive type application can be born on one physical host.
In one embodiment, in step sl, define a five-tuple threshold determination model T, comprehensively weigh I/O load, So that it is determined that physical host can bear the threshold interval of the virtual machine number of I/O intensive type application,
T={loadavg, run, avgqu, util, contexts},
Loadavg represents that CPU is currently running the statistical information of the process number run with waiting for CPU within a period of time, enters The average statistical value of number of passes, i.e. cpu load, the statistical information of the length of namely CPU use queue.General loadavg is being In system, maximum is 2 processes.The too high typically performance of system loadavg is problematic, and system loadavg reflects cpu often One important performance characteristic of load, i.e. system loadavg height then represents that CPU capability problems or quantity are inadequate.Appointing in queue Pragmatic border is probably consumption CPU's, it is also possible to consumption I/O's, the present invention is directed to the application of I/O intensive type and uses physical host resource The impact of situation, ignores the task of consumption CPU.Referring to Fig. 6, (load the most) in the case of virtual machine number is the most loadavg's Number is the most, thus can be using loadavg parameter as the standard weighing main frame IO performance.
Run represents the length of instantaneous operation queue or waits the maximum of the process number run, this parameter and loadavg parameter Value is the same can be 2, is used equally to weigh the situation of cpu load, and the place that this run parameter is different from loadavg is, run joins What number reflected is the situation of change of this physical host momentary load, and that loadavg then reflects is past 1min, 5min, 15min Deng the average load situation in a period of time, therefore this value has instantaneous reference meaning, referring to Fig. 6, the feelings that virtual machine number is the most The number (loading) under condition run the most is the most, thus can be using run parameter as the standard weighing main frame IO performance.
Avgqu represents average I/O queue, IOQ length, and queue length also can work as I/O as the index of measurement system I/O load When queue length becomes larger, illustrating that this system exists I/O bottleneck, general maximum selection rule is 1.Referring to Fig. 3, virtual machine number The number (loading) in the case of the most avgqu the most is the most, thus can be using avgqu parameter as weighing main frame IO performance One standard.
Util represents the percentage of time in a second for I/O operation, i.e. one second has percent how many time for I/O operation, has in one second in other words how long I/O queue, IOQ is non-NULL, and maximum is 100%, and this parameter can reflect disk Busy degree, referring to Fig. 4, the number (loading) in the case of virtual machine number is the most util the most is the most, thus util ginseng Number can be used to weigh a standard of main frame I/O load.
Contexts represents that context handover overhead, too much context switching can cause the expense that system is the biggest, for Applying in I/O intensive type, the timeslice that CPU processes needed for application runs is the shortest, needs a lot of contexts to switch, at context Maximum in switching is generally 15000 times, referring to Fig. 5, (loads) contexts in the case of virtual machine number is the most the most Number the most, can using this contexts parameter as weigh I/O load a standard.
Individually parameter can not reflect the behavior pattern of system I/O load and physical host exactly, and the present embodiment is combined Close the most representational I/O load parameter considering to reflect physics host computer system I/O load situation, be specifically based on I/O intensive type The virtual machine (vm) migration threshold determination model of application is as shown in table 1 below:
Table 1
In the optimal threshold interval of table 1, each load is exceeded the percentage ratio loaded most and sets by five-tuple threshold determination model T Value when reducing for efficiency, is set to value when resource utilization reduces by each load less than the percentage ratio of maximum load, sets each The interval loading the percentage ratio less than maximum load, loading between the percentage ratio exceeding maximum load of load is born as embodying IO The optimal threshold of each load carrying parameter is interval, thus determines the threshold of 5 virtual machine numbers of correspondence according to optimal threshold interval Value interval.
It is also preferred that the left set the load of each load percentage ratio less than maximum load as 50%, load exceed maximum load Percentage ratio is 70%, and optimal threshold interval is 50%~70%.Because either CPU or I/O resource, when itself CPU or IO bears Carry and exceed the 70% of maximum and i.e. think that efficiency reduces, and when load is less than the 50% of maximum load, i.e. think this utilization of resources Rate is low.Therefore can be interval by the optimal threshold of five load parameters in above-mentioned model, draw corresponding five void The threshold interval of plan machine number, the relation of load and virtual machine number can be referring to aforementioned formula (1)~(6).
Consider several parameter, analyze the situation of change of physical host I/O resource utilization rate, by 5 virtual machine numbers The common factor of threshold interval is as described threshold interval [M, N] so that between minimizing 50%-70%, threshold value is error, draws Whole optimum interval [M, N] (the most now EIO=1), shown in equation below (9), same procedure can operate with EIO=-1 and EIO=0 institute Corresponding virtual machine threshold zone,
[M,N]=[Mloadavg, Nloadavg]∩[Mrun, Nrun]∩[Mavgqu, Navgqu]∩[Mutil, Nutil]∩[Mcontext, Ncontext] (9)
kIORepresent the number of the virtual machine running the application of I/O intensive type.Work as kIODuring≤N, then EIOWithin zone of reasonableness;And Work as kIODuring > N, then EIOEfficiency then the most drastically declines, and does not meets the requirement of user.By imitating that I/O intensive type is applied The maximum critical value N of virtual machine number in rate zone of reasonableness, it can be determined that EIOWhether within rational efficiency range, (load is closed Reason).If it was not then the application to I/O intensive type carries out load migration process.It is divided into again in the range of rational efficiency Bigization utilizes scope of resource and the most fully utilized scope of resource, and the threshold value of virtual machine when maximally utilizing resource is set as M, when kIO, i.e. there is resources idle in < M, then it is assumed that the most fully utilized resource of this physical machine.
In step sl, threshold interval [M, N] can according to the change of I/O load and I/O intensive type application process time Between set.
In step s 2, according to the threshold interval [M, N] obtained in step S1, set every physical host and run I/O intensive type Efficiency E of applicationIO, thus it is defined on the application treatment effeciency in load change procedure, wherein, E I O = 1 , M &le; k I O &le; N 0 , k I O < M - 1 , k I O > N , kIORepresent the virtual machine number of actual motion I/O intensive type application.
In step s3, preset 4 collection table T1-T4, the physical host under the corresponding efficiency of labelling, initialize set Table T1-T4, wherein, collection table T1 is EIOThe physical host set of=0;Collection table T1 is EIOThe physical host set of=1;Collection Conjunction table T1 is EIOThe physical host set of=-1;Collection table T1 is the physical host set do not opened.
In step s 4, persistently waiting the application of I/O intensive type, if occurring, I/O intensive type is applied, and system can produce accordingly, then Step S5 is entered, it is achieved the physical machine of this I/O intensive type application is distributed and processes while waiting the application of new I/O intensive type.
In step s 5, after the application of I/O intensive type occurs, it is judged that whether collection table T1 is empty, if sky, then enters step Rapid S6;If not being empty, then that is opened by this I/O intensive type application physical host distributed in described collection table T1 is virtual Machine runs, the virtual machine that the physical host that the application of this I/O intensive type sets up in this T1 is opened is run, updates set Table T1-T4, carries out load and judges, make efficiency E in load this physical hostIOMigrate out a certain amount of time not in preset range Virtual machine, enter step S6.
In step s 6, it is judged that whether collection table T4 is empty, if sky, then refusal distribution physical host, waits pending Described new I/O intensive type is applied, and returns step S5;If not being empty, then start a new physical host, and update collection table T1-T4, and the virtual machine applying the physical host distributing to this new startup to be opened on this I/O intensive type run, to this physics Main frame carries out load and judges, makes efficiency E in loadIOA certain amount of virtual machine is migrated out time not in preset range.
Referring to Fig. 2, in one embodiment, physical host is carried out load and judges, and make the most virtual when necessary The mode that machine migrates comprises the following steps:
A1: physical host receives the application of I/O intensive type and runs on the virtual machine opened;
A2: judge EIOWhether >=0 set up;
A3: if setting up, entering step A4, otherwise migrating out a number of virtual machine, enter step A4;
A4: judge EIOWhether=1 set up;
A5: if being false, migrates out a number of virtual machine and returns to step A4, does not the most migrate virtual machine.
In another embodiment, in step S5 and S6, this physical host is carried out load and judges, work as EIOWill when=-1 Virtual machine is moved out.
By experiment, show that through T model the virtual machine of the I/O intensive type application run on a physical host is optimal Number, guarantees physical server optimization process efficiency.Below the present invention with under cloud platform original scheduling strategy compare, Verify feasibility and the high efficiency of the present invention.In CloudStack system platform, typical resource dispatching strategy is FirstFit strategy.The present invention is contrasted with FirstFit strategy.In the figure 7, VM (virtual machine)=8, in fig. 8, VM (virtual machine)=9, for the present invention is relative to FirstFit strategy, the process total time of physical host (physical server) and application Process average time the most less.
The present invention passes through to migrate virtual machine in good time, the quantity of the I/O intensive type application on conservative control physical server, carries Under high cloud environment, physical host processes the efficiency of I/O intensive type application, and reduces energy consumption to a certain extent.Meanwhile, by Great many of experiments analysis under true cloud environment and Experimental comparison, the checking present invention can make the treatment effeciency one that I/O intensive type is applied Directly it is maintained at optimal, within the I/O load of physical server also maintains essentially in normal range, it is to avoid when I/O intensive type is applied When increasing, the phenomenon that I/O intensive type application treatment effeciency reduces and physical server I/O load is overweight, below nowadays cloud environment Carry out specific resource dispatching strategy to dissimilar application and there is good realistic meaning.
Although the present invention is open as above with preferred embodiment, but it is not for limiting claim, any this area Technical staff without departing from the spirit and scope of the present invention, can make possible variation and amendment, therefore the present invention Protection domain should be defined in the range of standard with the claims in the present invention.

Claims (8)

1. the dispatching method of virtual machine of I/O intensive type application under a cloud platform, it is characterised in that comprise the following steps:
S1: set threshold interval [M, N], wherein N be the virtual machine number in efficiency zone of reasonableness of I/O intensive type application Big marginal value, the marginal value of virtual machine number when M is to maximally utilize resource;
S2: set every physical host and run efficiency E of I/O intensive type applicationIO, wherein, E I O = 1 , M &le; k I O &le; N 0 , k I O < M - 1 , k I O > N , kIORepresent the virtual machine number of actual motion I/O intensive type application;
S3: preset 4 collection table T1-T4, initializes collection table T1-T4, and wherein, collection table T1 is EIOThe physical host collection of=0 Close;Collection table T1 is EIOThe physical host set of=1;Collection table T1 is EIOThe physical host set of=-1;Collection table T1 is not The physical host set opened;
S4: persistently waiting the application of I/O intensive type, I/O intensive type is applied if occurring, then enter while waiting the application of new I/O intensive type Enter step S5;
S5: judge whether collection table T1 is empty, if sky, then enters step S6;If not being empty, then should by this I/O intensive type The virtual machine opened with the physical host distributed in described collection table T1 runs, updates collection table T1-T4, to this physics Main frame carries out load and judges, makes efficiency E in loadIOMigrate out a certain amount of virtual machine time not in preset range, enter step Rapid S6;
S6: judge whether collection table T4 is empty, if sky, then refusal distribution physical host, waits pending described new I/O intensive Type is applied, and returns step S5;If not being empty, then start a new physical host, and update collection table T1-T4, and should I/O intensive type is applied in the virtual machine that the physical host distributing to this new startup is opened and is run, and loads this physical host Judge, make efficiency E in loadIOA certain amount of virtual machine is migrated out time not in preset range.
2. the dispatching method of virtual machine of I/O intensive type application under cloud platform as claimed in claim 1, it is characterised in that in step In S1, define a five-tuple threshold determination model T, comprehensively weigh I/O load, so that it is determined that physical host can to bear IO close The threshold interval of the virtual machine number of collection type application,
T={loadavg, run, avgqu, util, contexts},
Loadavg represents that CPU is currently running the statistical information of the process number run with waiting for CPU within a period of time, and run represents The process number that the length of instantaneous operation queue or wait run, avgqu represents average I/O queue, IOQ length, and util represented in one second For the percentage of time of I/O operation, contexts represents context handover overhead;
Each load is exceeded the percentage ratio loaded most and is set to value when efficiency reduces by described five-tuple threshold determination model T, will be each Load is set to value when resource utilization reduces less than the percentage ratio of maximum load, sets the load of each load less than maximum load Percentage ratio, load exceed the optimum threshold as each load embodying I/O load parameter of the interval between the percentage ratio of maximum load Value interval, thus the threshold interval of 5 virtual machine numbers of correspondence is determined according to optimal threshold interval;
Using the common factor of the threshold interval of 5 virtual machine numbers as described threshold interval [M, N],
[M, N]=[Mloadavg, Nloadavg]∩[Mrun, Nrun]∩[Mavgqu, Navgqu]∩[Mutil, Nutil]∩[Mcontext, Ncontext]。
3. the dispatching method of virtual machine of I/O intensive type application under cloud platform as claimed in claim 2, it is characterised in that set each The load of load less than the percentage ratio of maximum load be 50%, to exceed the percentage ratio of maximum load be 70% in load, optimal threshold Interval is 50%~70%.
4. the dispatching method of virtual machine of I/O intensive type application under cloud platform as claimed in claim 1, it is characterised in that described reality Virtual machine number k of I/O intensive type application is run on borderIOHaving a restriction scope, the determination mode of described restriction scope includes:
Definition physical host resource type, a given physical host, then this physical host has multiple different physical resource, Use RnRepresenting, n represents the numbering of the different resource type of physical host, is expressed as with resource collection R:
R={R1, R2...Rn...RNN ∈ 1,2 ..., N} (1);
Definition type of virtual machine, virtual machine then also can be divided into different type of virtual machine V according to the difference of application resource requirementi Each type of virtual machine ViRequired every resource is different, rI, nRepresent ViThe resource characteristic that type Virtual machine consumes, with physics The resource type of main frame is corresponding,
V={V1, V2...Vi...VmI ∈ 1,2 ..., m} (2)
rI, n={ rI, 1, rI, 2...rI, n...rI, N} n∈{1,2...N} (3);
Definition deploying virtual machine number restrictive condition, a physical host can only be disposed a number of virtual within the same time Machine ki, i ∈ 1,2 ..., N}, kiRepresent ViThe virtual machine number of type Virtual machine, therefore deploying virtual machine number restrictive condition is used Equation below is indicated:
Σi(ki*Vi)≤αiRi, 0 < α < 1 (4)
Substitution, derivation according to definition type of virtual machine then have
&Sigma; n = 1 N ( k i * r i , n ) &le; &alpha; i R i , 0 < &alpha; < 1 - - - ( 5 )
Wherein, αiIt is then correlation coefficient, is used for determining the utilization rate limit of related resource;
Definition only considers the I/O type virtual machine number restrictive condition under I/O resource consumption,
&Sigma; n = 1 N ( k I O * r I O , n ) &le; &alpha; I O R I O , 0 < &alpha; I O < 1 - - - ( 6 )
rIO, nRepresenting the resource characteristic of I/O type virtual machine, n difference represents the parameter difference that I/O resource consumes, kIORepresent reality fortune The virtual machine number of row I/O intensive type application;Represent the virtual machine IO money that physical host can be opened Source;αIORIORepresent the I/O resource of physical host;
Virtual machine number k of actual motion I/O intensive type applicationIORestriction scope determine according to formula (4), (5), (6), in institute State in the range of restriction then this physical host and can receive new I/O intensive type application always, otherwise, then cannot the most newly-built virtual machine, i.e. On this physical host, virtual machine unlatching quantity reaches maximum.
5. the dispatching method of virtual machine of I/O intensive type application under cloud platform as claimed in claim 4, it is characterised in that described IO The maximum critical value N of virtual machine number in efficiency zone of reasonableness of intensive applications is the upper limit of described restriction scope.
6. the dispatching method of virtual machine of I/O intensive type application under cloud platform as claimed in claim 1, it is characterised in that described In step S1, the time that described threshold interval [M, N] processes according to change and the I/O intensive type application of I/O load sets.
7. the dispatching method of virtual machine of I/O intensive type application under cloud platform as claimed in claim 1, it is characterised in that to physics Main frame carries out loading judgement and comprises the following steps:
A1: physical host receives the application of I/O intensive type and runs on the virtual machine opened;
A2: judge EIOWhether >=0 set up;
A3: if setting up, entering step A4, otherwise migrating out a number of virtual machine, enter step A4;
A4: judge EIOWhether=1 set up;
A5: if being false, migrates out a number of virtual machine and returns to step A4, does not the most migrate virtual machine.
8. the dispatching method of virtual machine of I/O intensive type application under cloud platform as claimed in claim 1, it is characterised in that in step In S5 and S6, this physical host is carried out load and judges, work as EIOWhen=-1, virtual machine is moved out.
CN201610021270.XA 2016-01-13 2016-01-13 The dispatching method of virtual machine that I/O intensive type is applied under a kind of cloud platform Expired - Fee Related CN105718310B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610021270.XA CN105718310B (en) 2016-01-13 2016-01-13 The dispatching method of virtual machine that I/O intensive type is applied under a kind of cloud platform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610021270.XA CN105718310B (en) 2016-01-13 2016-01-13 The dispatching method of virtual machine that I/O intensive type is applied under a kind of cloud platform

Publications (2)

Publication Number Publication Date
CN105718310A true CN105718310A (en) 2016-06-29
CN105718310B CN105718310B (en) 2018-09-18

Family

ID=56147860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610021270.XA Expired - Fee Related CN105718310B (en) 2016-01-13 2016-01-13 The dispatching method of virtual machine that I/O intensive type is applied under a kind of cloud platform

Country Status (1)

Country Link
CN (1) CN105718310B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928683A (en) * 2019-11-14 2020-03-27 湖南工业大学 Edge computing resource allocation method based on two types of intensive virtual machines

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070204265A1 (en) * 2006-02-28 2007-08-30 Microsoft Corporation Migrating a virtual machine that owns a resource such as a hardware device
CN103353853A (en) * 2013-07-26 2013-10-16 浪潮电子信息产业股份有限公司 Automatic load adjusting method
CN103473139A (en) * 2013-09-26 2013-12-25 四川中电启明星信息技术有限公司 Virtual machine cluster resource allocation and scheduling method
CN104102523A (en) * 2013-04-03 2014-10-15 华为技术有限公司 Method for migrating virtual machine and resource scheduling platform
CN104375897A (en) * 2014-10-27 2015-02-25 西安工程大学 Cloud computing resource scheduling method based on minimum relative load imbalance degree

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070204265A1 (en) * 2006-02-28 2007-08-30 Microsoft Corporation Migrating a virtual machine that owns a resource such as a hardware device
CN104102523A (en) * 2013-04-03 2014-10-15 华为技术有限公司 Method for migrating virtual machine and resource scheduling platform
CN103353853A (en) * 2013-07-26 2013-10-16 浪潮电子信息产业股份有限公司 Automatic load adjusting method
CN103473139A (en) * 2013-09-26 2013-12-25 四川中电启明星信息技术有限公司 Virtual machine cluster resource allocation and scheduling method
CN104375897A (en) * 2014-10-27 2015-02-25 西安工程大学 Cloud computing resource scheduling method based on minimum relative load imbalance degree

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928683A (en) * 2019-11-14 2020-03-27 湖南工业大学 Edge computing resource allocation method based on two types of intensive virtual machines
CN110928683B (en) * 2019-11-14 2022-01-28 湖南工业大学 Edge computing resource allocation method based on two types of intensive virtual machines

Also Published As

Publication number Publication date
CN105718310B (en) 2018-09-18

Similar Documents

Publication Publication Date Title
Zhang et al. Energy-aware virtual machine allocation for cloud with resource reservation
CN100511151C (en) Multiple-path multiple-core server and CPU virtualization processing method thereof
Kc et al. Scheduling hadoop jobs to meet deadlines
US9405585B2 (en) Management of heterogeneous workloads
Polo et al. Deadline-based MapReduce workload management
Lin et al. Energy-efficient task scheduling for multi-core platforms with per-core DVFS
CN103701886A (en) Hierarchic scheduling method for service and resources in cloud computation environment
CN105912406A (en) Low-energy independent task scheduling and resource configuration method
CN104023042B (en) Cloud platform resource scheduling method
Sharma et al. An improved task allocation strategy in cloud using modified k-means clustering technique
Gandomi et al. HybSMRP: a hybrid scheduling algorithm in Hadoop MapReduce framework
CN104793993A (en) Cloud computing task scheduling method of artificial bee colony particle swarm algorithm based on Levy flight
CN112181620A (en) Big data workflow scheduling method for sensing service capability of virtual machine in cloud environment
Jiang et al. An energy-aware virtual machine migration strategy based on three-way decisions
CN105912383A (en) High-reliability dependent task scheduling and resource configuration method
Emara et al. Genetic-Based Multi-objective Task Scheduling Algorithm in Cloud Computing Environment.
Joshi et al. Evaluating the performance of load balancing algorithm for heterogeneous cloudlets using HDDB algorithm
Biswas et al. A novel resource aware scheduling with multi-criteria for heterogeneous computing systems
Gouasmi et al. Exact and heuristic MapReduce scheduling algorithms for cloud federation
CN107589980A (en) A kind of dispatching method of cloud computing resources
CN105718310A (en) Virtual machine scheduling method for IO dense application under cloud platform
Wang A dynamic resource management in mobile agent by artificial neural network
Qu et al. Improving the energy efficiency and performance of data-intensive workflows in virtualized clouds
Filippini et al. Hierarchical Scheduling in on-demand GPU-as-a-Service Systems
Manekar et al. Optimizing cost and maximizing profit for multi-cloud-based big data computing by deadline-aware optimize resource allocation

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180918

Termination date: 20210113