cloudformation vs terraform_vs_ansible

29
#8 Forming clouds: CloudFormation vs Ansible vs TerraForm

Upload: geert-theys

Post on 13-Apr-2017

332 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Cloudformation vs terraform_vs_ansible

#8 Forming clouds: CloudFormation vs

Ansible vs TerraForm

Page 2: Cloudformation vs terraform_vs_ansible
Page 3: Cloudformation vs terraform_vs_ansible

Geert Theys

Sales guy @skyscrapersStill likes to get his hands dirty.

github.com/gtheys twitter.com/toadi geerttheys.com

Page 4: Cloudformation vs terraform_vs_ansible

Mattias Gees

Cloud Engineer @skyscrapers

Likes to experiment!

github.com/mattiasgees twitter.com/mattiasgees blog.mattiasgees.be

Page 5: Cloudformation vs terraform_vs_ansible

CloudFormation<> Terraform

<> Ansiblefor AWS provisioning

Page 6: Cloudformation vs terraform_vs_ansible

All different toolsand there are many others!

Page 7: Cloudformation vs terraform_vs_ansible

All have their advantages

Page 8: Cloudformation vs terraform_vs_ansible

And disadvantages

Page 9: Cloudformation vs terraform_vs_ansible

Before we start!

Page 10: Cloudformation vs terraform_vs_ansible

Lets compare

Page 11: Cloudformation vs terraform_vs_ansible

Simple syntax?

Page 12: Cloudformation vs terraform_vs_ansible

CloudFormation:

Page 13: Cloudformation vs terraform_vs_ansible

Terraform:

Page 14: Cloudformation vs terraform_vs_ansible

Ansible:

Page 15: Cloudformation vs terraform_vs_ansible

Which one was the easiest to read?

Page 16: Cloudformation vs terraform_vs_ansible

Easy to install?Package managers:

• brew install

• apt-get install

• yum install

Warning: None are up to date!

Latest versions pip and/or sources

Page 17: Cloudformation vs terraform_vs_ansible

Safe to use?Terraform and Ansible have a plan or --check mode

Page 18: Cloudformation vs terraform_vs_ansible

Productive?

Page 19: Cloudformation vs terraform_vs_ansible

It's running ;)• CloudFormation:

• Parallelizes as much as possible

• Terraform:

• Use dependency graph and parallelizes as much as possible

• Partial refresh before changes

• Ansible:

Page 20: Cloudformation vs terraform_vs_ansible

How do they keep state?• Cloudformation on AWS

• Terraform creates a state file

• Ansible ad hoc state

Page 21: Cloudformation vs terraform_vs_ansible

Do I feel safe• CloudFormation:

• Start to pray when you run it

• Roll back on fail

• Terraform:

• Partial State gets stored on error (eg. sg gets created not the rules, next run will fix this)

• Create before destroy

Page 22: Cloudformation vs terraform_vs_ansible

Issues?• CloudFormation:

• JSON

• No partial run possible

• Terraform:

• No full coverage of AWS

• Ansible:

• Not every aws module has --dry-run check mode!

Page 23: Cloudformation vs terraform_vs_ansible

Legacy projects?• Cloudformation: Cloudformer

• Terraform: Terraforming

• Ansible: Just do it

Page 24: Cloudformation vs terraform_vs_ansible
Page 25: Cloudformation vs terraform_vs_ansible

Do you look cool when using it?

Page 26: Cloudformation vs terraform_vs_ansible

Do I want to use it?• Terraform: Destroy ordering, clean and readable, focus on 1

thing

• Ansible: It's simple

• Cloudformation: Who likes JSON?

Page 27: Cloudformation vs terraform_vs_ansible

Do we recommend 1?

Page 28: Cloudformation vs terraform_vs_ansible

Questions?Presentation + demo on github.com/skyscrapers/demo-aws-meetup

Page 29: Cloudformation vs terraform_vs_ansible