Infrastructure as a Code (IaC)
IaC is the practice of managing and provisioning infrastructure in a declarative way via definition files. You describe the desired state in definition files and let a tool apply the configuration to your environment.
Don’t worry, despite the presence of the word Code that does not mean you’ll need to learn how to code in C++ or Java or other advanced programming language. Most IaC tools allow configuration to be defined in YAML or a similar human-readable markup language.
IaC automates and replaces manual operations for infrastructure configuration and provisioning. Essentially, all actions that can be done using your cloud provider UI or CLI manually can be done with an IaC tool. Instead of clicking through the dashboard to configure and provision VM every time you need one, you could describe the desired number and type of VMs you need in IaC and keep that configuration in Git or other version control. Invoking an IaC tool with...