IT’s Been a Long Time Coming: Virtualization for IT Testing
Posted May 1st, 2008 by Dennis PowellVirtualization – tagged by Gartner Group in 2001 as a killer application – has exceeded expectations as a data center cost-saving consolidation darling. As is typical with foundation technologies, a second generation of vendors is discovering ways to apply virtualization to industry challenges beyond server consolidation. For example, vendors are using virtualization as the base for application development and Quality Assurance (QA) testing environments, virtual business continuity (particularly in disaster recovery), and most recently virtual systems security.
Another use is emerging for virtualization in the area of change and release management. As production infrastructures continue to grow in size, complexity, and inter-dependency, the IT Operations groups responsible for ensuring availability and performance are struggling to control the impact of change.
Like application QA teams, IT Operations is responsible for verifying that changes to systems work as expected. However, unlike application QA teams, IT Operations is responsible for a broader range of testing requirements. IT must respond to a variety of change requests for not only new applications and updates, but also patches, configuration changes, security fixes, and hardware and operating system modifications. IT must determine the impact of change to very complex multi-tiered production infrastructure stacks with multiple inter-dependencies, including tiers and systems that IT may not even own. IT also must protect the production infrastructure from downtime and degradation while deploying this myriad of changes.
The sheer volume of changes put pressure on IT to deploy untested changes into production. Referred to as ‘patch and pray‘, this occurs because some changes are not considered extensive enough cause significant impact, and other changes require too much setup and execution time to test. Other changes are ‘tested’ on a table top through manual simulation with paper and pencil. Still others are tested, but only after they have been deployed into the smallest or least visible production system where there will be fewer complaints when a problem occurs. (In a previous blog post, Joe Pendry discussed Testing environment shortcuts for IT Operations)
IT groups have proven to be most successful in controlling the impact of change to production when they demonstrate characteristics of ‘testing maturity‘. These characteristics call for IT: to build and maintain staging and testing environments, test all changes regardless of size and scope, test every change across the pre-production environment to determine the end-to-end impact of changes, adhere to change and release management best practices, and schedule changes to occur on a regular basis rather than making ad-hoc changes.
Although many organizations strive for testing maturity, it takes more time, effort, budget, and expertise to do so than most organizations can support. The time alone that is needed to build test environments that represent the real complexity and configuration of production is daunting. In addition, it’s very difficult to maintain staging environments to match the continual drift of production configurations. As a result, few IT groups can manually build physical staging environments and test changes at the speed that is needed to meet business objectives.
With such pressure on IT, virtualization is viewed as an ideal technology for addressing the challenges of IT pre-production testing - because it helps IT satisfy testing maturity requirements. IT Operations is an area that is ‘ripe’ to benefit from virtualization as an enabler of effective change and release management. It offers a host of benefits:
- Gives time back to IT to test all changes. Virtualization has long been lauded for speed of provisioning. It is exponentially quicker to import production components into a virtual staging environment rather than requisitioning and building a physical staging environment.
- Helps IT perform more productive testing. Just as virtualization consolidates under-utilized resources onto a smaller number of machines for production processing, it maximizes the host server’s resources for test processes. Virtualization also helps IT quickly establish multiple staging ‘sandboxes’ to test different infrastructure configurations and scenarios.
- Expands testing breadth. Within virtual staging environments, IT tests against an imported production software configuration that represents what is actually running in production at the time of import. Changes can be tested across the representative multi-tiered infrastructure stack to detect unexpected impacts and confirm that inter-dependencies are accounted for.
- Universally supports change and release management best practices. IT can make and test the same type of changes against tiers of a virtual infrastructure stack that they can make and test against physical and virtual production infrastructure tiers.
- Helps IT test according to scheduled testing dates. The import process gives IT the flexibility to easily capture, stage, test, and replace components as needed. IT can prepare the right staging and testing environments in advance of scheduled testing dates, rather than being pressured to test changes according to whether IT has the ‘right’ staging environment available at the time that the change is received. In addition, IT can also quickly assemble staging environments for on-demand testing when required.
We expect to see more and more organizations turn to virtualization as the technology to enable effective, efficient, and increasingly mature testing of changes scheduled for production systems.
Virtualization for IT testing – it’s about time. It’s also about budget, expertise, and testing maturity!
Popularity: 5% [?]
Filed Under: IT Operations, Testing, Virtualization















Leave a Comment