Sunteți pe pagina 1din 8

View Point

Performance Monitoring in Cloud


- Vineetha V

Abstract
Performance Monitoring is an integral part of maintenance. Requirements for a monitoring solution for Cloud are totally different
from a legacy and virtualized environment monitoring solution.
There are many third party tools/solutions available for monitoring a cloud. But there are no standard models exist for such a
solution as what all parameters needs to be covered in the solution so that an exhaustive performance report can be produced
for the service provider. In the context of Cloud Computing becoming the most sought after technology, there is a need for such
a standard model.
This paper is intended to provide a very brief introduction about Cloud computing and its architecture, illustrates how Cloud
Performance monitoring differs from traditional monitoring, the different types of monitoring in cloud and metrics of interest
to various users. The paper also proposes a high level view of a model which can be used as a guideline while coming up with
performance monitoring solutions for cloud.

www.infosys.com

I. What Is Cloud Computing?


Cloud Computing can be simply defined as Computing in
a remote location or location independent with shared and
dynamic resource availability on demand
Cloud computing describes a new supplement, consumption,
and delivery model for IT services based on the Internet, and
it typically involves over-the-Internet provision of dynamically
scalable and often virtualized resources. This frequently takes
the form of web-based tools or applications that users can
access and use through a web browser as if it is a program
installed locally on their own computer. In Cloud computing
environment everything becomes a Service.
Primary motive behind more organizations moving to cloud is
the reduction in cost and dynamic resource allocation. Since the
underlying infrastructure is hosted by the cloud provider, SMEs
do not need to worry about the maintenance of them. Also,
characteristics like Scalability, elasticity, Multi-tenancy, Payper-Use make Cloud computing the most wanted technology
today. Of course there are some areas of concerns in Cloud like
security and reliability.
There are different types of Cloud:

Public Cloud
A public cloud is one based on the standard cloud computing
model, in which a service provider makes resources, such as

applications and storage, available to the general public over


the Internet. Public cloud services may be free or offered on a
pay-per-usage model.
The main benefits of using a public cloud service are:
Easy and inexpensive set-up because hardware, application
and bandwidth costs are covered by the provider
Scalability to meet needs
No wasted resources because you pay for what you use
Examples of public clouds include Amazon Elastic Compute
Cloud (EC2), IBMs Blue Cloud, Sun Cloud, Google AppEngine
and Windows Azure Services Platform

Private Cloud
Private cloud (also called internal cloud or corporate cloud) is a
cloud set up with in a corporate or organization that provides
hosted services to a limited number of people behind a firewall.

Hybrid Cloud
A hybrid cloud is a cloud computing environment in which
an organization provides and manages some resources inhouse and has others provided externally. For example, an
organization might use a public cloud service, such as Amazons
Elastic Compute Cloud (EC2) for general computing but store
customer data within its own data center

II. Cloud Architecture


The most significant components of Cloud are the Front End and the Back End. Front End is the Client side, the User of the applications
hosted in Cloud. This covers the application used to access the Cloud through interface like web browser and clients network. Back
End is the actual Cloud itself with various servers, storage devices, network etc. Theoretically a Cloud has all types of dedicated servers
present in it to host practically any computer program.
A central server administers the system, monitoring traffic and client demands to ensure everything runs smoothly. There are set of
rules and Middleware which helps in networked computers to communicate with each other.

Cloud Service Provider

Cloud Service
Consumer

Cloud Service
Developer

Software-as-a-service

Cloud
Services

Platform-as-a-service
Infrastructure-as-a-service
Server
Virtualization

Virtualized
Infrastructure

System
Resources

2 | Infosys View Point

Server

Storage
Virtualization

Storage Servers

Storage

N/W
Virtualization

N/W Hardware

III. How/Why Performance Monitoring Differs


from Traditional Server Monitoring
Since we have various types of IT Components in a cloud, the
traditional performance management which focuses on specific
components will not work for Cloud. They are not well equipped
to provide a more holistic view of the cloud environment.
More than independent management of Physical and virtual
infrastructure elements, focus should be on how they perform
to deliver the Business Service to the User. Service Level
Agreements (SLAs) are very important in a Cloud environment.
Since the Customer pays for the services/Infrastructure he
uses, customer needs to be assured of a level of service at
any time. Thus performance Monitoring of Cloud should
monitor the capability of components of cloud in delivering
the expected service. To a large extend Clouds are based on
virtualized resources. Most of the Virtualization vendors
provide management/monitoring solutions which collect a
robust set of resource utilization statistics, even though they
provide a good view of individual components, they fail to
provide a complete picture of the performance of the entire
cloud environment
For example with VMwares VCenter/vSphere we can get basic
resource utilization information of the ESX/ESXi host and virtual
machines, they fail to provide a visibility into the performance
of the business applications hosted on these platforms.
Although it is possible to approximate the performance of
Physical infrastructure based on how its resources are utilized,
that is not the case with virtual components due to the shared
and dynamic nature of resource allocation. The monitoring
solution should be capable of dynamically identifying the VMs
in which the application is currently running and then collect
the parameters. Also depending on the agreement between
the service provider and the customer, resources will be

dynamically allocated to applications. Thus Virtualized/Cloud


environment requires a specialized monitoring solution which
can provide effective, convenient and holistic view of the entire
environment.
In a nutshell we need a monitoring model for Cloud which can
provide a view of the health of the entire cloud in delivering a
service. It should help the provider assess whether customers
demands can be met with the current resources/performance.
Also we need to get a view of individual applications hosted
on cloud.

IV. Cloud Performance Monitoring


When we consider monitoring performance of a Cloud, we
can broadly classify it to 2 categories. Monitoring from Service
providers view and Monitoring from Cloud Consumers view.
1. Infrastructure Performance - A Cloud service provider is
interested in this kind of report. This involves performance
of the various infrastructure components in the cloud like
Virtual Machines, Storage, Network etc. Since individual
components performance fail to provide an accurate view
of the overall cloud performance, a new approach called
Infrastructure Response Time is being researched upon to get
a more accurate picture of the performance of a virtualized/
cloud environment. Infrastructure Response Time (IRT) is
defined as the time it takes for any workload (application)
to place a request for work on the virtual environment and
for the virtual environment to complete the request (from
the guest to spindle and back again). The request could be a
simple data exchange between 2 VMs or a complex request
which involves database transaction and writes into a storage
array. [definition from http://www.virtualinstruments.com/
files/pdfs/WP_APM-Experts-Infrastructure-PerformanceManagement-for-Virtualized-Systems.pdf]

Typical data flow between various components in a DB transaction is as follows:

Servers/
VMs

VM
Network

Network
Fabric

SAN
Fabric

Storage

Infosys View Point | 3

Key requirements for an Infrastructure Performance


Management Solution for a Virtual/Cloud environment can be
identified as below:
Support any application hosted in the environment.
Solution should be able to automatically identify the
applications and their topologies and this need to be
independent of the application architecture.

Infrastructure Response Time is the Key metric along with the


various resource utilization metrics as follows:
CPU usage; total all CPUs, per CPU, and delta between
CPUs
Disk usage; total, free, used
Disk Latency

Continuous discovery. Need to dynamically identify


virtual and physical resources used by the application at
a given point in time.

Percentage Busy

IRT must be calculated across the breadth & depth of the


virtual environment. Full scope of the environment needs
to be considered.

Memory; percentage used, swap activity

Be prepared for new applications and new infrastructure


being added to the environment. Solution should be able
to automatically discover and calculate IRT for these new
entrants as well.
Support for multiple platforms like VMware, Hyper-V etc

Percentage Ready

Network; bytes in/out


Host System State
Host System Resource Usage
Virtual Machine Configuration
Virtual Machine State

Metrics/Parameters of Interest in Infrastructure Performance


Monitoring

Sample list of Parameters monitored for Host and VM for VMware ESX/ESXi
Host Machine

Virtual Machine

Running State

Number of CPUs

Overall Alarm Status

Overall CPU Usage, CPU extra and guaranteed

Number of CPU Cores

CPU Usage in MHz, CPU sample count

CPU Speed per Core

CPU Active average and peak over a period

CPU Threads

CPU Refused average over a period

CPU Active average and peak over a period

CPU running average and peak over a period

Memory Size, Usage, active (% of memory)

Memory swap in/swap out

Memory swap in/swap out

Guest and Host memory usage

Memory heap, overhead and shared

Memory active, balloon, consumed, granted,

Disk Capacity, Free, command abort and issued

VM network data receive and transmit rate, packets

Disk read rate, read and write requests

VM Disk read and write rate

Network data receive and transmit rate

Guest OS and heartbeats in period

Network packets received and transmitted

Amount of guaranteed resource

2. Application Performance - Performance of the applications hosted in the cloud. Cloud consumer, whose application is hosted in the
cloud, is interested in this kind of report.
In Calculating Application Performance also we cannot go by the resources utilized by the application as in a cloud, applications
move around and so the monitoring solution needs to track and map them.
Application Response Time is the key metric in Application Performance management which actually calculates the time taken for
the application to respond to user requests. Since this is of more interest to the application owners, applications designed to be
hosted in a cloud tend to have monitoring solution built in to the application itself.

4 | Infosys View Point

V. Parameters of Interest for Cloud Service


Provider
Cloud Service Provider needs to get an exhaustive view of
the health of the entire cloud to assess the situation. Lot of
decision making and determining SLAs are driven by the Cloud
performance.
Cloud service providers would be interested in the below
details to assess the actual performance of cloud.
A. Resource Utilization details
Just like in any other performance monitoring, utilization
parameters of physical servers/infrastructure is an important
factor in cloud monitoring, as these servers make up the
cloud.
B. Infrastructure Response Time (IRT)
As already discussed, IRT gives a clear picture of the overall
performance of the cloud as it checks the time taken for
each transaction to complete. IRT is very crucial as it has
an impact on the application performance and availability
which in turn affects the SLAs
C. Virtualization metrics
Similar to the physical machines, we need to collect the
resource utilization data from the Virtual machines. This
provides a picture of how much of the VM is being utilized
and this data helps in analysing the resource utilization by
applications and to decide on the scaling requirements.
Other important parameters related to Virtual Machines like
Number of VMs used by application
Time taken to create a new VM
Time taken to move an app from one VM to another
Time taken to allocate additional resources to VM
are of importance as they also contribute to IRT and
performance of the applications hosted in cloud.

VI. Reporting and Collecting Performance Data


Reporting
The following reports would help the service provider to
understand the cloud usage and its performance.
Multi-dimensional reports
- Different levels of Report for different users like
overall infrastructure usage, usage reports of specific
resources/datacenters etc
- Application level reports like, Reports showing the
infrastructure usage by each application, infrastructure
reports like, Performance of the resources in the cloud
Busy-hour / peak Usage Report
- Helps to get a clear view of the usage of the application
for better planning of resources and SLAs
What If analysis
Trend Analysis

Collecting
Monitoring application should collect Performance
parameters like CPU utilization, memory utilization etc. from
physical as well as virtual hosts.
Solution to be capable enough to collect the response time
per transaction and per application. Could be done either
using an agent residing in the VM or an external monitoring
agent. The agent needs to track and capture details of each
transaction happening with the applications hosted in the
VM.
Collect virtualization metrics from underlying virtualization
platform. Need to ensure that the solution works well with
different virtualization platforms.
Derive transaction metrics/data from collected data on
response time.

D. Transaction metrics
Transaction metrics can be considered as a derivative from
IRT. Metrics like Success percentage of transactions, count
of transactions etc. for an application would give a clearer
picture of the performance of an application in cloud at a
particular instance.
An ideal monitoring solution for Cloud should be capable of
providing all the above details.

Infosys View Point | 5

Below is a proposed high level model for a Cloud monitoring solution with a view.

Reporting

Processing

Data
Collection

Monitoring
Agent

IRT

Application Data

Application
Platform

VM
Resource
Data

6 | Infosys View Point

VM

VM

Physical Infrastructure

VM

Virtualization
on Metrics

Conclusion
A detailed framework of the given high level model is the next stage of study. A detailed
view of components involved in the framework and integration with interfacing
components can be considered as part of framework. This can be extended further for
hosting the monitoring solution on the cloud.
This paper is intended to provide a guideline or requirements for developing a cloud
monitoring solution for service providers.

REFERENCES

1. http://www.ciozone.com/vendorzones/ca/infrastr-perform-mgmt_238145.pdf
2. http://en.wikipedia.org/wiki/Cloud_computing
3. http://communication.howstuffworks.com/cloud-computing1.htm
4. http://pubs.vmware.com/vsp40_i/wwhelp/wwhimpl/js/html/wwhelp.htm#href=admin/c_performance_
metrics.html
5. http://www.jot.fm/issues/issue_2009_11/column3/index.html
6. http://searchcloudcomputing.techtarget.com/definition/

Infosys View Point | 7

About Infosys
Many of the world's most successful organizations rely on Infosys to
deliver measurable business value. Infosys provides business consulting,
technology, engineering and outsourcing services to help clients in over
30 countries build tomorrow's enterprise.

For more information, contact askus@infosys.com

www.infosys.com

2012 Infosys Limited, Bangalore, India. Infosys believes the information in this publication is accurate as of its publication date; suchinformation is subject to change without notice. Infosys acknowledges
the proprietary rights of the trademarks and product names of other companies mentioned in this document.

S-ar putea să vă placă și