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.
Abra o portal do Azure.
Procure por Chaos Studio na barra de pesquisa.
Selecione Destinos e mova para sua VM.
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.
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.
Selecione Rever + Ativar>ativar.
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.
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.
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.
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.
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.
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.
Selecione sua VM e selecione Avançar.
Verifique se o experimento está correto. Em seguida, selecione Rever + criar>Criar.
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.
Vá para sua VM e selecione Controle de acesso (IAM).
Selecione Adicionar>Adicionar atribuição de função.
Procure por Reader e selecione a função. Selecione Seguinte.
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.
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.
Na visualização Experimentos, selecione seu experimento. Selecione Iniciar >OK.
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: