monitoring applications on cloud - indicthreads cloud computing conference 2011
DESCRIPTION
Session presented at the 2nd IndicThreads.com Conference on Cloud Computing held in Pune, India on 3-4 June 2011. http://CloudComputing.IndicThreads.com Session Abstract: Today’s end users expect ever increasing speed and complex media-rich web applications. Performance, response time and speed at which services are being delivered to customer are a critical metric for any business. Traditional application monitoring tools are powerful but have a perspective of monitoring applications in a data center. What you lose primarily when the apps are moved to cloud is the visibility that comes monitoring performance using traditional tool in a data center. Next generation monitoring applications have to understand the cloud factor and need to be ‘cloud aware’. In a cloud environment, SLAs and applications really cover anything that is beyond server uptime. Monitoring should provide visibility into the infrastructural aspects along with performance of applications. Approach should be adopted to have a mechanism of gathering data from all possible sources across locations, analyzing it intelligently and presenting through a dashboard which can be drilled down up to granular levels. You should be able trace any problem to its source. You should receive automated alerts even to isolated problems that may be affecting end users. Monitoring of cloud applications cannot be left up to the service providers only. While service providers may provide their services to monitor your applications, you may not rely completely on that and must need to handle it in your own way for your individual needs. This session will look at: Why traditional monitoring tools can’t work efficiently on cloud? Which parameters need monitoring? How to identify bottlenecks on clouds, what are self-heal actions, what level of automation can be achieved? Cloud Best practices in cloud application monitoring How virtual infrastructure monitoring goes hand in hand with application monitoring on cloud? How can you build your own monitoring applications using APIs? What are use cases? Speaker: Amit Pathak has 12+ years of experience and is currently working as a project manager in product engineering services division of Patni Computer System Ltd. Amit has a development back ground in Java/J2EE stack. From last 3 years he is in the field of virtualization and cloud computing providing solutions to business needs to adopt virtualization in enterprises and providing automation solutions.TRANSCRIPT
1
Monitoring Cloud Applications
Amit Pathak
2
AgendaC
ontext
C
hallenges
M
onitoring-as-a-Service
K
ey Highlights
B
enefits
S
ummary
3
ContextAre agreed service levels met?
Overall how many applications are healthy vs non-healthy?
Is the health getting worse over time?
Are the business functions being performed as expected?
Do you have capacity within applications?
4
ContextCloud Complexity
Scale and diversity of the infrastructure
- Servers, network devices, storages, etc.
- Hundreds, even thousands of machines
Massive number of user applications
- Catastrophic consequence of failure / security breach /
performance degradation
5
ContextResource utilization is tightly coupled with cost incurred by
customers
Monitoring is indispensable
Availability, failure detection
Performance, provisioning
Security, anomaly detection
Application-level monitoring
6
Challenges - OverviewInherits performance monitoring challenges of virtualized world
End user response time – a primary metric
Mechanism to collect data from various sources
Managing agents
Monitor, identify & heal bottlenecks
7
Challenges - OverviewDetect performance degradation:
Single malfunctioning application on a guest has a potential to
degrade performance of host and other resources
Resource contention among applications executing on VMs may
hamper performance
Virtual machines not configured with sufficient resource to
handle workload
8
Challenges – A Closer Look
Source: Monitis
9
Challenges – A Closer Look
Cloud Monitoring
User Challenges
System Challenges
Network Challenges
10
Challenges – System LevelEfficient Scalability:
Monitor tasks – tens of thousands
Cost effective - minimize resource usage
Facilitating service
11
Challenges – System LevelEfficient Scalability:
Massive Scale
Monitor inherent large scale tasks
Large number of users- Infrastructure monitoring- Application monitoring
Monitor tasks with high cost e.g. Resources with high consumption
12
Challenges – System LevelMonitoring QoS Assurance:
SLA management
Application security
Federated identity of cloud applications
Secured integration of cloud apps with on-premise apps
Multi-tenant environment
Authorization & access control
Monitor contention between monitoring tasks
13
Challenges – User LevelContinuous violation detection
Need of different detection model - Dynamically add/remove
servers based on performance
Achieve efficiency at the same time
Short-term burst Persistent violation
14
Challenges – Network LevelResource-aware monitoring fabric
Monitoring the functioning of both systems and applications running
on large-scale distributed systems
Continuous collecting detailed attribute values- A large number of nodes- A large number of attributes
Overhead increases quickly as the system, application and
monitoring tasks scales up
15
Performance MonitoringUnderstand performance of virtual infrastructure – outside in
approach
Troubleshoot bottlenecks
Plan future needs
16
Key Parameters To MonitorCPU
Memory
Network
Disk
17
CPUCPU saturated?
High Ready time
Problematic if it is sustained for high periods
Possible contention for CPU resources among VMs
Workload Variability?
Resource limits on VMs?
Actual over commitment?
High SwapWait time
18
MemorySwap in rate
Swap out rate
Swap used
19
DiskWhat should I look for to figure out if disk is an issue?
IOPs?
Bandwidth (read/write)?
Latencies?
20
NetworkWhat should I look for to figure out if network is an issue?
Packate rate?
Bandwidth (read/write)?
NIC status?
21
Monitoring-as-a-Service
22
Monitoring-as-a-ServiceSimilar to other cloud services
Database service (e.g. SimpleDB, Datastore)
Storage service (e.g. S3)
Application service (e.g. AppEngine)
23
High Level SolutionApplications,Server – CPU, memory, disk IO
Packate rate, bandwidth, NICs
Events & AlertsCustomization
Gather data from various resourcesTrend analysis
24
Monitoring-as-a-ServiceExternal monitoring Web server, file server, mail server, VOIP
Server monitoring CPU, memory, processes, storage
Network monitoring Http, SSH, SNMP, discovery
Transaction monitoring
Multi-step apps, workflows
Cloud monitoring Track running instances, auto-deploy, usage
Web Traffic monitor Visitor, page views
25
Key HighlightsScale dynamically
Have minimum (or no) impact on the monitored infrastructure
Should be portable and has to be light weight
Easy feature customization. Not all metrics will need to be
monitored in the cloud for everyone
Heavy network based monitoring tools may not be a good fit
26
Key HighlightsComprehensive monitoring of resource performance and
availability
Applications, databases, middleware and web servers
Provide innovative ideas to fetch data as business need grows
Dashboard, views, reports
Co-relate information from different sources
Trends analysis
Predict bottlenecks
27
BenefitsEnd-to-end support
Easy to use & maintain
Reliable service
Feature customization
Cost effective
28
Summary Cloud is complex; monitoring needs are indispensable
End user response time is primary focus
Cloud services must be treated differently to on-premise
software when it comes to systems monitoring
Do not rely on vendors completely. If SLAs are serious,
maintain your own logs
Existing tools are good but use programmatic APIs for specific
needs
29
Thank You
30
References• http://developer.vmware.com
• http://www.cc.gatech.edu/
• http://portal.monitis.com/index.php/resources
• http://www.hyperic.com/
• http://mypublicstrangeworld.posterous.com/cloud-monitoring-services-a-resource-guide
• http://www.itpro.co.uk/630655/dont-leave-cloud-monitoring-to-vendors-expert-warns
• http://www.virtualizationpractice.com
• http://virtualization.sys-con.com/
• http://blog.newrelic.com/