Partilhar via


Criar um experimento de Chaos que usa uma falha direta de serviço para fazer failover de uma instância do banco de dados Cosmos Azure

Você pode usar um experimento de caos para verificar se seu aplicativo é resiliente a falhas causando-as em um ambiente controlado. Neste artigo, você causará um failover do Azure Cosmos DB de leitura múltipla e gravação única usando um experimento de caos e o Azure Chaos Studio. A execução desse experimento pode ajudá-lo a se defender contra a perda de dados quando ocorre um evento de failover.

Você pode usar essas mesmas etapas para configurar e executar um experimento para qualquer falha direta do serviço. Uma falha service-direct é executada diretamente em um recurso do Azure sem a necessidade de instrumentação. As falhas baseadas em agentes exigem a instalação do agente chaos.

Pré-requisitos

  • Uma assinatura do Azure. Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
  • Uma conta do Azure Cosmos DB. Se você não tiver uma conta do Azure Cosmos DB, siga estas etapas para criar uma.
  • Pelo menos uma configuração de região de leitura única e gravação única para sua conta do banco de dados Cosmos Azure.

Habilitar o Chaos Studio em sua conta do banco de dados Cosmos Azure

O Chaos Studio não pode injetar falhas em um recurso, a menos que esse recurso seja adicionado primeiro ao Chaos Studio. Você adiciona um recurso ao Chaos Studio criando um destino e funcionalidades no recurso. As contas do Azure Cosmos DB têm apenas um tipo de destino (direto do serviço) e um recurso (failover). Outros recursos podem ter até dois tipos de destino. Um tipo de destino é para falhas diretas de serviço. Outro tipo de destino é para falhas baseadas em agente. Outros recursos podem ter muitas outras funcionalidades.

  1. Abra o Portal do Azure.

  2. Pesquise Chaos Studio na barra de pesquisa.

  3. Selecione Destinos e acesse sua conta do Azure Cosmos DB.

    Captura de tela que mostra a exibição de Destinos no portal do Azure.

  4. Marque a caixa de seleção ao lado da sua conta do Azure Cosmos DB. Selecione Habilitar destinos e, depois, Habilitar destinos diretos do serviço na lista suspensa.

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

  5. Confirme se o recurso desejado está listado. Selecione Revisão + Habilitare, em seguida, Habilitar.

  6. É exibida uma notificação que indica que os recursos selecionados foram habilitados com êxito.

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

Agora você adicionou com sucesso sua conta do Azure Cosmos DB ao Chaos Studio. Na exibição Destinos, você também pode gerenciar as funcionalidades habilitadas nesse recurso. Selecionar o link Gerenciar ações ao lado de um recurso exibe os recursos habilitados para esse recurso.

Criar uma experiência

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

  1. Selecione a guia Experimentos no Chaos Studio. Nessa exibição, você pode ver e gerenciar todos os experimentos de caos. Selecione Criar>Novo experimento.

    Captura de tela que mostra a exibição de Experimentos no portal do Azure.

  2. Preencha a Assinatura, o Grupo de Recursos e o Local em que deseja implantar o experimento de caos. Dê um nome ao experimento. SelecioneAvançar: Designer de experimentos.

    Captura de tela que mostra as adições de detalhes básicos do experimento.

  3. Agora você está no designer de experimentos do Chaos Studio. O designer de experimentos permite que você crie seu experimento adicionando etapas, ramificações e falhas. Dê um nome amigável à Etapa e ao Branch e selecione Adicionar ação > Adicionar falha.

    Captura de tela que mostra o designer do experimento.

  4. Selecione CosmosDB Failover na lista suspensa. Preencha Duração com o número de minutos que você deseja que a falha dure e readRegion com a região de leitura da sua conta do Azure Cosmos DB. SelecioneAvançar: Recursos de destino.

    Captura de tela que mostra as propriedades da falha.

  5. Selecione sua conta do Azure Cosmos DB e selecione Avançar.

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

  6. Verifique se o experimento está correto e selecione Revisar + criar>Criar.

    Captura de tela que mostra como revisar e criar um experimento.

Conceda a permissão de experimento ao seu recurso de destino

Quando você cria um experimento de caos, o Chaos Studio cria uma identidade gerenciada atribuída pelo sistema que executa falhas nos recursos de destino. Essa identidade deve receber as permissões apropriadas para o recurso de destino para que o experimento seja executado com êxito. Você pode usar estas etapas para qualquer recurso e tipo de destino modificando a atribuição de função na etapa 3 para corresponder à função apropriada para esse recurso e tipo de destino..

  1. Vá para sua conta do Azure Cosmos DB e selecione Controle de acesso (IAM).

    Captura de tela mostrando a página Visão geral do Azure Cosmos DB.

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

    Captura de tela mostrando a visão geral do controle de acesso.

  3. Pesquise Operador do banco de dados Cosmos Azure e selecione a função. Selecione Avançar.

    Captura de tela mostrando a atribuição da função Operador do Azure Cosmos DB.

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

    Captura de tela que mostra como adicionar um experimento a uma função.

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

Executar o experimento

Agora você está pronto para executar seu experimento. Para ver o efeito, recomendamos que você abra a visão geral da sua conta do Azure Cosmos DB e vá para Replicar dados globalmente em uma guia separada do navegador. A atualização periódica durante o experimento mostra a troca de região.

  1. Na exibição experimentos, selecione seu experimento. Selecione Iniciar>OK.
  2. Quando o Status mudar para Em execução, selecione Detalhes na execução mais recente em Histórico para ver os detalhes do experimento em execução.

Próximas etapas

Agora que você já executou um experimento direto do serviço do Azure Cosmos DB, está pronto para: