Building the Next-Generation Datacenter - A Detailed Guide / Stage 3
Automation and orchestration
Feb. 14, 2011 06:15 AM
In parts one and two of this article, we provided an overview of the CA Technologies virtualization maturity life cycle, and focused on server consolidation and infrastructure optimization. IT organizations that have successfully consolidated and optimized their virtual infrastructures face a unique set of virtualization management challenges. Server provisioning that used to take weeks can now be achieved in minutes, and results in increased virtualization adoption within the business. This increased adoption results in 'VM sprawl' (the problem of uncontrolled workloads), increased provisioning and configuration errors, and the lack of a detailed audit trail - all of which significantly increase the risk of service downtime.
Organizations that try to tackle this problem with increased manpower will fail to get their hands around the problem. In addition, IT managers / CIOs don't want expensive IT staff to do mundane, repetitive tasks, but instead focus their time on important strategic initiatives. In this third part of the article, we focus on the automation and orchestration capabilities that are extremely essential to tackle VM sprawl, reduce provisioning errors, improve audit capabilities, and achieve the significant savings in OpEx promised by server virtualization.
Control VM Sprawl
Organizations face multiple challenges when trying to automate and orchestrate their virtual environments and obtain the reduction in OpEx achievable by server virtualization. These include:
- Faster provisioning of standardized servers / applications into heterogeneous virtual and cloud environments
- Process integration across heterogeneous platforms, applications and IT groups
- Standardized configuration and compliance
The following section addresses the tasks and capabilities required to incorporate automation and orchestration capabilities within the virtual environment, thus helping control VM sprawl and reduce OpEx.
The following is a high-level plan for a sample project to automate application provisioning and build associated orchestrations. The timelines and tasks in Table 1 present a broad outline for a lab management project with approval orchestration, showback, and the ability to test composite applications spanning multiple VMs. Other sample projects could be an automated self-service reservation management system, production / staging environment management, demos on demand capability, educational labs, etc. The IT capabilities required for these projects are very similar, but the design and workflows required will be different. The 3-4 person implementation team suggested for the project is expected to be proficient in project management, virtualization design and deployment, and systems management.
Table 1: Automation & Orchestration project plan
A successful automation and orchestration project necessitates a structured approach that should consist of the following high-level tasks. Each task includes key objectives and possible challenges, articulates a successful outcome, and more.
A lab management system enables IT organizations to provide a Web-based self-service reservation system so that users can reserve and deploy customized server and virtual machine instances without administrator intervention. The system design begins with application/systems consultants interviewing IT administrators and users to better understand the business requirements and workflows. The requirements should be captured, analyzed, and refined over multiple interviews and/or white-boarding sessions, and result in the development of comprehensive workflows. A well-defined checklist should be used to identify important details such as:
- Usage characteristics, roles and access entitlements of the various users
- Operating system / other software needs and system maintenance requirements
- Approval workflows, reporting needs, HA/DR requirements, etc.
The system design phase should result in the creation of a comprehensive project plan that clearly details the deliverables, defines timelines, contingency plans, etc. and is approved by all the key business and IT stakeholders.
Resource Pool Deployment
The lab management system will be required to serve several departments within the organization - each of which may have different availability requirements. Resource pools are a very easy and convenient way for IT administrators to manage departmental requirements. Setting up resource pools involves:
- Defining resource pools to better manage and administer the system for different departments / organizations. Resource pool definitions should consider service level / Quality of Service (QoS) requirements of the applications supported by the resource pools, HA and BCDR requirements, etc.
- Attaching appropriate compute, network and storage resources to the resource pool
- Integrating with performance monitoring products to consume data on usage thresholds and perform dynamic balancing of the resource pools
Careful planning during resource pool design and deployment will significantly reduce manual administration requirements and help desk calls during regular operations.
VM Template and Lifecycle Management
Template-based provisioning capabilities are present in all automation products. This task involves creating VM templates, defining a default lifecycle for provisioning and de-provisioning VMs, etc. Careful consideration should be given to the following during this phase:
- Software license requirements and integration with asset management products, if necessary
- Integration with identity management products to import user and role information and providing a personalized experience to the users
- Setting up template availability rules for different user roles, and orchestrating workflow, if necessary
A properly configured VM lifecycle significantly improves the user experience, reduces help desk calls, and helps control / arrest virtual sprawl.
Workflow orchestration goes hand in hand with the automation system, allowing organizations to design, deploy and administer the automation of manual, resource-intensive and often inconsistent IT operational procedures. For the lab management system discussed here, workflow orchestration will incorporate:
- Design of essential workflows such as reservation / access approvals, system availability / change notifications, etc.
- Integration with relevant enterprise systems such as email, identity management / LDAP, asset management, etc., to enable the workflow
- Execution of the workflow while maintaining insight into the process, audit records, and other details for administration and compliance
A good orchestration engine will speed the delivery of IT services while helping to remove manual errors. Defining, automating and orchestrating processes across organizational silos that use disparate systems helps improve productivity while also enforcing standards.
Showback is essential to inform users about the cost of their system reservation and report on their usage. It's different from chargeback, which integrates with financial systems to provide a comprehensive bill to the business units requesting resources. Showback provides users with a comprehensive view of their costs depending on the reservation options, duration / time of reservation, etc. It also allows administrators to generate detailed usage reports by Lines of Business (LOB), geographical location, asset type, etc.
During the showback configuration task, reservation options should be evaluated and costs assigned to the different options and services offered in the lab management system. The system should either be orchestrated to get these details from other financial / asset management software or approximate values should be derived from previous metrics available within the IT organization.
Monitoring, Production Testing, and Final Deliverables
The monitoring and production testing for this project should include comprehensive QA testing and beta rollouts if possible. The final deliverable should document the system design, deployment, testing and orchestration details for knowledge transfer. It should include:
- An architecture and design guide that will document client business requirements combined with best practices guidelines
- An assembly, configuration and testing guide that will enable building the system in accordance to the abovementioned architecture and design guide
Formal user focused training customized to the architecture referenced above will facilitate knowledge transfer of final design and usage policies/procedures as well as level set knowledge base among the entire user group.
In Part 3, we focused on tackling problems such as 'VM sprawl' (the problem of uncontrolled workloads), increased provisioning and configuration errors, and the lack of a detailed audit trail - all of which significantly increase the risk of service downtime. In Part 4, the final part of this article, we will focus on building and maintaining a dynamic datacenter - an agile IT environment that is service oriented, scalable, and secure.