Ideas for better Infrastructure as a Code (IaaC)- Terraform
March 6, 2020 Leave a comment
Learning syntax of any programming language is easy but semantics is not that much easy
Purpose
how to manage tags effectively with fewer errors when designing the Terraform module.it will provide a lot of benefits for tracking resources for cost, monitoring
Thought process
Currently, we can find a huge amount of terraform modules on various version control systems like Github, bitbucket…..
as per my understanding, IaaC tools like terraform provide a lot of benefits in terms of automation but if not designed properly it creates a lot of challenges for monitoring, cost tracking and security. care must be taken from the beginning otherwise it is challenging once it goes in production I tried my best to avoid various anti-patterns when we design any terraform module.
I had started contributing to avoid these anti-patterns by publishing my terraform modules on terraform registry. although these modules are for AWS same thought process can be applied to designing modules for other cloud providers.
the main motivation for designing these modules is to make the life of any Cloud Engineer easy and productive. instead of working on some useless tasks like finding resources that are not tagged, removing Ec2 in the public subnet.
Please refer to the mindmap which mainly highlights common mistakes we make while tagging or naming resources.
MindMap for designing better terraform module
https://registry.terraform.io/search?q=polganesh