Skip to main content
Skip to main content

Terraform

Audience: Cloud Engineers and DevOps practitioners.

Purpose: Infrastructure as Code for provisioning and managing cloud resources.


Overview

Terraform is an open-source Infrastructure as Code tool that enables you to safely and predictably create, change, and improve infrastructure.


Training Resources

Instruqt Training

Access HashiCorp's official training platform:

Training Link: play.instruqt.com/hashicorp/invite/ad10y7qrpt2c

CourseLevel
Terraform Foundations101
Terraform Module Lab102
Collaborative Infrastructure as Code201
Terraform: Cloud Compliance and Management300
Advanced Sentinel Governance400

Additional Resources

ResourceLink
Terraform Registry Badgesterraform.io/docs/registry/providers
Cisco ACI Automationblogs.cisco.com/developer/terraform-with-aci-1

TAMU Terraform Modules

ModulePurpose
terraform-google-project-factoryGCP project creation
it-ae-tfmod-vra-linux-deploymentAggieCloud Linux VMs
it-ae-tfmod-vra-windows-deploymentAggieCloud Windows VMs

Authentication

Configure provider authentication for each cloud platform:

Azure Authentication

Use Azure CLI or Service Principal authentication.

provider "azurerm" {
features {}
}
AWS Authentication

Use AWS CLI profile or environment variables.

provider "aws" {
region = "us-east-1"
}
GCP Authentication

Use Application Default Credentials or service account key.

provider "google" {
project = "your-project-id"
region = "us-central1"
}

State Management

Store Terraform state remotely for team collaboration:

  • Azure: Azure Storage Account with blob container
  • AWS: S3 bucket with DynamoDB for locking
  • GCP: Cloud Storage bucket