Criar um experimento de caos que usa uma falha baseada em agente com o portal do Azure

Você pode usar um experimento de caos para verificar se seu aplicativo é resiliente a falhas, causando essas falhas em um ambiente controlado. Neste artigo, você causa uma alta % do evento de utilização da CPU em uma máquina virtual (VM) Linux usando um experimento de caos e o Azure Chaos Studio. Executar este experimento pode ajudá-lo a se defender contra um aplicativo de ficar sem recursos.

Você pode usar essas mesmas etapas para configurar e executar um experimento para qualquer falha baseada em agente. Uma falha baseada em agente requer a configuração e a instalação do agente do caos. Uma falha direta de serviço é executada diretamente em um recurso do Azure sem qualquer necessidade de instrumentação.

Pré-requisitos

  • Uma subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.
  • Uma VM Linux executando um sistema operacional na lista de compatibilidade de versão. Se você não tiver uma VM, poderá criar uma.
  • Uma configuração de rede que permite que você SSH em sua VM.
  • Uma identidade gerenciada atribuída pelo usuário que foi atribuída à VM de destino ou ao conjunto de dimensionamento da máquina virtual. Se você não tiver uma identidade gerenciada atribuída pelo usuário, poderá criar uma.

Habilite o Chaos Studio em sua máquina virtual

O Chaos Studio não pode injetar falhas em uma VM, a menos que essa VM tenha sido adicionada ao Chaos Studio primeiro. Para adicionar uma VM ao Chaos Studio, crie um destino e recursos no recurso. Em seguida, você instala o agente do caos.

As máquinas virtuais têm dois tipos de destino. Um tipo de destino permite falhas diretas de serviço (onde nenhum agente é necessário). Outro tipo de destino permite falhas baseadas em agente (o que requer a instalação de um agente). O agente de caos é um aplicativo instalado em sua VM como uma extensão de VM. Você o usa para injetar falhas no sistema operacional convidado.

Habilite o alvo, os recursos e o agente do caos

Importante

Antes de concluir as próximas etapas, você deve criar uma identidade gerenciada atribuída pelo usuário. Em seguida, atribua-o à VM de destino ou ao conjunto de dimensionamento da máquina virtual.

  1. Abra o portal do Azure.

  2. Procure por Chaos Studio na barra de pesquisa.

  3. Selecione Destinos e mova para sua VM.

    Captura de ecrã que mostra a vista Destinos no portal do Azure.

  4. Marque a caixa de seleção ao lado de sua VM e selecione Habilitar destinos. Em seguida, selecione Ativar destinos baseados em agente no menu suspenso.

    Captura de tela que mostra a habilitação de destinos no portal do Azure.

  5. Selecione a Identidade Gerenciada a ser usada para autenticar o agente do caos e, opcionalmente, habilite o Application Insights para ver eventos de experimento e logs do agente.

    Captura de tela que mostra a seleção de uma identidade gerenciada.

  6. Selecione Rever + Ativar>ativar.

    Captura de tela que mostra a revisão da ativação de destino baseada em agente.

  7. Após alguns minutos, aparece uma notificação que indica que os recursos selecionados foram habilitados com êxito. O portal do Azure adiciona a identidade atribuída pelo usuário à VM. O portal habilita o destino e os recursos do agente e instala o agente de caos como uma extensão de VM.

    Captura de tela que mostra uma notificação que mostra que o destino foi habilitado com êxito.

  8. Se você estiver habilitando um conjunto de dimensionamento de máquina virtual, atualize as instâncias para o modelo mais recente acessando o painel de recursos do conjunto de dimensionamento de máquina virtual. Selecione Instâncias e, em seguida, selecione todas as instâncias. Selecione Atualizar se não estiver no modelo mais recente.

Agora você adicionou com sucesso sua VM Linux ao Chaos Studio. Na visualização Destinos, você também pode gerenciar os recursos habilitados neste recurso. Selecione o link Gerenciar ações ao lado de um recurso para exibir os recursos habilitados para esse recurso.

Criar uma experimentação

Agora você pode criar seu experimento. Um experimento de caos define as ações que você deseja tomar em relação aos recursos de destino. As ações são organizadas e executadas em etapas sequenciais. O experimento do caos também define as ações que você deseja tomar contra ramificações, que são executadas em paralelo.

  1. Selecione a guia Experimentos no Chaos Studio. Nesta visualização, você pode ver e gerenciar todos os seus experimentos de caos. Selecione Criar>novo experimento.

    Captura de ecrã que mostra a vista Experiências no portal do Azure.

  2. Preencha a Assinatura, o Grupo de Recursos e o Local onde você deseja implantar o experimento de caos. Dê um nome ao seu experimento. Selecione Next: Experiment designer.

    Captura de tela que mostra a adição de detalhes básicos do experimento.

  3. Agora você está no designer de experimentos do Chaos Studio. Você pode criar seu experimento adicionando etapas, ramificações e falhas. Dê um nome amigável ao seu Passo e Ramo. Em seguida, selecione Adicionar ação > Adicionar falha.

    Captura de tela que mostra o designer do experimento.

  4. Selecione Pressão da CPU na lista suspensa. Preencha Duração com o número de minutos para aplicar pressão. Preencha pressureLevel com a % de pressão de utilização da CPU que você deseja aplicar. Deixe virtualMachineScaleSetInstances em branco. Selecione Next: Target resources.

    Captura de tela que mostra as propriedades de falha.

  5. Selecione sua VM e selecione Avançar.

    Captura de tela que mostra a adição de um alvo.

  6. Verifique se o experimento está correto. Em seguida, selecione Rever + criar>Criar.

    Captura de tela que mostra a revisão e a criação do experimento.

Dê permissão ao experimento para sua máquina virtual

Quando você cria um experimento de caos, o Chaos Studio cria uma identidade gerenciada atribuída ao sistema que executa falhas contra seus recursos de destino. Essa identidade deve receber permissões apropriadas para o recurso de destino para que o experimento seja executado com êxito.

  1. Vá para sua VM e selecione Controle de acesso (IAM).

    Captura de tela que mostra a página Visão geral da máquina virtual.

  2. Selecione Adicionar>Adicionar atribuição de função.

    Captura de tela que mostra Visão geral do controle de acesso.

  3. Procure por Reader e selecione a função. Selecione Seguinte.

    Captura de tela que mostra a atribuição da função de Colaborador da máquina virtual.

  4. Escolha Selecionar membros e procure o nome do experimento. Selecione seu experimento e escolha Selecionar. Se houver vários experimentos no mesmo locatário com o mesmo nome, o nome do experimento será truncado com caracteres aleatórios adicionados.

    Captura de tela que mostra a adição do experimento a uma função.

  5. Selecione Rever + atribuir>Revisão + atribuir.

Execute a sua experiência

Agora você está pronto para executar seu experimento. Para ver o impacto, recomendamos que você abra um gráfico de métricas do Azure Monitor com a pressão da CPU da sua VM em uma guia separada do navegador.

  1. Na visualização Experimentos, selecione seu experimento. Selecione Iniciar >OK.

    Captura de tela que mostra o início do experimento.

  2. Depois que o Status mudar para Executando, em Histórico, selecione Detalhes da execução mais recente para ver os detalhes do experimento em execução.

Próximos passos

Agora que você executou um experimento baseado em agente, está pronto para: