What you see is what you get… for AWS infrastructure by Anton Babenko
January 2019
Slide 2
Anton Babenko Terraform AWS fanatic. HUG, AWS, DevOps, DevOpsDays in Oslo, Norway. I 💚 open-source: terraform-community-modules + terraform-aws-modules github.com/antonbabenko — pre-commit-terraform, terraform-docs-as-pdf and more www.terraform-best-practices.com medium.com/@anton.babenko twitter.com/antonbabenko
Slide 3
Cloud Architect
Cloud architect plans and designs cloud environments, and typically provides guidance throughout the life of a development or deployment project.
Slide 4
Assumption Statement
Cloud architects and DevOps engineers want to have a faster conversion from idea to product.
Slide 5
Tools for Cloud Architects
https://aws.amazon.com/architecture/icons/
Slide 6
Slide 7
cloudcraft.co features •
Manage components in browser (EC2 instances, autoscaling groups, RDS, etc)
•
Connect components
•
Import live AWS infrastructure
•
Calculate the budget
•
Share link to a blueprint
•
Export as image
•
Embed drawing to wiki, Confluence, etc
Slide 8
Infrastructure as code makes DevOps possible Key benefits: •
Treat infrastructure like application code
•
Always know what changed
•
Validate infrastructure before deployment
https://dzone.com/articles/infrastructure-as-code-the-benefits
Slide 9
Plus 100+ more providers
Write, plan, and create infrastructure as code www.terraform.io
Slide 10
Slide 11
Collection of Terraform AWS modules supported by the community (VPC, Autoscaling, RDS, Security Groups, ELB, ALB) github.com/terraform-aws-modules registry.terraform.io/modules/terraform-aws-modules
Slide 12
Slide 13
Slide 14
✓
cloudcraft.co — design, plan and visualize
✓
terraform-aws-modules — building blocks of AWS infrastructure
✓
Terraform — infrastructure as code
Slide 15
Infrastructure as code generator — from visual diagrams to Terraform https://github.com/antonbabenko/modules.tf-lambda
Slide 16
Try it yourself! 1. Go to cloudcraft.co 2. Sign up, sign in (free account) 3. Draw your AWS infrastructure 4. Click "Export" 5. Click "Terraform code export"
Slide 17
modules.tf — generated code ✓
Potentially ready-to-use Terraform configurations
✓
Suits best for bootstrapping
✓
Enforces Terraform best-practices
✓
Batteries included (terraform-aws-modules, terragrunt, pre-commit)
✓
100% free and open-source (https://github.com/antonbabenko/ modules.tf-lambda)
✓
Released under MIT license
Slide 18
modules.tf — generated code ✓
Potentially ready-to-use Terraform configurations
✓
Suits best for bootstrapping
✓
Enforces Terraform best-practices
✓
Batteries included (terraform-aws-modules, terragrunt, pre-commit)
✓
100% free and open-source (https://github.com/antonbabenko/ modules.tf-lambda)
✓
Released under MIT license
Slide 19
Summary ✓
A picture's worth a thousand words
✓
Do infrastructure is code
✓
Standing on the shoulders of giants — use open-source
Slide 20
Thank you! github.com/antonbabenko twitter.com/antonbabenko
PS: Did I tell you that modules.tf is a web-site?