Skip to content

MukeshPurohit/terraform-best-practices-workshop

 
 

Repository files navigation

Terraform Best Practices Workshop materials

The goal of this workshop is to become familiar with some of best practices using Terraform, discover existing solutions, Terraform modules and tools.

This workshop is a practical hands-on addition to Terraform Best Practices guide which has been created and provided by Anton Babenko. Some rights reserved.

Send your feedback by email to [email protected]. Contact me if you are looking for Terraform trainer or mentor for your project.

Attendee's checklist

  • Follow @antonbabenko on GitHub, Twitter, Linkedin.
  • Join chat room on Gitter during or before the workshop - gitter.im/terraform-best-practices-workshop/Lobby.
  • Install latest version of Terraform 0.12.
  • Install latest version of AWS CLI.
  • Make sure that you have GitHub account created.
  • Mac, Linux or Windows - all is fine as long as you can use it. If you want, you can get Linux box running using Vagrant+VirtualBox and install software from above on it.
  • Access credentials to manage resources in workshop's AWS account will be provided at the beginning of the workshop.

"Terraform AWS modules" workshop goal

Learn how to manage AWS infrastructure using existing building blocks - terraform-aws-modules.

Agenda

  • Terraform AWS modules is a collection of reusable building blocks of AWS infrastructure supported by the community.
  • Task "Basic Terraform". Read tasks/0-basic/README.md for more details.
  • Task "Network Stack" - VPC, Autoscaling, Security Group, ELB, ALB, RDS. Read tasks/1-network/README.md for more details.
  • Task "IAM resources" - IAM users, groups, permissions, roles, multiple AWS accounts, assuming roles.
  • Task "Working with Terraform in a team using Atlantis" - Setup Atlantis to run on AWS Fargate using terraform-aws-atlantis module and integrate it with infrastructure repository.

Resources

Instructor's checklist

  • Verify access to workshop AWS account (905033465232), S3 bucket for remote states (tfworkshop), DynamoDB table for locking (tfworkshop). Region - eu-west-1.
  • Before workshop - create IAM users and IAM group (developers) by running cd bootstrap-workshop && make apply.
  • After workshop - remove IAM users and IAM group by running cd bootstrap-workshop && make destroy.

License

This work is licensed under Apache 2 License. See LICENSE for full details.

About

Terraform best practices - workshop materials

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HCL 82.8%
  • Jsonnet 12.6%
  • Makefile 4.6%