Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introdução ao Terraform

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Introdução ao Terraform

Avatar for Rafael Dutra

Rafael Dutra

May 27, 2019
Tweet

More Decks by Rafael Dutra

Other Decks in Programming

Transcript

  1. Rafael Dutra • Ocupação: Administrador de Sistemas e entusiasta Dev*Ops

    • Segurança da Informação - UNISINOS 2008 - ? • Linux desde 2005 • Desenvolvedor: PHP (Laravel), Shell Script, Ruby • Habilidades: Vagrant, Puppet, Terraform, Ansible, Linux, Continuous Integration, Continuous Deployment/Delivery, Shell Scripting, IaC, Docker, AWS, Android, Video Games (FPS e RPG)...
  2. O que é Terraform? Terraform é uma ferramenta que provê

    Infraestrutura como código (IaC), permitindo criar e versionar nossa infraestrutura em diferentes Provedores Cloud ou ainda equipamentos de rede (Cisco ASA, F5 e etc).
  3. O que Terraform faz • Cria a infraestrutura “básica”: máquinas,

    interfaces de rede, balanceadores de carga, discos, redes, vpn e etc. • Replica a mesma infraestrutura para diferentes regiões, ou ainda para diferentes ambientes. • Melhor rastreio de sua infraestrutura. • Mudanças incrementais.
  4. O que Terraform não faz • Gerenciamento de configuração. ◦

    precisamos de outra ferramenta para isso, como Ansible, Chef ou Puppet. ◦ ..mas, é possível fazer alguns “truques”. • Terraform não é agnóstico, é preciso escrever novamente o recurso para o Provedor de Cloud que você deseja utilizar.
  5. Código Google Cloud resource "google_compute_instance" "default" { name = "test"

    machine_type = "n1-standard-1" zone = "us-central1-a" boot_disk { initialize_params { image = "debian-cloud/debian-8" } }
  6. • Utilizado pelo terraform para mapear recursos reais com a

    sua configuração. • Performance para infraestruturas grandes. • terraform.tfstate é um simples arquivo json. • Ordem de dependência. • https://raw.githubusercontent.com/mdb/te rraform-example/master/terraform/terrafo rm.tfstate terraform.tfstate
  7. • Baixando Terraform. • Credenciais AWS. • AWS como Cloud

    Provider. ◦ EC2 machine ◦ VPC ▪ Subredes ▪ Rotas Demonstração