This article originally appeared in the Sept. 2011 issue of Customer Interaction Solutions
Deploying and managing enterprise-class applications in any data center is not trivial, and the level of complexity can vary widely depending on the type of data center.
For most organizations the deployment lifecycle for any application is a continual, never-ending process: from spec to design to staging to testing to deployment…and then start the process over with the next latest and greatest version. When IT adds in new infrastructure challenges such as deploying an application in the cloud, things can begin to spin out of control. It’s no wonder that enterprise IT often feels like it’s chasing its own tail.
Virtualization certainly made an impact on the application deployment lifecycle, but not in a completely positive way. The speed at which applications can be tested and deployed in the data center is drastically increased with virtualization – the physical requirements of sourcing a new physical server, adding it to the data center, re-wiring the networking, all of those manual labor pieces are basically removed once the virtualized infrastructure is in place. But the nature of the application deployment lifecycle changes with virtualization and becomes more complex; there are many more automated components involved in dynamic provisioning than there in the static data center. Faster to deploy means that much of the infrastructure has to be already in place; otherwise, applications won’t function as expected or won’t run at all because they’re misconfigured. Most IT departments would agree that a highly virtualized dynamic data center is more efficient than a physical, static data center, but it’s also a more complex running environment for the applications.
The same can be said for an off-premises cloud data center. Cloud gained its incredible momentum toward mass adoption due to the extremely low barrier to entry. With nothing more than a credit card, any business organization can spin up application resources with a cloud provider and be up and running in minutes with virtually no IT experience. IT had no choice but to adopt the cloud model because the business was moving there without them, yet IT was tasked with managing these new off-premises application resources. Creating new cloud-based applications may still be trivial for anyone, but managing those business-critical applications as part of the internal infrastructure has become a daily challenge for IT.
Any application deployment balances the line between flexibility and risk, factored heavily on where the application resides. The smallest on-premises data center – remember the server closet? – offers applications the most flexibility and control, but contains the highest risk. These smaller DIY data centers also typically come with a higher capex and opex and require a fully developed internal infrastructure. At the other end of the spectrum are off-premises data centers, including solutions offered by cloud providers, where applications can be provisioned quickly with very low cost but are completely dependent on the infrastructure offered by the cloud provider. Most critically for the application, off-premises deployments come with new and different management limitations that don’t exist in on-premises data centers. When an application is located in the internal data center of any size, IT can use any management tool they would like for monitoring, alerting, and provisioning new resources. When the application is running on a cloud provider’s infrastructure, IT is beholden to the provider’s management tools, which often can be limiting, unfamiliar, and incapable of integrating with existing on-premises tools. The risk of managing the basic functions of any application increase drastically when control of the application running environment and infrastructure is turned over to a third party.
This application deployment risk vs. reward debate for moving applications into the cloud is almost a brainteaser. One of the key advantages of cloud computing is the ability to abstract the large number of components required to deploy a new system. Rapid provisioning requires both a solid workflow – a series of repeatable events based on environment that the provisioning system can call when needed – and a pre-determined configuration for each of the components on which the new system relies. Yet infrastructure abstraction becomes a management burden when application services span beyond the data center, either to secondary and redundant data centers or to off-premises cloud providers. Simplifying the application deployment lifecycle with dynamic cloud-based provisioning drastically increases the complexity of managing those applications once they’re flying in the cloud. How can IT solve this conundrum?
The key to moving applications into the cloud successfully – and if you’ve been reading this column for any time you’ll recognize this theme – is managing the process throughout the entire application deployment lifecycle and controlling flexibility vs. risk. The cloud can offer enterprise IT a completely new, more efficient application deployment model, but it’s a model that needs to be adapted to the business to guarantee application success, not the other way around.
TMCnet publishes expert commentary on various telecommunications, IT, call center, CRM and other technology-related topics. Are you an expert in one of these fields, and interested in having your perspective published on a site that gets several million unique visitors each month? Get in touch.
Edited by Stefania Viscusi