Thursday, February 23, 2012

Industry Perspective: APM Best Practices for Migration Projects

by Frank and Todd

Over the years we have learned quite a bit about making application migrations successful. Enterprises often seek our expertise on how to apply APM technologies at different phases of migration projects. Our partners often seek assistance with filling gaps in their broader service offerings related to server consolidation and virtualization, datacenter outsourcing, cloud computing, and network services. Here is a greatly simplified list of questions that APM can address:
  • Will the migration be successful? Will applications perform?
  • How best to execute the migration?
  • How to manage performance once the project is complete?
Given the recent burst of interest in this area, we thought it might be useful to share some best practices, illustrated with an example. The example is based on a successful project completed by consultants with deep OPNET APM expertise.  The customer was a large government agency with similar requirements to many other commercial and government enterprises around the world.

This enterprise was convinced of the operational and cost advantages of a well-publicized datacenter consolidation initiative, but serious concerns about application performance prevented progress. They had a loosely documented application architecture, and limited visibility into application performance. Here is what was recommended and implemented:

  1. Application Performance Baselining. Before migration to a consolidated datacenter, characterize application usage and behavior. Data collected by APM solutions can help to accurately size the new infrastructure, eliminate pre-existing performance problems, and determine which applications are suitable for migration.
  2. Application Dependency Mapping. A clear understanding of the intricate front and back end client-server relationships is vital to executing the migration since physically separating highly dependent application tiers can cause serious performance degradations (or in some cases, complete failures). Ideally, clear run-time dependency maps should be automatically assembled from the APM instrumentation already in place from the baselining exercise.
  3. Application Migration Planning. Once the applications suitable for migration have been identified and their dependent components reviewed, predictive analysis on key application transactions should provide accurate insight into post-migration performance. The models used for this analysis are driven by a few key parameters of the infrastructure, as well as application profiles captured from the live environment (before the migration).
  4. Post-Migration, Production Monitoring. After migration, it’s important to verify that performance objectives are met on an on-going basis, and when they are not, why not? This is particularly important when a new department or service provider is involved, for obvious reasons. Who is responsible? What to do? The most meaningful way to monitor application performance is from an "end user transaction" perspective rather than solely from a resource perspective. APM technologies can make it easy to see individual user transactions for multi-tier applications through SSL, through Citrix sessions, across virtual and physical systems, and to highlight specific database or web queries. When considering how to monitor application performance from the end user’s perspective, you may find it useful to review Russ' prior blog post ("Making Sense of End User Experience Monitoring").
By implementing best practices, this customer and many others have achieved success.