Before we had the explosion of public clouds, companies relied on computer hardware stored in either some underground locked storage, in the closet at someone’s home or anywhere between.
The public clouds are basically data centres with computer hardware placed on locations around the globe where the customer can rent themselves some hardware space. You can think of this as you and your family sharing one or more computers with your own accounts that you all can access at the same time.
The public clouds have given companies the opportunity to direct more of their focus on developing their services and products while the maintenance of the hardware, such as storage limitations or switching old disks are now outsourced to cloud providers. With public clouds come new challenges. More time for product and service development means faster growth and manual handling of cloud resources is no longer sustainable. This is where Infrastructure as Code (IaC) comes in.
We have reached the era where automation has streamlined many of our manual processes in different industries and not less in IT. IaC are templates with code that handle the automation of infrastructure setup in your IT environment. These templates are friendly to read for humans and very much like written documentation and can be read by your computer which can then communicate with the cloud providers and set up your infrastructure.
Basic knowledge of modern coding techniques and structures are recommended knowledge to have for getting started. To be able to write good templates requires more knowledge. Development and operation practices (which is a topic itself), knowledge on redeploying the templates without errors, and cloud knowledge are some of the skills you'll need to have to be good at IaC.
“There are different tools for starting with IaC. One of the popular ones is Terraform, thanks to its simplicity and well written documentation.”
Getting started with Terraform is quite simple if you have basic knowledge of modern coding techniques and structures. If you are completely new to coding, then having a friend to help you out is recommended. The steps to get started: