We’re heading to Cloud Native Con in Paris →

Why use an Infrastructure-as-Code library?

Hugh Mooney

Co-Founder @ Hestio

Clear benefits

The benefits of adopting an infrastructure-as-code (IAC) approach to provisioning and managing resources is widely accepted. The benefits unlocked by using Hashicorp’s Terraform for this are also well documented, in short;

  1. Version Control: Terraform code can be stored in a version control system, making it easy to track changes and collaborate with others.
  2. Repeatability: Terraform IAC can be executed repeatedly, ensuring consistent and predictable infrastructure deployment.
  3. Idempotency: Terraform ensures that the desired state of infrastructure is always met, regardless of how many times the workflow is run.
  4. Automation: Terraform can help automate the provisioning and management of infrastructure, reducing manual effort and the risk of human error.
  5. Scalability: Terraform can manage multiple AWS resources and scale infrastructure up or down as needed.
  6. Improved visibility: Terraform provides clear and concise documentation of the infrastructure and its configuration, making it easier to understand and manage.
  7. Cross-provider support: Terraform can provision and manage infrastructure across multiple cloud providers, including AWS, making it a versatile tool for managing infrastructure.

At what cost and risk?

The challenge to unlocking those benefits though is to find an approach will be cost effective and minimise your risks. Developing and maintaining an IAC library can have opportunity costs for your team, to name but a few:

  1. Learning curve: Terraform is still a new tool that requires time and effort to learn and master, which can be a significant opportunity cost for teams without prior experience.
  2. Maintenance: Terraform IAC must be regularly updated and maintained, requiring ongoing effort and resources, which can divert attention from other priorities.
  3. Integration: Terraform must be integrated with other tools and systems, requiring additional effort and resources, and potentially delaying other projects.
  4. Complexity: Complex Terraform IAC can be difficult to understand and maintain, making it challenging to identify and resolve issues.
  5. Risk of errors: Using Terraform can introduce errors or unexpected behavior into the infrastructure, leading to downtime and other issues that impact the business.
  6. Limited functionality: Terraform may not have mature support for all AWS services that large enterprises use (governance, policy and organization level resources), requiring additional custom development, which increases the effort and cost of maintaining the Terraform library.

Don’t take our word for it!

A great example of the benefits vs risks can be seen from the Gartner reviews section; clear benefits gained with some of the most important challenges and risks surfaced. (Original here)

Why use an IAC Library?

Q: Is IAC (Terraform) development part of your core business or a core function of your team?
I expect the answer to that for many businesses will be “No”.

Q: Is IAC engineering how you build and operate your applications and services at scale?
If you’re reading this, then the likely answer is “Yes” – but you don’t need to be an IAC developer to gain from the benefits that adopting IAC can bring.

At Hestio, our view of the landscape for technology teams in large enterprises looks like this;

Table

Did you see any of those teams claim or want to be Terraform developers? No, neither do we. Consider using an IAC library to bring that value to your business but without the cost of designing, developing and maintaining it.

At Hestio, that is our business. Let us enable and accelerate your business so you can get on with yours.

Share

Dive into a World of Efficiency with worX

Discover how worX can transform your AWS cloud deployment with our library of low-code patterns. Simplify complex processes, enhance security, and accelerate your project timelines.

Elevate Your Cloud Strategy with fleXpertise

Gain unparalleled access to our seasoned experts through fleXpertise. Whether you’re scaling your operations or navigating complex cloud challenges, our team is here to guide you every step of the way.