What is IAC (Infrastructure as Code) !!

Hey folks so recently i started working more with IAC (Infrastructure As Code ) based tools like Terraform and Ansible and wondered how it can be leverage to make a DeOps/SRE guy tasks simpler and more reliable.

As I have embarked on the journey to understand how we can manage and maintain an infrastructure of the size of lets say a seed startup to a full fledged company let me take you through the part 1 of the story , What is Infrastructure as Code ?

Intro ..

Once upon a time… In the era of booming Cloud Computing , people started shifting from directly working with Datacenters to clouds like AWS, GCP where deployment of a load-balancers was just a click away!!
It was a dream come true for Software developers, Sys Admins as they no more have to manually juggle around different configurations on deploying an application, exposing it to the internet and so on .

But as we know every good story has a villan and so does the story of Cloud. And in this case the villan were many , let me take you through…

  1. Remembering what is where ?

  2. Automation of tasks such as provisioning resources etc.

  3. Scalability is a big factor and taking this into account in the early stages helps you not have to worry much for the future when buisness scales.

  4. Consistent infrastructure is again one of those topics which startups usually doesnt give a fuck about. But having this makes a people working on the code way easier.

  5. Reproducability with cloud even though you do get APIs to provision and manage resource but isnt it a task on its own when you have to customize it ?

  6. What if a Disaster strucks ? then you need to be able to just run one command and everything should come up in no time

Now some of the above mentioned villans might be small or some might be big depending upon a company’s requirements.
Warriors whats that one thing that can be versioned, portablem consistent and reproducible….. CODE!! . What if the infrastructure was a code!!

Bang !! what if you have infrastructure written as a lines of codes just like your web application and with just a command you can do multiple tasks that otherwise has to be done manually by click click clicking !!

Now in the backend tools like Terraform which is majorly used to provision Cloud resources use AWS or GCP cloud API calls to do those one click magic . But we dont have to worry on that , we got a wrapper over those APIs.
We can just put some variables and values in , write some fairy tale lines of codes and shabang!! We can have our infrastructure setup in no time.

Note: Will explain in detail after the interval

…………………TO BE CONTINUED