Infrastructure as Code (IaC): The Next Generation of IT Automation
In the recent analysis of Dell EMC and VMware IT Transformation Workshops, CIOs continue to prioritize initiatives that help to accelerate delivery of software and applications for the business. The top emerging priorities for CIO’s were the desire to achieve continuous deployment (89%) and DevOps (87%) based on anonymous customer data.
For many of our Dell EMC customers, efforts to accelerate software delivery velocity and drive cloud application transformation have initially and understandably focused on developers. ‘Top down’ DevOps initiatives have focused on creating continuous delivery (CD) pipelines that eliminate the manual processes, hand-offs and bottlenecks associated with the software delivery lifecycle (SDLC) and underlying value stream. Particular focus has been placed on streamlining and automating source code and build management, integration and testing, as well as overall workflow.
As the DevOps name indicates, infrastructure and IT operations are also a critical, integral part of the story. Automating provisioning of development, test and production environments and related infrastructure is also critical to increasing overall software release velocity. Just as with application source code, infrastructure configurations can also be treated as pure code. Treating configurations as code provides the same benefits as it does for applications, including version control, automated testing, and continuous monitoring. Treating configuration as code and handling changes through CD pipelines helps prevent ‘snowflake’ infrastructure deployments that cannot be reproduced and ensure that configuration errors never make it to production.
But while the automation of provisioning with Infrastructure as Code (IaC) and pipelines is clear, many organizations to date have relied primarily on standalone automation tools and one-off scripting. While this approach certainly is an improvement over manual workflows and processes, IaC provides far more than traditional automation practices. It automates full-stack deployment of infrastructure and apps; it offers source-controlled infrastructure and packages. It introduces software development practices that are applied to infrastructure build and operate procedures; infrastructure self-monitors system configurations and infrastructure self-heals to known-good state or version.
Cloud Native IT Operating Model
To provide the AWS-like experience that developers often seek, IT organizations are finding that IaC is required for private cloud and internal CaaS, PaaS and IaaS services. Organizations are either launching IaC initiatives that extend and leverage DevOps efforts, or in some cases are even launching pure ‘bottom-up’ IaC initiatives focused on leveraging CD pipelines to define and manage the creation, configuration, and update of infrastructure resources and services. IaC is critical to enabling IT to operate like a public cloud provider, and provide the speed, flexibility and resiliency needed to support Digital Transformation.
One of our recent Dell EMC Consulting customers in the technology services sector wanted to provide their developers a common experience across their multi-cloud environment and deliver “public-cloud responsiveness” using an on-premises converged infrastructure solution. The key desired outcomes from their DevOps / IAC initiative was to minimize the inconsistency when building infrastructure components, while improving the efficiency of deploying both the cloud and on-premises infrastructure. As with most DevOps / IAC transformation programs, driving culture and behavior change was a key priority. The customer was seeking to cultivate internal knowledge and practical experience with Infrastructure-as-Code and DevOps concepts & tools and transform disparate client teams into one that follows Infrastructure-as-Code and DevOps behaviors.
Our Dell EMC Consulting team worked with the customer to use Infrastructure-as-Code and DevOps methodologies to architect & automate the deployment of high-performance converged infrastructure platform, and to develop a customer fulfillment pipeline for provisioning of both cloud and on-premises infrastructure resources including compute, storage and networking. Our Dell EMC Consulting team also provided coaching and mentoring that enabled the customer to enable a pipeline-driven Cloud platform for IaaS (and eventually PaaS & CaaS).
As a result of their DevOps / IAC engagement with Dell EMC Consulting the customer was able to:
- Accelerate the fulfillment of Infrastructure to platform teams regardless of public cloud or on-premises requirements, and deliver IaaS using Infrastructure-as-Code and CD tool chain at end of sprints.
- Provide resilient on-premises Cloud Platform in place for VM & Container services.
- Enable optimized, automated flow, cutting provision time for developers.
- Transform disparate internal teams into one integrating an Infrastructure-as-Code and DevOps foundation and pipeline first discipline.
Critical to the success of this and many of our other customers is recognizing the central role that CD pipelines and treating infrastructure configuration as code can play in infrastructure automation.
We’d love to hear about the challenges you face on your DevOps / IAC transformation journey, see more information on our Dell EMC DevOps and IaC Consulting services.