The Rise of Application Operations and the Role for Next Generation APM Solutions

In, “Is it Time to Reorganize Data Center Operations“, we proposed the IT Operations be reorganized into “Virtual Operations”, where all of the teams that were responsible for resources supporting Virtual Operations (System Engineering, Servers, LAN’s, WAN’s, SAN and Storage) all reported to one person who was responsible for ensuring the delivery of viable virtual environment. In the same post, we proposed that how applications are supported in production, get reorganized into “Application Operations” where there would be one team responsible for the operation of all applications (purchased and custom developed).

Application Support Today

Let’s take a look at how applications are supported today. In most companies, applications are supported in one of four ways:

  1. In the case of strategic custom developed applications, generally a portion of the Development team is responsible for production support. This usually means dedicated resources that report to the same person that is responsible for the further development of the application.
  2. In the case of strategic purchased applications, generally a team of people are dedicated to these as well. For example for SAP, many enterprises have an “SAP Center of Excellence” which is devoted to evolving SAP in order to meet the needs of the business.
  3. For many “tactical” applications the support is in IT. What this means in fact is that the application is not really supported at all – the environment for the application is supported. This means that the web servers, .NET servers, Java servers, and database servers are supported by IT, but no on is really supporting the application.
  4. For many niche applications there is no support at all. It is often left to the users of these applications to support them themselves with sometimes a little assistance from the IT staff.
So What is Changing
This disjointed and inefficient way of supporting applications will simply not make cut into the dynamic and cloud based enterprise. In fact the following factors are putting tremendous pressure on this model:
  • Agile Development. Agile Development techniques mean that new functionality is dropped into production on a very frequent basis – often daily or weekly. This requires a competent production support function simply due to the rate of change in the applications.
  • Application Diversity. Custom developed applications have now been developed in countless different ways ranging from FoxPro and dBase, to Visual Basic, C, C++, MFC, COM+, to the more recent frameworks like Java, .NET, PHP, Ruby, and Python. Add purchased applications to the mix and in some cases applications that are built upon mixtures of custom and purchased applications, and what you end up with is an environment of unparalleled diversity and complexity.
  • Virtualization. Yes many tactical applications have been virtualized without their users, or in some cases even their owners knowing about it. But this will not fly for production, business critical and performance critical applications. The users and owners of these applications will demand that someone (Application Operations) take responsibility for the performance, availability and integrity of the application in  production.
  • IT as a Service (Private Cloud). ITaaS brings the automatic provisioning of customer initiated workloads into the system. We are not far way from the day when users are going to define the application functionality that they want in a Service Catalog and the Private Cloud Management stack will deliver it to them. This brings up the prospect of new applications of an indeterminate architecture showing up in the environment on a random basis.
  • Public Cloud. So now parts or all of your applications will run on someone else’s infrastructure. In most cases someone who will be incapable or unwilling to give you any assurances as to the actual performance of that infrastructure – which means that all that it will be possible to manage will be the application itself.
Application Operations and new Requirements for APM Solutions
Given the above changes create a need to manage ALL applications in production. This is very different than what the APM industry has focused upon for its entire existence to date. APM vendors have always focused upon finding the N most strategic applications in the enterprise, and then demanding a healthy price to the products to manage these applications (first generation APM solutions often cost more to buy than the entire server hardware and software stack that they manage). The changes above create the following new requirements:
  1. Comprehensive Application Coverage. APM solutions needs to work for every application that the enterprise owns. No matter whether it is purchased, custom developed, what it is written it, whether it is two tier client server, or N-tier, SOA, or whatever.
  2. Automatic Application Discovery. Given that APM solutions need to work for every application they need to work for every application by discovering them and automatically instantiating monitoring.
  3. Zero Configuration. Given that new applications will be showing up on a continuous basis (driven by ITaaS) and changes to applications will be occurring constantly (driven by Agile Development), APM solutions will need to not only discover the applications as they show up and change, but also either require no per application configuration, or be capable of configuring themselves.
  4. End-to-End and Hop-by-Hop Response Time Management. Many first generation APM solutions tried to infer the performance of an application by looking at its resource utilization statistics. This does not work for a variety of reasons in dynamic and cloud based environments. The only way to ensure the performance of an application in these environments is to measure it they way that users do – by response time.
  5. Application Based Capacity Management. In virtualized and cloud based environments knowing how much resource is being used by an application may neither be possible nor many it be relevant. Capacity simply means that you can execute the number of transactions that you need to run per second or minute, at the response time required by the users. Next generation APM solutions are needed to understand the relationship between load and response time.
  6. Application Based Chargeback. Next generation APM solutions will make it possible to draw price/performance curves for different execution options for an application owner and let the application owner decide where to run a set of transactions based upon those tradeoffs.
  7. Automation Triggers. In order for Application Operations team to succeed, it will have to over time automate as much of the day-to-day operations as possible. This means that the APM solution will need to be tightly integrated with the underlying virtualization platform so that automated actions can be taken to ensure application performance and availability.
APM Solutions for Application Operations
Product Deployment
On Premise All physically hosted and virtually hosted TCP/IP based Applications

green check

green check green check

green check

Confio Software
Ignite VM
On Premise All physically hosted and virtually hosted applications based on Oracle, SQL Server, or DB2  green check  green check green check
Correlsense On-Premise All applications running on Windows, Linux, AIX, Sun OS, AIX green check green check green check green check green check
ExtraHop Networks On Premise All physically hosted and virtually hosted TCP/IP based Applications green check  green check  green check green check green check
VMTurbo On Premise Any vSphere based app with a measurable workload green check green check
vFabric APM
On Premise All TCP/IP based Applications running on vSphere

green check

green check  green check  green check green check
The need to virtualize every application, along with the need to support constantly arriving new and newly changed applications will drive the creation of an Application Operations function in the enterprise. This function will need to be supported and enabled by a new generation of APM tools that meet the new requirements of the Application Operations team.