22
Arthur Schmunk Chief Cloud Evangelist @arthurschmunk Terraform on AWS

Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Embed Size (px)

Citation preview

Page 1: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Arthur Schmunk Chief Cloud Evangelist @arthurschmunk

Terraform on AWS

Page 2: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Arthur Schmunk@arthurschmunk

Community

• Organiser of AWS User Groups

Companies

• Co-founder of CloudZone

• Chief Cloud Evangelist of Matrix

Page 3: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

CloudZone, Matrix’s cloud unit, is a leading AWS solution provider in region. With over 7 years of experience with AWS, CloudZone provides its customers with a complete service package that includes consulting, professional services and managed services.

As an Premier Consulting Partner , Worldwide Channel Reseller and Managed Service Provider of Amazon Web Services, we ensure that our customers adopt the most advanced technologies and best practices.

@cloudzoneio

Page 4: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Agenda

• Small talk about Cloud Orchestration and latest Buzzwords

• Some facts about Terraforms

• Why Terraform ?

• Demo

Page 5: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

HashiCorp Tools

Page 6: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

What is cloud orchestration?

Flickr: All rights reserved by Jan Nagalski (jannagal)

Page 7: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Cloud Orchestration

• Infrastructure Lifecycle

• Provisionning

• Updating

• Destroying

Page 8: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Move fast without breaking things

Page 9: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Terrafrom Facts• Latest Version: 0.6.12 (February 24, 2016)

• Format: Based on

• Open Source, Written in Go lang

• Very Active Development (Less stable from my experience)

• Growing Community

Page 10: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

HCL

• Based on libucl

• Human readable

• JSON Interoperable

Page 11: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Resource Graph

• Dependency Management

• Parallelisation

• Visualisation

• Change Ordering

Page 12: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv
Page 13: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Polyglot Orchestration#BaaS

Page 14: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Terraform provides a common configuration to launch infrastructure from physical and virtual servers to email and DNS providers. Once launched, Terraform safely and efficiently changes infrastructure as the configuration is evolved.

Atlas AWS Azure Chef

CloudFlare CloudStack

Consul Datadog Terraform

Docker Dyn

Google Cloud Heroku Mailgun MySQL

OpenStack Packet

PostgreSQL

DigitalOcean DNSMadeEasy

DNSimple TLS

VMware vCloud Director VMware vSpherePowerDNS

Rundeck StatusCake Template

Page 15: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

CloudFormation Ansible Terraform

Page 16: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

CloudFormation Ansible Terraform

Syntax JSON Yaml HCL

State Management No Yes Yes

Execution Control No No Yes

Manage Already Created Resources No Yes Hard

Providers Support AWS Only +++ ++

Page 17: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Terraform Commands

Page 18: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Multi-Provider

Multiple instances of a single provider can be configured so resources can apply to different settings. As an example, this allows Terraform to manage multiple regions with AWS.

Page 19: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

DemoLinus Torvalds — 'Talk is cheap. Show me the code.'

Page 20: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Dell R610 128GB 600GB 10K SAS Dell R610 256GB 600GB 15K SAS

EC2 i2.4xlarge 600GB PIOPS 500 EC2 cr1.8xlarge 600GB PIOPS 1000

Don’t try to “Google Translate” your

environment to the Cloud

Page 21: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Matrix IT work Copyright 2014. Do not remove source or Attribution from any graphic or portion of graphic

Everything can be and should be automated

Page 22: Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft Tel Aviv

Matrix IT work Copyright 2014. Do not remove source or Attribution from any graphic or portion of graphic

Design for failure and nothing will fail