Infrastructure as Code (IaC) is an invaluable DevOps practice in which descriptive languages are used to automatically provision infrastructure resources in the cloud. The use of IaC helps cloud developers do more with less and puts them at a substantial advantage over companies that don’t embrace an automation-first approach.
Advantages of IaC
For many technology teams, provisioning and managing infrastructure in the cloud means engineers are manually clicking on buttons in a UI console to create a VM or a bucket of storage. It also means those same engineers must remember what they did initially and manage it ongoing manually as well. This is time consuming and creates infrastructure that is a difficult to maintain and support.
Infrastructure automation tools like Terraform and Ansible, however, allow developers to create a repeatable process when provisioning and managing infrastructure. By using these tools to work directly with the infrastructure, developers can lower their overhead and reduce the amount of effort it takes to maintain their systems. By leveraging IaC to deploy and manage your applications and infrastructure coupled with the integration of modern DevOps tooling though IaC (like DataDog for automated monitoring, PagerDuty for automated incident management response and escalation, DivvyCloud and Forseti Security for automated management and remediation of security incidents), you can empower developers to become full-stack engineers following the Google practice of Site Reliability Engineering. This enables teams to develop better products quickly, with fewer defects and higher uptime.
Implementing IaC
CoreLogic has fully embraced the DevOps practice, particularly Site Reliability Engineering. We’ve made IaC mandatory for everything we host in Google Cloud Platform (GCP). Because of our commitment, we have very repeatable processes. Our developers are writing everything, turning their operations into more development work than in traditional operations, and bringing it into the actual teams themselves rather than an outside organization.
Using this approach, we were able to successfully spin up Pivotal Cloud Foundry foundations in six regions and across four networks in a matter of a few days. Now that the work is done, we can continue to spin up new servers in a fraction of the time.
DevOps practices such as IaC are increasing the efficiency and versatility of developers, ultimately putting them more in control of their own destiny. We at CoreLogic are enthusiastic about the benefits that this approach provides to our entire development cycle, helping our employees build better applications to benefit our end users.
By Steven Myers, Principal, Cloud Solutions