| By Eric Novikoff | Article Rating: |
|
| January 9, 2009 10:00 AM EST | Reads: |
5,389 |
Eric Novikoff's Blog
Are humans really necessary for maintaining SLAs? In today's cloud computing deployments, especially with systems like Amazon's EC2, the users' application is responsible for both measuring and taking action on application performance issues. This complicates deployment and coding, as well as tying your application to a particular cloud provider. However, I believe that the next generation of cloud deployment frameworks will be able to do this automatically, by integrating general-purpose monitoring applications with policy-based cloud management engines.
When I was watching the recent the election returns on CNN, I wasn't sure what was more amazing: Obama's historic victory, or CNN's technology. CNN was able to display up-to-the minute results of each state's elections simply at the touch of their news anchor onto the screen of an election-reporting system. The anchor could touch a state, then touch a metric, such as various demographics, and instantly cut the election results up by age, exit poll answers, or racial composition. It blew me away.
But it also reminded me of trying to manage a complex set of application deployments into the Cloud - a virtual private data center.
When you take into account that a reasonably complex multi-tier application with significant load can consume tens of virtual servers, all of which need to function successfully in a coordinated ballet, you realize you need the kind of information and analytic capabilities that CNN has available, just to tune it and keep it working. Because of this, we've invested in an amazing remote monitoring package, NimBus, which we provide as a service to our hosted customers as well as other customers. NimBus allows measurement of pretty much any parameter inside a virtual server or the applications running inside of it, from simple (but important) aspects such as CPU or memory utilization, to more complex metrics like database queries per second, slow query count, or pages served per unit time from a web server. In addition, NimBus can perform user-experience validation by running synthetic (fake) transactions against an application and reporting what the user experiences in terms of response time and page correctness.
All of this is summarized on a customizable dashboard, much like CNN's election status screen:

So, armed with this information - and hopefully not overwhelmed with too much information - we (or our customers) can tune and adjust their applications for appropriate cost/performance tradeoffs or diagnose performance or efficiency issues. It has produced great results for the customers who implemented remote monitoring, improving their application response time and uptime, as well as reducing costs.
However, the road hasn't been easy. The Cloud, by its very nature, is constantly in flux, mutable. This presents a contradiction in goals to an organization: to optimize something, it needs to be stable so you can measure it and make changes; yet to get the best economies out of the cloud, you need your infrastructure to be elastic, scaling on demand. Because servers can come and go, and IP addresses can change, setting up a monitoring system and keeping it running isn't easy. How can you monitor Apache server #2 if it is only instantiated when the web site's load is too high for one Apache? Luckily, most of our clients' deployments don't change radically over the short term, so the monitoring package can be set up and continue to run for quite a while before it needs reconfiguration. However, for very elastic loads, you need to either observe the results of your cloud deployment instead of its internals (such as by snooping on its communications with customers) or have your automatic instance deployments also request on-demand monitoring.
Once you add monitoring to your cloud deployment, you can start to take advantage of the powerful capabilities of Total Quality Management, a management philosophy popularized by W. Edwards Deming. A core principle of TQM is CPI or continuous process improvement, summarized with the following chart:

TQM says you want to set goals for your process (in this case your software deployment), then you want to run the process (deploy the software), measure the results against the goals, and adjust the settings based on the goals to control the process to produce the desired results (typically a satisfy SLA in the software deployment world.) However, the real power comes when you report on the results of this process and then use it to take another look at your goals. The result is continuous improvements in "quality" - in other words, in your ability to deliver the results of your process successfully.
This is how we use monitoring to get the most out of Cloud deployments.
But then I had this insight: why do us - humans - have to be in the loop at all with respect to acting on the monitoring? Naturally, if the monitoring detects some sort of application or hardware failure, humans need to get involved. But are humans really necessary for maintaining SLAs? In today's cloud deployments, especially with systems like Amazon's EC2, the users' application is responsible for both measuring and taking action on application performance issues. This complicates deployment and coding, as well as tying your application to a particular cloud provider. However, I believe that the next generation of cloud deployment frameworks will be able to do this automatically, by integrating general-purpose monitoring applications with policy-based cloud management engines. At ENKI, using our monitoring services, we are already able to automate some of this policy-based management without the need for the application to be aware of the details of this process. However, a quick caution is in order: if the application isn't designed from the ground up to be elastic (for example, to have new web servers added dynamically) then all the automation in the world won't allow it to participate in automated SLA assurance.
Published January 9, 2009 Reads 5,389
Copyright © 2009 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
- Five Key Challenges of Enterprise Cloud Computing
- The Future of Cloud Computing
- Cloud Computing Journal: Current Themes & Topics
- An Introduction to Cloud Optimized Storage Solutions
- When Are We Going To Have an SLA for Microsoft Azure?
- SYS-CON's 1st International Cloud Computing Conference & Expo: Show Report
- Cloud Computing Conference & Expo Call For Papers Deadline
More Stories By Eric Novikoff
Eric Novikoff is COO of ENKI, A Cloud Services Vendor. He has over 20 years of experience in the electronics and software industries, over a range of positions from integrated circuit designer to software/hardware project manager, to Director of Development at an Internet Software As A Service startup, Netsuite.com. His technical, project, and financial management skills have been honed in multiple positions at Hewlett-Packard and Agilent Technologies on a variety of product lines, including managing the development and roll-out of a worldwide CRM and sales automation application for Agilent's $350 million Automatic Test Equipment business. Novikoff also has a strong interest in SME (Small/Medium Size Enterprise) management, process development, and operations as a consequence of working at a web based ERP service startup serving SMEs, and through his small-business ERP consulting work.
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- The End of IT 1.0 As We Know It Has Begun
- Why SOA Needs Cloud Computing - Part 1
- Cloud Expo and The End of Tech Recession
- The Transition to Cloud Computing: What Does It Mean For You?
- Reality Check at the Cloud Computing Expo
- Virtualization Expo Call for Papers Deadline December 15
- A Security Analysis of Cloud Computing
- IBM Sitting Pretty on Oracle-Sun Debacle
- Ecosystem is the Killer App for Cloud Computing
- The Cloud Has Cross-Border Ambitions
- Qt DevDays 2009 - Munich
- The Difference Between Web Hosting and Cloud Computing
- GovIT Expo Highlights Cloud Computing
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- The End of IT 1.0 As We Know It Has Begun
- Why SOA Needs Cloud Computing - Part 1
- Cloud Expo and The End of Tech Recession
- The Transition to Cloud Computing: What Does It Mean For You?
- Reality Check at the Cloud Computing Expo
- Build Reliability into Cloud Computing for SMBs
- Perhaps SOA is More Strategy Than Architecture
- Five Reasons to Choose a Private Cloud
- Virtualization Conference Keynote Webcast Live on SYS-CON.TV
- Red Hat Drops Consumer Linux, Sponsors Community Led Fedora Project
- Citrix & Dell Partner on Server Virtualization
- The Top 250 Players in the Cloud Computing Ecosystem
- Red Hat CTO Keynoting Today on The Future of the Virtual Enterprise
- Red Hat Named "Platinum Sponsor" of Virtualization Conference & Expo
- Red Hat vs Sun Battle of Words Heats Up
- Forbes' "Red Hat = Linux" Spin Angers Sun Microsystems COO
- SOA, Virtualization and Web 2.0: BEA's Deputy CTO Connects the Dots
- Getting Started with Red Hat Linux
- Red Hat to Deploy "NX" vs Viruses
- Red Hat to Compete Against SourceLabs and SpikeSource
































