Description
In this course, you will :
- Terraform, including advanced terraform features, must be understood, used, and applied.
- Terraform can be used to provision AWS resources.
- Prepare for the HashiCorp Terraform Certification by attending lectures that are aligned with the exam objectives.
- To create custom images, combine Terraform and Packer.
- Terraform can be used in conjunction with AWS ECS, Fargate, and CodePipelines.
- Be able to use Terraform to apply DevOps techniques.
Syllabus :
1. Introduction to terraform
- Terraform installation
- Terraform Installation (on Windows)
- Terraform installation using Vagrant
2. Terraform basics
- Understanding terraform HCL
- First steps in terraform - AWS Setup
- First steps in terraform - Spinning up an instance
- First steps in terraform - summary
- Terraform Variable Types
3. Terraform basics
- Variables
- Software Provisioning
- Outputting attributes
- Remote state
- Templates
- Templates in terraform 0.12 onwards
- Other Providers
- Modules
- Terraform Commands Overview
4. Terraform with AWS
- Introduction to VPCs
- Launching EC2 instances in the VPC
- EBS Volumes
- Userdata
- Static IPs, EIPs, and Route53
- RDS
- IAM
- IAM Roles
- Autoscaling
- Introduction to Elastic Load Balancers (ELB)
- ELBs in terraform
- Application Load Balancer (ALB)
- Elastic Beanstalk
5. Advanced Terraform Usage
- Conditionals
- Built-in Functions
- For and For Each Loops
- Terraform Project Structure
- Terraform lock file
- Manipulating state
6. Packer
- Packer introduction
- Terraform with Packer and Jenkin
- Terraform with Packer and Jenkins
7. Docker on AWS using ECS and ECR
- Introduction to Docker
- Docker on AWS
- Building Docker images
- ECS
8. Module Development
- Introduction to Module Development
- ECS + ALB Module Overview
9. Advanced Module Development
- Introduction to Advanced Module Development
- The difference between count and for_each
- Refactoring modules
10. AWS CodePipeline (Continuous Delivery / Deployments)
- Introduction to AWS CodePipeline
11. AWS EKS (hosted Kubernetes)
- Introduction to AWS EKS
- Demo: AWS EKS
12. HashiCorp Certification
- Introduction to the HashiCorp Infrastructure Automation Certification
- Understanding Infrastructure as Code (IaC)
- Understanding terraform basics
- Understanding terraform basics - provisioning
- Using the Terraform CLI
- Interact with terraform modules
- Interact with terraform modules: inputs & outputs
- The terraform module registry
- The terraform workflow
- Implement and maintain state
- Read, generate and modify configuration (input variables)
- Read, generate and modify configuration (output variables, locals)
- Resources and Datasources
- Resources and Datasources (resource addresses)
- Resources and datasources (functions and loops)
- Secret Injection (Long lived vs short lived)
- Terraform Cloud
13. Cloud Development Kit For Terraform
- Introduction to Cloud Development Kit for Terraform