Automation and why it's a must have for the cloud

If you have ever worked with me on a cloud project you will know that I try and automate what ever I can. This is not just because I enjoy using tools such as pipelines and Terraform, it’s because using tools such as Terraform and pipelines allows me to not have to repeat myself as much as I would have to if I was having to create resources manually in the cloud.

Most Cloud engineers will know nothing generally goes right 100% in a project and you will need to test, destroy, redeploy and repeat over and over again. If you are having to do this manually every time, it sucks up so much time. This is why I try to use Terraform and such in every project I can; build the module once and you can destroy and rebuild in a matter of minutes to sometimes just seconds. 

To give you an example of how powerful Terraform can be let’s compare a scenario.

A client has asked for a greenfields  environment to be setup. This environment needs to have a dev, test, and production environment and each environment will be identical and will have the same amount of resources and networking. 

If you were to do this manually, you would have to create each environment and its resources manually and this is just a pure waste of time. 

Using Terraform you can go ahead and create your dev environment modules, such as your networking, virtual machines, firewalls, security policies, users and groups etc and deploy it into dev, and once you got that glorious green pipeline build tick, you can reuse all that code you wrote for dev and deploy that for test and then onto prod.

Write it once.

I guess what I am trying to say is that if you are working in the cloud and not automating with CI/CD tools you are at this point just making things hard for yourself. The Cloud Engineer role is in my eyes no longer a typical ‘engineer’ role and more of a developer role, and I can see why that would scare some people off because if you don’t code or have never coded it’s seems pretty scary, but this is where the Cloud is going.

Let me know how you are using automation in your role and the tools you are using, I would love to hear about them!