Cisco
Technology
Cloud
Terraform Multi-Cloud Essentials with Proxmox (TMCEP)

This intensive 3-day training is designed to equip you with the knowledge and hands-on experience needed to leverage Terraform, a powerful Infrastructure as Code (IaC) tool, to automate and manage your IT infrastructure. Whether you are an IT professional, system administrator, or developer, this course will provide you with the skills necessary to streamline your infrastructure provisioning and management processes using Terraform.

In this 3-day class, learners will become familiar with Terraform's core concepts, explore how to provision and manage infrastructure with both on-premises platforms like Proxmox and popular cloud providers like AWS and Azure. Through a combination of theoretical sessions and practical labs, you will gain a comprehensive understanding of how to write, deploy, and manage Terraform configurations.

About the course

Course Objectives:

Upon completing this course, the learner will be able to meet these overall objectives:

  • Understand the Fundamentals of Terraform
  • Learn the basics of Infrastructure as Code (IaC)
  • Gain insights into Terraform's architecture, workflow, and core components
  • Gain hands on experience using practical lab exercises that relate to real world scenarios
  • Solidify your understanding and build confidence in using Terraform for infrastructure management
  • Provision Infrastructure with Proxmox to create, customize, and manage virtual machines, networks, and storage resources within Proxmox using Terraform
  • Build Multi-Cloud Environments leveraging Terraform to provision and manage resources
  • Learn to configure and deploy cloud infrastructure efficiently, ensuring scalability and consistency across different environments
Course content

Introduction to Infrastructure as Code (IaC)

  • Definition and benefits of IaC
  • Overview of popular IaC tools

Introduction to Terraform

  • What is Terraform?
  • Key features and advantages
  • Terraform vs. other IaC tools

Terraform Architecture and Workflow

  • Components: Providers, Resources, Modules
  • Workflow: Write, Plan, Apply
  • State management

Terraform Installation and Setup

  • Installation on different operating systems
  • Environment configuration
  • First Terraform script

Writing Terraform Configuration Files

  • HCL (HashiCorp Configuration Language) syntax
  • Variables and outputs
  • Terraform modules

Provisioning Proxmox with Terraform

Introduction to Proxmox

  • Overview of Proxmox VE
  • Key features and use cases
  • Setting up Proxmox environment

Terraform Provider for Proxmox

  • Introduction to Proxmox provider
  • Configuring Proxmox provider in Terraform

Creating Virtual Machines with Terraform

  • Defining VM resources
  • Customizing VM configurations
  • Managing VM lifecycles

Networking and Storage in Proxmox

  • Configuring networks with Terraform
  • Managing storage resources

Advanced Proxmox Configurations

  • High Availability (HA) configurations
  • Backups and recovery

Building AWS and Azure Clouds with Terraform

Introduction to Cloud Computing with AWS and Azure

  • Overview of AWS and Azure services
  • Key concepts and terminologies

Terraform Providers for AWS and Azure

  • Configuring AWS and Azure providers in Terraform
  • Authentication and permissions

Creating AWS Resources with Terraform

  • Defining and deploying common AWS resources (EC2, S3, VPC, etc.)
  • Managing AWS infrastructure

Creating Azure Resources with Terraform

  • Defining and deploying common Azure resources (VMs, Storage Accounts, VNets, etc.)
  • Managing Azure infrastructure

Advanced Terraform Techniques

  • Terraform workspaces and modules
  • Automating deployments with CI/CD pipelines

Hands-on Lab Outline

Basic Terraform Configuration

  • Creating and deploying a basic Terraform configuration
  • Managing state files
  • Troubleshooting common issues

Provisioning VMs in Proxmox

  • Writing Terraform scripts for Proxmox
  • Deploying and managing VMs

Building Multi-Cloud Infrastructure

  • Writing Terraform scripts for AWS and Azure
  • Deploying and managing multi-cloud environments