Migração do banco de dados Oracle para o Azure

Azure Load Balancer
Azure ExpressRoute
Gateway de VPN do Azure

Essa solução migra um banco de dados Oracle e seus aplicativos para o Azure. Usamos o Oracle Active Data Guard para o banco de dados e usamos o Azure Load Balancer para a camada de aplicativo.

Arquitetura

O diagrama de arquitetura mostra a conclusão de uma migração de banco de dados do Oracle para o Azure.

Baixe um Arquivo Visio dessa arquitetura.

Fluxo de dados

  1. Conecte seu ambiente do Azure com sua rede local por meio do VPN site a site ou do ExpressRoute.
  2. Use o DataGuard para marcar o OracleDB1 no Azure como em espera ativo.
  3. Mude o OracleDB1 no Azure para primário e configure o OracleDB2 no Azure como em espera para terminar sua migração.

Observação

  • Esse método funciona apenas ao migrar de e para a mesma versão do SO e 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 Recovery Manager (RMAN) ou usar o Data Pump para replicar as alterações após uma transferência inicial de dados em massa , o que fornece uma migração mínima de tempo de inatividade.

Assistente de Migração do SQL Server para Oracle

O Microsoft SQL Server Migration Assistant (SSMA) para Oracle é uma ferramenta para migrar bancos de dados Oracle para o Microsoft SQL Server e o Banco de Dados SQL do Azure. O SSMA para Oracle converte objetos de banco de dados Oracle em objetos de banco de dados do SQL Server, cria esses objetos no SQL Server e migra dados do Oracle para o SQL Server ou o Banco de Dados SQL do Azure.

Detalhes do cenário

As migrações do Oracle DB 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) é usado para fins de HA/DR. Dependendo do aplicativo, tanto o aplicativo quanto o banco de dados pode ser migrado primeiro. Neste caso, o aplicativo é migrado para o Azure usando o Azure Load Balancer. Isso permite que você divida seu tráfego entre o local e o Azure, permitindo a migração gradual de sua camada de aplicativo. A migração de banco de dados é realizada 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. Após o secundário no Azure estar sincronizado com o primário, você poderá inverter o banco de dados no Azure para ser seu banco de dados primário enquanto mantém o secundário localmente. 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 desativar seu ambiente local. Todo o tráfego de dados entre o local e o Azure flui pelo Azure ExpressRoute ou pela conectividade de VPN site a site.

Possíveis casos de uso

Essa solução se aplica ao migrar o banco de dados Oracle para o Azure.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios de orientação que podem ser usados para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.

Migração

Você pode migrar todo o banco de dados Oracle do local para a VM do Azure com o mínimo de tempo de inatividade usando o Oracle Recovery Manager (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 sincronizado 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 durante a migração do 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 do Data Pump em um banco de dados inteiro, esquemas seletivos, espaços de tabela ou objetos de banco de dados. O Data Pump é a ferramenta recomendada para migrar dados para o Azure, para grandes bancos de dados que variam de 10 GB a 20 TB de tamanho. Ele permite um alto grau de paralelismo, opções flexíveis de extração de dados 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 oferece suporte a 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 inicial de dados para grandes bancos de dados. Observe que o Data Pump está disponível somente no Oracle Database 10g Release 1 (10.1) e posterior.

Considerações sobre o design

Dimensionamento da VM

Use uma máquina virtual otimizada para memória de hiperthread com vCPUs restritas de núcleo para a máquina virtual do 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 no seu banco de dados Oracle. O nome do disco/dispositivo pode ser alterado em reinicializações ao usar discos gerenciados. É recomendável usar o UUID do dispositivo em vez do nome para garantir que as montagens persistam entre as 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 atendam às suas expectativas de negócios.
  • Teste o failover, a recuperação e a restauração do banco de dados para garantir que você atenda aos requisitos de RPO e RTO.
  • Liste todos os trabalhos e relatórios críticos e execute-os em uma nova instância Oracle para avaliar seu desempenho em relação aos 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. Outros padrões definidos no Guia de padrões de design na nuvem podem ajudar seu aplicativo a ser mais resiliente.

Licenciamento Oracle

Se você estiver usando tecnologia habilitada para hyper-threading em suas VMs do Azure, conte duas vCPUs como equivalentes a uma licença do Processador Oracle. Consulte Licensing Oracle Software in the Cloud Computing Environment para obter detalhes.

Estratégia de backup

Uma estratégia de backup é usar o Oracle Recovery Manager (RMAN) e o Backup do Azure para backups consistentes com aplicativos. Você também pode usar o método de backup do Azure.

Opcionalmente, use o Fusível de Blobs do Azure para montar uma conta de Armazenamento de Blobs do Azure altamente redundante e gravar seus backups de RMAN nela para obter resiliência adicional.

Segurança

A Proteção contra DDoS do Azure, combinada com as práticas recomendadas de design de aplicativos, fornece recursos aprimorados de mitigação de DDoS para fornecer mais defesa contra ataques de DDoS. Você deve habilitar a Proteção contra DDOS do Azure em qualquer rede virtual do perímetro.

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

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

  • Oracle Data Guard Fast-Start Failover (FSFO) para disponibilidade do banco de dados
  • Oracle Data Guard Far Sync para proteção com perda de dados zero.
  • Oracle GoldenGate para o modo multiprimário ou ativo/ativo no conjunto de disponibilidade ou na 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.

É possível ter uma disponibilidade de tempo de atividade de 99,99% para o nível de banco de dados ao combinar as Zonas de Disponibilidade do Azure e o Oracle Active DataGuard com o 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 esses artigos para obter informações de apoio:

Saiba mais sobre os vários componentes arquitetônicos: