Cloud Capacity Planning Based on Simulation and Genetic Algorithms

Please download to get full document.

View again

of 15
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Similar Documents
Information Report
Category:

Concepts & Trends

Published:

Views: 0 | Pages: 15

Extension: PDF | Download: 0

Share
Description
Reducing spending on information technology is one important area that enable enterprises to reduce cost. One area where this can be done is to use cloud computing. Cloud computing key benefits include scalability, instant provisioning, virtualized
Tags
Transcript
  Cloud Capacity Planning Based on Simulationand Genetic Algorithms Riyadh A. K. Mehdi ( & ) and Mirna Nachouki Ajman University, Ajman, UAE {r.mehdi,mirna}@ajman.ac.ae Abstract.  Reducing spending on information technology is one important areathat enable enterprises to reduce cost. One area where this can be done is to usecloud computing. Cloud computing key bene fi ts include scalability, instant provisioning, virtualized resources, and cost effectiveness. There are different ways to deploy cloud resources such as public, private, and hybrid cloud.Business requirements determine the best deployment model to use. In thiswork, we have built a simulation model based on genetic programming to  fi ndthe optimal combination of private and public cloud resources to satisfy apattern of demand over the planning period as well as the optimal guaranteedservice level. Our main  fi ndings is that the optimal level of private computingcapacity depends to a large extent on the shape of the demand curve, negativeexponential or normally for example. Variations in demand within the samefamily of demand distributions have a very small effect on capacity for the samemean demand over the planning period but signi fi cant impact on capacity uti-lization and cost. The distinguishing feature of our model is that it can handleany theoretical or an ad hoc demand probability distribution. In addition, our computational scheme allows for any random variation in any of the parametersaffecting the total cost of cloud resources consumed as long as this variation canbe described by an estimated parametric or empirical probability density func-tion. In addition, the model can be easily modi fi ed to determine the optimal totalcost with respect to any parameters that can be used as decision variables. Theaccuracy and correctness of the model was tested against results obtained from amathematical model based on an exponential probability distribution withalmost identical results. Keywords:  Cloud costing    Cloud pricing    Optimal cloud deployment    Cloud cost optimization    Genetic programming 1 Introduction Cloud computing has resulted in a paradigm shift in the way computing services areprocured and used. Cloud computing services are provided as a utility service over thenetwork. The srcin of the term Cloud computing is inspired by the cloud symbolwhich is often used to represent the Internet in diagrams. Originally, it was used toindicate that a service and/or resource is delivered over the internet. This technology,which is an internet-based computing, started in late 2007 [1]. It allows sharing various ©  Springer Nature Switzerland AG 2020Y. Bi et al. (Eds.): IntelliSys 2019, AISC 1037, pp. 160 – 174, 2020.https://doi.org/10.1007/978-3-030-29516-5_13  services and resources such as databases, storage, servers, applications, etc. in a  fl exibleand dynamic way with a minimal management effort [2].Many de fi nitions have been given to cloud computing in different ways. Cloudcomputing allows business customers to plan for their provision and to raise their resources when needed [3]. Islam et al. de fi ned cloud computing as a set of applica-tions, hardware and system software aimed to deliver good quality of services to theend user through the use of the internet [4].Cloud Computing has two types of cloud models: Service models and Deployment models. The type of services offered by the cloud categorizes the service models; howthese services are being used classi fi es the deployment models. 1.1 Service Models There are three main categories of service models: •  Infrastructure as a Service (IaaS). In this model, the customer has access to corecomputing resources (hardware and software components) in the form of virtualizedservers, storage, networks, processing and other resources where the customer isable to use including operating systems [1]. Unlike traditional hardware machinesthat require maintenance, this model makes these machines available virtually with fl exible speci fi cations. The common example of IaaS is Amazon Web SystemsEC2. •  Platform as a Service (PaaS). This model provides the customer, through theinternet, with all the requirements to build, run and maintain custom web-basedapplications. These facilities are available to customers without software downloadsor installations for developers [1]. The common example of PaaS is Microsoft Azure. •  Software as a Service (SaaS). This model provides customers with all requiredapplications hosted by a vendor or service provider through internet connection. It is a licensing model that involves pay-as-you-go subscription [5]. In this model,there are the provider and the customer. The Service provider controls everythingwhile the customer controls the setting of the needed applications only [6]. Thecommon example of SaaS is Google ’ s email.In addition to the above, Mukundha and Vidyamadhuri [7] describes other servicesoffered by cloud such as: •  MBaaS (Mobile Backend as a Service) which is a model that provides mobileapplications developers with a way to link their applications to a backend cloudstorage. •  Daas (Data as a Service) allows customers to access data  fi les such as text, images,sound and videos through internet connection. •  MaaS (Monitoring as a Service) helps monitoring various services, applications,servers and systems. Cloud Capacity Planning Based on Simulation and Genetic Algorithms 161  1.2 Deployment Models There are four main categories of deployment models [7]: •  Public cloud. This model offers applications and services available free of chargemost of the time to the public using an internet connection. •  Private cloud. This model is activated for a single business organization and servesits multiple users. It could be managed by the business body itself or by a third partyservice provider. •  Community cloud. A group of organizations that share common concerns such assecurity controls this model. This model follows multi-tenant infrastructure. It might be operated by a single or multiple organizations in the community, or by a thirdparty. •  Hybrid cloud. This model is a combination of two or more different cloud infras-tructures (public, private or community). It allows an organization to have therequired privacy to store its sensitive data as well as the possibility to access withother organizations to an application.There are other deployment models for cloud such as: •  Inter cloud. This model is known as cloud of clouds. It allows connecting various(public, private and hybrid) clouds together to provide and exchange data in atransparent way. •  Multi Cloud. This model allows the use of multiple and distributed clouds software,hardware and applications services under a single heterogeneous architecture. •  Distributed cloud. This model refers to cloud computing platform distributed acrossmultiple geographic locations and multiple machines. It allows getting faster andresponsive communication services. 1.3 Pricing Models Pricing is considered as a challenge in cloud computing. A cloud-computing provider aims to maximize its revenues by relating the cost to the quality of the servicesprovided [8]. In other hands, Al-Roomi et al. state in [9] that cloud customers try to obtain the best quality of service possible with speedy response to their requests at areasonable and competitive price. Therefore, satisfying both parties requires an optimalpricing methodology. Cloud computing offers the possibility to share resources andcosts among large number of end users. It allows them to store, process, and managedata ef  fi ciently. End users can access their data when they need without having toinstall any speci fi c software in their computers. As the number of cloud providers hasincreased, the price of a cloud computing became an essential element and an indicator showing the quality of the services delivered. Consequently, identifying the pricecharging is a dif  fi cult task for the cloud provider [10]. Typically, a cloud-computingprovider aims to maximize its revenues and a customer targets to get the best quality of service at a reasonable price. Satisfying both parties requires an optimal pricingmethodology [9]. Determining the pricing schemes by cloud computing providers isaffected by different elements: 162 R. A. K. Mehdi and M. Nachouki  •  Initial costs that providers spend annually for new resources. •  Leasing period of resources: Cloud providers usually offer better price for longer subscription period. •  Maintenance costs that providers spend in yearly basis to maintain and secure theservices provided. •  Quality of services provided based on the technologies applied to enhance the user experience such as data privacy and resource availability.There are different factors that in fl uence the pricing of cloud computing [11] suchas the location (user access point to a service), content accessed, and time spent. Other factors are also important: •  Flat rate pricing: Fixed price for a speci fi c time. •  Priority pricing: Services are priced based on their priority. •  Usage pricing: Charges are applied based on the use of a service for a period of time. •  Responsive pricing: Charges are applied only on service congestion. •  Service type: Charges are calculated based on the type of service used, note that the fi rst paragraph of a section or subsection is not indented. •  The  fi rst Session oriented: Charging is activated based on the use given to thesession.There are two common pricing models [8]: •  Fixed pricing model where the amount to be paid is highly time-dependent. Thetime interval of offered service is predetermined. In this model, each resource typehas a prede fi ned price. Users may choose one of the two mechanisms: (i) Pay-per-use where the user pays in function of the time or quantity of the service used, or (ii) subscription where the user pays a  fl at fee for using a service. These twomechanisms are straightforward but certainly are not fair to all users. •  Dynamic pricing model highly depends on the availability of the resource requestedby the end-user. The cloud provider computes the cost based on the user  ’ s request.In this model, pricing adjustment is based on market conditions: when there issuf  fi cient demands, the price is high, and when the demand is weak, the price is low.In this model, Cloud providers aim to maximize their pro fi ts with each user who ispaying to get a good quality of service. Moreover, they need to have advancetechnology for adjusting the price and pro fi t calculation.A hybrid cloud model could dynamically allow the customer to adjust the amount of capacity used in a public or private hosting environment thereby achieving highlevel of scalability and ef  fi ciency.The aim of this paper is to build a model that will help cloud computing customersto decide on the optimal mix of private and public cloud provisioning depending ondemand expectations and cost parameters. The optimal mix will be determined bygenetic algorithms approach based a simulated demand for resources described by atheoretical or empirical probability distribution. Cloud Capacity Planning Based on Simulation and Genetic Algorithms 163  1.4 Genetic Algorithms Genetic algorithms are search techniques that have been used to solve optimizationproblems. A distinguishing feature of genetic algorithms is that the mechanisms theyuse allow them to avoid a local optima. Genetic algorithms are loosely modeled onprocesses that appear to be at work in biological evolution and the working of theimmune system [12]. Central to the evolutionary system is the idea of a population of genotypes (chromosomes) that are elements of a high dimensional search space.A genotype can be thought of as an arrangement of genes, where each gene takes onvalues from a suitably de fi ned domain of values. In this work, the value is the amount of private capacity that is needed to satisfy an expected level of demand over theplanning period where extra demand levels are met through the hiring of public cloudresources. The business objective is to minimize the cost of meeting demand through amix of private and public cloud resources. Thus, each chromosome encodes onepossible value for the private capacity.An evolutionary algorithm starts with a population of randomly generated indi-viduals. Once an initial population has been created, an evolutionary algorithm enters aloop. At the end of each iteration applying a certain number of stochastic operators tothe previous population will have created a new population. One such iteration isreferred to as a generation.The  fi rst operator to be applied is selection. Its aim is to simulate the Darwinian lawof   “ survival of the  fi ttest  ” . In order to create a new intermediate population of nindividuals, pairs of individuals (parents) are selected based on their   fi tness scores. Theprobability of each individual being selected is linearly proportional to its  fi tness value.Therefore, above average individuals will expectedly have more copies in the newpopulation, while below average individuals will risk extinction. For the computationalmodel developed in this paper, the  fi tness value represent the overall cost of acquiringprivate and public cloud resources to meet speci fi ed demand. To create offspring fromthe selected parents, a crossover operation is applied. For each pair of parents to bemated, a crossover point is chosen at random from within the genes. Offspring arecreated by exchanging the genes of parents among themselves until the crossover point is reached.After crossover, all chromosomes undergo mutation. The purpose of mutation isto simulate the effect of transcription errors that can happen with a very low prob-ability when a chromosome is duplicated. This is accomplished by replacing eachgene value by another from the domain of possible values using a very low prob-ability of change.The above process is stopped when a termination condition is speci fi ed. For example, a pre-determined number of generations have been reached, a satisfactorysolution has been found or no improvement in the solution quality has taken place for apre-determined number of generations [12]. 164 R. A. K. Mehdi and M. Nachouki
Recommended
View more...
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks
SAVE OUR EARTH

We need your sign to support Project to invent "SMART AND CONTROLLABLE REFLECTIVE BALLOONS" to cover the Sun and Save Our Earth.

More details...

Sign Now!

We are very appreciated for your Prompt Action!

x