35
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% de uptime

DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

  • Upload
    phamque

  • View
    257

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% de uptime

Page 2: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Sobre a Rivendel

• Fundada em Maio/2013

• Especialistas em Cloud/DevOps

• Empresa mais qualificada em Amazon Web Services e Microsoft Azure do Brasil

• 100+ clientes atendidos em 2 anos e 3 meses

Page 3: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Bruno Pereira

• Fundador e CEO da Rivendel Tecnologia

• Trabalha com métodos ágeis desde 2007

• Cloud desde 2009

• Lean Startups/Innovation desde 2010: 60+ startups

Page 4: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Bruno Almeida

• Fundador e COO da Rivendel Tecnologia

• Cloud desde 2010

• Cultura DevOps implantada em 80+ clientes

Page 5: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Vivendo a cultura

Page 6: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

SysAdmin Tools 1999

Write-only

Page 7: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

DevOps antes de Cloud

• Granularidade menor de serviços e aplicações

• Menos deployments anuais

• Quantidade fixa de servidores

Page 8: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

DevOps em Cloud

• Muitos serviços e aplicações

• Elasticidade

• Arquitetura diversificada

Page 9: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

DevOps e Agile

• DevOps dentro dos times

• Todos em contato com a infraestrutura

• Deployments semanais ou até diários

Page 10: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Redefinindo SysAdmin

• Menos tempo com equipamentos, mais com aplicações

• Habilidades de Desenvolvimento

• Intenso foco em monitoramento, segurança, tolerância a falhas, tuning.

Page 11: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Integração Contínua

Page 12: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Integração Contínua

• Componentes integrados a cada commit

• Testes unitários, de integração, regressão

• Eliminação de etapas manuais

Page 13: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Continuous Delivery/Deployment

Page 14: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Deployment Pipelines

Page 15: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Propondo um processo e ferramentas

Page 16: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Stack de Continuous Delivery

Page 17: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• IaaS

• PaaS

• Servidor de containers

• Nuvem privada com infra on-premises

Page 18: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Topologias multi-datacenter

• Balanceador suportando elasticidade

• Serviços gerenciados de cache, bases relacionais e não-relacionais

• CDN e serviço de DNS

Page 19: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Automação de ambientes locais multi-plataforma

• Ambientes locais montados de forma semelhante aos outros ambientes

• Configuração versionável

Page 20: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Implementação dos deployment pipelines

• Configuração de chaves de deployment

• Deployment pipelines diferentes por ambiente

• Processos automaticamente disparados por pushes em diferentes branches

Page 21: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Principais: Puppet, Chef e Ansible

• Gerenciamento fino de componentes, versões, dependências

• Provisionamento do ambiente de forma versionada e descritiva, em vez de imperativa.

Provisionadores

Page 22: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Possibilidade de construir stacks inteiras: balanceadores, máquinas virtuais, serviços gerenciados, bases de dados, entre outros.

Provisionadores

• Configuração legível de segurança, monitoramento, propriedades de cada ambiente.

Page 23: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Modelo client-server/pull geralmente, com agente embarcado. Client pega atualizações do servidor

• DSL própria. Configurações feitas em arquivos MANIFEST

• Parâmetros definidos no user-data para que a máquina consiga se provisionar no boot

• Comumente usado para provisionar dentro do sistema operacional, mas não provisionando componentes PaaS

Page 24: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Modelo push com ssh, sem agentes, sem master

• Escrito em Python, usa configs YAML: Ansible Playbooks

• Sem dependências nos endpoints

• Parâmetros definidos para um grupo de hosts

• Comumente usado para provisionar dentro do sistema operacional, mas não provisionando componentes PaaS

Page 25: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Modelo client-server/pull, com agentes nos hosts

• Cookbooks em Ruby, versionados em repositórios Git

• Parâmetros definidos na receita ou também em user-data

• Comumente usado para provisionar dentro do sistema operacional, mas não provisionando componentes PaaS

Page 26: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Integração automática com componentes AWS

• Faz o papel do Chef Server, exigindo apenas a configuração de receitas chef-solo

• Configuração automática de Auto-Scaling

• Agendamento e controle fino de deployments

+

Page 27: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Blue-Green Deployments

Stacks inteiras em Produção simultaneamente Chaveamento em poucos segundos

Page 28: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com
Page 29: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Alguém tem medo da Black Friday??

Page 30: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Vários níveis de cache, o máximo possível

• Arquitetura elástica, permitindo aumento e redução da capacidade de acordo com a demanda.

• Uso extensivo de mensageria e processamento assíncrono

Receita pra ser feliz na Black Friday

• Testes de carga• Refactoring/ajustes• Testes de carga• Refactoring/ajustes

Já falei de testes de carga??

• Redundância e tolerância a falhas

Page 31: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Migração de Datacenter físico para AWS, concluída 5 semanas antes do BF.

• Upload + Cache de estáticos com S3 + Cloudfront.

• Topologia multi-zona com autoscaling para todas as aplicações

• Proxy reverso com Varnish

• Ambiente totalmente em Virtual Private Cloud

Black Friday 2014

Page 32: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

• Bases relacionais com RDS.

• Continuous Delivery/Deployment com OpsWorks. Blue/Green em algumas aplicações.

Black Friday 2014

• Clusters memcached e Redis com Elasticache

• Cluster MongoDB com replica-set

• Faturamento 10% acima da meta otimista, 35% acima da meta mínima.

Page 33: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com

Faturamento 10% acima da meta otimista, 35% acima da meta mínima.

Page 34: DevOps, Chef, Puppet, Ansible e como vender …qconrio.com/.../qcon_2015_chef_puppet_ansible_jenkins.pdf · DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com