Resource allocation system and the method thereof of service based characteristic under distributed cloud framework
Technical field
The present invention relates to the cloud computing field, be specifically related to resource allocation system and the method thereof of service based characteristic under distributed cloud framework.The present invention is applicable to solve under distributed cloud computing environment, has the resource allocation problem of the cloud customer service of different business characteristic.
Background technology
Along with popularizing of cloud computing, increasing user, with the cloud computing platform of business migration to cloud service provider, operates on the virtual machine of cloud computing platform, becomes the cloud user.Cloud service provider is the resources such as its Distribution Calculation, storage, bandwidth, i.e. cloud resource according to the real needs of cloud customer service.These cloud resources form virtual machine, and cloud user's business just operates on these virtual machines.
Cloud computing platform is to consist of a plurality of data centers, and the geographical position of each data center, capacity and resource price are different.Cloud service provider, forms virtual machine by these cloud resources and moves corresponding cloud user's business for it distributes corresponding cloud resource according to cloud user's real needs.
Can the gain factors such as price model of stability, resource utilization and cloud resource of the cloud platform that depends on that it provides of cloud service provider.The research that current cloud resource is distributed mainly concentrates on the angle from cloud computing platform, finds the method that improves the cloud computing resources utilance.
Generally speaking, the research of current cloud resource distribution mainly concentrates on the following aspects:
The first, IaaS(Infrastructure as a Service, infrastructure is namely served) research of the scheduling virtual machine mechanism of level, according to the user, the dynamic change of cloud resource requirement is adjusted dynamically the distribution of virtual machine, thus the utilance of raising cloud resource;
The second, the resource of Priority-based is distributed, and cloud service provider classifies business according to priority, be preferably the high traffic assignments resource of priority, is then the low traffic assignments resource of priority, with this, improves the utilance of resource;
The 3rd, the resource distribution mode of service based amount prediction, in this mode, cloud service provider predicts the required stock number of cloud customer service, the demand of then pressing the cloud customer service is its Resources allocation.
Current resource allocation methods can improve the utilance of resource to a certain extent, and increases the income of cloud service provider.Yet from cloud user's angle, how many incomes are these methods can not bring.Therefore, from the angle research cloud computing resources of cloud service characteristics, distribute, improve the cloud resource utilization, need further research.
Because different cloud users' traffic performance is different, as to the aspects such as resource price, time delay and resource deployment mode require different, in carrying out the cloud resource allocation process, be necessary to carry out according to the characteristic of cloud customer service the distribution of cloud resource, thereby effectively reduce cloud user's cost, realize the maximization of cloud service provider long-term gain.
Summary of the invention
In view of the deficiencies in the prior art, the present invention is different according to the characteristic of cloud customer service, proposes a kind of cloud resource allocation system and method thereof of service based characteristic.
Further, the present invention can obviously reduce different business characteristic cloud user's cost, and realizes the load balancing between different cloud computing data center.
Basic fundamental thinking of the present invention is, utilizes Resource Scheduler to receive cloud user's request, comprises the total amount of the required cloud resource of cloud user and the cloud user description to the own service characteristic; Draw the candidate data centralization according to the state information of cloud computing data center again; Then calculate the cost index of this cloud customer service at the candidate data center; Complete finally the distribution of cloud resource according to cost index and this cloud user's traffic performance.
For achieving the above object, the technical solution used in the present invention is as follows:
The resource allocation system of service based characteristic under a kind of distributed cloud framework, described system comprises:
Resource Scheduler, draw the cloud user cost index of each cloud computing data center relatively according to cloud user's requirement and the state computation of each cloud computing data center, and according to cloud user's demand, for it distributes, dispose virtual machine; Described scheduling of resource module may operate in certain cloud computing data center of cloud computing platform;
Cloud data center condition monitoring process, send the state information of place cloud computing data center to described Resource Scheduler, described cloud data center condition monitoring process is the monitoring process that operates in cloud computing data center;
Data center's block of state, to be used for the module of each cloud computing data center state information of storage in described Resource Scheduler, carry out real-time update according to the state information of cloud computing data center report, comprise the information of time delay estimation, surplus resources and the resource price of cloud computing data center.
A kind of resource allocation system of service based characteristic under distributed cloud framework that utilizes carries out the method that resource is distributed, and said method comprising the steps of:
(1) set up the cloud resource distribution system of service based characteristic; According to the request of described Resource Scheduler reception from the cloud user, according to described cloud data center condition monitoring process, monitor the state of the cloud computing data center at its place, and to described Resource Scheduler report, calculating the cloud user cost index of each cloud computing data center relatively according to the information in described report, is cloud user resource allocation or refusal cloud user's request according to described cost index;
(2) set up the renewal of cloud computing data center block of state; Described cloud data center condition monitoring process is periodically to the state information of Resource Scheduler report place cloud computing data center, and wherein, described state information comprises surplus resources L
k,t, data center's resource price P
k,tAnd the time delay of data center is estimated D
k,t
(3) the cloud user submits cloud resource request R to Resource Scheduler
i(l
i, n
i, c
i), l
i=l
iThe configuration of the required virtual machine of (f, m, h, b) expression cloud user, wherein, f represents dominant frequency, and m represents built-in storage, and h represents hard disk, and b represents bandwidth, n
iThe quantity of the required virtual machine of expression cloud user i, c
i=(s
i, α
i, β
i) traffic performance of expression cloud user i, wherein, s
iThe deployment request of the required virtual machine of expression cloud user i, s
i=1 expression cloud customer requirements virtual machine is concentrated and is deployed in a cloud computing data center, s
i=v, (v>1) expression cloud customer requirements virtual machine is deployed in respectively in v cloud computing data center, α
i, β
i∈ [0,1] represents respectively time delay factor and the Price factor of cloud user i, and the time delay factor of different business is different with Price factor, and is more responsive to time delay or price, α
iOr β
iValue larger;
(4) if the cloud user is s
i=1, execution step (5); If s
i=v, (v>1), execution step (6);
(5) adopting centralized mode is that cloud user i disposes virtual machine, wherein
(5a) described Resource Scheduler is searched described data center block of state, selects and meets cloud user i resource requirement R
i(l
i, n
i) the k of cloud computing data center
*, must meet L
k,t〉=n
il
i, and the candidate collection G of formation user i
i
If (5b) described candidate collection G
i, for empty set, represent currently to there is no enough resources and distribute to user i, the request of described Resource Scheduler refusing user's i, execution step (7); Otherwise calculate described candidate collection G
iIn the cost index T of the relative cloud user i of each cloud computing data center
I, k, t, k ∈ G
i
(5c) select described candidate collection G
iDescribed in cost index T
I, k, tThe minimum k of cloud computing data center
*For cloud user i disposes virtual machine;
(5d) to the surplus resources state L of the cloud computing data center selected
k,tUpgrade execution step (7);
(6) adopting distributed mode is that cloud user i disposes virtual machine, wherein
(6a) described Resource Scheduler is searched described data center block of state, selects and meets cloud user i resource requirement R
i(l
i, n
i) the k of cloud computing data center
*, must meet L
k,t〉=n
il
i/ v, wherein, L
k,tFor surplus resources, n
iThe quantity of the required virtual machine of expression cloud user i, l
iThe configuration of the required virtual machine of expression cloud user, v represents that cloud user i requires virtual machine is deployed in respectively in v cloud computing data center, these cloud computing data centers form the candidate collection G of user i
i
If the cloud computing data center number (6b) in the candidate collection | G
i|<v represents currently to there is no enough cloud computing data centers and meet the resource requirement of cloud user i, the request of Resource Scheduler refusal cloud user i, execution step (7); Otherwise calculate described candidate collection G
iIn the cost index T of the relatively described cloud user i of each cloud computing data center
I, k, t, k ∈ G
i
(6c) at described candidate collection G
iIn choose cost index T
I, k, tV minimum cloud computing data center forms set
In set
In this v cloud computing data center be that cloud user i disposes virtual machine;
(6d) to the surplus resources state L of the cloud computing data center selected
k,tUpgrade, carry out (7);
(7) virtual machine has assigned, and described Resource Scheduler is to described cloud user i feedback allocation result.
What need to further illustrate is that the step of updating in described step (2) comprises:
When the state information of cloud computing data center changed, described cloud data center condition monitoring process read the surplus resources L under current state
k,tAnd resource price P
k,t, then sending to described Resource Scheduler, described Resource Scheduler upgrades the state information of corresponding cloud computing data center in described data center block of state according to the information of receiving;
Described Resource Scheduler is periodically to cloud computing data center transmission delay test signal, and records the answer delay d of this test signal in described data center block of state
k,t, the transmission cycle of test signal is t
d, and also can send a delay testing signal to this cloud computing data center when described Resource Scheduler is received state information from a cloud computing data center.
Need to prove described resource price P
k,tProvided according to the following formula by described cloud data center condition monitoring process:
P
k,t=γ
1P
k+γ
2f(L
k,t)+γ
3g(D
k,t);
Wherein, k represents cloud computing data center numbering, and t represents current time, γ
iFor weight factor, ∑ γ
i=1, P
kBe the basic resources price of the k of cloud computing data center, be definite value, f (L
k,t) and g (D
k,t) be respectively to estimate relevant function with surplus yield and time delay.
Need to prove, the time delay of described cloud computing data center is estimated, as shown in the formula:
Wherein I represents length of window, and namely the average answer delay of I test signal is the estimation time delay of this cloud computing data center recently.
Need to prove described cost index T
I, k, tCalculate according to following formula:
T
i,k,t=α
iD
k,t+β
iP
k,t;
Wherein, α
i, β
i∈ [0,1] represents respectively time delay factor and the Price factor of cloud user i, and the time delay factor of different business is different with Price factor, and is more responsive to time delay or price, α
iOr β
iValue larger; D
k,tAnd P
k,tRepresent respectively t time delay estimation and the resource price of the k of cloud computing data center constantly.
Beneficial effect of the present invention is, solved under distributed cloud computing environment, the resource allocation problem that has the cloud customer service of different business characteristic, obviously reduce different business characteristic cloud user's cost, and realize the load balancing between different cloud computing data center.
Description of drawings
Fig. 1 is system architecture diagram of the present invention;
Fig. 2 is the flow chart of the inventive method.
Embodiment
The invention will be further described below in conjunction with accompanying drawing.
As shown in Figure 1, the present invention is the resource allocation system of service based characteristic under a kind of distributed cloud framework, and described system comprises:
Resource Scheduler 1, draw the cost index of cloud user 2 relative each cloud computing data centers 3 according to cloud user 2 requirement and the state computation of each cloud computing data center 3, and according to cloud user 2 demand, for it distributes, dispose virtual machine; Described Resource Scheduler 1 may operate in certain cloud computing data center 3 of cloud computing platform;
Cloud data center condition monitoring process, send the state information of place data center 3 to described Resource Scheduler 1, described cloud data center condition monitoring process operates in the monitoring process of cloud computing data center 3;
Data center's block of state, to be used for the module of each cloud computing data center 3 state informations of storage in described Resource Scheduler 1, carry out real-time update according to the state information of cloud computing data center 3 reports, comprise the information of time delay estimation, surplus resources and the resource price of cloud computing data center 3.
As shown in Figure 2, the specific embodiment of the invention step is as follows:
(1) set up the cloud resource distribution system of service based characteristic; According to the request of described Resource Scheduler reception from the cloud user, according to described cloud data center condition monitoring process, monitor the state of the cloud computing data center at its place, and, to described Resource Scheduler report, be cloud user resource allocation or refusal cloud user's request according to the information in described report;
(2) set up the renewal of cloud computing data center block of state; Described cloud data center condition monitoring process is periodically to the state information of Resource Scheduler report place cloud computing data center, and wherein, described state information comprises surplus resources L
k,t, data center's resource price P
k,tAnd the time delay of data center is estimated D
k,t
What need to further illustrate is that the step of updating in described step (2) comprises:
When the state information of cloud computing data center changed, described cloud data center condition monitoring process read the surplus resources L under current state
k,tAnd resource price P
k,t, then sending to described Resource Scheduler, described Resource Scheduler upgrades the state information of corresponding cloud computing data center in described data center block of state according to the information of receiving;
Described Resource Scheduler is periodically to cloud computing data center transmission delay test signal, and records the answer delay d of this test signal in described data center block of state
k,t, the transmission cycle of test signal is t
d, and also can send a delay testing signal to this cloud computing data center when described Resource Scheduler is received state information from a cloud computing data center.
(3) the cloud user submits cloud resource request R to Resource Scheduler
i(l
i, n
i, c
i), l
i=l
iThe configuration of the required virtual machine of (f, m, h, b) expression cloud user, wherein, f represents dominant frequency, and m represents built-in storage, and h represents hard disk, and b represents bandwidth, n
iThe quantity of the required virtual machine of expression cloud user i, c
i=(s
i, α
i, β
i) traffic performance of expression cloud user i, wherein, s
iThe deployment request of the required virtual machine of expression cloud user i, s
i=1 expression cloud customer requirements virtual machine is concentrated and is deployed in a cloud computing data center, s
i=v, (v>1) represents cloud customer requirements deploying virtual machine in v cloud computing data center, α
i, β
i∈ [0,1] represents respectively time delay factor and the Price factor of cloud user i, and the time delay factor of different business is different with Price factor, and is more responsive to time delay or price, α
iOr β
iValue larger;
(4) if the cloud user is s
i=1, execution step (5); If s
i=v, (v>1), execution step (6);
(5) adopting centralized mode is that cloud user i disposes virtual machine, wherein
(5a) described Resource Scheduler is searched described data center block of state, selects and meets cloud user i resource requirement R
i(l
i, n
i) the k of cloud computing data center
*, must meet L
k,t〉=n
il
i, and the candidate collection G of formation user i
i
If (5b) described candidate collection G
i, for empty set, represent currently to there is no enough resources and distribute to user i, the request of described Resource Scheduler refusing user's i, execution step (7); Otherwise calculate described candidate collection G
iIn the cost index T of the relative cloud user i of each cloud computing data center
I, k, t, k ∈ G
i
(5c) select described candidate collection G
iDescribed in cost index T
I, k, tThe minimum k of cloud computing data center
*For cloud user i disposes virtual machine;
(5d) to the surplus resources state L of the cloud computing data center selected
k,tUpgrade execution step (7);
(6) adopting distributed mode is that cloud user i disposes virtual machine, wherein
(6a) described Resource Scheduler is searched described data center block of state, selects and meets cloud user i resource requirement R
i(l
i, n
i) the k of cloud computing data center
*, must meet L
k,t〉=n
il
i/ v, wherein, L
k,tFor surplus resources, n
iThe quantity of the required virtual machine of expression cloud user i, l
iThe configuration of the required virtual machine of expression cloud user, v represents that the cloud customer requirements is deployed in virtual machine respectively in v cloud computing data center, these cloud computing data centers form the candidate collection G of user i
i
If the cloud computing data center number (6b) in the candidate collection | G
i|<v represents currently to there is no enough cloud computing data centers and meet the resource requirement of cloud user i, the request of Resource Scheduler refusal cloud user i, execution step (7); Otherwise calculate described candidate collection G
iIn the cost index T of the relatively described cloud user i of each cloud computing data center
I, k, t, k ∈ G
i
(6c) at described candidate collection G
iIn choose cost index T
I, k, tV minimum cloud computing data center forms set
In set
In this v cloud computing data center be that cloud user i disposes virtual machine;
(6d) to the surplus resources state L of the cloud computing data center selected
k,tUpgrade, carry out (7);
(7) virtual machine has assigned, and described Resource Scheduler is to described cloud user i feedback allocation result.
Need to prove described resource price P
k,tProvided according to the following formula by described cloud data center condition monitoring process:
P
k,t=γ
1P
k+γ
2f(L
k,t)+γ
3g(D
k,t);
Wherein, k represents cloud computing data center numbering, and t represents current time, γ
iFor weight factor, as ∑ γ
i=1, P
kBe the basic resources price of the k of cloud computing data center, be definite value, f (L
k,t) and g (D
k,t) be respectively to estimate relevant function with surplus yield and time delay.
Need to prove, the time delay of described cloud computing data center is estimated, as shown in the formula:
Wherein I represents length of window, and namely the average answer delay of I test signal is the estimation time delay of this cloud computing data center recently.
Need to prove described cost index T
I, k, tCalculate according to following formula:
T
i,k,t=α
iD
k,t+β
iP
k,t;
Wherein, α
i, β
i∈ [0,1] represents respectively cloud user i time delay factor and Price factor, and the time delay factor of different business is different with Price factor, and is more responsive to time delay or price, α
iOr β
iValue larger; D
k,tAnd P
k,tRepresent respectively t time delay estimation and the resource price of the k of cloud computing data center constantly.