25
Automação na nuvem e infraestrutura como código

Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Automação na nuvem e

infraestrutura como

código

Page 2: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Destacando:

AWS Premier Partner

Managed Service Partner

Parceiro do ano de 2015

Latam Best case 2013

Quem é a

?

Page 3: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 4: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Solution Architect

Nerd de nascença

AWS Professional Certified

Trabalha com Software Livre/Open Source desde 2001

Últimos 4 anos tem usado infraestrutura como código

para manter sistemas em produção

Abraçando a cultura Devops e Big Data

Page 5: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Quem usa o serviço

Page 6: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Blocos básicos para criação de stacks para suas aplicações

API autenticada para criação e manutenção de recursos

Vários recursos auto gerenciados

Page 7: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Agilizar a repetição de tarefas cotidianas

Diminuir a incidência de erros

Vários tipos:

Tarefas agendadas

Continuous Delivery/Continous Integration

Infraestrutura base (instâncias, volumes, etc)

Sistemas Operacionais e serviços

Page 8: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Nem tudo são flores:

Precisa de conhecimento, tanto nas ferramentas como no

ambiente.

Você só pode fazer alterações via automação, para evitar

quebra da mesma.

Você não pode ter medo de rodar a automação, ela tem que

ser idempotente

Page 9: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Criar blocos de recursos de infraestrutura rapidamente.

Padronizar recursos (nomes, tags, parâmetros default, monitoração,

logs, etc.)

Facilitar mudanças (parametrização)

Versionar sua infra (git)

Testar o código antes de aplicar em produção

Page 10: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Utilizado para infraestrutura básica

Possui muitos providers (AWS, Azure, OpenStack)

É executado na sua workstation

Salva o estado da execução (local, S3, Atlas)

Cria resources baseado em código declarativo

Permite modularizar blocos de recursos (reaproveitamento de código)

Page 11: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Modularize seu código

Parametrizar, parametrizar, parametrizar (variables → parâmetro;

output → retorno)

Inputs podem vir de variaveis de ambiente, via arquivo (*.tfvars) ou

setada diretamente na chamada do terraform

Usar providers somente nos módulos internos

Carregar templates nos módulos externos

Page 12: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Gerencia cookbooks e recursos AWS

Divide sua estrutura em stacks e layers como se fosse uma pilha de

aplicação

Você pode usar os campos de custom json para parametrizar suas

recipes através do Terraform

Vamos usar uma estratégia de registering ao invés de deixar o

OpsWorks manejar as instâncias

Page 13: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

É executado dentro da instância EC2

Usa Ruby como base mas tem dezenas de resources criados

Recomenda-se personalizar trechos de código criando

resources/providers/libraries

Ponto de atenção: Na versão mais recente são usados dois estágios

(compile e execution queue), por isso não deixe seu código ruby

flutuando

Page 14: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Cookbooks (módulos especializados)

centenas deles no marketplace da OpsCode e no GitHub)

Cookbooks possuem múltiplos recursos internos:

Attributes (input)

Recipes (execução)

Resources/providers/libraries (fabricar DSL)

Static files

Templates

Page 15: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Chefdk a seu dispor!

Usar Rubocop e Foodcritic para avaliar seu código

Kitchen com driver para EC2

Berkshelf para gerenciar dependências

Chef specs para TDD/BDD

Como passar os parâmetros (node variable) para os specs? Usando o

próprio Chef!!!

Page 16: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 17: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

Ambiente complexo, automatizado via TerraForm, ECS e Consul

MongoDB em HA replicaset, automatizado com TerraForm, Chef e

OpsWorks

Pipeline de deploy com Jenkins e .NET, mais autoscaling de aplicação,

também usa TerraForm, Chef e OpsWorks (em andamento)

Page 18: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 19: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 20: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 21: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 22: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration

TDD/BDD com o Terraform

Repositório de módulos internos separado para sharing

Pipeline de CI/CD para aplicar seu código nos seus ambientes

Contribuir para o Terraform

Caminhar para padronização dos cookbooks

Suporte a custom data bags no OpsWorks

Arquiteturas serverless com Lambda!

Sempre pesquisar outras soluções (não existe bala de prata)

Page 23: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 24: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration
Page 25: Automação na nuvem e infraestrutura como código · Automação na nuvem e infraestrutura como código. Destacando: AWS Premier Partner ... Continuous Delivery/Continous Integration