2015 IEEE 8th International Conference on Cloud Computing
MILP-based Approach for Efficient Cloud IaaS Resource Allocation Khaled Metwally, Abdallah Jarray, Ahmed Karmouch SITE, University of Ottawa, Ottawa, Canada Email:
[email protected],
[email protected],
[email protected]
resource limitations. Notably, network resources significantly impact the datacenter performance as well. Therefore, applying virtualization techniques on servers and network elements is urgently required to bridge the management gap between networking and computing resources [3]. Accordingly, overcome datacenter resource management deficiency [4]. This paper presents an efficient management solution for datacenters. The solution aimed to manage the convergence of cloud resources and network resources and improve the datacenter’s poor resource utilization. Our solution adopted a unified Virtual Resource (VR) model defined in [5] in abstracting the physical resources and generating a VRs repository. A combined controller is defined to manipulate the VRs in the repository. In addition, an IaaS resource allocation model that works as a part of the management approach is presented. The proposed model employs two fundamental concepts in allocating the requested resources efficiently; semantic similarity integrated with closeness centrality. These integrated concepts are jointly formulated as a two-phased Mixed Integer Linear Program (MILP-2P-IaaS): (i) mapping of hosting resources and (ii) connectivity composition. Our contribution is twofold: • Unification of management for datacenter resources, e.g. compute, storage, and network. This unification achieved through adopting a unified VR model in creating a generalized Virtual Resource Pool (VRP). Also, it renders a combined controller for optimizing cloud and networking resource allocation operations. • Formulation of an optimization model for IaaS resource allocation based on a Mixed Integer Linear Programming model in two phases (MILP-2P-IaaS). The remainder of this paper is organized as follows. Section II presents some of the related work. Section III discusses the MILP-2P-IaaS resource allocation approach. Section IV presents the MILP-2P-IaaS model formulation. Section V discusses the simulation environment and performance evaluation. Section VI concludes the paper and presents future research directions.
Abstract—Current datacenter designs suffer from poor resource utilization. Several research works have addressed the datacenter resource allocation problem, and recent proposals have focused on network resource utilization as a bottleneck problem in datacenters. However, little attention has been paid to manage the convergence of networking and other infrastructure resources. In this paper, we present a solution for improving datacenter’s resource utilization. We introduce a unified cloud resource representation model and build a general resources repository using that model. We define a combined controller to manipulate infrastructure resources collected in the repository. A joint optimization model that performs the resource allocation as the main controller operation is also presented. This model represents the integration of semantic similarity and closeness centrality concepts and is formulated on a two-phase Mixed Integer Linear Programming (MILP-2P-IaaS): (i) mapping of hosting resources, and (ii) connectivity composition. Simulation results show that the (MILP-2P-IaaS) resource allocation approach improves datacenter’s resource utilization and outperforms other benchmarks in terms of resource utilization and acceptance ratio. Index Terms—Network Virtualization, Resource Management, Cloud IaaS, Resource Allocation, Semantic Similarity, Closeness Centrality, MILP.
I. I NTRODUCTION Cloud computing has proven its flexibility by incorporating many technologies and concepts such as virtualization, service-oriented architecture (SOA), and ”as-a-service” paradigm. Consequently, cloud computing has proven its superiority to preceding computing paradigms such as cluster and grid computing [1]. With the growing popularity of cloud service model and development of new intensive computational models like MapReduce [1], have led to an increased demand for cloud Infrastructure-as-a-Service (IaaS) services. These models demand large resources and utilize cloud computing infrastructures for storing and processing large sets of data [2]. In addition, most of these computationally intensive applications require networking between their components, resulting in the need for managing the convergence between cloud infrastructure and networking resources [3]. Absence of network bandwidth guarantees from popular infrastructure providers such as Amazon EC2 affects the provisioned services overall performance and impacts the their revenue [2]. Currently, infrastructure providers deploy datacenters as the mainstream hosting platform for cloud resources and their services [1]. Furthermore, employing server virtualization technologies alone are insufficient in addressing datacenter 2159-6190/15 $31.00 © 2015 Crown Copyright DOI 10.1109/CLOUD.2015.152
II. R ELATED W ORK In literature, many proposals addressed the resource allocation problem of interconnected resources constrained by availability and capacity. In this context, resource allocation of the interconnected resources shares many similarities with the traditional virtual network embedding problem (VNE). VNE aimed to embed a virtual network request composed 1058
of virtual nodes and virtual links into the substrate network. In [6], the authors proposed a topology-aware VN embedding and re-optimization exploiting migration approach. It is worth mentioning that most of the (VNE) proposal focused on CPU and network resources. In [7], the authors proposed using a heuristic-based energy-aware datacenter resource allocation to client applications, by applying live migration. These researchers aimed at improving the datacenter’s energy efficiency, while delivering the requested Quality of Service (QoS), and increasing the providers profit. In [8], the authors proposed a Virtual Data Center (VDC) Planner as a migrationaware dynamic virtual datacenter embedding framework. This proposal aimed at achieving high revenue while minimizing the total energy cost over time. The authors considered the migration cost in their resource allocation approach. In addition, they intended to increase the provider revenue, decrease the scheduling delay, and save energy by applying the migration concept in the VDC embedding problem. In [9], the authors presented CloudNaaS, a network service platform that enables enterprises to host applications in the cloud. Their research focused on controlling the network functions needed to run in IaaS clouds. The authors achieved their research adopting software-defined networking techniques. Furthermore, the authors employed a bin-packing heuristic (first-fit decreasing) to optimize the placement of VMs and the virtual network segments. CloudNaaS can be considered as a sort of cooperation management between cloud controller and network controller. III. MILP-2P-I AA S R ESOURCE A LLOCATION A PPROACH The unified VR model defined in [5] represented the virtual resource as follows. Let V R = (P, S, I) be a virtual resource, P represents a set of functional and non-functional parameters that describes the resource, e.g., CPU, memory, storage, and bandwidth, S is a service attribute that defines the provisioned service e.g. compute, storage, and networking, and I is the set of interfaces that represents the networking connectivity of one VR with others. All the datacenter’s diverse resources are abstracted following this model and respecting the defined QoS classes. Thus, collecting the abstracted VRs creates the VRP. Existence of VRP that contains different QoS classes leads to variant granularities of VRs in the pool. The VR granularity is defined by an upper/lower bound on CPU, memory, and storage for each QoS class. Slicing the physical resources into VRs ensured the uniform treatment of CPU, memory, and storage as a bundle encapsulated into VR with different granularities. This VRP represents all the available virtual resources in the datacenter. So, virtual machine, virtual disk, and virtual switch are treated uniformly as a virtual resource. The combined controller is responsible for creating and managing the generated VRP. The matching between the requested resources and the available resource in VRP has been evaluated using a semantic similarity evaluation [10]. Semantic similarity ensures that a matching result occurs and leads to an increase in resource allocation accuracy. The degree of similarity is normalized,
ranging from 1 for an exact match to 0 for disjoint. Semantic similarity is mathematically represented as follows: a−b Sim(a, b, c) = 1 − (1) M axc − M inc where, a and b are numeric values and c is the VR attribute (i.e. CPU, memory, and storage). In order to confirm managing the convergence of cloud and networking resources, closeness centrality evaluation [11] has been integrated with the semantic similarity. Closeness centrality is widely used in complex network analysis for evaluating the importance of a node in the network graph [11]. The mathematical representation of closeness centrality is as follows: 1 Cc (ni ) = N (2) j=1 d(i, j) We adapted Eq. (2) to fit our approach interpretation in two ways: (1) the closeness of one candidate VR to other candidates’ VRs in the same request for Phase-1, and (2) in terms of the shortest path between the mapped resources in the solution space in Phase-2. Creating the VRP is a preparatory step achieved prior to when the resource allocation approach starts its operation. As soon as the pool is ready, the composer starts to serve the request by executing Phase-1, the mapping of hosting resources phase. In this phase, the composer discovers and maps the required resources from the VRP using the integration of semantic similarity and closeness centrality concepts. This step aims to optimize the selection of the requested resources. Once the composer finished mapping the required resources, Phase2, the connectivity composition phase immediately starts. In this phase, the composer establishes the connectivity paths between the successfully mapped resources in Phase-1, by allocating the appropriate network. A served IaaS request is counted when it passes the two phases successfully. IV. MILP-2P-I AA S F ORMULATION The proposed approach has been formally defined as a Mixed Integer Linear Program (MILP) and is working on the created VRP denoted by V . In this work, solving this MILP model achieves the optimal resource allocation in the datacenter. The work achieved by this approach is accomplished in two phases. A. Phase-1: Mapping of Hosting Resources In Phase-1, the integration between the similarity evaluation in Eq. (1) with the closeness evaluation in Eq. (2) is achieved as follows. When considering a set of IaaS requests denoted by N , each request n ∈ N asks for a set of resources represented by r ∈ R. The created pool V represents the available free virtual resources and each resource v ∈ V is described with having a set of attribute a ∈ A (e.g., CPU, memory, storage, bandwidth). The total capacity of each virtual resource from attribute a is defined by Cva and is limited by the physical hosting resource capacity. The customer requested qra units of the attribute a from resource r. To decide on the mapping
1059
of a resource and the closeness between resources in the pool, the following decision variables are defined: • xrv = 1, if virtual resource v is mapped to the requested resource r and 0 otherwise. • ysd = 1, if a shortest path between resource s and d is selected and 0 otherwise. The mapping of hosting resources phase model can be defined as follows: Objective function: qra − cva ∗ xrv Evalrv = M ax. 1 − M axa − M ina r∈R v∈V 1 ∗ ysd , ∀n ∈ N + ds,d (3)
•
ysd − xis .xjd 0, ∀s, d ∈ V × V, ∀i, j ∈ R × R •
B. Phase-2: The Connectivity Composition As soon as Phase-1 finished, Phase-2 receives the mapped VRs from Phase-1 as an input, and starts allocating resources for the connectivity path between the mapped resources respecting the customers QoS requirements. Consider the situation where a request n is given with requested bandwidth bn as QoS constraint. Each link l in the network topology has a total capacity of Bl . This capacity is updated after each successful path composition. After the completion of Phase-1, a set of requested connections k is generated among the successfully mapped resources. It is necessary to map these connections on a set of generated shortest paths p. In order to decide on a successful path composition, the following decision variable was defined: p • zk is a binary decision variable indicating whether the connection k is assigned to path p or not. The connectivity composition phase model can be defined as follows: Objective function: 1 p f = M ax. .z (11) cp k
v∈V
k∈K p∈P
Assignment constraints: A virtual resource v is assigned to only resource r in request n. xrv 1, ∀v ∈ V (6)
where cp represents the number of hops in path p. Constraints: • Connection satisfaction constraint: Ensure a unique allocation for each connection. p zk 1, ∀k ∈ K (12)
r∈R
Capacity Constraints: Requested resource r capacity from attribute a doesn’t exceed the capacity of the virtual resource v from attribute a. xrv ∗ qra cva , ∀v ∈ V, ∀a ∈ A (7)
p∈P •
r∈R •
Connectivity path length constraint: Connectivity path length should not exceed the defined value. ysd .dsd , ∀s, d ∈ V × V, s = d
Path satisfaction constraint: Ensure that a unique path is selected. ysd 1, ∀r ∈ R, s = d (10)
Where dsd in Eq. (8) represents the shortest distance between resources s and d, while is altered to generate the entire optimal set. At the end of mapping the hosting resources phase, a set of VRs, which satisfy part of the request, are reserved in a mapping list and feed to Phase-2. The request is considered as partially satisfied.
Constraints: • Assignment constraints: A resource r is assigned to only virtual resource v. xrv 1, ∀r ∈ R (5)
•
(9)
s∈V d∈V
where, M axa and M ina are the maximum and minimum values of the VR attributes (CPU, memory, and storage) bounded by physical server capacity. The first term represents the semantic similarity and the second term represents the closeness centrality. It is clear that Phase-1 model has a multi-objective function that the given formulation aimed to solve. We adopted the -constraint method to solve the multi-objective function. To apply the -constraint, the first term representing the semantic similarity was selected as the primary objective, and the closeness centrality term was turned into a set of bounded constraints. Objective function: qra − cva ∗ xrv Evalrv = M ax. 1 − M axa − M ina r∈R v∈V 1 ∗ xrv , ∀n ∈ N, Sn ⊂ V + j∈Sn dv,j (4)
•
Connectivity path and virtual resources Linking constraint: Ensure that each allocated path ysd is represented by only two virtual resources xis and xjd as source and destination.
Links capacity constraint: Total allocated bandwidth on link l for all requested connections k should not violate the link capacity. bk .zkp .δlp Bl , ∀l ∈ L (13) k∈K p∈P
(8)
where :
1060
δlp
= 1, if path p uses link l and 0 otherwise.
By the end of this phase, the request is completely satisfied, and the infrastructure is completely composed and delivered to the customer. Proper mapping for the requested resources in Phase-1 leads to overall efficient resource usage and a high acceptance ratio. V. N UMERICAL R ESULTS In this section, the efficiency of our MILP-2P-IaaS approach is evaluated via simulation. The setting of the conducted simulation is given, along with a description of the experiments, the evaluated performance metrics, and as well, the obtained results. Figure 1. IaaS Requests Acceptance
A. Simulation Settings The simulation environment was established with a datacenter comprised of 80 physical machines, 4 top-of-rack switches, 4 aggregate switches, and 2 core switches. The used intra-datacenter network topology is the VL2 topology as described in [12], which provided a full bisection bandwidth in the datacenter network. IaaS requests are generated randomly following a uniform distribution covering three defined QoS classes: gratis, middle, and production [13]. In order to assess the performance of the proposed model under a bulk of IaaS requests, the periodical approach was followed in processing the arrived IaaS requests [14]. In each period, random number of IaaS requests arrived the composer to be served. Thus, the period length is variable and defined based on a random number of the received requests. Meanwhile, a random number of IaaS requests leave the system. The composer guarantees the reserved resources for the running requests from previous periods during the requests’ durations. An IaaS request is modeled in an abstract way as a set of VRs that are connected to a virtual switch by a bidirectional link with specific capacity [15]. Solving the proposed MILP model is carried out using IBM CPLEX solver on the designed datacenter [16]. B. Benchmarks To better illustrate the efficiency of the MILP-2P-IaaS model, the performance evaluation is carried out against the following two-well known heuristics benchmarks: •
•
Oktopus [15]: proposed a simple virtual network abstraction called virtual cluster (VC) model. On this model, all the VMs are connected to a virtual switch with fixed bandwidth links and a performance guarantee. VC allocation was carried out by a designed greedy allocation algorithm. SecondNet [17]: proposed a virtual datacenter (VDC) as the unit of resource allocation. VDC allocation was carried out using bipartite graph and min-cost network flow methods.
These benchmarks used the same simulation environment settings and followed the periodical approach in serving the received requests.
Figure 2. CPU Utilization
C. Performance Evaluation Metrics To quantify the performance of the MILP-2P-IaaS approach, the following performance metrics are measured: • Acceptance ratio: calculated as the ratio of accepted IaaS requests to their overall submitted requests. • Datacenter’s resource utilization: measured as the ratio between the used resources (CPU, memory, storage, and bandwidth) to their overall capacity in the datacenter. D. Evaluation Results Through extensive experiments, the IaaS requests acceptance ratio was evaluated among SecondNet and Oktopus. Figure 1 shows the average acceptance ratio for IaaS requests vs. the allocation time periods. As expected, it was observed that our MILP-2P-IaaS outperformed benchmarks Oktopus and SecondNet. The MILP-2P-IaaS approach achieved, on average, a 25% higher acceptance ratio than the benchmarks. Moreover, figures 2, 3 and 4 presented the percentage of CPU, storage, and bandwidth utilization vs. the allocation time periods, respectively. These figures confirmed the efficient resource utilization of our MILP-2P-IaaS on benchmarks. As a result of the high acceptance ratio, MILP-2P-IaaS showed a higher utilization level in CPU closer to Oktopus, as illustrated in figure 2. In figures 3 and 4 the results showed the superiority
1061
model, it is challenged by a scalability limitation and high running time. So, in future work, we plan to address these challenges by formulating our resource allocation approach to work in large datacenters using large-scale optimization techniques. R EFERENCES
Figure 3. Storage Utilization
Figure 4. Bandwidth Utilization
of the MILP-2P-IaaS model in terms of storage and bandwidth utilization. The results, as evident when viewing these curves, confirmed the MILP-2P-IaaS approach expectation in term of resource usage efficiency. The results ensured the stability of our MILP-2P-IaaS model in resource utilization levels, particularly with a high acceptance ratio. VI. C ONCLUSION AND F UTURE W ORK Cloud computing provides a promising solution for hosting and serving intensive computational models and highperformance applications. In this paper, an integrated solution for improving datacenter’s poor resource utilization was presented. This solution comprised on a unified representation of VRs in a generalized VRP, a combined controller for resource manipulation, and a MILP formulation for an efficient IaaS resource allocation named MILP-2P-IaaS. The presented MILP-2P-IaaS model is characterized by integrating semantic similarity with closeness centrality for efficient resource management. Furthermore, it ensured the convergence management of networking and computing resources in the VRP by adopting a unified VR model and defining a combined management entity. Extensive experimental results showed the superiority of the presented IaaS resource allocation approach over the benchmarks in terms of resource utilization and acceptance ratio. Despite the optimal solution that assured by the MILP
[1] R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, and I. Brandic, “Cloud computing and emerging IT platforms: Vision, hype, and reality for delivering computing as the 5th utility,” Future Generation Computer Systems, vol. 25, no. 6, pp. 599 – 616, 2009. [2] A. Ahmed, Z. M. Faten, L. Rami, B. Raouf, and P. Guy, “Greenhead: Virtual data center embedding across distributed infrastructures,” IEEE Transactions on Cloud Computing, vol. 1, no. 1, January-June 2013. [3] Q. Duan, Y. Yan, and A. Vasilakos, “A survey on service-oriented network virtualization toward convergence of networking and cloud computing,” Network and Service Management, IEEE Transactions on, vol. 9, no. 4, pp. 373–392, December 2012. [4] M. F. Bari, R. Boutaba, P. R. R. Esteves, L. Granville, M. Podlesny, M. G. Rabbani, Q. Zhang, and M. Zhani, “Data center network virtualization: A survey.” IEEE Communications Surveys and Tutorials, vol. 15, no. 2, pp. 909–928, 2013. [5] K. M. Metwally, A. Jarray, and A. Karmouch, “Two-Phase ontologybased resource allocation approach for IaaS cloud service,” in 2015 12th Annual IEEE Consumer Communications and Networking Conference (CCNC) (CCNC 2015), Las Vegas, USA, Jan. 2015. [6] N. Farooq Butt, M. Chowdhury, and R. Boutaba, “Topology-awareness and reoptimization mechanism for virtual network embedding,” in Proceedings of the 9th IFIP TC 6 International Conference on Networking, ser. NETWORKING’10. Berlin, Heidelberg: Springer-Verlag, 2010, pp. 27–39. [7] A. Beloglazov, J. Abawajy, and R. Buyya, “Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing,” Future Generation Computer Systems, vol. 28, no. 5, pp. 755 – 768, 2012, special Section: Energy efficiency in large-scale distributed systems. [8] M. Zhani, Q. Zhang, G. Simon, and R. Boutaba, “Vdc planner: Dynamic migration-aware virtual data center embedding for clouds,” in Integrated Network Management (IM 2013), 2013 IFIP/IEEE International Symposium on, May 2013, pp. 18–25. [9] T. Benson, A. Akella, A. Shaikh, and S. Sahu, “Cloudnaas: A cloud networking platform for enterprise applications,” in Proceedings of the 2Nd ACM Symposium on Cloud Computing, ser. SOCC ’11. New York, NY, USA: ACM, 2011, pp. 8:1–8:13. [10] K. M. Sim, “Agent-based cloud computing,” IEEE Transactions on Services Computing, vol. 5, no. 4, pp. 564–577, 2012. [11] Z. Wang, Y. Han, T. Lin, Y. Xu, S. Ci, and H. Tang, “Topology-aware virtual network embedding based on closeness centrality.” Frontiers of Computer Science, vol. 7, no. 3, pp. 446–457, 2013. [12] A. Greenberg, J. R. Hamilton, N. Jain, S. Kandula, C. Kim, P. Lahiri, D. A. Maltz, P. Patel, and S. Sengupta, “Vl2: A scalable and flexible data center network,” in Proceedings of the ACM SIGCOMM 2009 Conference on Data Communication, ser. SIGCOMM ’09. New York, NY, USA: ACM, 2009, pp. 51–62. [13] J. W. Charles Reiss, “Google cluster-usage traces: format+schema,” Tech. Rep., 2011. [14] A. Jarray and A. Karmouch, “Periodical auctioning for qos aware virtual network embedding,” in Quality of Service (IWQoS), 2012 IEEE 20th International Workshop on, June 2012, pp. 1–4. [15] H. Ballani, P. Costa, T. Karagiannis, and A. Rowstron, “Towards predictable datacenter networks,” in Proceedings of the ACM SIGCOMM 2011 Conference, ser. SIGCOMM ’11. New York, NY, USA: ACM, 2011, pp. 242–253. [16] “IBM ILOG CPLEX Optimizer,” http://www-01.ibm.com/software/ integration/optimization/cplex-optimizer/, Last visited: July 2014. [17] C. Guo, G. Lu, H. J. Wang, S. Yang, C. Kong, P. Sun, W. Wu, and Y. Zhang, “Secondnet: a data center network virtualization architecture with bandwidth guarantees.” in CoNEXT, J. C. de Oliveira, M. Ott, T. G. Griffin, and M. Mdard, Eds. ACM, 2010, p. 15.
1062