Tutorial: gerenciar serviços com o Anthos

O Anthos Service Mesh oferece aos usuários do Anthos ferramentas para monitorar e gerenciar aplicativos confiáveis baseados em microsserviços. Este tutorial usa a implantação de amostra do Anthos no Google Cloud para apresentar alguns dos recursos de gerenciamento de serviços do Anthos Service Mesh, mostrando como definir um objetivo de nível de serviço (SLO). A implantação de amostra do Anthos implanta um ambiente prático real do Anthos com um cluster do GKE, uma malha de serviço e um aplicativo do Bank of Anthos com vários microsserviços.

O que é um SLO?

De acordo com o livro engenharia de confiabilidade do site (SRE, na sigla em inglês) do Google:

É impossível gerenciar um serviço corretamente, sem entender quais comportamentos realmente são importantes para esse serviço e como medi-los e avaliá-los. Para isso, gostaríamos de definir e oferecer um determinado nível de serviço aos usuários, sem importar se eles usam uma API interna ou um produto público.

As equipes de SRE do Google usam indicadores de nível de serviço (SLIs, na sigla em inglês), objetivos de nível de serviço (SLOs, na sigla em inglês) e contratos de nível de serviço (SLAs, na sigla em inglês) para estruturar e orientar as métricas que informam seu trabalho. Uma SLI é uma medida quantitativa de algum aspecto do desempenho do serviço, como a latência ou a disponibilidade. Já um SLO é um valor de destino ("isso deve acontecer em x%). do tempo") para um nível de serviço que é medido por um SLI. Com o Anthos Service Mesh, é fácil definir e refinar SLOs para seus próprios serviços. Ele fornece as informações necessárias para identificar SLIs e SLOs adequados e informa quando o serviço não está atendendo aos SLOs.

Para saber mais sobre SLOs e SLIs no Anthos Service Mesh, consulte a Visão geral do SLO e Como projetar SLOs.

Objetivos

Neste tutorial, você aprenderá a gerenciar serviços com o Anthos Service Mesh no Anthos por meio das seguintes tarefas:

  • Identificar um indicador de nível de serviço (SLI) para um serviço

  • Use um objetivo de nível de serviço (SLO) para monitorar comportamentos inesperados.

Custos

O uso da implantação de amostra do Anthos incorrerá em tarifas de pagamento por utilização do Anthos no Google Cloud, conforme listado na página de preços, a menos que você tenha uma assinatura do Anthos.

Você também é responsável por outros custos do Google Cloud incorridos durante a execução da implantação de amostra do Anthos, como cobranças para VMs do Compute Engine e balanceadores de carga. É possível ver um custo mensal estimado para todos esses recursos na página do Google Cloud Marketplace da implantação.

Recomendamos limpar depois do tutorial ou explorar a implantação para evitar cobranças adicionais. A implantação de amostra do Anthos não se destina ao uso em produção, e os componentes não podem ser atualizados.

Antes de começar

Este tutorial é um tutorial do tutorial Explorar do Anthos. Antes de começar este tutorial, siga as instruções desta página para configurar seu projeto e instalar a implantação de amostra do Anthos.

Identificar SLIs

Com o Anthos Service Mesh, a coleta de SLIs e a definição dos SLOs são uma tarefa simples e direta. No nosso exemplo, você decide definir primeiro um SLO para o serviço ledgerwriter do Bank of Anthos.

Primeiro, use o Anthos Service Mesh para encontrar informações que possam ser usadas para identificar um SLI para o serviço.

  1. Acesse a página Anthos Service Mesh no projeto em que você instalou a implantação de amostra do Anthos.

    Acessar a página do Anthos Service Mesh

    A parte superior dessa visualização mostra o status atual dos serviços do aplicativo com indicadores de alertas e SLOs, incluindo a contagem de serviços sem SLOs. Atualmente, todos os serviços estão emNenhum SLO definido. Além disso, na coluna Status, todos os serviços têm um indicador de círculo preto. Se você mantiver o ponteiro do mouse sobre esse indicador para qualquer serviço, saiba que nenhum SLO está definido para ele.

  2. Observe o valor em ms para 99% de latência para ledgerwriter (pode ser necessário rolar para baixo e para vê-lo). Essa métrica significa que 1 a cada cem solicitações apresenta esse nível de atraso. Você usará esse valor na próxima seção.

Como criar um SLO

Agora, crie um SLO com um SLI de latência para o serviço. Para ver o que acontece quando um serviço excede o orçamento de erros, defina um limite de baixa capacidade com base nas informações vistas na seção anterior. Para um serviço de produção real, você tentaria encontrar um valor de latência limite inferior ao necessário para que os usuários tenham uma boa experiência com seu aplicativo.

  1. Na visualização da tabela do Anthos Service Mesh, clique em ledergerwriter para acessar a página de visão geral do serviço.

  2. Em Status do serviço, clique em Criar um SLO.

  3. Na lista Tipo de SLI, selecione Latência.

  4. Deixe o método de avaliação padrão como com base em solicitações e clique em Continuar.

  5. Defina Limite de latência como um valor arbitrariamente baixo, como 10 ms (algo muito mais baixo do que o valor de latência de 99% que você observou anteriormente), e clique em Continuar novamente.

  6. Em Período de conformidade, defina o Tipo de período como Rolling e Duração do período como 1 Day.

  7. Em Meta do SLO, defina a Meta de conformidade como 90%. O Anthos Service Mesh usa esse valor para calcular o erro de orçamento que você tem para esse SLO, ou seja, a porcentagem máxima de solicitações que devem exceder o limite de latência especificado. Uma visualização mostra o desempenho do seu SLO no período mais recente de um dia. Clique em Continuar.

  8. A seção Nomear seu SLO sugere um nome padrão para o novo SLO: é possível aceitar o padrão recomendado ou especificar um novo nome. Para criar o SLO e acessar a página Integridade em ledgerwriter, clique em Criar SLO.

Clique na seta suspensa para ver mais detalhes sobre o SLO. Você verá que o SLO está fora do erro de orçamento com base nas suas configurações. Também é possível editar ou excluir o SLO nessa visualização.

Captura de tela da visualização de integridade do serviço do Anthos Service Mesh

Como verificar novamente o SLO e os indicadores de alerta

  1. Na página de visão geral do serviço, clique na seta para voltar à visualização da tabela. Agora, veja que a contagem de serviço de No SLOs set diminui em 1 e que SLOs sem erro de orçamento não é mais 0.

  2. Se você rolar para ledergerwriter, observe que o indicado ao lado foi alterado para um triângulo de aviso laranja. Se você mantiver o ponteiro sobre esse indicador, será instruído a investigar a confiabilidade do serviço. Ao clicar no indicador, você retorna à página de integridade do serviço para revisar os detalhes do SLO. O mesmo indicador também aparece para o serviço na visualização de topologia.

Captura de tela da lista de serviços do Anthos Service Mesh com aviso de SLO

Como explorar a implantação ainda mais

Ainda há muito mais para ver e fazer no Anthos com nossa implantação. Teste outro tutorial ou continue a explorar a implantação do Anthos no Google Cloud antes de seguir as instruções de limpeza da próxima seção.

Limpeza

Depois de explorar a implantação de amostra do Anthos, limpe os recursos criados no Google Cloud para que eles não ocupem cota e você não seja cobrado por eles no futuro. Nas seções a seguir, você aprenderá a excluir e desativar esses recursos.

  • Opção 1. É possível excluir o projeto. Este é o método recomendado. No entanto, se você quiser manter o projeto, use a opção 2 para excluir a implantação.

  • Opção 2. (Experimental) Se você estiver trabalhando em um projeto atual, mas vazio, prefira reverter manualmente todas as etapas deste tutorial, começando com a exclusão da implantação.

  • Opção 3. (Experimental) Se você for especialista no Google Cloud ou tiver recursos no cluster, talvez prefira limpar manualmente os recursos criados neste tutorial.

Excluir o projeto (opção 1)

  1. No Console do Cloud, acesse a página Gerenciar recursos:

    Acessar "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

Excluir a implantação (opção 2)

Essa abordagem depende de permitir que o Deployment Manager desfaça o que foi criado. Mesmo que a implantação tenha erros, você pode usar essa abordagem para desfazê-la.

  1. No Console do Cloud, no menu de navegação, clique em Deployment Manager.

  2. Selecione sua implantação e clique em Excluir.

  3. Confirme clicando em Excluir novamente.

  4. Mesmo que a implantação tenha erros, você ainda pode selecioná-la e excluí-la.

  5. Se a opção Excluir não funcionar como último recurso, tente Excluir, mas manter recursos. Se o Deployment Manager não conseguir excluir nenhum recurso, anote-os e tente excluí-los manualmente mais tarde.

  6. Aguarde até que o Deployment Manager conclua a exclusão.

  7. (Etapa temporária) No menu Navegação, clique em Serviços de rede > Balanceamento de carga e exclua as regras de encaminhamento criadas pelo cluster anthos-sample-cluster1.

  8. (Opcional) Acesse https://source.cloud.google.com/<project_id>. Exclua o repositório cujo nome inclui config-repo, se houver um.

  9. (Opcional) Exclua a conta de serviço criada durante a implantação e todos os papéis do IAM dela.

Realizar uma limpeza manual (opção 3)

Essa abordagem depende da exclusão manual dos recursos do Console do Google Cloud.

  1. No Console do Cloud, no menu de navegação, clique em Kubernetes Engine.

  2. Selecione seu cluster e clique em Excluir. Depois, clique em Excluir novamente para confirmar.

  3. No Console do Cloud, no Menu de navegação , clique em Compute Engine.

  4. Selecione o servidor de salto e clique em Excluir e, em seguida, clique em Excluir novamente para confirmar.

  5. Siga as etapas 7 e 8 da Opção 2.

Se você planeja reimplantar após a limpeza manual, verifique se todos os requisitos são atendidos conforme descrito na seção Antes de começar.

A seguir

Há muito mais a ser explorado na nossa documentação do Anthos.

Ver mais tutoriais

  • Explore os recursos de segurança do Anthos com a implantação de amostra do Anthos no Secure Anthos.

  • Teste outros recursos do Google Cloud. Veja os tutoriais.

Saiba mais sobre o Anthos

Participe de nossa pesquisa.

Quando você terminar de trabalhar neste tutorial, preencha nossa pesquisa. Estamos interessados em possíveis problemas que você possa ter em qualquer momento do tutorial. Agradecemos por usar a pesquisa para enviar seu feedback.

Obrigado.

Equipe do Anthos