devops - a cultura ágil voltada à infra-estrutura
TRANSCRIPT
DevOpsA cultura ágil voltada à infra-estrutura
Sobre o palestrante●Experiência
○ 15 anos na área de computação
○ 10 anos Instituto Eldorado
●Atuação○ Análise tendências tecnológicas do mercado
○ Arquitetura em projetos estratégicos
○ Liderança técnica
○ Team Building
○ Colaborador blog TalkitBR
●DevOps○ 2 anos apanhando :D
Como realizar +10 deploys por dia?
Origem Discussão sobre DevOps●Conferência Velocity da O’Reilly 2009
●10+ Deploys Per Day: Dev and Ops Cooperation at FlickrJohn Allspaw e Paul Hammond
Cenário●Flickr - 2009:
○ 3 bilhões de fotos
○ 40.000 fotos por segundo
●Cenário cultural:○ O trabalho do desenvolvedor é adicionar novas features
○ O trabalho de operações é manter o “site” estável e rápido
●Vários problemas no “relacionamento” dev & ops
Problema 1Diferenças entre os ambientes
dentro do projeto
Problema 2Time com pouca ou nenhuma
liberdade para realizar melhorias de ambiente
Problema 3Refatoração, manutenção e
desenvolvimento geram quebras e atrasos
Problema n
●Alto custo para criação infra-estrutura
●Deploy custoso, perigoso e de baixa frequência
●Alto custo replicação ambientes
●Não existe monitoração pós-deploy
●Horas gastas em tarefas repetitivas, onde o erro humano tende a crescer exponencialmente pelo débito técnico ...
Mas isso não acontece mais certo? Afinal, estamos em 2016...
O que é DevOps?
“DevOps é uma ideologia ou uma cultura de colaboração e compartilhamento com um objetivo claro de colocar os times de operação e desenvolvimento de software juntos de forma a atuar na eliminação de problemas e na diminuição do time-to-
market”
OK, mas o que é DevOps?
● Não existe um manifesto DevOps
● Não existe receita rápida
● Não existe entidade certificadora
● Não é um termo de fácil definição
● Conferência chamada DevOpsDay
TÉCNICO
● Infra-estrutura automatizada
● Política adequada de versionamento
● Integração e Deploy Contínuo
● Métricas
PilaresCULTURAL
● Respeito
● Confiança
● Atitude positiva perante a falha
● Evitar apontar culpados
Pilares Técnicos
Infra-Estrutura Automatizada
Política adequada de versionamento●Code branching
●Código vísivel para todos
●Betas privados
●Políticas claras de contigência em caso de problemas
Integração e deploy contínuos●Continuous Integration
●Continuous Deploy
○Políticas de ambientes separados e automatizados (CI / SIT / Staging / Prod)
●Quem / Quando / Quem
Métricas●Monitoramento contínuo pós-produção
●Robôs automatizados com ações pré-determinadas baseadas nas métricas coletadas
●Feedback instantâneo em caso de anomalias
●Métricas em nível de aplicação e de operação
Mudança cultural
A jornada da mudança cultural
A lista de mudanças é longa...●Respeite a opinião, experiência e responsabilidades das pessoas
que trabalham com você
●Não diga não só por dizer…
●Não esconda as coisas… (tipo credenciais de acesso :) )
●Falhas vão acontecer!!! Se você acha que consegue prevenir todas então você está perdendo uma ótima oportunidade de treinar como responder à elas
Quer aprender mais?
O que as grandes
empresas tem feito?
●Etsy faz em média 50 deploys por dia
●Netflix lançou o Simian Army (Chaos, Janitor, Conformity)
●Amazon possui cursos de capacitação com ambientes inteiros montados instantâneamente
●Empresas que só existem devido a práticas bem sucedidas de DevOps (Netflix, Facebook, YouTube, etc…)
ReferênciaUma novela sobre IT & DevOps
em uma empresa que primeiramente falha
miseravelmente na aplicação da metodologia :D
Obrigado ;)