In today’s complex, dynamic data center there is a haze cast over critical IT processes by a concept that we can call The Change Twilight Zone, a obscure area that falls outside the visibility of IT Ops. Many IT departments try to implement ITIL configuration management
without giving much thought to the tools required by the staff to make the configuration management service really effective. For today’s IT tasks, configuration management new tools. Going beyond the ITIL change management framework, you need an analytics-driven tool to identify those specific changes and differences that are introduced across the environment during releases, which could impact performance and stability of critical business applications. Such tools can remove the shadow inherent in the Change Twilight Zone, allowing IT to confidently close processes and validate changes in application deployments and software deployments, to know that they were implemented correctly.
Existing Tools Don’t Meet the Needs for Today’s Deployments
IT Operation teams are increasingly responsible for managing continuous application integration and data center application release and maintenance tasks, introducing formidable challenges.
Expanding on ITIL change management processes, automated application deployment software seeks to turn complex, manual operations into reliable, repeatable and error-free processes, by making release tasks simpler, and mitigating the risk of faulty application change and deployment errors. Yet, despite the widespread use of deployment automation software, this is not enough to achieve the stated reliability, requiring release validation tools for maintaining optimum availability and performance, and preventing harmful downtime.
Additional Steps in Ensuring Error-free Releases
So why spend the extra time and trouble to validate releases? Can’t deployments already be automated? Doesn’t automation ensure that everything should run as planned, with no surprises?
Well, not exactly. For release management, deployment automation still falls short in several ways.
For instance, while deployment automation software maps and executes application service processes across data center environments, this only maps what is already known, but not unknowns. Furthermore deployment automation software operates by centrally orchestrating the execution of application workflows and changes across the data center, a very complex undertaking that is that not fully automatic.
Automated Release Management Tools Only Map what is known
Automation tools create models of an environment's configuration, with each tool creating models in different ways, but with the same goal - to model the environment that is going to be created.
The fundamental problem in creating these models is that they only map what is known, and not what is not known, or clouds visibility.
This can be illustrated in a Microsoft IIS deployment, where the connection timeout parameter would be changed. For the deployment, all the parameters that will be changing are set. Yet, there are hundreds of parameters that can be changed in IIS. It is unlikely, that all the parameters are known, let alone what they are supposed to be, even by following ITIL change management processes. Furthermore, the way that the application is deployed in one environment, may not be the same as another environment, further complicating the ITIL configuration effort. There are aspects of the Microsoft IIS configuration that are impacted by its native deployment.
This model of the environment is not comprehensive, and does not include everything.
So, the result of this mapping will produce something that is incomplete, and will mean that you don't have 100% control. Only those parameters you actually defined are managed, leaving the deployment exposed to failure as it moves through environments.
Complexity and Lack Full Automation in Automated Deployment Tools
Automated release tools are designed to streamline the release management effort and the ITIL change management process. However, automated deployment tools don't function completely automatically. An operator needs to configure these tools and to ensure that there will be error-free results. Despite clear steps in the ITIL change management process, just like in software development, where bugs creep in during coding. Similarly a deployment automation system can contain bugs, even after deploying your release.
Even though you adhered to clearly outlined ITIL change management steps, by first releasing to a test environment, then to production, won't ensure that the release configuration are consistent. As described in ITIL configuration management, there are many different kinds of configurations and dependencies specific to each of these environments.
Since the automation tools can still have such errors, release validation plays a crucial role in ensuring stability for the Release Management process.
Release Validation Makes a Critical
Difference for Release Management
Even when following the ITIL change management guidelines, when you push a change from pre-production to production, or are supervising application deployment, you need to ensure that it was deployed correctly. Beyond fulfilling the goals of ITIL configuration management, only by analyzing the configuration of both the source and target environments following deployment of the release, then you can compare applications with each other. Applying this extra aspect to Release Management can ensure applications in production sufficiently match tested version, to make for a successful release.