• HashiCorp Developer

  • HashiCorp Cloud Platform
  • Terraform
  • Packer
  • Consul
  • Vault
  • Boundary
  • Nomad
  • Waypoint
  • Vagrant
Terraform
  • Install
  • Tutorials
    • About the Docs
    • Configuration Language
    • Terraform CLI
    • Terraform Cloud
    • Terraform Enterprise
    • CDK for Terraform
    • Provider Use
    • Plugin Development
    • Registry Publishing
    • Integration Program
  • Registry(opens in new tab)
  • Try Cloud(opens in new tab)
  • Sign up
Terraform Home

Tutorials

Skip to main contentTutorials

Get Started

  • AWS
  • Azure
  • Docker
  • GCP
  • OCI
  • Terraform Cloud

Fundamentals

  • CLI
  • Configuration Language
  • Modules
  • Provision
  • State
  • Terraform Cloud

Use Cases

  • Applications
  • AWS Services
  • Azure Services
  • HashiCorp Products
  • IT/SaaS Providers
  • Kubernetes
  • Machine Images
  • Networking
  • Policy
  • Security

Certification Prep

  • Associate Prep (002)
  • Associate Prep (003)
  • Associate Tutorials (002)
  • Associate Tutorials (003)

Production

  • Automate Terraform
  • Enterprise Patterns
  • Terraform Enterprise

Integrations

  • CDK for Terraform
  • Community Providers
  • Custom Framework Providers
  • Custom SDK Providers
  • Secrets

  • Resources

  • Tutorial Library
  • Certifications
  • Community Forum
    (opens in new tab)
  • Support
    (opens in new tab)
  • GitHub
    (opens in new tab)
  • Terraform Registry
    (opens in new tab)
  1. Developer
  2. Terraform
  3. Tutorials
  4. AWS Services

Manage AWS Services

Use the AWS provider to manage AWS services with Terraform. Configure IAM policy documents, deploy serverless functions with Lambda, use application load balancers to schedule near-zero downtime releases, manage RDS and more.

Start
14 tutorials
  •  
    14min
    Manage AWS Auto Scaling Groups
    Provision an RDS instance, subnet group, and parameter group using Terraform. Modify the RDS instance configuration, and provision a second replica instance.
    • Terraform
  •  
    1hr 30min
    Manage AWS Accounts Using Control Tower Account Factory for Terraform
    Use the AWS Control Tower Account Factory for Terraform to create a pipeline for provisioning and customizing AWS accounts in Control Tower. Create a new account and learn more about AWS Control Tower governance.
    • Terraform
  •  
    11min
    Manage New AWS Resources with the Cloud Control Provider
    Use the AWS Cloud Control provider to manage resources that the traditional AWS provider does not yet support.
    • Terraform
  •  
    10min
    Upgrade RDS Major Version
    Use Terraform to manage a major version upgrade for an RDS instance and parameter group.
    • Terraform
  •  
    9min
    Use AssumeRole to Provision AWS Resources Across Accounts
    Define an AWS IAM role to allow a user in one AWS account to provision infrastructure in another.
    • Terraform
  •  
    13min
    Configure Default Tags for AWS Resources
    Configure the AWS Terraform provider to set default tags on resources. Override default tags on individual resources.
    • Terraform
  •  
    9min
    Create IAM Policies
    Use Terraform to apply policy permissions to IAM user and S3 bucket resources. Refactor your policy with the IAM policy document data source to automatically format your JSON policies for reuse.
    • Terraform
  •  
    10min
    Deploy Serverless Applications with AWS Lambda and API Gateway
    Deploy a serverless web application on AWS with Lambda and API Gateway. Package and deploy a Lambda function to S3, configure an IAM role, and provision an API Gateway deployment to allow users to call the Lamba function via HTTP.
    • Terraform
  •  
    19min
    Use Application Load Balancers for Blue-Green and Canary Deployments
    Configure AWS application load balancers to release an application in a rolling upgrade with near-zero downtime. Incrementally promote a new canary application version to production by building a feature toggle with Terraform.
    • Terraform
  •  
    18min
    Host a Static Website with S3 and Cloudflare
    Set up an S3-hosted static website with Cloudflare for DNS, SSL and CDN. Redirect HTTP traffic to HTTPS, and redirect certain paths with Cloudflare page rules. Alternatively, use ACM for SSL certificate management and Cloudfront for CDN.
    • Terraform
  •  
    14min
    Manage AWS RDS Instances
    Provision an RDS instance, subnet group, and parameter group using Terraform. Modify the RDS instance configuration, and provision a second replica instance.
    • Terraform
  •  
    9min
    Provision an EKS Cluster (AWS)
    Provision a Kubernetes Cluster in AWS. Configure the AWS CLI to provide IAM credentials to Terraform, clone an example repository, and deploy the cluster. Configure kubectl and the Kubernetes dashboard. Finally destroy the cluster.
    • Terraform
  •  
    24min
    Create Preview Environments with Terraform, GitHub Actions, and Vercel
    Configure Terraform Cloud and GitHub Actions to create frontend and backend preview environments for your application. Dynamically create and destroy preview environments by opening, merging and closing pull requests.
    • Terraform
  •  
    35min
    Manage AWS DynamoDB Scale
    Create an AWS DynamoDB table with Terraform. Configure provisioned capacity, autoscaling, local and global secondary indexes, global tables, TTL, and the table class.
    • Terraform
Give Feedback(opens in new tab)
  • Certifications
  • System Status
  • Terms of Use
  • Security
  • Privacy
  • Trademark Policy
  • Trade Controls
  • Give Feedback(opens in new tab)