Slide 1

Slide 1 text

lkysow Terraform, Collaboration and DevOps

Slide 2

Slide 2 text

lkysow Hello

Slide 3

Slide 3 text

lkysow What we'll learn: 1. Terraform 2. Terraform collaboration 3. Where does this fit with DevOps

Slide 4

Slide 4 text

lkysow

Slide 5

Slide 5 text

lkysow 30 Devs 5 Ops 1 Monolith 200 Devs 30 Ops 100+ µServices 2014 2018

Slide 6

Slide 6 text

lkysow JIRA Tickets and Shenanigans

Slide 7

Slide 7 text

lkysow

Slide 8

Slide 8 text

lkysow

Slide 9

Slide 9 text

lkysow anubhavm

Slide 10

Slide 10 text

lkysow

Slide 11

Slide 11 text

lkysow Benefits: Less Mistakes Faster

Slide 12

Slide 12 text

lkysow Details: Started with new services Tagged resources: “terraform" = true .tfvars files for environments: terraform plan -var-file staging.tfvars Multiple repos and remote state


Slide 13

Slide 13 text

lkysow

Slide 14

Slide 14 text

lkysow So you learned how to program…

Slide 15

Slide 15 text

lkysow Terraform Collaboration Issues: 1. Reviewing diffs 2. Terraform state out of sync with code

Slide 16

Slide 16 text

lkysow Atlantis www.runatlantis.io

Slide 17

Slide 17 text

lkysow Atlantis Solved: 1. Reviewing diffs 2. Terraform state out of sync with code 3. Approvals

Slide 18

Slide 18 text

lkysow

Slide 19

Slide 19 text

lkysow So you learned what a pull request is…

Slide 20

Slide 20 text

lkysow 30 Devs 5 Ops 1 Monolith 200 Devs 30 Ops 100+ µServices

Slide 21

Slide 21 text

lkysow 30 Devs 5 Ops 1 Monolith 200 Devs 30 Ops 100+ µServices

Slide 22

Slide 22 text

lkysow What we learned: 1. Terraform 2. Terraform collaboration 3. Where does this fit with DevOps

Slide 23

Slide 23 text

lkysow DevOps: Why? Build software faster and more reliably

Slide 24

Slide 24 text

lkysow 30 Devs 5 Ops 1 Monolith 200 Devs 30 Ops 100+ µServices 2014 2018

Slide 25

Slide 25 text

lkysow Devs Ops

Slide 26

Slide 26 text

lkysow

Slide 27

Slide 27 text

lkysow

Slide 28

Slide 28 text

lkysow Why Don’t Devs Do Operations? 1. No Credentials 2. No Visibility 3. No Shared Language

Slide 29

Slide 29 text

lkysow Shared Language

Slide 30

Slide 30 text

lkysow So you learned what a pull request is…

Slide 31

Slide 31 text

But then something cool started to happen…

Slide 32

Slide 32 text

lkysow

Slide 33

Slide 33 text

lkysow

Slide 34

Slide 34 text

lkysow What we learned: 1. Terraform 2. Terraform collaboration 3. Where does this fit with DevOps

Slide 35

Slide 35 text

lkysow lkysow www.runatlantis.io luke@runatlantis.io terraform.io Thanks to @sethvargo and @anuvhavm