Although they constitute significant, ongoing investments for technology organizations, test labs are often impediments to DevOps automation and overall agility. Manual processes still rule the day in many of these data centers, creating delays that limit the access of remote users. At the same time, in-house and vendor solutions are often too rigid to assemble hybrid IT resources into production-grade test environments, plus there typically are not any boundaries in place for holding engineers accountable for their resource usage.
As a result of these inefficiencies, test lab consolidation can become increasingly difficult, despite its obvious potential to create savings across the top and bottom lines. Remote teams, for instance, that cannot quickly and reliably perform basic tasks, such as connecting test equipment to a topology, will end up just re-implementing their own testing environments. Sprawl continues in this way, even as utilization in individual labs remains low and saps the organization of money for outlays on power, cooling and space.
The solution is to turn test labs into software-driven infrastructure-as-a-service clouds, built upon consolidation of physical assets as well as cross-domain automation of infrastructure. Lab-as-a-service can further the benefits that began with server virtualization and create a centralized test data center that accommodates remote users.
LaaS brings sustainable automation to test labs
For remote users, test lab productivity is often lost due to a combination of delays and unwieldy resource management tools. Searching, reserving and connecting lab resources is typically time-consuming, with heavy reliance on local personnel. The contrast between this situation and the ideal of LaaS, in which these tasks are implemented in software and available via a self-service portal, could not be clearer.
"Today, [accessing a complex server configuration] can require a painstaking, multi-hour IT exercise including gathering machines, installing operating systems, installing and configuring applications, establishing inter-machine connections, loading data and rebooting each server multiple times," noted the authors of a 2006 VMware white paper. "In an automated virtual lab, this same multi-machine configuration can be made available for use, in seconds, with a single click of the most by an AD user in a self-service interface."
Software-based automation is the backbone of LaaS, in much the same way that it has facilitated the rise of IaaS clouds more generally. It enables straightforward access for remote users, even if they are not programmers. However, in order to be sustainable, LaaS must offer specific amenities such as:
- An object-based platform that maps all environment templates, inventory resources and provisioning and testing workflows to reusable, modifiable object building blocks.
- A system that is highly scalable, easy to administer and friendly to non-programmers, who no longer have to deal with the programmer bottleneck or rely on fragile monolithic scripts.
- Readily searchable, centralized infrastructure and resource inventory, as well as a test topology that is inventory-aware.
- Connectivity and resource states with provisioning actions for quick setup and teardown.
- Management of physical, virtual, logical and cloud resources.
- Interactive sandboxing and live customization for power users.
- A reservation system that ensures accountability and high utilization of test lab infrastructure.
To increase test lab productivity for remote users, technology organizations must move beyond manual processes as well as fixed script-based automation. QualiSystems CloudShell provides the object-based architecture and orchestration to enable sustainable LaaS. In the next part of this series, we'll look at some other best practices for LaaS.
The takeaway: LaaS requires sustainable automation, which means a Web-based reservation system paired with an object-based design that makes templates and other resources easy to search, connect and manage. QualiSystems CloudShell makes LaaS a feasible means of consolidating test labs and enabling remote user productivity.