Princípios e práticas fundamentais de SRE: o lado humano da SRE
Um processo operacional bem-sucedido é aquele que alcança a confiabilidade desejada e a sustenta. Tal processo depende tanto de como trata os humanos responsáveis por aquele ambiente quanto de como trata as máquinas. A engenharia de confiabilidade do site reconhece essa verdade de muitas maneiras que são cruciais para sua prática.
Tarefas enfadonhas
O primeiro ponto a ter em conta é a noção de “tarefas enfadonhas”. Num contexto de SRE, as “tarefas enfadonhas” referem-se ao trabalho de operações realizado por uma pessoa com determinadas características. As “tarefas enfadonhas” não possuem um valor compensatório a longo prazo. Não fazem progredir o serviço de forma significativa. É muitas vezes repetitivo e em grande parte manual (mesmo que possa ser automatizado). À medida que o serviço ou os sistemas ficam maiores, o número de pedidos desse sistema provavelmente também aumentará de forma proporcional e exigirá ainda mais trabalho manual.
Por exemplo, um serviço pode exigir que a equipe SRE incorra em cargas operacionais como estas, que são consideradas trabalhosas:
- Repor algo todas as semanas.
- Provisionamento manual de novas contas e espaço em disco.
- Reiniciando repetidamente um processo manualmente.
Concluir essas ações não torna o serviço melhor de forma persistente e de longo prazo. Também é provável que essas ações devam ser repetidas várias vezes.
Nota
Mesmo se mantiver pedidos desta natureza em algum tipo de sistema de pedidos, como acontece em muitos sítios, efetuar a ação e resolver um pedido de suporte continua a exigir tarefas enfadonhas. Trata-se apenas de tarefas enfadonhas bem monitorizadas.
As equipas de SRE odeiam este tipo de tarefas. Trabalham para eliminá-las sempre que possível e apropriado. Este objetivo é um dos lugares em que a automação entra em jogo no SRE. Se estes pedidos puderem ser processados automaticamente, permitirá à equipa trabalhar em tarefas mais satisfatórias e com mais impacto do que o processamento da fila de pedidos.
O uso da palavra "apropriado" em relação à labuta é semelhante ao seu uso em torno da confiabilidade. Há situações em que o trabalho de eliminação de labuta é de menor prioridade do que outros trabalhos. Mas, no geral, retirar a labuta de um serviço é um foco fundamental para um SRE.
Trabalho de projeto vs. trabalho de “operações” reativo
Para realizar o trabalho necessário para remover o trabalho ou melhorar a confiabilidade de um sistema, o tempo de um SRE deve ser alocado adequadamente. Eles querem garantir que não estão gastando todo o seu tempo combatendo incêndios, respondendo a páginas ou apenas processando uma fila de ingressos. Eles precisam ter o tempo reservado para escrever código para eliminar o trabalho, construir automação de autoatendimento para que os tíquetes não sejam necessários e construir projetos que tornem o serviço e as pessoas mais eficientes. O valor normalmente citado (proveniente do modelo original do Google) não ultrapassa a carga operacional de 50% numa equipa.
Nota
50% é, de certa forma, um valor arbitrário, mas, na prática, parece funcionar como uma meta razoável para muitas pessoas.
Há momentos na vida de um SRE em que todo o seu tempo é dedicado “a apagar fogos”, mas isso não pode ser um estado estável. Se o trabalho de “operações” reativo de uma equipa (muito das “tarefas enfadonhas”) ocupar mais de 50% do tempo durante um período prolongado, esse será o caminho certo para o {i>burnout
Agora que tivemos uma oportunidade de ver algumas das principais práticas e princípios de SRE, vamos falar um pouco sobre como começar.