[ieee 2012 ieee international conference on cloud computing in emerging markets (ccem) - bangalore,...

4
Application of Artificial neural networks In Capacity planning of Cloud based IT Infrastructure Venkateshwar Rao, [email protected] Sarika Rao, [email protected] AbstractCloud is gaining popularity as means for saving cost of IT ownership and accelerating time to market due to ready-to- use, dynamically scalable computing infrastructure and software services offered on Cloud on pay-per-use basis. There is a an important change in the way these infrastructures are assembled, configured and managed. In this research we consider the prob- lem of managing computing infrastructure which are acquired from Infrastructure as a service (IaaS) providers, which support the execution of web applications whose work load experience huge fluctuations over the time. The operating state of the web applications on the cloud is determined by the work load, service rate and utility gain of the web services,As these parameters are changing dynamically,we could not get the exact relationship between these parameters using conventional methods. We can use the Back propagation training algorithm of artificial neural networks to solve this problem. By training the Artificial neural network with the past data,we can estimate the future numbers. In this paper we proposed a artificial neural network based model that can be used for guiding the capacity planning activity. This paper reports on an investigation on the application of ANNs in Capacity planning of cloud based infrastructure. A multi-layer feed-forward artificial neural network (ANN) with error back-propagation learning is proposed for calculation of number of reserved instances for future use. Matlab Neural Net- work Toolbox is used for simulation of required ANN and con- sidering Amazon web services as a IaaS provider. Keywords— IaaS Infrastructure as a service,ANN Artificial neu- ral network,Matlab Neural Network Toolbox. I. INTRODUCTION The cloud computing market has experienced a rapid growth, with many companies currently providing on- demand virtual resources such as infrastructure, data sto- rage and software services. Those who promote this mar- ket model state that the benefits of a cloud computing ap- proach come mainly from the flexibility of increasing and reducing capacities at will and paying only for the actual use of resources, which together imply in substantial re- ductions on the costs of running IT infrastructures. In this paper we focus our attention on cloud computing provid- ers that offer infrastructure-as-a-service (IaaS). These providers offer resources that are materialized by virtual machine images that can be programmatically instantiated by the clients and whose usage is charged in proportion to the time that they are actually used. Currently, resources can be remotely acquired from IaaS providers without human intervention in three different ways, each with its own pricing scheme and associated quality of service. Three different ways which we can acquire the re- sources are On-demand market. This model allows dedicated re- sources to be instantiated on demand at any time, subject to the current availability of resources at the provider. Client is charged to pay for compute capacity by the hour with no long-term commitments. Reservation market. This model allows to make a low, one-time payment for each instance you want to re- serve and in turn receive a significant discount on the hourly usage charge for that instance. After the one-time payment for an instance, that instance is reserved for the entire reservation period. Failures in fulfilling this con- tract normally imply in the payment of compensation's to the client. When instances previously reserved are used, the client is charged for the use of the resources at a dis- counted price, when compared to the instances that can be acquired at the on-demand market. Spot market: This model is based on a spot market where idle resources are offered in a best-effort way. The cloud provider establishes a fluctuating fee that is used to charge for the usage of spot-market instances. Clients access instances in this market by indicating the maxi- mum usage fee that they are willing to pay. Resources are made available to clients whenever their bidding price is above the current minimal price set by the IaaS provider. In all cases, the usage fee charged is the one set by the IaaS provider at the time the resource is used. Cost-effective approaches require the infrastructure’s capacity to be continuously adjusted, in a way that makes it just large enough to attend the current application’s demand. It is difficult to use conventional techniques for ca- pacity planning of cloud based IT infrastructure. In recent years, artificial neural network (ANN) has been taken as an alternative method for solving difficult problems be- cause it has following properties: it can be fully close to the complex relationship between non-linear mapping's, it can learn and adapt to the dynamic nature of an uncertain- ty system, and it has self-learning ability etc. As well known, the operating state of the web applications on the cloud is determined by the work load, service rate and utility gain of the web services. If we could found the re- 978-1-4673-4422-7/12/$31.00 ©2012 IEEE

Upload: sarika

Post on 16-Feb-2017

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [IEEE 2012 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM) - Bangalore, KA, India (2012.10.11-2012.10.12)] 2012 IEEE International Conference on Cloud Computing

Application of Artificial neural networks In

Capacity planning of Cloud based IT Infrastructure Venkateshwar Rao,

[email protected]

Sarika Rao, [email protected]

Abstract— Cloud is gaining popularity as means for saving cost of IT ownership and accelerating time to market due to ready-to-use, dynamically scalable computing infrastructure and software services offered on Cloud on pay-per-use basis. There is a an important change in the way these infrastructures are assembled, configured and managed. In this research we consider the prob-lem of managing computing infrastructure which are acquired from Infrastructure as a service (IaaS) providers, which support the execution of web applications whose work load experience huge fluctuations over the time. The operating state of the web applications on the cloud is determined by the work load, service rate and utility gain of the web services,As these parameters are changing dynamically,we could not get the exact relationship between these parameters using conventional methods. We can use the Back propagation training algorithm of artificial neural networks to solve this problem. By training the Artificial neural network with the past data,we can estimate the future numbers. In this paper we proposed a artificial neural network based model that can be used for guiding the capacity planning activity. This paper reports on an investigation on the application of ANNs in Capacity planning of cloud based infrastructure. A multi-layer feed-forward artificial neural network (ANN) with error back-propagation learning is proposed for calculation of number of reserved instances for future use. Matlab Neural Net-work Toolbox is used for simulation of required ANN and con-sidering Amazon web services as a IaaS provider. Keywords— IaaS Infrastructure as a service,ANN Artificial neu-ral network,Matlab Neural Network Toolbox.

I. INTRODUCTION The cloud computing market has experienced a rapid

growth, with many companies currently providing on-demand virtual resources such as infrastructure, data sto-rage and software services. Those who promote this mar-ket model state that the benefits of a cloud computing ap-proach come mainly from the flexibility of increasing and reducing capacities at will and paying only for the actual use of resources, which together imply in substantial re-ductions on the costs of running IT infrastructures. In this paper we focus our attention on cloud computing provid-ers that offer infrastructure-as-a-service (IaaS). These providers offer resources that are materialized by virtual machine images that can be programmatically instantiated by the clients and whose usage is charged in proportion to the time that they are actually used. Currently, resources can be remotely acquired from IaaS providers without human intervention in three different ways, each with its own pricing scheme and associated quality of service.

Three different ways which we can acquire the re-sources are

On-demand market. This model allows dedicated re-sources to be instantiated on demand at any time, subject to the current availability of resources at the provider. Client is charged to pay for compute capacity by the hour with no long-term commitments.

Reservation market. This model allows to make a

low, one-time payment for each instance you want to re-serve and in turn receive a significant discount on the hourly usage charge for that instance. After the one-time payment for an instance, that instance is reserved for the entire reservation period. Failures in fulfilling this con-tract normally imply in the payment of compensation's to the client. When instances previously reserved are used, the client is charged for the use of the resources at a dis-counted price, when compared to the instances that can be acquired at the on-demand market.

Spot market: This model is based on a spot market

where idle resources are offered in a best-effort way. The cloud provider establishes a fluctuating fee that is used to charge for the usage of spot-market instances. Clients access instances in this market by indicating the maxi-mum usage fee that they are willing to pay. Resources are made available to clients whenever their bidding price is above the current minimal price set by the IaaS provider. In all cases, the usage fee charged is the one set by the IaaS provider at the time the resource is used.

Cost-effective approaches require the infrastructure’s

capacity to be continuously adjusted, in a way that makes it just large enough to attend the current application’s demand.

It is difficult to use conventional techniques for ca-

pacity planning of cloud based IT infrastructure. In recent years, artificial neural network (ANN) has been taken as an alternative method for solving difficult problems be-cause it has following properties: it can be fully close to the complex relationship between non-linear mapping's, it can learn and adapt to the dynamic nature of an uncertain-ty system, and it has self-learning ability etc. As well known, the operating state of the web applications on the cloud is determined by the work load, service rate and utility gain of the web services. If we could found the re-

978-1-4673-4422-7/12/$31.00 ©2012 IEEE

Page 2: [IEEE 2012 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM) - Bangalore, KA, India (2012.10.11-2012.10.12)] 2012 IEEE International Conference on Cloud Computing

lationship between operating conditions and the number of instances to be reserved by training the neural network, the network model should be used as a capacity planner for the web applications on the cloud. The method pro-posed in this paper will enlighten the application of Ar-tificial intelligence in cloud computing.

This paper presents a Back Propagation Neural Net-

work approach for Business-Driven Capacity Planning of a Cloud-based IT Infrastructure for the Execution of Web Applications. This model uses a 3 layer back propagation neural network for capacity planning activity of web ap-plications on the cloud. It is verified that the method is ef-fective for on line capacity planning of web applications on the cloud.

II. BUSINESS DRIVEN CAPACITY PLANNING MODEL

Business driven capacity planning an analytical mod-el that can help IT staff to plan the dynamic cloud infra-structure to support Web applications. This planning ac-tivity consists in deciding how many cloud instances must be reserved for future use. The spot market is not taken into account during the planning phase since anticipating its prices is very difficult.

The planning model receives, as input, information

about the workload, the application and the reservation and on-demand markets. At each instant of time, the in-frastructure needs to be provisioned with a sufficiently large number of instances. Some of these instances (nr) come from the reservation market, while the remaining comes from the on-demand market. It is clear that at the time the planning is done, nr is some value in the interval [n−, n+], which limits the space of the solution.

n- ≤ n r ≤ n+ (1) Where nr is number of reserved instances and n- and n+ are the cloud instances required for loads of low demand and surges.

p(nr) = u(nr) − nu(nr) − C(nr) (2)

Where u(nr) is the utility gain obtained from running the web servic-es, nu(nr) is the negative utility incurred due to violation of avail-ability and C(nr) is the total cost of cloud infrastructure

The planning model goal is to find the value of nr that maximizes the above equation. As a result the planning model indicates the most profitable plan for the dynamic IT infra-structure, which is the number of instances that must be re-served at the reservation market in advance. Any Web appli-cation administrator can use the model proposed to plan long-term reservations of computing resources at cloud providers. If a site administrator wants to use this model, some informa-tion has to be gathered to feed the model.

III. PRINCIPLE FOR BP NEURAL NETWORK

A. Structure of Back Propagation neural network. Back propagation neural network is multi-layer feed-forward network with error back-propagation learning. The network consists of an input layer, an output layer and at least one hidden layer. Each layer includes a set of neurons. The neurons are interconnected by weight. There is no coupled relation between neurons in the same layer. The structure of the single hidden layer network is shown in Fig.1.

Fig.1 Structure of BP neural network.

B. BP algorithm The basic BP learning algorithm is steepest descent method, whose central idea is to get the smallest error though adjusting the weight of network. That is, using gradient search technol-ogy to make the square error values minimum between the actual output of network and expectation. Fig 2. Shows the flowchart for a back propagation neural network.

Page 3: [IEEE 2012 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM) - Bangalore, KA, India (2012.10.11-2012.10.12)] 2012 IEEE International Conference on Cloud Computing

Fig.2 Flow chart for BP neural network.

IV. APPLICATION OF BP NEURAL NETWORK The method based on BP neural network to estimate the Number of reserved instances is: The input variables to the network are

• One-time payment for reserved instance(Fr). • Cost of reserved instance per hour(Cr) • Cost of on demand instance per hour(Co) • Maximum number of on demand instance(Nmax) • Mean service time per request at a reference cloud in-

stance(S) • Mean normal arrival rate(requests per second)(lambda0) • Mean arrival rate during surges(requests per

second)(lambda_mi) • Mean arrival rate during periods of low demand(requests

per sec)(lamda_plu) • Amount of time the application is under normal

load(deltat0) • Amount of time the application is under low

load(deltat_min) • Amount of time the application is under high

load(deltat_plus). • Utility gain for successful requests(assuming all requests

have same utility gain)(G) • Availability threshold of the application(TA) • Penalty for unsuccessful requests(P)

The output is number of reserved instances for future use.

A. Back propagation neural network model

1. Structure of network The neural network considered here consists of input

layer, one hidden layer and output layer. Using MATLAB neural network toolbox to train the network and deter-mine the optimal number of hidden layer neurons, the training function and learning rate.

2. Generation of training data a. Only change the active Mean service time per

request at a reference cloud instance, the others remain the same

b. Only change the amount of time the application is under different loads, the others remain the same

c. Only change the utility gain for successful re-quests,the others remain the same

d. Only change the Penality for unsuccessful re-quests,the others remain the same

e. Change all the parameters.

3. Training neural network The proposed method has been applied to the capaci-

ty planning of web services to be executed on amazon cloud. The detailed pricing of the Amazon can be found in [4].

The neural network has 14 input variables and one

output variable which indicates the number of reserved instances for future use.

Neural network toolbox of MATLAB is used to train

the neural network. 220 sample data are obtained, 160 of them are taken as the training patterns. The other 60 are used to test the neural network. The selected optimal parameters after a lot of practice are as follows in TA-BLE I.

TABLE I

NETWORK PARAMETERS

Structure Training func-tion

Learning Function

Performance func-tion

14-25-1 trainlm Learngdm mse

4. Simulation results As can be seen from the TABLE II, the numbers of

reserved instances of the simulation results are more or less the same as the actual data. The employed BP neur-al network can predict the number of reserved instances required for the future use which will ensure optimal utilization of resources.

Page 4: [IEEE 2012 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM) - Bangalore, KA, India (2012.10.11-2012.10.12)] 2012 IEEE International Conference on Cloud Computing

TABLE II COMPARISON BETWEEN THE ACTULA DATA AND BPNN RESULTS.

Fr Cr Co Nmax S Lamda0 Lamda_minLamda_pludeltat0 deltat_minudeltat_plus G TA P Actual Sim Results227.5 0.03 0.085 20 0.2 220 80 500 5256 1314 2190 0.85 0.9995 15000 80 80.00028543227.5 0.03 0.085 20 0.1 220 80 500 5256 1314 2190 0.85 0.9995 15000 30 29.99216737227.5 0.03 0.085 20 0.3 220 80 500 5256 1314 2190 0.85 0.9995 15000 130 130.0002972227.5 0.03 0.085 20 0.4 220 80 500 5256 1314 2190 0.85 0.9995 15000 180 179.9999072227.5 0.03 0.085 20 0.5 220 80 500 5256 1314 2190 0.85 0.9995 15000 230 230.0001256227.5 0.03 0.085 20 0.6 220 80 500 5256 1314 2190 0.85 0.9995 15000 280 280.0003209227.5 0.03 0.085 20 0.7 220 80 500 5256 1314 2190 0.85 0.9995 15000 330 330.00019227.5 0.03 0.085 20 0.8 220 80 500 5256 1314 2190 0.85 0.9995 15000 380 379.9999171227.5 0.03 0.085 20 0.9 220 80 500 5256 1314 2190 0.85 0.9995 15000 430 429.9997661227.5 0.03 0.085 20 1 220 80 500 5256 1314 2190 0.85 0.9995 15000 480 479.9998091227.5 0.03 0.085 20 1.1 220 80 500 5256 1314 2190 0.85 0.9995 15000 530 529.9999411227.5 0.03 0.085 20 1.2 220 80 500 5256 1314 2190 0.85 0.9995 15000 580 580.0000327227.5 0.03 0.085 20 1.3 220 80 500 5256 1314 2190 0.85 0.9995 15000 630 630.000042227.5 0.03 0.085 20 1.4 220 80 500 5256 1314 2190 0.85 0.9995 15000 680 680.0000173227.5 0.03 0.085 20 1.5 220 80 500 5256 1314 2190 0.85 0.9995 15000 730 730.0000267227.5 0.03 0.085 20 1.6 220 80 500 5256 1314 2190 0.85 0.9995 15000 780 780.0000951227.5 0.03 0.085 20 1.7 220 80 500 5256 1314 2190 0.85 0.9995 15000 830 830.0001941227.5 0.03 0.085 20 1.8 220 80 500 5256 1314 2190 0.85 0.9995 15000 880 880.0002776227.5 0.03 0.085 20 1.9 220 80 500 5256 1314 2190 0.85 0.9995 15000 930 930.0003227

V. CONCLUSIONS In this paper, a BP neural network approach for the capaci-

ty planning model for execution of web applications on Ama-zon web services has been proposed and proved to be effec-tive. It will predict the number of instances to be reserved for the effective utilization of the resources for a given environ-ment (number of web applications). The test results of the proposed BP neural networks indicate that if the sample data are accurate, reliable, and the model parameters are appropri-ate, the network would be a useful tool for capacity planning of web applications on the cloud. The approach proposed in this paper would be a step of cloud towards Artificial intelli-gence.

REFERENCES [1] Raquel Lopes, Francisco Brasileiro, Paulo Ditarso Maciel Jr., Busi-

ness-Driven Capacity Planning of a Cloud-based IT Infrastructure for the Execution of Web Applications 2010 IEEE.

[2] ‘‘Amazon Elastic Compute Cloud (EC2).’’ [Online]. Available: http://aws.amazon.com/ec2/.

[3] “A simple way to estimate the cost of downtime,” in LISA ’02:Proceedings of the 16th USENIX conference on System adminis-tration.Berkeley, CA, USA: USENIX Association, 2002, pp. 185–188.

[4] “Amazon Elastic Compute Cloud (EC2) Pricing Model.” [On-line].Available: http://aws.amazon.com/ec2/#pricing.