Post on 01-Jan-2019
Evandro Deliberalevandro@deljoe.com.brhttps://www.linkedin.com/in/evandrodeliberal http://www.deljoe.com.br/professor
Aula 04
Agenda▪ SOA e DevOps
DevOpsO que é DevOps?
Termo emergente, pois é recente, ou seja, ainda esta em transformação e entendimento
Agilidade: System Administrator e Operations
Colaboração: Desenvolvimento e Operações
“a cross-disciplinary community of practice dedicated to the study of building, evolving and operating rapidly-changing resilient systems at scale.” Jez HumbleTradução: Uma comunidade de prática interdisciplinar dedicada ao estudo da construção, evolução e operação de sistemas resilientes de rápida mudança em escala
DevOpsprática de engenheiros de operações e desenvolvimento que participam juntos em todo o ciclo de vida do serviço, desde o design até o processo de desenvolvimento e suporte da produção
Surgiu da necessidade de entregar melhores resultados
Em 2009 houve o “surgimento” ou amadurecimento de diversas metodologias como: Agile, TOC – Theory ofConstraints, System Thinking * Dynamics, Lean ...
DevOps
DevOpsGanhou força com o aumento da utilização CLOUD
Já imaginou quantos deploys as grandes empresas realizam por dia?
Twiter
Amazon?
A cada 11.6 Segundos (newrelic feb,2016)
Frequencia de Deploy, New Relic, Fev 2014
DevOps
DevOpsA melhor forma de entendermos é realizar um paralelo com o AGILE
Valor – Filosofia de nível superior, estes são os valores centrais que informam ágil.
Principio – Abordagens estratégicas geralmente aceitas que apóiam esses valores. O Manifesto Ágil cita uma dúzia desses princípios mais específicos
Métodos - Implementações mais específicas do processo dos princípios. XP, Scrum, o seu próprio processo homebrew - é aí entre os playbooks operacionais de "como pretendemos fazer isso na vida real." Nenhum deles são obrigatórios, apenas possíveis implementações.
DevOpsA melhor forma de definirmos é realizarmos um paralelo
Praticas – técnicas táticas altamente específicas que tendem a ser usadas em conjunto com implementações ágeis. Nenhum é obrigado a ser ágil, mas muitas implementações ágeis têm visto o valor de adotá-los. Standups, planejamento de poker, backlogs, CI, todos os artefatos específicos que um desenvolvedor usa para realizar seu trabalho
Ferramentas - Implementações técnicas específicas dessas práticas utilizadas pelas equipes para facilitar o trabalho de acordo com esses métodos. JIRA Agile (também conhecido como Greenhopper), planningpoker.com, ...
DevOps na prática“pessoas ou organizações que pegaram ferramentas e práticas específicas sem entender os fundamentos podem ou não ver benefícios, mas essa abordagem de "culto à carga" é geralmente considerada como tendo resultados subótimos.” Ernest Mueller, Aug 2,2010
DevOps em definiçõesValores
Princípios
Métodos – Alguns dos métodos aqui são os mesmos; Você pode usar Scrum com operações, Kanban com operações, etc. (embora geralmente com mais foco na integração de operações com dev, QA e produto nas equipes de produtos)
Praticas – Técnicas específicas usadas como parte da implementação dos conceitos e processos acima. Integração contínua e implantação contínua,
Ferramentas - Ferramentas que você usaria na comissão desses princípios. No mundo de DevOps houve uma explosão de ferramentas na liberação (jenkins, travis, teamcity), gerenciamento de configuração (fantoche, chef, ansible,
DevOps em definiçõesFerramentas – Utilizadas na comissão desses princípios. No mundo de DevOps houve uma explosão de ferramentas na liberação (jenkins, travis, teamcity), gerenciamento de configuração (fantoche, chef, ansible, cfengine), orquestração (zookeeper, noah, mesos), monitoramento, virtualização
ImplantaçãoO que é necessário para implantação funcional
Modelo de Serviço integrado e bem definido
Time multidisciplinar
Gestão
DevOpsEm resumo:
DevOps é constituído de cultura, pessoas, respeito não apenas de acessos, ferramentas de automação, deploycontínuo, etc. E envolve novas práticas como:
entrega contínua em pequenas pedaços
equipes dedicadas, crossfunctional e pequenas
arquitetura loose coupling (baixo acoplamento)
ambiente automatizado por excelência,
integração e testes contínuos e
ambiente interativo e colaborativo, com usuários, atuando em conjunto.
AtividadeMonte um cenário de funcionamento para uma empresa que hospeda seu app no serviço de cloud
São 6 liberações por dia em média
20 programadores
3 DBA
1 Profissional de infra
1 Coordenador
30.000 transações dias
Replicação em mais de uma instância
Duvidas ?
Obrigado
Evandro Deliberalevandro@deljoe.com.br