CertiProf - Student DevOps Certification PTBR PDF
CertiProf - Student DevOps Certification PTBR PDF
CertiProf - Student DevOps Certification PTBR PDF
Quem é a CertiProf®?
CertiProf® oferece uma ampla gama de certificados profissionais para indivíduos e empresas. Nossa
missão é preparar profissionais da mais alta qualidade e reconhecidos internacionalmente.
Com uma equipe internacional que é especializada na implementação de materiais, nosso instituto é
um dos principais fornecedores que não apenas oferece uma educação excepcional no mercado dos
EUA, como também está expandindo suas atividades para regiões da América Latina.
2
Agenda
O que é o DevOps? 5
Por que DevOps? 6
Definições de DevOps 7
O que não é DevOps? 7
Definição de DevOps Segundo seus Líderes 7
História 10
Objetivo do DevOps 13
Adoção do DevOps 12
Benefícios 16
Estabilidade 13
Workshop 15
Pilares do DevOps 21
Conceitos 23
Just-in-time (JIT) 16
Sistema de Produção Toyota (SPT) 16
Kaizen 17
BIMODAL - Gartner 17
DevSecOps 18
Novo Modelo Operacional 20
Scrum 20
Work in Progress, WIP (Trabalho em andamento) 21
Acordo de Nível de Serviço (SLA) e OLAS 21
Ciclo PDCA (Plan-Do-Check-Act cycle – PDCA cycle) 21
3
Equipe DevOps 55
Organização-Legado 39
Operadores e Desenvolvedores Tradicionais 40
Se Criam Equipes Dedicadas de DevOps 40
DevOps Total 41
Papéis das Equipes 41
Strategic Management Office (SMO) 41
Adoção Incremental 59
Pensamento de Sistemas 61
Experimentação e Aprendizagem 44
Feedback 64
Ferramentas para o Suporte da Cultura DevOps 66
Ferramentas DevOps-GIT 47
Plataforma Cloud 47
Docker 48
JS 49
Chef 49
Jenkins 50
Puppet 50
Modelo Gartner DevOps 72
P.P.T e Cultura 51
Checklist DevOps e Status do Relatório DevOps 75
Modelo de Maturidade DevOps 53
Checklist - DevOps 53
Autoavaliação 53
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
4
O que é o DevOps?
DevOps reconhece que os desenvolvedores e operadores de TI não são grupos isolados que podem
interagir uns com os outros, mas não realmente trabalhar juntos.
O DevOps ajuda a organização a criar serviços e software de TI rapidamente, o que resulta em uma
redução no número de iterações.
5
É essencial ter as ferramentas certas e combinar os serviços, o DevOps se preocupa em saber se uma
ferramenta fornece a capacidade de interagir e funcionar de forma eficaz.
Os objetivos básicos do DevOps são estabelecer um ambiente em que códigos, testes e desenvolvimento
de software possam ser feitos com rapidez, frequência e segurança.
Não há uma única ferramenta DevOps que trabalhe na colaboração e integração entre as equipes de
desenvolvedores, testadores e operações.
Uma cadeia de ferramentas de DevOps é usada, e consiste em várias ferramentas que se ajustam em
diversas categorias do processo em todas as fases, desde o desenvolvimento até a implementação.
Essas ferramentas são utilizadas nos processos que envolvem os times de codificação, construção,
teste, embalagem, liberação, configuração e monitoramento.
6
Definições de DevOps
Existem várias opiniões sobre o que é e o que não é DevOps, geralmente é definido como uma nova
forma de organização, uma cultura ou até mesmo uma nova maneira de pensar.
Há uma grande diversidade de tecnologias de negócios e drivers a serem considerados para estabelecer
a estratégia de adoção do DevOps.
Embora existam ferramentas que são usadas no DevOps, não devemos limitar seu escopo a ferramentas
específicas como Chefs ou Jenkins. Isso limita o amplo escopo como se uma única ferramenta de
automação fosse comparável com todo o DevOps.
Ter uma equipe de DevOps separada elimina o objetivo de evitar possíveis atritos e falta de comunicação
entre os desenvolvedores e os operadores de TI, pois isso cria outro silo.
“Nós nos referimos a "DevOps" como o resultado da aplicação de princípios eficientes ao fluxo de valor de
TI”.
Livro de receitas do DevOps (DevOps Cookbook).
“Uma mistura de padrões projetados para melhorar a colaboração entre desenvolvedores e operadores. O
DevOps visa compartilhar metas e incentivos, bem como tem processos e ferramentas compartilhados”.
Michael Hüttermann.
7
“Um movimento de pessoas que se preocupam em desenvolver e operar sistemas confiáveis, seguros e de
alto desempenho em escala”.
Jez Humble.
“DevOps é uma cultura ou um movimento profissional”.
8
História convenção. O primeiro evento de DevOps foi
organizado por Debois em Ghent, na Bélgica.
2008
2010
As sementes do movimento DevOps foram
plantadas durante a conferência de Agile, realizada O primeiro DevOpsDay organizado nos Estados
em Toronto em 2008, pelo desenvolvedor de Unidos tinha defensores do DevOps, como
software Patrick Debois, que tinha experiência Andrew Clay Shafer, Damon Edwards e outros. Os
em múltiplas funções em uma grande organização eventos atraíram a atenção global e avançaram
na indústria de TI como desenvolvedor, em direção à comunidade de DevOps.
administrador de sistemas, especialista em rede,
gerente de projetos e até mesmo testador. Introdução da hashtag #DevOps que acabou
sendo uma fonte rica de informações.
Ele mostrou que poderia haver maneiras melhores
de conseguir um ótimo trabalho na resolução de
conflitos entre equipes de desenvolvimento e 2011
operações. Ele logo foi reconhecido como o líder
Muitas análises previram o surgimento do
da ideia por trás do conceito de DevOps e outros
DevOps globalmente até 2020.
continuaram a resolver esses desafios.
9
equipes de desenvolvimento e operações.
Muitos livros sobre o DevOps apareceram. Alguns dos mais notáveis são "The Phoenix Project",
"Implementando o Ddesenvolvimento Lean de Software" ("Implementing Lean Software Development"),
"Web Operations" e "A Startup Enxuta" (The Lean Startup), etc.
2014
Em uma pesquisa realizada pela Puppet Labs, 16 % dos 1486 entrevistados afirmaram que fazem
parte do DevOps em suas organizações.
2015 em diante
10
Objetivo do DevOps
O melhor objetivo oferecido pelo DevOps é fazer uma iteração mais rápida durante a fase de
desenvolvimento.
Isto é conseguido evitando o atrito entre desenvolvedores e operadores, tanto quanto seja possível.
Isso é alcançado garantindo transparência e integração entre a equipe de desenvolvimento e de
operações. O objetivo do DevOps é estabelecer processos de negócios alinhados no fluxo "just in
time" (JIT).
11
● Existem muitas metodologias e ferramentas que podem ser usadas.
● O DevOps não possui um modelo para implementação, cada organização precisa pensar e construir
seu próprio processo DevOps para melhorar seus negócios.
Adoção do DevOps
Os "Três Caminhos" de Gene Kim estabelecem essencialmente diferentes formas de adoção incremental
de DevOps:
12
Benefícios
O DevOps garante um tempo mais rápido de comercialização dos prazos de entrega e, portanto,
melhora a rentabilidade dos investimentos (ROI).
Outro benefício significativo do DevOps é a detecção precoce e a devida correção mais rápida dos
erros, resultando na entrega dos melhores serviços aos clientes.
O desenvolvimento de software atual exige que as equipes se envolvam na entrega contínua sem falhas,
em um curto período de tempo para os prazos de lançamento no mercado e ciclos de lançamento mais
curtos.
Estabilidade
É o tempo médio para reparar um serviço de TI ou outro item de configuração após uma falha.
O MTTR é medido desde o momento em que o item de configuração falhou até ser reparado.
O MTTR não inclui o tempo necessário para recuperar ou restaurar. Às vezes, é usado incorretamente
em vez do tempo médio para reestabelecer o serviço.
13
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
14
Workshop
Análise em Grupos
Pilares do DevOps
Agile
1. Velocidade.
2. Adaptabilidade a mudanças.
3. Lançamento sem erros (JKK Concept).
ITSM
Entrega Contínua
Just-in-time (JIT)
A produção just-in-time (JIT), também conhecida como sistema de produção Toyota (TPS), é uma
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
metodologia voltada principalmente para reduzir os tempos de fluxo dentro da produção, bem como
os tempos de resposta fornecedores e clientes.
A essência do JIT é que os insumos chegam na fábrica, ou os produtos ao cliente, "just in time", que
são pouco antes de serem utilizados e somente nas quantidades necessárias. Isso reduz ou até mesmo
elimina a necessidade de armazenar e mover as entradas do depósito para a linha de produção (no
caso de uma fábrica).
O Sistema de Produção Toyota (SPT) (Toyota Production System ou TPS em inglês) é um sistema integral
de produção "Integral Production System" e gestão, que surgiu na empresa automotiva japonesa de
mesmo nome.
16
Originalmente, o sistema foi projetado para fábricas de automóveis e suas relações com fornecedores
e consumidores, no entanto, os conceitos foram implantados em diversas outras áreas. Este sistema é
um ótimo precursor para o genérico Lean Manufacturing.
Kaizen
Kaizen, japonês para “melhoria”.
Quando usado no sentido comercial e aplicado ao local de trabalho, kaizen se refere a atividades que
aprimoram continuamente todas as funções e envolvem todos os funcionários, desde o CEO até os
trabalhadores da linha de montagem.
Também se aplica a processos, como compras e logística, que cruzam os limites da organização na
cadeia de suprimentos. Tem sido aplicado em cuidados de saúde, psicoterapia, treinamento de vida,
governo, bancos e outras indústrias.
BIMODAL - Gartner
http://www.gartner.com/it-glossary/?s=Bimodal
TI Bimodal: Duas abordagens diferentes, mas coerentes, bem diferentes, ambas essenciais.
17
http://www.gartner.com/it-glossary/?s=Bimodal
DevSecOps
Se o DevOps não prestar atenção à segurança, pode facilitar a rápida introdução de vulnerabilidades.
18
19
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
20
Scrum
Novo Modelo Operacional
O Scrum é um framework para desenvolver e manter produtos complexos. É formado por papéis,
eventos, artefatos e as regras que os ligam.
Fonte: www.scrumguides.org/docs/scrumguide
Um limite de WIP (work in progress) é uma estratégia para evitar gargalos no desenvolvimento de
software.
Ele é acordado antes do início do projeto pela equipe de desenvolvimento e é executado pelo facilitador
da equipe.
Por exemplo, uma equipe pode dividir as tarefas que devem ser executadas para uma característica no
design, código, teste e implantação. Quando um limite de WIP é atingido para uma tarefa específica,
a equipe inteira para e trabalha em conjunto para eliminar o gargalo. O objetivo de trabalhar dessa
maneira é garantir que toda a equipe assuma o controle do projeto e produza códigos de alta qualidade.
Acordos de Nível Operacional (Operational Level Agreement ou OLAs) podem ser usados por grupos
internos para dar suporte a SLAs.
21
Outra versão deste ciclo PDCA é o OPDCA. O "O" adicionado significa “observação” ou como
algumas versões dizem “Observe a situação atual". Essa ênfase na observação e na condição atual está
relacionada à manufatura enxuta ou à literatura do sistema de produção da Toyota.
Embora isso possa variar em cada Time Scrum, os integrantes devem ter um entendimento compartilhado
do que significa o trabalho estar completo, assegurando a transparência.
Esta é a Definição de “Pronto” para o Time Scrum e é usada para assegurar quando o trabalho esta
completado no incremento do produto. A mesma definição orienta o Time de Desenvolvimento no
conhecimento de quantos itens do Backlog do Produto podem ser selecionados durante o Planejamento
da Sprint.
22
Kanban para Equipes DevOps
O método Kanban pode ajudar as equipes de DevOps a colocar alguma ordem em seu trabalho diário,
e a teoria lean pode definitivamente ser aproveitada para melhorar o fluxo através das equipes de
DevOps.
23
Ciclo de vida do Desenvolvimento de Software
Ciclo de vida do software significa desenvolver o software, desde o estágio inicial até o estágio final.
O objetivo principal é:
Definir todas as fases intermediárias necessárias para validar o desenvolvimento da aplicação e garantir
que o software esteja em conformidade com os requisitos para a implementação e verificação dos
procedimentos de desenvolvimento, garantindo que métodos apropriados tenham sido utilizados.
No final de cada estágio, um teste é realizado para que as revisões possam ser corrigidas.
Não há uma abordagem universal para gerenciar com sucesso qualquer projeto de desenvolvimento
de software. Toda a metodologia deve ser adaptada ao contexto do projeto (recursos técnicos e
humanos, tempo de desenvolvimento, tipo de sistema, etc.)
As metodologias Agile oferecem uma solução para quase todos os projetos que possuem essas
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
características.
Uma das qualidades mais notáveis de uma metodologia Ágil é sua simplicidade, que reduz os custos
de implementação em uma equipe de desenvolvimento.
Essa abordagem foi considerada eficaz em projetos com requisitos dinâmicos e que tenham a
necessidade de reduzir drasticamente o tempo de desenvolvimento, mantendo a alta qualidade.
24
Modelo em Cascata
Modelo V
25
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
26
Integração Contínua
Cada pedaço de código é integrado ao sistema assim que o código estiver pronto.
Todos os testes são feitos e devem ser aprovados para que o novo código seja incorporado
definitivamente.
O time de desenvolvimento está mais preparado para modificar o código conforme necessário, pois
lhe são fornecidas identificação e correção para os erros de integração.
Pequenas entregas:
A ideia é produzir rapidamente versões do sistema que operantes, embora obviamente não tenham
todas as funcionalidades esperadas para o sistema, mas que sejam um resultado de valor para o
negócio.
Monitoração:
Um bom exemplo é uma equipe de arquitetos trabalhando na planta de uma casa. Todos os dias eles
trabalham para criar o design dela de forma independente, e toda sexta-feira eles tentam construir a
estrutura uma vez que todos os planos foram combinados.
Esse tipo de trabalho em equipe é bom, mas o que acontece se dois arquitetos trabalharem na mesma
parte da estrutura e elaborarem dois designs diferentes? Certamente, um problema ocorrerá. No
entanto, isso poderia ser evitado, como? Através da integração contínua.
27
Ao implementar o CI, todos os membros da equipe devem entregar todas as alterações feitas todos
os dias.
Cada vez que algo novo é adicionado ao plano, você será solicitado a escrever um teste que verifique
se o que você adicionou está correto.
Quaisquer alterações futuras que ajustem o design devem ser notificadas imediatamente.
uma alteração.
A CI permite que as equipes detectem problemas rapidamente assim que eles aparecem.
Algumas empresas ou equipes acreditam que é possível construir e entregar sem CI, mas hoje pode
ser um requisito.
Muitos acreditam que é possível desenvolver mais rapidamente sem a implementação da CI.
28
Com projetos em ascensão e crescimento, nem a empresa nem a equipe se tornarão mais eficientes
sem a CI. Com os erros de CI detectados rapidamente, a confiança aumenta e isso leva a uma maior
eficiência na entrega de software.
Com a integração contínua, haverá menos Back-tracking para descobrir onde um erro se originou. Isso
permite que mais tempo seja usado na construção dos recursos.
Não seguir a abordagem contínua significa períodos mais longos entre as integrações, por isso é
exponencialmente mais difícil encontrar os problemas e resolvê-los.
29
Entrega Contínua
O feedback permite que o desenvolvedor faça melhorias com o software em desenvolvimento. Existem
basicamente três pontos de melhoria:
Essas melhorias permitem que o desenvolvedor de software seja mais eficiente, mais capaz e mais
rápido no que eles estão entregando e, esperamos, a um custo menor.
● UAT (Teste de aceitação do usuário) Pré-prod e vários outros que podem ser úteis em sua entrega,
dependendo de como a organização está estruturada.
30
O ambiente final no ciclo de vida é o ambiente de produção, onde o software é executado, o cliente
o utiliza e onde o software realmente precisa chegar.
Aprendizagem Contínua
31
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
32
DevOps e Agile
● DevOps com Agile é uma combinação interessante. Sempre começa com um usuário, o cliente,
então algum conceito para ser levado ao mercado. Isto é conhecido como ciclo conceito-a-efetivo.
● Para obter isso do usuário ao desenvolvimento, as pessoas desenvolvem produtos, geralmente que
respondem aos requisitos do cliente de acordo com suas necessidades.
● E, por meio das operações, o Agile te leva do usuário para o desenvolvimento, e o DevOps leva
você do desenvolvimento até as operações nas quais você terá algo que pode realmente fornecer
aos seus clientes.
Equipes coesas: Significa trabalhar em estreita colaboração para produzir valor, para colocar produtos
no mercado.
Você pode usar as práticas de engenharia ágil junto com a capacidade de operar e pode terminar com
o DevOps.
33
DevOps e Scrum
O Scrum foi originalmente formulado para projetos de desenvolvimento de software. É uma estrutura
ágil que permite que projetos complexos sejam concluídos mais rapidamente.
No entanto, com o Scrum, as possibilidades são infinitas. Pode ser usado para qualquer campo inovador
e projeto/tarefa complexos. Esse framework é muito simples, mas você definitivamente deveria estar
trabalhando na criação da cultura DevOps.
DevOps e ITIL precisam um do outro. Por quê? Porque eles têm funções que beneficiam ambos.
● Trabalho colaborativo.
● Tempos de implantação rápidos e contínuos.
● Entrega mais rápida de funções.
● Foco no trabalho importante.
● Estabilidade no ambiente.
34
Embora o DevOps, por si só, seja um processo muito útil. Pode ser melhorado quando une forças com
o ITIL.
Com ITIL e DevOps, uma organização desfrutará de mais benefícios, como um escopo mais vigoroso de
serviços, uma melhor perspectiva das estratégias, maiores perspectivas sobre as melhorias, melhores
perspectivas sobre a atividade de transição e os rigores dos processos de design de serviços.
Se o tempo permitir, recomenda-se na preparação da certificação DevOps Essentials fazer uma análise
rápida do documento AXELOS no DevOps e no ITIL, onde uma integração das práticas do DevOps com as
fases do ITIL é vista. Disponível para baixar o portal AXELOS. www.Axelos.com
Outra percepção é que o ITIL e DevOps não podem trabalhar juntos porque não são compatíveis.
35
Sempre foi considerado que a organização deve escolher um e permanecer nele. Não é assim que deve
ser.
Na verdade, há mais sinergias entre esses dois do que diferenças. No entanto, muitas organizações
não percebem isso.
Portanto, eles estão perdendo muito em melhorias de serviço, que eles poderiam introduzir e
desenvolver apenas observando como eles podem aproveitar e equilibrar esses frameworks.
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
36
Abaixo está um exemplo de facilitação baseada no livro de Dana Pylayeva com duração máxima de 3
horas.
Recomenda-se o uso dos slides fornecidos pelo autor para contextualizar a simulação de ambientes
Pre-DevOps.
Equipes:
● Scrum.
● Grupo de IT (Administradores de sistemas, Engenheiros de segurança e Engenheiros de lançamento).
● Representantes da empresa.
37
Cultura DevOps
Não se pode negar que, com o tempo, o impacto do DevOps cresceu significativamente. Especificamente
no atual ambiente de TI competitivo e acelerado.
● Hoje em dia, há uma linha tênue entre os papéis que os desenvolvedores desempenham e já não é
suficiente ter uma experiência sólida.
● Pequenas, médias e grandes empresas estão agora adotando essa nova cultura de DevOps para
impulsionar seus aplicativos e programas e poder responder rapidamente às mudanças.
● Na construção de DevOps, existem fatores-chave a serem considerados. Em primeiro lugar, é
importante ser generalista. Ser um especialista em um campo (tecnologia ou software) simplesmente
não funciona mais.
● Produtos e empresas estão mudando ao longo do tempo, portanto, é necessário ter a capacidade
de saber como trabalhar em múltiplas áreas e criar um melhor valor.
A integração contínua também é essencial. Isso significa poder enviar código diretamente para os
usuários. Este é um processo de testar o código enquanto ele está no estágio de desenvolvimento.
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
Isso permite que os desenvolvedores ajam imediatamente, à medida que os comentários são retornados.
Os códigos testados continuamente são menos propensos a erros e são mais fáceis de serem liberados
também.
Outros fatores incluem monitoramento contínuo, implantação contínua (obtendo o novo código no
processo de produção o mais rápido possível) e resiliência (criando aplicativos resilientes para que
você possa responder aos erros de forma cuidadosa e detalhada).
38
Organização-Legado
39
Operadores e Desenvolvedores Tradicionais
40
DevOps Total
41
Adoção Incremental
Uma abordagem alternativa para a adoção agressiva do DevOps é uma adoção incremental; Embora
isso possa levar mais tempo, representará um risco significativamente menor e garantirá uma
implementação bem-sucedida.
Portanto, DevOps deve ser planejado para melhoria contínua e não fazer a implementação de um
evento único.
Uma estratégia incremental deve ser preferencialmente feita em uma abordagem cíclica, em camadas,
que minimize os riscos e os custos da adoção do DevOps, e construa os conjuntos de habilidades
internas necessárias e o ímpeto para implementar ciclos maiores e mais rápidos.
Cada passo será construído na etapa anterior, em termos de investimento e preparação ao longo do
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
ciclo global. As horas dedicadas ao desenvolvimento serão realistas para a maioria das empresas e
variarão amplamente de acordo com a cultura e a política de uma organização.
42
Pensamento de Sistemas
O mais importante é que as organizações de DevOps sempre pensem em termos de sistemas. Sistemas
significa conjuntos de processos integrados que trabalham para objetivos comuns.
Para organizações de DevOps, Sistema significa o negócio como um todo, não seus departamentos ou
equipes específicas.
Pensamento de sistemas significa que cada equipe deve estar ciente das ações de todas as outras
equipes que trabalham nas linhas de desenvolvimento e somente após esse entendimento as entregas
são feitas para o cliente.
O DevOps define como as ações podem afetar não apenas a equipe, mas todo o sistema. Isso significa
que os desenvolvedores podem ter maior visibilidade em todo o ciclo de vida dos códigos que escrevem.
Isso também significa que os administradores de sistemas devem entender completamente o impacto
do desempenho nos aplicativos, uma vez liberados para os clientes.
O pensamento sistemático também é uma excelente abordagem para pensar sobre a culpa.
Tradicionalmente, quando alguém forçava partes do código em produção, o que causaram grandes
interrupções no serviço, elas seriam crucificadas pelos colegas e pela gerencia.
Um pensamento sistemático foi capaz de eliminar essas inclinações iniciais para a culpa individual.
É sobre não culpar um indivíduo que teve a infelicidade de pressionar o botão, mas o sistema que
permitiu que isso acontecesse.
43
O pensamento sistemático tratará incidentes como esses como falhas no sistema.
A equipe de DevOps investigará imediatamente as causas; não por pessoas que fizeram isso, mas por
causas de como isso pôde acontecer. É possível investigar as causas de por que os testes automatizados
não conseguiram detectar a falha, o que leva ao princípio da aprendizagem e experimentação.
Experimentação e Aprendizagem
O incidente seria corrigido de forma que mesmo que alguém fizesse a mesma coisa novamente, o
sistema evitaria a falha.
As pessoas aprendem com seus erros, e a organização permite que todos experimentem, em vez de
forçá-los a se concentrar em um conjunto restrito de tarefas.
Isso, naturalmente, encorajaria todos a serem humildes, nenhuma ideia perfeita, todas podem ser
desafiadas.
O DevOps foi capaz de estabelecer precedentes na experimentação sendo aceitável, mesmo se eles
terminarem em fracassos, uma vez que normalmente as falhas são as melhores maneiras de aprender.
44
Feedback
Sem nenhum feedback, o aprendizado seria ineficiente, portanto, a implementação do DevOps sempre
estimula diferentes tipos de feedback.
O feedback ocorre entre pares nas mesmas equipes e entre empresas na forma de feedback do cliente.
O DevOps mantém os canais de comunicação abertos para facilitar o feedback e permitir a infiltração
do cliente nos níveis de desenvolvimento e operação.
O DevOps incentiva o desenvolvimento rápido e seus ciclos de feedback não são diferentes.
Para fornecer os recursos ao cliente no menor tempo possível, é essencial que o feedback seja recebido
o mais rápido possível.
Os clientes podem fornecer feedback imediato que é exibido e priorizado e convertido em novos
códigos que são aplicados à infraestrutura para ir aos clientes novamente por meio de um loop de
feedback.
É igualmente importante para a participação e interação das pessoas que oferecem o aplicativo, como
Os riscos de produção são mitigados testando conceitos em múltiplas fases e superando a resistência
à mudança. Embora uma abordagem de processo incremental leve anos, os resultados são sempre
transformadores, o ponto final é que o DevOps é dinâmico.
45
Ferramentas para o Suporte da Cultura DevOps
Fazer o DevOps sem o uso de ferramentas é complexo se entendermos que o DevOps tem componentes
de automação. DevOps é e será um tema de Cultura e não será apenas o conjunto de ferramentas.
Vejamos um exemplo de que as ferramentas não fazem cultura. Pense em uma empresa que deseja
que suas reuniões internas comecem no horário marcado. Se a empresa comprar software de
gerenciamento de reuniões, as reuniões começarão no horário marcado?
Se a cultura interna é iniciar reuniões atrasadas, devemos trabalhar para mudar a cultura interna
primeiro. A ferramenta por melhor que seja, não conseguirá mudar a cultura.
Quais ferramentas para DevOps ou chamadas DevOps que são conhecidas pelos candidatos à
certificação DevOps Essentials? O que essas ferramentas fazem?
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
46
Sem as ferramentas adequadas, a fusão de papéis e responsabilidades do DevOps pode criar caos
e resultados indesejáveis, que incluem problemas relacionados à escalabilidade, confiabilidade e
gerenciamento de carga.
Ferramentas DevOps-GIT
O GIT foi produzido seguindo os requisitos da comunidade Linux para SCM, ou seja, o software
Source-Control-Management que poderia suportar sistemas distribuídos. Essa é a ferramenta mais
comumente usada para gerenciar fontes que está disponível atualmente.
Sua vantagem é ter ótimos recursos adicionais em aplicações de bifurcação e tração; por disso, o GitHub
também fornece plug-ins capazes de conectar o Jenkins e facilitar a integração e a implementação.
Os testes de velocidade que são executados em uma operação de rede GIT geram resultados
impressionantes, pois os protocolos GIT para transferência de dados são altamente otimizados.
No entanto, com o passar do tempo, as implementações internas do GIT revelam limitações que podem
afetar a velocidade e a eficiência dos canais de entrega.
Plataforma Cloud
As tarefas na automação da nuvem são executadas por muitas ferramentas de automação, como
scripts e ferramentas de gerenciamento local para gerenciamento de configuração.
As orquestras do DevOps são uma coordenação automatizada por processos personalizados de DevOps
nas ferramentas e tarefas de organização e automação que estão sendo realizadas no processo.
A orquestração vai além da simples tração da infraestrutura de nuvem para abranger as tarefas de
automação de DevOps em coordenação com a infraestrutura para obter a orquestração de DevOps.
47
Os desenvolvedores que usam o Docker criam ambientes Docker no laptop para desenvolver e testar
aplicativos localmente em containers. Nesse ambiente, os testes são realizados em pilhas de serviços
compostos com vários containers do Docker.
Vários containers do Docker convergem como baterias de serviço único, como baterias LAMP, e levam
segundos para criar uma instância.
Docker
O Docker traz portabilidade para aplicativos por meio da tecnologia de container, onde os aplicativos
podem ser executados em unidades autônomas que se movem pelas plataformas.
O Docker tem sido uma parte vital da próxima geração de testes de Yelp e infraestrutura para
gerenciamento de serviços.
Alguns ambientes podem executar o host do Docker dentro de outro host do Docker (Docker-in-
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
Para obter velocidades maiores para fornecer software de Entrega Contínua (CD), muitas técnicas do
Docker podem ser usadas.
48
JS
As plataformas JS possuem bibliotecas que permitem que os aplicativos sirvam como servidores Web
sem a necessidade de softwares como o Apache-HTTP-Server ou o Microsoft-IIS.
Sem precisar fazer com que os servidores da Web encurtem as listas de tarefas do DevOps e otimizem
o fluxo de código do desenvolvimento para a implantação. Além disso, o JavaScript pode ser usado
tanto no cliente quanto no servidor.
Ele foi projetado para operação rápida com ótima experiência do usuário. Um modelo de E/S sem
bloqueio controlado por eventos no NODE.JS permite aplicativos leves que são altamente eficientes.
Muitas das principais organizações de pensamento utilizam o NODE.JS, como SAP, Groupon, LinkedIn,
PayPal e Wal-Mart.
Chef
Esse nível de abstração aumenta a produtividade e permite que os desenvolvedores criem facilmente
configurações personalizadas para aplicativos. As receitas são executadas independentemente usando
o CHEF SOLO ou um servidor que tenha o CHEF SERVER que atua como hubs para os dados de
configuração.
49
Os servidores armazenam livros de receitas ou políticas aplicadas aos nós e aos metadados que
descrevem o nó registrado gerenciado pelo chef-client.
O Chef é uma ferramenta de gerenciamento multiplataforma para Windows, Linux, Mac OS, etc., e
pode ser integrado com os principais provedores de cloud.
Jenkins
Com o Jenkins, o engenheiro de DevOps acha mais fácil integrar as mudanças nos projetos e pode
acessar facilmente as saídas quando descobrem que algo está errado.
As principais características são seus links permanentes, a integração de RSS / email / mensagens
instantâneas, rotulagem pós-evento, seu relatório de teste JUnit / TestNG e as compilações distribuídas.
Puppet
Ele possui cadeias de ferramentas comuns e suporta as principais práticas recomendadas no DevOps
que incluem entrega contínua.
Há também versões de software livre do Puppet que foram usadas pela Universidade de Stanford para
preencher lacunas no desenvolvimento de software para o serviço de biblioteca digital e administração
do sistema, necessárias para manter os serviços funcionando com segurança.
50
P.P.T e Cultura
www.gartner.com
51
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
52
Modelo de Maturidade DevOps
Esse modelo examina o DevOps de três pontos de vista: processos, automação e colaboração. E abrange
uma série de estados claramente definidos no caminho para um ambiente de DevOps otimizado.
Checklist - DevOps
Os checklists DevOps não são estáticos ou exclusivos e não existem manifestos descrevendo o
DevOps, mas devem ser adaptadas às necessidades da organização, interações humanas e outros
critérios de natureza específica.
Os checklists poderiam ajudar um procedimento com a criação de culturas de DevOps, mas eles não
são considerados maneiras exclusivas de proceder com uma transformação organizacional.
Nas empresas, existe uma necessidade de avaliação contínua que é a base para o desenvolvimento
escalável da empresa DevOps.
● Sem avaliação contínua em um kit de ferramentas de DevOps, existe o risco de ficar cego e perder
grandes oportunidades que podem estar facilmente ao alcance.
53
● Essas informações serão cruciais quando os líderes de negócios e de TI priorizarem seus
investimentos futuros e fizerem concessões que possam surgir.
O resultado dessa autoavaliação deve ser usado para ajudar a otimizar suas práticas e ferramentas de
DevOps. Ao decidir o próximo passo para a sua jornada através do DevOps, você deve considerar
o mercado competitivo, a cultura organizacional, os processos internos e as ferramentas atuais para
fortalecer cada uma das áreas de atuação do DevOps.
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
Fonte:http://aka.ms/DevOpsMaturity
http://devopsassessment.azurewebsites.net/es-ES/
A autoavaliação ajuda a determinar e medir quais recursos do DevOps são muito valiosos e devem ser
melhorados na cultura de negócios.
É caro manter e dificulta a inovação, o que desacelera a equipo de desenvolvimento, assim sendo
obrigatório um processo de auto-avaliação contínuo.
54
DevOps Report 2017+
É importante saber como o DevOps está se comportando na indústria americana e em outros países.
O DevOps Report é produzido anualmente pela Puppet e deve ser conhecido e analisado pelos
interessados no Certificado Profissional DevOps Essentials da CertiProf®.
55
Literatura
Referências
● Jens Smeds, K. N. (2015). IEEE 11th International Conference on Global Software Engineering
(ICGSE). Lecture Notes in Business Information Processing Agile Processes in Software Engineering
and Extreme Programming , 166-177.
● Kort, W. D. (2016). Dashboards and Reporting. DevOps on the Microsoft Stack , 77-96.
● Kort, W. d. (2016). Integrating Testers into DevOps. DevOps on the Microsoft Stack , 205-229.
● Noureddin Kerzazi, B. A. (2016). Who needs release and devops engineers, and why? Proceedings
of the International Workshop on Continuous Software Evolution and Delivery - CSED '16.
● Stephen Jones, J. N. (2016). Management challenges for DevOps adoption within UK SMEs.
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)
56
57
DEVOPS ESSENTIALS PROFESSIONAL CERTIFICATE (DEPC®)