Perguntas frequentes: Qual é a relação entre SRE e DevOps?Frequently asked questions: What's the relationship between SRE and DevOps?

Há um conjunto de perguntas comuns que surgem pela relação entre a engenharia de confiabilidade do site e a DevOps, incluindo "como elas são as mesmas?There is a set of common questions that come up around the relationship between site reliability engineering and DevOps including "How are they same? Como eles são diferentes?How are they different? Podemos ter ambos em nossa organização? ".Can we have both in our organization?". Este artigo tenta compartilhar algumas das respostas que foram oferecidas pelas comunidades SRE e DevOps que nos dizem mais perto de entender essa relação.This article attempts to share some of the answers that have been offered by the SRE and DevOps communities that get us closer to an understanding of this relationship.

Como eles são os mesmos?How are they the same?

SRE e DevOps são práticas de operações modernas que foram criadas e desenvolvidas em resposta a desafios que incluíram:SRE and DevOps are both modern operations practices that were created and developed in response to challenges that included:

  • uma complexidade crescente de nossos ambientes de produção e processos de desenvolvimentoa growing complexity of our production environments and development processes
  • o aumento da dependência dos negócios ao funcionamento contínuo desses ambientesincreasing business dependency on the continuous functioning of those environments
  • a incapacidade de dimensionar a força de funcionários de maneira linear ao tamanho desses ambientesthe inability to scale the workforce linearly with the size of these environments
  • a necessidade de se mover mais rápido enquanto ainda mantém a estabilidade operacionalthe need to move faster while still retaining operational stability

Ambas as práticas de operações exigem atenção aos assuntos que são cruciais para lidar com esses desafios, como monitoramento/observação, automação, documentação e ferramentas de desenvolvimento de software colaborativo.Both operations practices value attention to subjects that are crucial to dealing with these challenges like monitoring/ observability, automation, documentation, and collaborative software development tools.

Há uma sobreposição considerável em ferramentas e áreas de trabalho entre SRE e DevOps.There is considerable overlap in tooling and areas of work between SRE and DevOps. Como a pasta de trabalho de confiabilidade do site a coloca, "SRE acredita nas mesmas coisas que DevOps, mas por motivos ligeiramente diferentes."As The Site Reliability Workbook puts it, "SRE believes in the same things as DevOps but for slightly different reasons."

Três maneiras diferentes de comparar as duas práticas de operaçõesThree different ways to compare the two operations practices

As semelhanças entre SRE e DevOps são claras.The similarities between SRE and DevOps are clear. Onde se torna realmente interessante como as duas diferem ou Diver.Where it gets really interesting is how the two differ or diverge. Aqui, oferecemos três maneiras de pensar sobre sua relação como uma maneira de trazer algumas nuances para essa pergunta.Here we offer three ways to think about their relationship as a way of bringing some nuance to this question. Você não pode concordar com essas respostas, mas cada uma delas fornece um bom ponto de partida para discussão.You may not agree with these answers, but they each provide a good starting place for discussion.

"Class SRE implementa a interface DevOps""class SRE implements interface DevOps"

A pasta de trabalho de confiabilidade do site (mencionada em nossa lista de livros de recursos) discute SRE e DevOps em seu primeiro capítulo.The Site Reliability Workbook (mentioned in our resource book list) discusses SRE and DevOps in its first chapter. Esse capítulo usa a frase "Class SRE Implements interface DevOps" como seu subtítulo.That chapter uses the phrase "class SRE implements interface DevOps" as its subtitle. Isso serve para sugerir (usando uma frase destinada a desenvolvedores) que SRE poderia ser considerada uma implementação específica da filosofia DevOps.This is meant to suggest (using a phrase aimed at developers) that SRE could be considered a specific implementation of the DevOps philosophy. Como o capítulo destaca, "DevOps é relativamente silencioso sobre como executar operações em um nível detalhado", enquanto o SRE é consideravelmente mais proexplicativo em suas práticas.As the chapter points out, "DevOps is relatively silent on how to run operations at a detailed level" while SRE is considerably more proscriptive in its practices. Assim, uma resposta possível à pergunta de como os dois relacionados é SRE poderia ser considerada uma das muitas implementações possíveis de DevOps.So one possible answer to the question of how the two relate is SRE could be considered one of many possible implementations of DevOps.

SRE é a confiabilidade que o DevOps é para entregaSRE is to reliability as DevOps is to delivery

Essa comparação é um pouco muddied porque há várias definições para SRE e DevOps, mas ainda é potencialmente útil.This comparison is a little muddied because there are multiple definitions for both SRE and DevOps, but it is still potentially useful. Ele começa com a pergunta "se você tivesse que filtrar cada prática de operações em uma ou duas palavras que reflitam sua preocupação principal, o que seria?"It starts with the question "If you had to distill each operations practice into one or two words that reflect its core concern, what would it be?"

Se usarmos essa definição de SRE do Hub de engenharia de confiabilidade do site:If we use this definition of SRE from the site reliability engineering hub:

A Engenharia de Confiabilidade do Site é uma disciplina de engenharia dedicada a ajudar uma organização a alcançar de maneira sustentável o nível de confiabilidade apropriado em sistemas, serviços e produtos.Site Reliability Engineering is an engineering discipline devoted to helping an organization sustainably achieve the appropriate level of reliability in their systems, services, and products.

em seguida, seria fácil dizer que a palavra para SRE é "confiabilidade".then it would be easy to say the word for SRE is "reliability". Ter o direito no meio do nome também oferece uma excelente evidência para essa declaração.Having it be right in the middle of the name also offers some excellent evidence for this claim.

Se usarmos essa definição de DevOps da central de recursos DevOps do Azure:If we use this definition of DevOps from the Azure DevOps Resource center:

O DevOps é a união de pessoas, processos e produtos para habilitar a entrega contínua de valor para nossos usuários finais.DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.

em seguida, um detalhamento semelhante para DevOps poderia ser "Delivery".then a similar distillation for DevOps could be "delivery".

Portanto, "SRE é a confiabilidade que o DevOps é para entrega".Hence "SRE is to reliability as DevOps is to delivery".

Direção de atençãoDirection of attention

Essa resposta está entre aspas ou um pouco desenhada de uma contribuição por Thomas Limoncelli para o livro de busca SRE mencionado em nossa lista de livros de recursos.This answer is quoted or slightly paraphrased from a contribution by Thomas Limoncelli to the Seeking SRE book mentioned in our resource book list. Ele observa que os engenheiros de DevOps estão amplamente concentrados no pipeline de desenvolvimento de software com responsabilidades de operações de produção ocasionais, enquanto os SREs se concentram em operações de produção com responsabilidades de pipeline SDLC ocasionais.He notes that DevOps engineers are largely focusing on the software development lifecycle pipeline with occasional production operations responsibilities while SREs focus on production operations with occasional SDLC pipeline responsibilities.

Mas o mais importante é que ele também desenha um diagrama que começa com o processo de desenvolvimento de software em um lado e as operações de produção funcionam no outro.But more importantly, he also draws a diagram that starts with the software development process on one side and the production operations work on the other. Os dois são conectados pelo pipeline comum criado para pegar o código de um desenvolvedor, gerenciamos-lo por meio do número desejado de testes e do estágio e, em seguida, mover esse código para produção.The two are connected by the usual pipeline that is built to take the code from a developer, shepherd it through the desired number of tests and stage and then move that code into production.

Limoncelli observa que os engenheiros de DevOps começam no ambiente de desenvolvimento e automatizam as etapas para a produção.Limoncelli notes that DevOps engineers start at the development environment and automate steps towards production. Depois de concluído, eles voltarão a otimizar os afunilamentos.Once complete, they go back to optimize bottlenecks.

SREs, por outro lado, concentre-se nas operações de produção e alcance profundamente o pipeline como um meio de melhorar o resultado final (basicamente trabalhando na direção oposta).SREs, on the other hand, focus on production operations, and reach deep into the pipeline as a means of improving the end result (basically working in the opposite direction).

É essa diferença na direção do SRE e do foco do DevOps que pode ajudar a diferenciá-los.It is this difference in the direction of the SRE and DevOps focus which can help differentiate them.

Coexistência na mesma organizaçãoCoexistence in the same organization

A pergunta final que gostaríamos de abordar é "você pode ter SRE e DevOps na mesma organização?"The final question we'd like to address is "Can you have both SRE and DevOps in the same organization?"

A resposta a essa pergunta é um Emphatic "Sim!".The answer to this question is an emphatic "yes!".

Esperamos que as respostas anteriores ofereçam uma ideia de como as duas práticas de operações se sobrepõem e, quando não se sobrepõem, como elas podem ser complementares em foco.We hope that the previous answers offer some idea how the two operations practices overlap and, when not overlapping, how they can be complementary in focus. As organizações com uma prática DevOps estabelecida podem experimentar as práticas de SRE em uma pequena escala (por exemplo, experimentando SLIs e SLOs) sem precisar confirmar a criação de SRE cargos ou equipes.Organizations with an established DevOps practice can experiment with SRE practices on a small scale (for example, trying SLIs and SLOs) without having to commit to creating SRE positions or teams. Esse é um padrão de adoção SRE relativamente comum.This is a fairly common SRE adoption pattern.

Próximas etapasNext Steps

Interessado em aprender mais sobre Engenharia de confiabilidade de site ou DevOps?Interested in learning more about site reliability engineering or DevOps? Confira o Hub de engenharia de confiabilidade do site e o centro de recursos do Azure DevOps.Check out our site reliability engineering hub and Azure DevOps Resource center.