View a markdown version of this page

Etapa 1: Defina sua Estrela Polar - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Etapa 1: Defina sua Estrela Polar

Uma implementação bem-sucedida da observabilidade não envolve apenas operações e ferramentas, mas também promove uma cultura de propriedade, melhoria contínua e solução proativa de problemas. Como acontece com qualquer estratégia bem-sucedida, sua estratégia de observabilidade exige uma consideração holística de três pilares: pessoas, processos e tecnologia.

Quando você quiser estabelecer ou melhorar sua postura de observabilidade, recomendamos que você comece definindo o que importa, recupere os resultados de seus negócios e revise, ajuste e realinhe continuamente sua estratégia à medida que seus negócios, equipes e produtos evoluem.

Neste primeiro estágio, você define e estabelece sua Estrela Polar, que é uma definição aceita e bem compreendida do que é bom para sua organização. Recomendamos que você revise algumas ou todas as atividades nesse estágio à medida que sua empresa evolui, ao lançar um novo produto, aplicativo ou serviço, ou ao projetar uma grande mudança arquitetônica, para reavaliar sua plataforma de observabilidade e suas necessidades organizacionais.

Integre a observabilidade no início do ciclo de vida de desenvolvimento (abordagem shift-left)

Faça da observabilidade uma responsabilidade para cada membro das equipes de engenharia, operações e produto e trate-a como um requisito funcional primário, semelhante à forma como você trata os testes unitários ou a segurança. Isso não transfere a responsabilidade da equipe de operações para a equipe de desenvolvimento, mas destaca a colaboração necessária entre as várias equipes. É útil que as equipes realizem as seguintes atividades em colaboração no início do ciclo de vida de desenvolvimento. Talvez você queira fazer isso por ticket, por recurso ou por produto.

  • Identifique as partes interessadas. Quem são as partes interessadas e o que é importante para elas se esse recurso ou produto não funcionar conforme o esperado? Ao identificar as partes interessadas, considere aspectos como funcionalidade, disponibilidade, segurança, custo, vendas e uso do produto. As partes interessadas podem incluir sua equipe, os clientes do seu produto, as partes interessadas internas da empresa, membros da equipe de operações da plataforma e desenvolvedores de aplicativos. Dependendo do cenário, suas equipes de segurança e finanças também podem ser partes interessadas.

  • Identifique os principais resultados. Determine os principais resultados e seu impacto nos negócios e em cada parte interessada. Identifique o sucesso e o fracasso de cada resultado e parte interessada. Os resultados geralmente são definidos como objetivos de nível de serviço (SLOs) e devem ser quantificáveis. Um SLO é uma medida para cada resultado. Um bom SLO tem um valor-alvo que deve ser buscado ou mantido como meta. Um SLO pode ser uma medida da satisfação do usuário. Um indicador de nível de serviço (SLI) é a medição ou a métrica real usada para determinar se você está cumprindo o SLO: é o ponto de dados quantificável que você rastreia em relação ao seu objetivo. Os exemplos incluem reduzir o MTTR em 60 por cento, manter a disponibilidade do aplicativo em 99,99 por cento ou melhorar a produtividade do desenvolvedor em 30 por cento.

    Vamos dar o exemplo de manter a disponibilidade do aplicativo em 99,99% e definir o SLO, o SLI e as métricas necessárias para medir e validar o sucesso. Neste exemplo, vamos considerar um RESTful aplicativo e definir a disponibilidade do aplicativo como a conclusão bem-sucedida de todas as solicitações recebidas. Isso requer medir o número total de solicitações para o aplicativo e o status de conclusão de cada solicitação. Ao traduzi-los em SLO e SLI, você precisa de uma métrica que capture as solicitações recebidas e outra métrica que capture o status das solicitações. Se todas as solicitações forem concluídas com êxito, o aplicativo será considerado disponível. Se uma ou mais solicitações resultarem em erros, o aplicativo será considerado indisponível. Portanto, o SLI seria a soma das solicitações concluídas com erro, dividida pela soma das solicitações recebidas em um intervalo de 5 minutos — efetivamente, uma taxa de erro. Você pode adicionar uma meta a esse SLI para transformá-lo em um SLO; por exemplo: esforce-se para que a taxa de erro seja inferior a 0,1% em 3 intervalos consecutivos de 5 minutos.

  • Priorize os principais resultados.Com base na prioridade definida para cada resultado, você pode optar por se concentrar primeiro nos resultados que tenham o maior impacto, em vez de fazer tudo ao mesmo tempo. Comece aos poucos, repita e melhore sua postura de observabilidade em pequenos incrementos. A observabilidade é um processo que exige revisões, auditorias, aprimoramentos e melhorias contínuas para aumentar a maturidade e os benefícios. A priorização também pode dar a você a oportunidade de definir marcos incrementais em direção aos resultados identificados.

  • Identifique a instrumentação necessária. Quais são os componentes e recursos relacionados da arquitetura ou implementação que podem influenciar os resultados que importam, conforme identificado nas etapas anteriores? Por exemplo, quando você executa um aplicativo em uma instância do Amazon Elastic Compute Cloud (Amazon EC2), o número de núcleos e a RAM disponível podem afetar a capacidade de resposta e a taxa de transferência do aplicativo. Nesse estágio, também pode ser útil determinar se as ferramentas ou bibliotecas que você usa já fornecem parte dessa instrumentação. Realizar uma série de análises preliminares ou adicionar perguntas como as seguintes à definição de pronto (DoR) de um ticket pode tornar essa atividade parte do processo padrão.

    • Se essa operação falhasse, o que você precisaria saber para resolver a falha? Como uma operação típica ou problemática afeta os componentes envolvidos? Que tipo de sinal essa operação deve enviar: log, métrica ou rastreamento? Qual é o custo dessa instrumentação em comparação com seu valor? Que tipo de agregação seria aceitável sem violação SLOs?

    • Quais são os componentes e dependências que podem causar uma falha nessa operação? Como você identificará qual componente ou dependência causou a falha? Quais são as diferentes alavancas de configuração desses componentes e dependências e como cada uma afeta a operação?

    • Qual é a granularidade métrica e a taxa de amostragem necessárias para garantir que o SLI e o SLO possam ser medidos com precisão?

  • Defina critérios de sucesso. Para cada resultado priorizado, defina limites que estejam alinhados com o impacto de atingir ou não os objetivos. Os critérios de sucesso fornecem contexto adicional às equipes quando elas respondem aos alertas. Eles também oferecem a capacidade de prever e fazer compensações em relação ao custo da instrumentação pela visibilidade necessária.

Estabeleça uma organização e uma estrutura de equipe eficazes

Com base na complexidade arquitetônica e no tamanho da sua empresa, talvez seja necessário montar uma equipe dedicada que se concentre na observabilidade. Essa equipe será responsável por configurar as ferramentas de observabilidade e configurar a plataforma de observabilidade para outras equipes. Também recomendamos a criação de uma equipe dedicada se você escolher uma OpenTelemetry implementação padrão. Em organizações menores, você pode atribuir a observabilidade como uma responsabilidade adicional para cada membro da equipe e também nomear campeões de observabilidade que evangelizem e apliquem as melhores práticas em todas as equipes. Esses campeões oferecem uma parte do dia como voluntários para definir processos e estabelecer padrões para a organização. Eles trabalham como uma equipe autônoma ou podem ser liderados por especialistas dedicados em observabilidade. O diagrama a seguir mostra como seu investimento pode determinar sua abordagem organizacional.

Como determinar a responsabilidade pela observabilidade com base nos investimentos.

Os campeões podem estar totalmente integrados às equipes (conforme mostrado para a Equipe 2 na ilustração a seguir) ou fazer parte de uma equipe capacitadora que gira entre as equipes para estabelecer e promover as melhores práticas (Equipe 1 na ilustração).

Configurando equipes capacitadoras ou incorporando campeões de observabilidade.

Rastreie a alocação de custos

As organizações devem implementar controle abrangente de custos e visibilidade de métricas, registros e rastreamentos, ao mesmo tempo em que estabelecem a responsabilidade específica da equipe pelo uso e pelos custos dos recursos. A integração bem-sucedida das práticas de operações financeiras (FinOps) requer sistemas de monitoramento automatizados com alertas orçamentários combinados com retenção sistemática de dados e otimização da coleta. As equipes de engenharia e finanças devem alinhar seus objetivos por meio de painéis compartilhados e análises regulares. As organizações se beneficiam da implementação de modelos claros de estorno e estratégias de alocação de custos para impulsionar a propriedade e a responsabilidade.

Defina padrões

Identifique e defina os sinais básicos e a telemetria que um aplicativo exige, incluindo estratégias de alerta e painel de controle. Crie uma lista de verificação ou um processo formal de revisão para cada inscrição. O site AWS Observability Best Practices fornece diretrizes para alertas e criação de painéis, como definir limites de alerta apropriados, minimizar a fadiga de alertas, criar painéis com contexto suficiente para cada pessoa e assim por diante. Para experiências de observabilidade conectadas e organizadas, consulte Sinais de aplicação na documentação da Amazon CloudWatch .

Estabeleça processos de escalonamento

É importante estabelecer e aplicar mecanismos de escalonamento, propriedade de alertas e procedimentos de resposta. Recomendamos que você promova uma cultura em que a escalada não seja mal vista.

Melhore as habilidades por meio de treinamento

Identifique a melhor maneira de aprimorar os membros existentes e novos da equipe, reforçar a importância da observabilidade e promover uma cultura de melhoria contínua. Com base nas necessidades da sua organização, você pode escolher entre treinamento pré-gravado, sob demanda, ou treinamento em sala de aula ministrado por especialistas ou especialistas em observabilidade. Sua Conta da AWS equipe pode oferecer sessões de treinamento práticas e aprofundadas, como o One Observability Workshop, ou treinar e GameDaysaprimorar as habilidades de observabilidade e as melhores práticas. Além disso, incorpore mecanismos para reforçar as melhores práticas e promover os padrões definidos pela sua organização.