Automatização do Disaster Recovery para MySQL HeatWave com Canais de Replicação Usando o OCI Full Stack Disaster Recovery

Introdução

O Oracle Cloud Infrastructure Full Stack Disaster Recovery (OCI Full Stack DR) orquestra a transição de computação, banco de dados e aplicativos entre regiões da OCI de todo o mundo com um único clique. Os clientes podem automatizar as etapas necessárias para recuperar um ou mais sistemas de negócios sem reprojetar ou rearquitetar a infraestrutura, os bancos de dados ou as aplicações existentes e sem precisar de servidores especializados de gerenciamento ou conversão.

O MySQL HeatWave é um serviço de banco de dados totalmente gerenciado implantado na Oracle Cloud Infrastructure (OCI) que oferece suporte a operadores e desenvolvedores que desejam implementar rapidamente aplicativos seguros e nativos da nuvem. O MySQL HeatWave é a única oferta MySQL que inclui a capacidade de usar o HeatWave, um acelerador de consultas integrado na memória de alto desempenho. O HeatWave permite que os clientes executem análises sofisticadas diretamente em seu banco de dados MySQL operacional, removendo o requisito de migração e integração de dados complexas, demoradas e caras com um banco de dados de análise separado. O HeatWave acelera enormemente o desempenho do MySQL para análises e cargas de trabalho mistas. O HeatWave é totalmente otimizado para OCI e o MySQL HeatWave é 100% criado, gerenciado e suportado pelas equipes de engenharia da OCI e MySQL.

Neste tutorial, você aprenderá a automatizar planos de recuperação de desastres para o MySQL HeatWave na OCI com replicação de canal. Ele descreve os procedimentos para usar o OCI Full Stack DR, que agora suporta nativamente o MySQL HeatWave para gerenciar operações de switchover e failover.

Descrição de Arquitetura

A arquitetura apresentada neste tutorial mostra o MySQL HeatWave em que a Replicação de Entrada é usada para ativar a replicação de dados assíncrona entre o sistema de banco de dados principal e uma réplica remota, garantindo a sincronização de dados eficiente entre as regiões.

descoberta de desastre de pilha completa-heatwave.png

Descrição da ilustração Full-stack-disaster-recovery-heatwave.png

Observação: a réplica do MySQL HeatWave na região de recuperação de desastres deve ter o modo Somente Leitura ativado para garantir a integridade dos dados e evitar modificações não intencionais.

Pré-requisitos (Preparação do usuário)

Antes de iniciar a configuração de replicação, certifique-se de que os pré-requisitos a seguir sejam atendidos. Isso inclui requisitos específicos da replicação e pré-requisitos de infraestrutura e configuração adicionais necessários para oferecer suporte a uma arquitetura robusta de Full Stack Disaster Recovery (FSDR) para MySQL HeatWave na Oracle Cloud Infrastructure (OCI).

Configuração do Sistema MySQL HeatWave - Resumo de Alto Nível

Veja a seguir um resumo de alto nível das etapas necessárias para configurar a replicação entre regiões para o MySQL HeatWave na Oracle Cloud Infrastructure (OCI), garantindo a sincronização de dados segura, confiável e escalável entre regiões.

Ao seguir essas etapas, você pode implementar uma configuração robusta de replicação entre regiões para o MySQL na OCI, aprimorando a resiliência e a disponibilidade do seu aplicativo em regiões geográficas.

Observação: O seguinte tutorial: Configure Cross-Region MySQL HeatWave Disaster Recovery Copy in OCI, fornece um guia abrangente para implementar a recuperação de desastres para o sistema de banco de dados MySQL, garantindo resiliência e continuidade no caso de falhas do sistema.

Definições e Premissas em todo o Tutorial

Objetivos

As seguintes tarefas serão abordadas neste tutorial:

  1. Tarefa 1: Criar Grupos de Proteção de DR (DRPG) em ambas as Regiões
  2. Tarefa 2: Adicionar o MySQL HeatWave aos Grupos de Proteção de DR em ambas as Regiões
  3. Tarefa 3: Criar Planos de DR na Região 2
  4. Tarefa 4: Executar as Pré-verificações dos planos de DR na Região 2
  5. Tarefa 5: Executar o plano de switchover na Região 2
  6. Tarefa 6: Criar Planos de DR na Região 1

Tarefa 1: Criar Grupos de Proteção de DR (DRPG) em ambas as Regiões

Crie grupos de proteção de DR na Região 1 e na Região 2 se os grupos de proteção para esta pilha de aplicativos ainda não existirem.

Tarefa 1.1: Criar um Grupo de Proteção na Região 1

  1. Vá para a Console do OCI e navegue até Grupos de Proteção de DR, conforme mostrado na Figura 1.1.

    1. Certifique-se de que o contexto da região do OCI esteja definido como Região 1 (Ashburn).
    2. Clique em Migração e Recuperação de Desastres.
    3. Clique em Grupos de Proteção de DR.

    drpg-create-iad-nav.png
    Figura 1.1: Navegue até grupos de proteção de DR

  2. Clique em Criar grupo de proteção de DR para abrir a caixa de diálogo.

    drpg-create-iad-create.png
    Figura 1.2: Clique em Criar proteção de DR

  3. Crie um grupo básico de proteção de DR (DRPG) na Região 1, conforme mostrado na Figura 1.3. O par, a atribuição e os membros serão designados em etapas posteriores.

    1. Use um nome significativo para o DRPG.
    2. Selecione o compartimento no qual você deseja que o DRPG seja criado.
    3. Selecione o bucket do OCI Object Storage para logs do OCI Full Stack DR.
    4. Clique em Criar.

    drpg-create-iad-finish.png
    Figura 1.3: Parâmetros necessários para criar o grupo de proteção de DR na região 1

Tarefa 1.2: Criar um Grupo de Proteção na Região 2

  1. Vá para a Console do OCI e navegue até Grupos de Proteção de DR, conforme mostrado na Figura 1.4.

    1. Certifique-se de que o contexto da região do OCI esteja definido como Região 2 (Phoenix).
    2. Clique em Migração e Recuperação de Desastres.
    3. Clique em Grupos de Proteção de DR.

    drpg-create-phx-nav.png
    Figura 1.4: Navegue até grupos de proteção de DR

  2. Clique em Criar grupo de proteção de DR para abrir a caixa de diálogo.

    drpg-create-phx-create.png
    Figura 1.5: Clique em Criar proteção de DR

  3. Crie um grupo básico de proteção de DR (DRPG) na Região 2, conforme mostrado na Figura 1.6. O par, a atribuição e os membros serão designados em etapas posteriores.

    1. Use um nome significativo para o DRPG.
    2. Selecione o compartimento no qual você deseja que o DRPG seja criado.
    3. Selecione o bucket do OCI Object Storage para logs do OCI Full Stack DR.
    4. Clique em Criar.

    drpg-create-phx-finish.png
    Figura 1.6: Parâmetros necessários para criar o grupo de proteção de DR na região 2

Tarefa 1.3: Associar Grupos de Proteção na Região 1 e na Região 2

Associe os DRPGs em cada região como pares um do outro e designe as atribuições de pares principal e stand-by. As atribuições de principal e stand-by são alteradas automaticamente pelo OCI Full Stack DR como parte de qualquer operação de DR/execução do plano de DR; não há necessidade de gerenciar as atribuições manualmente a qualquer momento.

  1. Vá para a página Detalhes do Grupo de Proteção de RD.

    1. Certifique-se de que o contexto da região do OCI esteja definido como Região 1 (Ashburn).
    2. Clique em Ação
    3. Clique em Associar para iniciar o processo.

    drpg-assoc-iad-begin.png
    Figura 1.7: Iniciar associação de DRPG

  2. Informe os parâmetros conforme mostrado na imagem a seguir.

    1. Função: Selecione a função Principal. O OCI Full Stack DR designará a atribuição de stand-by à Região 2 automaticamente.
    2. Região de pareamento: Selecione a Região 2 (Phoenix), onde o outro DRPG foi criado.
    3. Grupo de proteção de DR de pareamento: Selecione o DRPG de pareamento que foi criado.
    4. Clique em Associar.

    drpg-assoc-iad-params.png
    Figura 1.8: Parâmetros necessários para associar os DRPGs

  3. Permita que a solicitação de serviço seja concluída antes de continuar.

    drpg-assoc-iad-finish.png
    Figura 1.9: Associação de DRPG concluída.

O OCI Full Stack DR mostrará algo como mostrado na imagem a seguir, assim que a associação for concluída.

  1. O atual par principal DRPG é Ashburn (região 1).
  2. O atual DRPG stand-by é Phoenix (região 2).

drpg-assoc-iad-completed.png
Figura 1.10: Mostrando o relacionamento de pares da perspectiva DRPG individual

As mesmas informações podem ser encontradas sempre que o contexto/view for de uma perspectiva global mostrando todos os grupos de proteção de DR, conforme mostrado na imagem a seguir.

  1. O atual par principal DRPG é Ashburn (região 1).
  2. O atual DRPG stand-by é Phoenix (região 2).

drpg-assoc-phx-completed.png
Figura 1.11: Mostrando o relacionamento de pares da perspectiva DRPG global

Tarefa 2: Adicionar o MySQL HeatWave ao Grupo de Proteção de DR

Tarefa 2.1: Adicionar o MySQL HeatWave ao DRPG na Região 1

  1. Selecione o DRPG na Região 1, conforme mostrado na imagem a seguir.

    1. Certifique-se de que o contexto da região do OCI seja a Região 1 (Ashburn).
    2. Selecione o DRPG na Região 1.
    3. Selecione Membros.
    4. Clique em Gerenciar membros para iniciar o processo.

    drpg-add-iad-nav.png
    Figura 2.1: Como começar a adicionar Membros ao grupo de proteção de DR na Região 1

  2. Clique em Adicionar membro.

    drpg-add-iad-begin.png
    Figura 2.2: Comece a adicionar Membros ao grupo de proteção de DR na Região 1

  3. Adicione o MySQL HeataWave ao DRPG na região 1.

    1. Informe o Sistema do MySQL Database como um Tipo de recurso do membro.
    2. Selecione o compartimento apropriado e escolha o nome Principal do MySQL HeatWave na Região 1 no campo Sistema de banco de dados.
    3. Selecione o compartimento apropriado e, em seguida, escolha o nome do MySQL HeatWave Réplica na Região 2 no campo Sistema de banco de dados de pareamento.
    4. Digite o nome de usuário Admin.
    5. Selecione o compartimento apropriado e escolha o Segredo da senha de administrador.
    6. Digite o Nome de usuário da replicação.
    7. Selecione o compartimento apropriado e escolha o Segredo da senha de replicação.
    8. Clique em Adicionar.

    Parâmetros Opcionais:

    • Timeout de Reconciliação: Especifica o tempo, em segundos, para aguardar a sincronização do Identificador de Transação Global (GTID) durante o processo de reconciliação. Essa definição de timeout garante que o sistema permita tempo suficiente para a sincronização do GTID antes de considerar que a operação falhou ou foi concluída.
    • Continuar no timeout de reconciliação: ao ativar essa opção, o sistema ignorará o processo de validação do GTID quando o timeout for excedido. Isso permite que o failover ou o switchover prossiga, mesmo que a sincronização do GTID esteja incompleta.

    drpg-add-mysql-iad-params.png
    Figura 2.3: Parâmetros necessários para adicionar o MySQL HeatWave

  4. Publicar as alterações na Região 1 do DRPG

    Clique em Publicar alterações. drpg-add-mysql-iad-publish.png
    Figura 2.4: Publicar alterações

    Confirme, clicando na Figura 2.4 drpg-add-mysql-iad-publish-confirm.png
    Publicar alterações: Publicar alterações

    drpg-add-mysql-iad-completed.png
    Figura 2.5: O MySQL HeatWave foi adicionado ao DRPG na Região 1.

Tarefa 2.2: Adicionar o MySQL HeatWave ao DRPG na Região 2

  1. Selecione o DRPG na Região 2, conforme mostrado na imagem a seguir.

    1. Certifique-se de que o contexto da região do OCI seja Região 2 (Phoenix).
    2. Selecione o DRPG na Região 2.
    3. Selecione Membros.
    4. Clique em Gerenciar membros para iniciar o processo.

    drpg-add-phx-nav.png
    Figura 2.6: Como começar a adicionar Membros ao grupo de proteção de DR na Região 2

  2. Clique em Adicionar membro.

    drpg-add-phx-begin.png
    Figura 2.7: Comece a adicionar Membros ao grupo de proteção de DR na Região 2

  3. Adicione o MySQL HeataWave ao DRPG na região 2.

    1. Informe o Sistema do MySQL Database como um Tipo de recurso do membro.
    2. Selecione o compartimento apropriado e, em seguida, escolha o nome do MySQL HeatWave Replica na Região 2 no campo Sistema de banco de dados.
    3. Selecione o compartimento apropriado e, em seguida, escolha o nome Principal do MySQL HeatWave na Região 1 no campo Sistema de banco de dados de pareamento.
    4. Digite o nome de usuário Admin.
    5. Selecione o compartimento apropriado e escolha o Segredo da senha de administrador.
    6. Digite o Nome de usuário da replicação.
    7. Selecione o compartimento apropriado e escolha o Segredo da senha de replicação.
    8. Clique em Adicionar.

    Parâmetros Opcionais:

    • Timeout de Reconciliação: Especifica o tempo, em segundos, para aguardar a sincronização do Identificador de Transação Global (GTID) durante o processo de reconciliação. Essa definição de timeout garante que o sistema permita tempo suficiente para a sincronização do GTID antes de considerar que a operação falhou ou foi concluída.
    • Continuar no timeout de reconciliação: ao ativar essa opção, o sistema ignorará o processo de validação do GTID quando o timeout for excedido. Isso permite que o failover ou o switchover prossiga, mesmo que a sincronização do GTID esteja incompleta.

    drpg-add-mysql-phx-params.png
    Figura 2.8: Parâmetros necessários para adicionar o MySQL HeatWave

  4. Publique as alterações na Região 2 do DRPG.

    Clique em Publicar alterações. drpg-add-mysql-phx-publish.png
    Figura 2.9: Publicar alterações

    Confirme, clicando em Publicar alterações. drpg-add-mysql-phx-publish-confirm.png
    Figura 2.10: Publicar alterações

    drpg-add-mysql-phx-completed.png
    Figura 2.11: MySQL HeatWave adicionado ao DRPG na Região 2

Tarefa 3: Criar Planos de DR na Região 2

Nesta tarefa, criaremos os planos de switchover e failover iniciais associados ao grupo de proteção de DR stand-by na Região 2 (Phoenix).

O objetivo desses planos é fazer a transição perfeita da carga de trabalho da região principal (Região 1) para a região stand-by (Região 2). Como parte de qualquer operação de DR, as atribuições dos grupos de proteção de DR em ambas as regiões são automaticamente revertidas: o grupo de proteção na Região 1 se torna o stand-by, enquanto o grupo de proteção na Região 2 assume a atribuição principal após um failover ou switchover.

O OCI Full Stack DR preencherá esses planos com etapas incorporadas derivadas dos recursos do membro adicionados durante as tarefas anteriores. Os planos de DR são preenchidos automaticamente com as tarefas de recuperação apropriadas do MySQL HeatWave, pois o MySQL HeatWave é integrado ao Full Stack Disaster Recovery.

Os planos de DR são sempre criados dentro do grupo de proteção que contém a atribuição stand-by. Como a Região 2 (Phoenix) é atualmente o grupo de proteção stand-by, começaremos a criar os planos lá.

Tarefa 3.1: Criar Planos de DR

  1. Crie um plano básico selecionando o DRPG na Região 2 (Phoenix)

    1. Certifique-se de que o contexto da região do OCI seja Região 2 (Phoenix).
    2. Selecione o DRPG stand-by na Região 2.
    3. Selecione Planos.
    4. Clique em Criar Plano para iniciar o processo.

    plan-create-phx-nav.png
    Figura 3.1: Como começar a criar planos básicos de DR na Região 2

  2. Crie um plano de switchover.

    1. Informe um Nome simples, mas significativo, para o plano de Switchover. O nome deve ser o mais curto possível, mas fácil de entender rapidamente para ajudar a reduzir a confusão e o erro humano durante uma crise.
    2. Selecione Tipo de plano como Switchover (planejado).

    plan-create-phx-so.png
    Figura 3.2: Os parâmetros necessários para criar o plano de switchover de DR

    plan-create-phx-so-created.png
    Figura 3.3: Plano de switchover de DR

    Clique no nome do plano de DR para ver os detalhes do plano de DR e os Grupos de Planos. plan-create-phx-so-details.png
    Figura 3.4: Grupo de planos do MySQL HeatWave de switchover de DR

  3. Crie um plano de failover.

    1. Informe um Nome simples, mas significativo, para o plano de Failover. O nome deve ser o mais curto possível, mas fácil de entender rapidamente para ajudar a reduzir a confusão e o erro humano durante uma crise.
    2. Selecione Tipo de plano como Failover (não planejado).

    plan-create-phx-fo.png
    Figura 3.5: Os parâmetros necessários para criar o plano de failover de DR

    plan-create-phx-fo-created.png
    Figura 3.6: Plano de failover de DR

    Clique no nome do plano de DR para ver os detalhes do plano de DR e os Grupos de Planos. plan-create-phx-fo-details.png
    Figura 3.7: Grupo de planos do MySQL HeatWave de failover de DR

O grupo de proteção de DR stand-by na Região 2 agora deve ter os dois planos de DR. Eles lidarão com a transição de cargas de trabalho da Região 1 para a Região 2.

Observação: após a execução inicial do plano de Switchover, posteriormente criaremos planos correspondentes na Região 1 para fazer a transição das cargas de trabalho da Região 2.

  1. (Opcional) Criar planos de Drill DR - Iniciar Drill e Interromper Drill.

Assim como os planos Switchover e Failover, você pode criar um plano de DR Iniciar Drill. Durante o Iniciar Drill, um novo sistema de banco de dados será criado usando os backups mais recentes disponíveis, simulando um cenário de recuperação de desastre real no qual você precisa recuperar operações na região de DR.

  1. Informe um Nome simples, mas significativo, para o plano Iniciar Drill. O nome deve ser o mais curto possível, mas fácil de entender rapidamente para ajudar a reduzir a confusão e o erro humano durante uma crise.
  2. Selecione Tipo de plano como Iniciar Drill.

    plan-create-phx-startdrill.png
    Figura 3.8: Os parâmetros necessários para criar o plano Iniciar Drill

O Interromper Drill deverá ser criado/executado após a conclusão de um Iniciar Drill bem-sucedido. Este plano é responsável por encerrar os sistemas de banco de dados criados durante a execução de Iniciar Drill e limpar todos os recursos temporários usados para fins de teste.

Tarefa 4: Executar Pré-verificações na Região 2

Os planos de DR de switchover e failover foram criados com sucesso na Região 2 stand-by. Esses planos permitem que o OCI Full Stack DR faça a transição das cargas de trabalho da Região 1 para a Região 2. A tarefa subsequente envolve a execução das pré-verificações para os planos de switchover e failover para garantir a prontidão e validar o processo de transição.

Tarefa 4.1: Iniciar Pré-verificações para o Plano de Switchover

Execute pré-verificações para o plano DR de switchover.

  1. Certifique-se de que o contexto da região esteja definido como Região stand-by 2.
  2. Certifique-se de que o grupo de proteção de DR correto na Região 2 esteja selecionado. Ele deve ser a atribuição stand-by.
  3. Clique no nome do plano de switchover.
  4. Clique em Ação.
  5. Clique em Executar pré-verificações.

pré-verificações-so-phx-begin.png
Figura 4.1: Mostrando como executar pré-verificações do plano de switchover

pré-verificações-so-phx-run.png
Figura 4.2: Mostrando como executar pré-verificações do plano de switchover

Planeje grupos de execução das pré-verificações de switchover. pré-verificações-so-phx-completed.png
Figura 4.3: Mostrando uma pré-verificação Concluída do plano de switchover

Tarefa 4.2: Iniciar Pré-verificações para o Plano de Failover

Execute as pré-verificações do plano de DR de failover.

  1. Certifique-se de que o contexto da região esteja definido como Região stand-by 2.
  2. Certifique-se de que o grupo de proteção de DR correto na Região 2 esteja selecionado. Ele deve ser a atribuição stand-by.
  3. Clique no nome do plano de failover.
  4. Clique em Ação.
  5. Clique em Executar pré-verificações.

prechecks-fo-phx-begin.png
Figura 4.4: Mostrando como executar pré-verificações do plano de failover

prechecks-fo-phx-run.png
Figura 4.5: Mostrando como executar pré-verificações do plano de failover

Planeje grupos de execução das pré-verificações de switchover. prechecks-fo-phx-completed.png
Figura 4.6: Mostrando uma pré-verificação Concluída do plano de failover

Tarefa 5: Executar o Plano de Switchover na Região 2

Execute o plano de DR de switchover para iniciar o processo de transição do aplicativo WordPress com o MySQL HeatWave da Região 1 para a Região 2.

  1. Certifique-se de que o contexto da região esteja definido como Região stand-by 2.
  2. Certifique-se de que o grupo de proteção de DR correto na Região 2 esteja selecionado. Ele deve ser a atribuição stand-by.
  3. Clique no nome do plano de switchover.
  4. Clique em Ação.
  5. Clique em Executar plano.

exec-so-phx-begin.png
Figura 5.1: Mostrando como Executar o plano de switchover

Esta tarefa executa o plano de switchover na Região 2.

  1. Desmarque Ativar pré-verificações, pois elas já foram executadas na Tarefa 4.
  2. Clique em Executar plano de DR.

exec-so-phx-run.png
Figura 5.2: Mostrando como Executar o plano de switchover

Clique em Executar plano de DR para iniciar a exec-so-phx-run-confirm.png
Figura 5.3: Mostrando como confirmar a Execução do plano de switchover

Monitore o plano de switchover até que a carga de trabalho completa tenha sido totalmente transferida da Região 1 para a Região 2.

exec-so-phx-in-progress.png
Figura 5.4: Mostrando a execução do grupo de planos de switchover em andamento.

A execução do plano de switchover foi concluída com sucesso.

exec-so-phx-completed.png
Figura 5.5: Mostrando uma execução do plano de switchover Concluída.

Tarefa 6: Criar planos de DR na Região 1

Com a conclusão bem-sucedida do switchover pelo OCI Full Stack DR, a Região 2 agora assumiu a função da região principal, enquanto a Região 1 fez a transição para servir como a região stand-by.

Siga a mesma abordagem detalhada na Tarefa 3. Em seguida, crie os planos de switchover e failover dentro do grupo de proteção de DR para a Região 1, que agora serve como região de pareamento stand-by.

plano-criar-iad.png
Figura 6.1: Captura de tela mostrando planos Criados na Região 1

plan-so-iad-details.png
Figura 6.2: Captura de tela mostrando o plano de switchover na Região 1

plan-fo-iad-details.png
Figura 6.3: Captura de tela mostrando o plano de Failover na Região 1

Próximas Etapas

Para obter mais informações, consulte a documentação do OCI Full Stack DR e do MySQL HeatWave na seção Links Relacionados.

Confirmações

Mais Recursos de Aprendizado

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal do Oracle Learning YouTube. Além disso, acesse education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.