Introduction

Introduction
Learning Terraform!

What is Terraform?

From the terraform site: "Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently". At the foundation terraform configuration is done via structured data configuration files. These files contain the information to describe how a specific service, network component is supposed to be configured.

Based on this information Terraform can generate a execution plan that configures the desired component into the state that is defined in the configuration files. As configurations change over time, terraform is capable of determing what changed and create incremental changes needed in the execution plan which needs to be applied. All this also can be verified before execution to insure that these changes are proper. With this, it is possible for the changes to happen with zero mistakes caused by repetitive tasks and human fingers.

About this Lab!

In this lab the focus will be on using Terraform as a way to provide operational rigor to your network device configurations. You will learn first how to install and use Terraform on Cisco network solutions like ACI. You will also learn how to use Terraform on some compute components to better understand how Terraform is used by DevOPS engineers.

Lab Structure

The lab is divided into separate chapters covering topics from install to usage of Terraform.

1
Introduction
2
Terraform Concepts
3
Setup Terraform
4
Cisco and Terraform
5
VM Creation
6
Advanced Terraform Concepts