Migração do Oracle Database para o Azure

Load Balancer
ExpressRoute
Gateway de VPN

Ideia da solução

se você quiser nos ver, expanda este artigo com mais informações, como casos de uso em potencial, serviços alternativos, considerações sobre implementação ou diretrizes de preços, fale conosco com GitHub comentários!

Oracle DB migrações podem ser realizadas de várias maneiras. Essa solução aborda uma dessas opções, em que o Oracle Active Data Guard é usado para migrar o Banco de Dados. Supõe-se que o Oracle Data Guard (ou o Active Data Guard) seja usado para fins de HA/DR. Dependendo do aplicativo, o aplicativo pode ser migrado primeiro ou o banco de dados. Nesse caso, o aplicativo é migrado para o Azure usando Azure Load Balancer. Isso permite que você divida o tráfego entre o local e o Azure, permitindo que você migre gradualmente sua camada de aplicativo. A migração de banco de dados é executada em várias etapas. Como primeira etapa, o Oracle Data Guard é usado para configurar um banco de dados secundário/em espera no Azure. Isso permite que você migre seus dados para o Azure. Depois que o secundário no Azure estiver em sincronia com o primário, você poderá inverter o banco de dados no Azure para ser seu banco de dados primário, mantendo o secundário local. Como próxima etapa, você pode configurar um banco de dados secundário em uma Zona de Disponibilidade (ou região) diferente para fins de HA/DR. Neste ponto, você pode descomissionar seu ambiente local. Todo o tráfego de dados entre o local e o Azure flui Azure ExpressRoute conectividade VPN site a site ou site a site.

Arquitetura

Diagrama da Arquitetura

Fluxo de dados

  1. Conexão seu ambiente do Azure com sua rede local por meio de VPN site a site ou ExpressRoute.
  2. Use o DataGuard para marcar o OracleDB1 no Azure como seu autônomo ativo.
  3. Alternar o OracleDB1 no Azure como primário e configurar o OracleDB2 no Azure como espera para concluir a migração.

Observação

  • Esse método funciona somente ao migrar para e da mesma versão do sistema operacional e versão do banco de dados.
  • Suposição: você está usando o DataGuard local.

Componentes

Alternativas

Se o banco de dados tiver mais de 2 TB, você poderá usar o Oracle Data Guard com o Oracle Gerenciador de Recuperação (RMAN) ou usar a Bomba de Dados para replicar alterações após uma transferência de dados em massa inicial, o que fornece uma migração de tempo de inatividade mínimo.

Considerações

Migração

Você pode migrar todo o banco de dados Oracle do local para a VM do Azure com tempo de inatividade mínimo usando o Oracle Gerenciador de Recuperação (RMAN) e o Oracle Data Guard. Use o RMAN para restaurar seu banco de dados para a VM do Azure em espera de destino, usando backup/restauração ou o método de banco de dados duplicado. Em seguida, você pode configurar o banco de dados de destino como um banco de dados físico em espera com o Oracle Data Guard, permitindo todas as alterações de dados de transação/refazer do banco de dados local primário para o banco de dados em espera. Quando o banco de dados Oracle local primário estiver em sincronia com o banco de dados em espera de destino na instância de VM do Azure, você poderá alternar para o banco de dados de destino, que o converterá em um banco de dados de leitura/gravação. Em seguida, você pode apontar suas conexões de aplicativo para o novo banco de dados primário. Essa opção fornece um tempo de inatividade mínimo ao migrar seu banco de dados para o Azure.

O utilitário Oracle Data Pump é usado para exportar e importar dados e metadados de ou para bancos de dados Oracle. Você pode executar a exportação/importação da Bomba de Dados em um banco de dados inteiro, esquemas seletivos, espaços de tabela ou objetos de banco de dados. A Bomba de Dados é a ferramenta recomendada para migrar dados para o Azure, para bancos de dados grandes que variam de 10 GB a 20 TB de tamanho. Ele permite um alto grau de paralelismo, opções de extração de dados flexíveis e operações escalonáveis, que permitem a movimentação de alta velocidade de dados e metadados de um banco de dados de origem para o banco de dados de destino. O Oracle Data Pump também dá suporte à criptografia e à compactação ao exportar seus dados para arquivos de despejo de dados. Você pode usar o Oracle Data Pump com o Oracle Data Guard ou o Golden Gate para lidar com a transferência de dados inicial para bancos de dados grandes. Observe que a Bomba de Dados está disponível somente Oracle Database versão 10g (10.1) e posteriores.

Considerações sobre o design

Dimensionamento da VM

Considere o uso de uma máquina virtual com otimização de memória hiperthread com vCPUs de núcleo restrita para sua VM Oracle Database, para economizar nos custos de licenciamento e maximizar o desempenho. A Oracle tem garantia de mobilidade de licença do local para o Azure. Consulte as perguntas frequentes sobre o Oracle-Azure.

Armazenamento

Use vários discos Premium ou Ultra (discos gerenciados) para desempenho e disponibilidade em seu banco de dados Oracle. Ao usar discos gerenciados, o nome do disco/dispositivo pode ser alterado em reinicializações. É recomendável que você use a UUID do dispositivo em vez do nome para garantir que suas montagens persistam entre reinicializações. Considere o uso do ASM (gerenciamento automático de armazenamento) da Oracle para um gerenciamento de armazenamento simplificado do seu banco de dados.

Teste e ajuste

Recomendamos os seguintes testes para validar seu aplicativo em relação ao novo banco de dados Oracle:

  • Execute testes de desempenho para garantir que eles atendem às suas expectativas de negócios.
  • Teste o failover, a recuperação e a restauração do banco de dados para garantir que você esteja a atender aos requisitos de RPO e RTO.
  • Liste todos os trabalhos e relatórios críticos e execute-os na nova instância do Oracle para avaliar o desempenho em relação aos seus SLAs (contratos de nível de serviço).
  • Por fim, ao migrar ou criar aplicativos para a nuvem, é importante ajustar o código do aplicativo para adicionar padrões nativos de nuvem, como padrão de repetição e padrão de disjuntor. Padrões adicionais definidos no Guia de padrões de design na nuvem podem ajudar seu aplicativo a ser mais resiliente.

Licenciamento do Oracle

Se você estiver usando a tecnologia habilitada para hyper-threading em suas VMs do Azure, conte duas vCPUs como equivalentes a uma licença do Processador Oracle. Confira Licenciamento do Oracle Software no Ambiente de Computação em Nuvem para obter detalhes.

Estratégia de backup

Uma estratégia de backup é usar o Oracle Gerenciador de Recuperação (RMAN) e Backup do Azure para backups consistentes com o aplicativo. Você também pode usar o método de backup do Azure.

Opcionalmente, use o Fuse de Blob do Azure para montar uma conta de Armazenamento blob do Azure altamente redundante e gravar seus backups do RMAN nele para maior resiliência.

Continuidade dos negócios e recuperação de desastres

Para continuidade dos negócios e recuperação de desastre, considere implantar o seguinte software:

  • FSFO (failover Fast-Start de dados) do Oracle Data Guard para disponibilidade do banco de dados
  • Sincronização distante do Oracle Data Guard para proteção contra perda de dados zero.
  • O Oracle GoldenGate para modo multi-primário ou ativo-ativo no conjunto de disponibilidade ou zona de disponibilidade do Azure depende dos requisitos de SLA.

Use Zonas de Disponibilidade para obter alta disponibilidade na região. Para obter mais informações, consulte Arquiteturas de referência para bancos de dados Oracle no Azure.

Uma disponibilidade de tempo de atividade de 99,99% para sua camada de banco de dados pode ser alcançada usando uma combinação de Zonas de Disponibilidade do Azure e Oracle Active DataGuard com FSFO.

Use grupos de posicionamento por proximidade para reduzir a latência entre o aplicativo e a camada de banco de dados.

Monitoramento

Configure o Oracle Enterprise Manager para gerenciamento, monitoramento e registro em log.

Próximas etapas

Consulte estes artigos para obter informações de suporte:

Saiba mais sobre os vários componentes de arquitetura: