Cloud Service Orchestration Using Constraint Programming

Detta är en Master-uppsats från KTH/Skolan för informations- och kommunikationsteknik (ICT)

Sammanfattning: Cloud applications and services are frequently built using multiple tiers and current trends such as micro-services further increase componentization, allowing us to place each component in a different physical machine in a distributed cloud. Ericsson owns and manages very large networks, which offer diverse infrastructure in terms of computational power, storage but most importantly position in the network. Typically, a machine which is closer to the edge of the network (closer to the end user) will have limited resources but it will offer less latency, for a higher price. At the same time, several enterprise/industrial areas expect to benefit from the cloud business model in a large-scale distributed environment. These types of applications have very diverse end-2-end Service-Level Agreements (SLA) to be fulfilled, while at the same time the cloud environment needs to optimize processing, storage, and networking costs. Moreover, customers might want to change and adjust SLAs/requirements themselves using selfmanagement portals. The objective of this project is to model the network and services offered by Ericsson. Then, given the SLA, finding a valid solution of the problem, using a constraint solver. A solution is a set of physical machines that host the components the required service is composed from. This approach has many challenges since the same service can be composed from different sets of components. The connected components form a connectivity graph, where nodes in the graph are connected by physical links. But, since the connection is described by higher level components (composed by simpler components), this graph can also be expressed as a tree. Leaves in the tree are the nodes that compose the higher-level services and the ones that must be hosted in the infrastructure. The characteristics of each leaf-node depend on its parent and/or siblings in the component tree. Finally, since the components are normally connected, the physical connection between nodes in the network must be taken into consideration. The proposed model is evaluated in several cases, in order to identify how the number of the software components and the infrastructure topology affect the solution finding. The results are promising, showing fast resolution of the problem instances, varying for each test case, from a few seconds to a couple of minutes.

  HÄR KAN DU HÄMTA UPPSATSEN I FULLTEXT. (följ länken till nästa sida)