Simplifying Cloud Instance Selection Using Machine Learning
Total Page:16
File Type:pdf, Size:1020Kb
Daleel: Simplifying Cloud Instance Selection Using Machine Learning Faiza Samreen, Yehia Elkhatib, Matthew Rowe, and Gordon S. Blair School of Computing and Communications, Lancaster University, United Kingdom Email: [email protected] Abstract—Decision making in cloud environments is quite DigitalOcean challenging due to the diversity in service offerings and pricing HP Cloud Compute models, especially considering that the cloud market is an Instance_Type General Purpose incredibly fast moving one. In addition, there are no hard Memory Intensive Google Compute Engine CPU Intensive and fast rules; each customer has a specific set of constraints I/O Optimised Other Types (e.g. budget) and application requirements (e.g. minimum Microsoft Azure computational resources). Machine learning can help address some of these complicated decisions by carrying out customer- IaaS Provider RackSpace specific analytics to determine the most suitable instance Joyent Compute type(s) and the most opportune time for starting and/or migrating instances. In this paper, we employ machine learning Amazon EC2 techniques to develop an adaptive deployment policy tailored 0 10 20 30 for each customer, providing an optimal match between their Number of Instance Types demands and the available cloud service offerings. We provide an experimental study based on extensive set of job executions Figure 1. The number of instance types offered by the major IaaS vendors, th over a major public cloud infrastructure. as of 25 of August 2015. 1. Introduction In this paper we present Daleel, a multi-criteria adaptive decision making framework that is developed to find the The Infrastructure-as-a-Service (IaaS) ecosystem is optimal IaaS deployment strategy. In this paper, we take a evolving so rapidly that it is becoming increasingly difficult first step by focusing on one CSP in order to answer the to select the best resources to use. It is a composite decision question: Which instance type and what time(s) are best for that every customer is faced with: a given customer application?. After gathering the profiling • Which provider should she choose? evidence, we employ machine learning techniques to gain • What instance type(s) would provide her with the insight into the expected performance of an application on cost:performance ratio that suits her needs? the calibrated CSP. Multivariate polynomial regression is • Does the time or day at which she requests these used for predicting application behaviour on certain IaaS resources affect how her application runs? configuration. A customer has to choose between dozens of different Our contributions are as follows: instance types, as illustrated in Figure 1. Moreover, the • The Daleel framework that supports adaptive de- answers to the above questions are highly subjective; each cision making in IaaS environments. We consider customer application needs careful consideration of its re- two QoS attributes as criteria: instance price and quirements against the various market offerings. Further application execution time. complications are manifested due to the disparate pricing • An extensive analysis of variability of Amazon EC2, models adopted by different cloud service providers (CSPs). a leading IaaS CSP. We use more than 5,000 appli- As such, a customer entering the cloud market is over- cation runs for this purpose. whelmed with a host of difficult questions without much • Utilisation of different machine learning techniques of a support system for such decision making. to evaluate Daleel’s ability to predict application We argue that we can help answer many of the afore- execution time on the EC2 cloud. mentioned questions about cloud infrastructure setup in a systematic and evidence-based manner. This is not only to The rest of the paper is organised as follows. x2 reviews assist customers entering the market, but also to provide related work. x3 details the Daleel architecture. x4 presents guidance to those wishing to migrate deployments between the outcomes of a large-scale study into the variability of CSPs to enhance Quality of Service (QoS), reduce cost, or to IaaS offerings. x5 evaluates our learning approach using data honour other non-functional requirements (e.g. legislation, collected from EC2 deployments. x6 concludes and points disaster recovery, business continuity). out avenues of future work. 2. Related Work 3. Daleel 2.1. Application Management Frameworks Daleel15 is a multi-criteria adaptive decision making framework. It equips a cloud customer with evidence-based knowledge of the IaaS setup specification that is optimal for A number of frameworks have been developed by indus- their particular application. try and open source communities to act as an intermediary between cloud customers and providers. These, sometimes referred to as cloud brokers, carry out some task on behalf of 3.1. Architecture the customer such as arbitrage, aggregation and integration. We classify such frameworks as either hosted or deployable. Hosted services are externally managed by third-party stake- s n holders and do not provide information about how the appli- r t o e e n i t i t t a m a e r cation is being provisioned across the cloud. Examples in- o c t i n t l s s g i p 1 2 Customer n u p V o clude RightScale cloud portfolio management , enStratus , C C xStream3 and CliQr4. In contrast, deployable services rely A on open source solutions that could be operated internally by Application Performance a corporation or externally as a grey-box integrated service. t n Analysis Planning r Trigger 5 6 7 8 o i o Brooklyn , Scalr , Standing Cloud and Aelous are some s p i Actuator c p e examples. u S D Learning The solutions mentioned thus far tackle interoperabil- ity to reduce application deployment, but do not support o i l o adaptive decision making. This feature is still largely lack- P f S t s r C c i o r ing from cloud brokerage solutions, although some ef- P t e forts have started to surface in the wider cloud computing DALEEL M Knowledge Base community, e.g. STRATOS [1], CELAR9, MODACloud10, Cloud4SOA [2], mOSAIC11, ARTIST12, Broker@Cloud13, 14 Cloud and PlanForCloud . We conjecture that there is still a long Infrastructure way to go in terms of providing dynamic decision making that can effectively optimise to the specific functional and non-functional requirements on a per-application basis. Figure 2. The Daleel Architecture. 2.2. Machine Learning Daleel’s architecture (depicted in Figure 2) consists of three main modules: Decision Support, Actuator, and Knowledge Base. The Decision Support module is at the Machine learning can contribute immensely by taking heart of the Daleel architecture and it relies on a three appropriate decisions to cater to specific application re- phase process that continuously operates throughout the quirements. Machine Learning has proved its potential for application life cycle to predict application performance. producing prediction and optimisation solutions in various These phases are: Analysis, Learning, and Planning. They fields [3], [4]. It has also been applied in cloud computing carry out different but complimentary operations to acquire towards resource scaling [5], forecasting [6], and dynamic deep knowledge of the available cloud deployment options resource provisioning [7], [8], [9]. We aim to apply a similar and how suitable they are to a given application. The Act- methodology but for the benefit of cloud customers selecting uator triggers the Decision Support module into operation. between different IaaS resources. The Knowledge Base holds data collected by the Decision Support module. 1. http://www.rightscale.com/cloud-portfolio-management/benefits The application vignette is a short set of key-value pairs 2. http://www.enstratius.com/ provided by the customer that serve as a high level de- 3. http://www.virtustream.com/solutions 4. http://www.cliqr.com scription of the application requirements. The customer con- 5. https://brooklyn.incubator.apache.org/ straints include the customer’s functional and non-functional 6. http://www.scalr.com/ requirements such as minimum QoS, availability, location, 7. http://www.standingcloud.com/ and budget. A CSP’s portfolio contains data that we obtain 8. http://www.aeolus-project.org/ (through APIs and web scraping) on their resource provi- 9. http://www.celarcloud.eu/ sioning levels, resource metadata, and pricing models. 10. http://www.modaclouds.eu/ We now describe how the three Decision Support phases 11. http://www.mosaic-cloud.eu/ 12. http://www.artist-project.eu/ and the Actuator module work. 13. http://www.broker-cloud.eu/ 14. http://www.planforcloud.com/ 15. Daleel means ‘guide’ in Urdu. 3.2. Analysis Phase multi-criteria techniques while considering more than two QoS attributes. The first stage comprises of a profiling procedure that is based on time series analysis. Application profiling is 3.5. The Actuator an effective way of tracking application behaviour under different deployment setups. This can be carried out live on The Actuator triggers the Decision Support module into shared cloud infrastructures (whether public or private), or operation at different times. This could be based on thresh- offline in a completely controlled and isolated virtual envi- olds set according to the customer constraints on application ronment. The obtained traces record different metrics such QoS, application load, or Knowledge Base information (e.g. as CPU utilisation, memory utilisation, paging and caching change in a provider’s portfolio). Such triggers will launch information etc. Together these constitute the application new Analysis and Learning cycles, or will activate the Plan- profile that can be used to predict deployment options that ning logic to begin migration to a new cloud infrastructure. can suit the application and customer requirements. Migration between different cloud infrastructures is a big Aggregating different application profiles builds up the challenge in its own right and is outside the boundaries Knowledge Base with information about application descrip- of this work.