Operações modernas
No início deste módulo, afirmamos que as práticas modernas de operações podem ajudar. No entanto, não dissemos muito sobre quais eram essas práticas ou por que procurá-las para obter ajuda faz sentido. Vamos discutir isso agora como um prelúdio para o mapa que usamos para navegar em nosso trabalho de confiabilidade.
Neste módulo e ao longo do percurso de aprendizagem de Operações Modernas, utilizamos o termo práticas modernas de operação como contentor para duas práticas diferentes:
- DevOps
- Engenharia de confiabilidade do local (SRE)
Vamos analisá-las e saber o que têm para nos oferecer neste contexto.
DevOps
O DevOps é algo com muitas vantagens que diferentes pessoas compreenderam e interpretaram de diferentes formas. Há muitas boas definições para isso. Vamos observar algumas delas para lhe dar uma visão completa:
Entrega contínua de valor
O DevOps é a união das pessoas, do processo e dos produtos que nos permite proporcionar valor aos nossos utilizadores finais. As contrações de "Dev" e "Ops" referem-se à substituição de Desenvolvimento e Operações para criar equipas multidisciplinares que atualmente trabalham juntas com práticas e ferramentas partilhadas e eficientes. As práticas essenciais do DevOps são o planeamento ágil, a integração contínua, a entrega contínua e a monitorização de aplicações.
– Sam Guckenheimer, What is DevOps? (O que é o DevOps?)
Cultura de colaboração, propriedade e aprendizagem
O DevOps é uma cultura de engenharia de colaboração, propriedade e aprendizagem com o objetivo de acelerar o ciclo de vida do desenvolvimento do software de planeamento para produção.
– Emily Freeman, DevOps for Dummies (DevOps para Iniciantes)
Trabalhar em conjunto para imaginar, desenvolver, implementar e operar um sistema
DevOps: uma cultura onde as pessoas, independentemente do título ou do contexto, trabalham em conjunto para imaginar, desenvolver, implementar e operar um sistema.
– Ken Murage
Engenharia de Fiabilidade do Site
Se uma palavra-chave no domínio do DevOps é entrega, a palavra-chave para a engenharia de confiabilidade do site seria confiabilidade. Embora existam algumas definições para SRE que foram discutidas no campo, parece haver mais consenso sobre o assunto. Eis a nossa definição que captura os aspetos principais desse consenso:
A Engenharia de Fiabilidade de Sites é uma disciplina de engenharia dedicada a ajudar uma organização a alcançar, de forma sustentável, o nível de fiabilidade adequado nos seus sistemas, serviços e produtos.
Porquê estas práticas? Porquê agora?
Os profissionais de operações criaram DevOps e SRE nos últimos 15 anos para responder a um conjunto específico de desafios no espaço de operações. Eles reconheceram que muitos fatores exigiriam uma nova abordagem, incluindo:
- A crescente complexidade dos ambientes de produção.
- Aumentar a dependência dos negócios do funcionamento contínuo desses ambientes.
- A incapacidade de escalar a força de trabalho linearmente com o tamanho desses ambientes.
Embora existam práticas diferentes com um foco um pouco diferente (por exemplo, entrega versus confiabilidade, como mencionado anteriormente), tanto o DevOps quanto o SRE desenvolveram princípios e práticas que são fundamentais para o trabalho de confiabilidade. Estas incluem monitorização/observabilidade, resposta adequada a incidentes, automatização e colaboração. Todas essas coisas desempenham um papel proeminente no material que discutimos no caminho de aprendizagem Melhore sua confiabilidade .
Vamos ao trabalho. Vamos começar com um modelo que pode nos ajudar a estruturar e planejar nossos esforços de confiabilidade.