Introduction to Terraform


Course Number: TRFM-104
Duration: 2 days (13 hours)
Format: Live, hands-on

Terraform Training Overview

Accelebrate's Introduction to Terraform training course introduces attendees to the advantages of developing “Infrastructure as Code” with Terraform. Students learn how to manage the deployment of different infrastructure types via the appropriate Provider plugin. Participants also discover the ease with which infrastructure resources are defined in a declarative manner, allowing resources to be created, updated, or destroyed in a quick and efficient manner.

Note: This 2-day course can be taught in 4 half-day sessions online if preferred. In addition, this class can be adapted to other AWS services or other cloud providers.

Location and Pricing

This course is taught as a private, live online class for teams of 3 or more. All our courses are hands-on, instructor-led, and tailored to fit your group’s goals and needs. Most Accelebrate classes can be flexibly scheduled for your group, including delivery in half-day segments across a week or set of weeks. To receive a customized proposal and price quote for online corporate training, please contact us.

In addition, some courses are available as live, instructor-led training from one of our partners.

Objectives

All students will learn how to:

  • Use Terraform for standing up various AWS resources
  • Apply plans to a Terraform Workflow
  • Create basic and complex variables
  • Write your own modules
  • Find information about other AWS modules and data sources

Prerequisites

Students must be at ease working at the command-line, understand Amazon Web Services (AWS) such as EC2 or S3, and have experience using an SSH Client, such as OpenSSH on Linux, macOS or WSL, or PuTTY on Windows.

Outline

Expand All | Collapse All

Introduction to Infrastructure as Code
  • Infrastructure as Code, Config Management, Idempotence
  • Terraform
  • Installation
Terraform Workflow
  • The plan
  • Applying and re-applying plans
  • Destroying resources
  • Various sub-commands
HCL Configurations
  • Providers
  • Variables
  • Resources
Variable Types
  • Variables, passing values to the configuration, Locals
  • Basic and complex types
Templates
  • Control Structures
  • Templates
Data Sources
  • Provider Data Sources
State
  • Local State
  • Using “remote state” for working in teams
Modules
  • Modules structure
  • Using modules
  • Terraform Registry
  • Writing your own modules
Provisioners
  • Local-exec
  • File
  • Remote-exec
Importation of Foreign Resources
  • Importation of resources created outside Terraform
    • terraform import
    • terraforming
Auto-Scaling & Load-Balancing
  • AWS EC2 ASG - Autoscaling Groups
  • AWS EC2 ALB - Application Load Balancer
Other AWS Resources
  • Lambda
  • VPC, EIP
  • S3, EBS
  • IAM, RDS
Best Practices
  • Terraform Best practices
  • Tooling: Linters, scanners, testers
HashiCorp Terraform Eco-System
  • Terraform Cloud, Terraform Enterprise
  • CDK
  • Waypoint, Boundary
  • Certification
Conclusion

Training Materials

All Terraform training students receive comprehensive courseware.

Software Requirements

  • Visual Studio Code (optional)
  • Terraform Plugin for VS Code (optional)
  • AWS CLI for your platform (Windows, Mac, or Linux) (optional)
  • AWS access and secret key can be provided by you or by Accelebrate


Related Topics

If you missed our free, live Terraform Fundamentals webinar, you can view the recording here.

Learn faster

Our live, instructor-led lectures are far more effective than pre-recorded classes

Satisfaction guarantee

If your team is not 100% satisfied with your training, we do what's necessary to make it right

Learn online from anywhere

Whether you are at home or in the office, we make learning interactive and engaging

Multiple Payment Options

We accept check, ACH/EFT, major credit cards, and most purchase orders



Recent Training Locations

Alabama

Birmingham

Huntsville

Montgomery

Alaska

Anchorage

Arizona

Phoenix

Tucson

Arkansas

Fayetteville

Little Rock

California

Los Angeles

Oakland

Orange County

Sacramento

San Diego

San Francisco

San Jose

Colorado

Boulder

Colorado Springs

Denver

Connecticut

Hartford

DC

Washington

Florida

Fort Lauderdale

Jacksonville

Miami

Orlando

Tampa

Georgia

Atlanta

Augusta

Savannah

Hawaii

Honolulu

Idaho

Boise

Illinois

Chicago

Indiana

Indianapolis

Iowa

Cedar Rapids

Des Moines

Kansas

Wichita

Kentucky

Lexington

Louisville

Louisiana

New Orleans

Maine

Portland

Maryland

Annapolis

Baltimore

Frederick

Hagerstown

Massachusetts

Boston

Cambridge

Springfield

Michigan

Ann Arbor

Detroit

Grand Rapids

Minnesota

Minneapolis

Saint Paul

Mississippi

Jackson

Missouri

Kansas City

St. Louis

Nebraska

Lincoln

Omaha

Nevada

Las Vegas

Reno

New Jersey

Princeton

New Mexico

Albuquerque

New York

Albany

Buffalo

New York City

White Plains

North Carolina

Charlotte

Durham

Raleigh

Ohio

Akron

Canton

Cincinnati

Cleveland

Columbus

Dayton

Oklahoma

Oklahoma City

Tulsa

Oregon

Portland

Pennsylvania

Philadelphia

Pittsburgh

Rhode Island

Providence

South Carolina

Charleston

Columbia

Greenville

Tennessee

Knoxville

Memphis

Nashville

Texas

Austin

Dallas

El Paso

Houston

San Antonio

Utah

Salt Lake City

Virginia

Alexandria

Arlington

Norfolk

Richmond

Washington

Seattle

Tacoma

West Virginia

Charleston

Wisconsin

Madison

Milwaukee

Alberta

Calgary

Edmonton

British Columbia

Vancouver

Manitoba

Winnipeg

Nova Scotia

Halifax

Ontario

Ottawa

Toronto

Quebec

Montreal

Puerto Rico

San Juan