Try the newest Terraform tutorials.
Manage Resources in Terraform State
Manipulate local state with the Terraform CLI. Create an EC2 instance and security group; then use the state subcommand to move a resource to another state file. Remove, taint, and re-import resources to manage state files and reconcile drift in your infrastructure.
Deploy Infrastructure with the Terraform Cloud Operator for Kubernetes
Use the Terraform Cloud Operator for Kubernetes to manage the lifecycle of cloud and on-prem infrastructure through a single Kubernetes custom resource. Use the Operator to provision an AWS SQS message queue that an application needs before it is deployed to Kubernetes.
Query Data Sources
Provision a web application with Terraform, and use data sources to configure it to support multiple AWS regions and availability zones. Use a remote state data source to share data between Terraform projects and to configure EC2 instances with the appropriate AMI for the current region.
Use Application Load Balancers for Blue-Green and Canary Deployments
Configure AWS application load balancers with Terraform to release an application in a rolling upgrade with near-zero downtime. In this tutorial, you will use a combination of blue-green, canary, and rolling deployments to incrementally promote a new application version via Terraform feature toggles.
Store remote state, run in a reliable environment, and integrate version control into your workflow.
All Terraform Tutorials
- Authenticate the CLI with Terraform CloudMigrate State to Terraform CloudConnect Workspaces with Run TriggersManage Permissions in Terraform CloudConfigure GitHub.com Access through OAuthManage Private Environments with Terraform Cloud AgentsDeploy Infrastructure with the Terraform Cloud Operator for Kubernetes
- Automatically Rotate Gossip Encryption Keys Secured in VaultGenerate mTLS Certificates for Consul with VaultAdminister Consul Access Control Tokens with VaultGenerate Nomad Tokens with HashiCorp VaultGenerate mTLS Certificates for Nomad using VaultVault Integration and Retrieving Dynamic SecretsInject secrets into Terraform using the Vault provider
- Vault Installation to Minikube via HelmVault Installation to Red Hat OpenShift via HelmInjecting Secrets into Kubernetes Pods via Vault Helm SidecarIntegrate a Kubernetes Cluster with an External VaultVault Installation to Google Kubernetes Engine via HelmVault Installation to Azure Kubernetes Service via HelmMount Vault Secrets through Container Storage Interface (CSI) VolumeConfigure Vault as a Certificate Manager in Kubernetes with HelmVault Agent with KubernetesVault on Kubernetes Reference ArchitectureVault on Kubernetes Deployment GuideTroubleshooting Vault on KubernetesVault on Kubernetes Security ConsiderationsDeploy Consul and Vault on Kubernetes with Run TriggersAutomate Terraform Cloud Workflows
- Provision an EKS Cluster (AWS)Provision an AKS Cluster (Azure)Provision a GKE Cluster (Google Cloud)Manage Kubernetes Resources via TerraformDeploy Consul and Vault on Kubernetes with Run TriggersAutomate Terraform Cloud WorkflowsDeploy Infrastructure with the Terraform Cloud Operator for KubernetesDeploy Applications with the Helm Provider
- Static Secrets: Key/Value Secrets EngineVersioned Key/Value Secrets EngineCubbyhole Response WrappingDynamic Secrets: Database Secrets EngineCouchbase Secrets EngineDatabase Root Credential RotationDatabase Static Roles and Credential RotationActive Directory Service Account Check-outOpenLDAP Secrets EngineAzure Secrets EngineBuild Your Own Certificate Authority (CA)SSH Secrets Engine: One-Time SSH PasswordUser Configurable Password Generation for Secret Engines[Tech Preview] Key Management Secrets EngineKMIP Secrets EngineBuild Your Own PluginsGenerate Nomad Tokens with HashiCorp VaultGenerate mTLS Certificates for Nomad using VaultVault Integration and Retrieving Dynamic SecretsInject secrets into Terraform using the Vault provider
- Use Terraform to Register External ServicesCodify Management of VaultCodify Management of Vault EnterpriseAppRole With Terraform & ChefDeploy Consul and Vault on Kubernetes with Run TriggersManage Kubernetes Resources via TerraformProvision Infrastructure with PackerAutomate monitoring with the Terraform Datadog providerUse Application Load Balancers for Blue-Green and Canary DeploymentsDeploy Infrastructure with the Terraform Cloud Operator for KubernetesManage VMs and Snapshots on vSphereDeploy Applications with the Helm Provider
- Define Infrastructure with Terraform ResourcesCustomize Terraform Configuration with VariablesProtect Sensitive Input VariablesSimplify Terraform configuration with localsOutput Data from TerraformQuery Data SourcesCreate Resource DependenciesManage Similar Resources with CountManage Similar Resources with For EachPerform Dynamic Operations with FunctionsCreate Dynamic ExpressionsLock and Upgrade Provider Versions
Looking for docs?
The Terraform documentation provides reference material and in-depth details on all of Terraform's available features and options.