Estratégias de backup para o Banco de Dados Oracle em uma VM Linux do Azure

Atenção

Este artigo faz referência ao CentOS, uma distribuição Linux que está se aproximando do status de Fim da Vida Útil (EOL). Por favor, considere o seu uso e planeje de acordo. Para obter mais informações, consulte as diretrizes de Fim da Vida Útil do CentOS.

Aplica-se a: ✔️ Linux VMs

Os backups de banco de dados ajudam a proteger o banco de dados contra perda de dados devido a falha do componente de armazenamento e do datacenter. Eles também podem ser um meio de recuperação de erro humano e uma maneira de clonar um banco de dados para fins de desenvolvimento ou teste.

No Azure, todo o armazenamento é altamente redundante. A perda de um ou mais discos não levará a uma interrupção do banco de dados. Os backups são usados com mais frequência para proteger contra erros humanos, facilitar operações de clonagem ou preservar dados para fins regulatórios.

Os backups também ajudam a proteger contra interrupções regionais quando uma tecnologia de recuperação de desastres como o DataGuard não está em uso. Nesse caso, os backups devem ser armazenados em diferentes regiões do Azure por meio da replicação com redundância geográfica, para que estejam disponíveis fora da região do banco de dados principal.

Armazenamento do Azure

Os serviços de Armazenamento do Azure são a solução de nuvem da Microsoft para cenários modernos de armazenamento de dados. O Armazenamento do Azure oferece serviços que você pode usar para montar armazenamento externo em uma máquina virtual (VM) Linux do Azure, que é adequada como mídia de backup para instâncias do Banco de Dados Oracle. Uma ferramenta de backup, como o Oracle Recovery Manager (RMAN), é necessária para iniciar uma operação de backup ou restauração e para copiar o backup de ou para o Armazenamento do Azure.

Os serviços de Armazenamento do Azure oferecem os seguintes benefícios:

  • Durável e de elevada disponibilidade. A redundância ajuda a manter os dados seguros durante falhas transitórias de hardware. Todo o armazenamento é triplamente espelhado por padrão. Você também pode optar por replicar dados entre datacenters ou regiões geográficas para obter mais proteção contra catástrofes locais ou desastres naturais. Os dados replicados desta forma permanecem altamente disponíveis no caso de uma falha inesperada.

  • Seguro: o Armazenamento do Azure criptografa todos os dados gravados em uma conta de armazenamento. O Armazenamento do Azure dá-lhe controlo detalhado sobre quem tem acesso aos seus dados.

  • Escalável: o Armazenamento do Azure é massivamente escalável para atender às necessidades de armazenamento de dados e desempenho dos aplicativos atuais.

  • Gerenciado: o Azure lida com manutenção de hardware, atualizações e problemas críticos para você.

  • Acessível: os dados no Armazenamento do Azure podem ser acessados de qualquer lugar do mundo por HTTP ou HTTPS. A Microsoft fornece bibliotecas de cliente para o Armazenamento do Azure em várias linguagens, incluindo .NET, Java, Node.js, Python, PHP, Ruby e Go. A Microsoft também fornece uma API REST madura.

    O Armazenamento do Azure dá suporte a scripts no Azure PowerShell ou na CLI do Azure. O portal do Azure e o Azure Storage Explorer oferecem soluções visuais para trabalhar com seus dados.

A plataforma de Armazenamento do Azure inclui os seguintes serviços de dados que são adequados para uso como mídia de backup para o Banco de Dados Oracle:

  • Armazenamento de Blobs do Azure: um repositório de objetos para texto e dados binários. Também inclui suporte para análise de big data através do Azure Data Lake Storage Gen2.

  • Azure NetApp Files: Solução completa de armazenamento em rede, incluindo recursos avançados de gerenciamento de dados para tirar instantâneos, clonar e replicar volumes de banco de dados.

  • Ficheiros do Azure: partilhas de ficheiros geridos para a cloud ou implementações locais.

  • Armazenamento em Disco do Azure: volumes de armazenamento em nível de bloco para VMs do Azure.

Montagem de armazenamento inter-regional

A capacidade de acessar o armazenamento de backup entre regiões é um aspeto importante da continuidade de negócios e recuperação de desastres (BCDR). Também é útil para clonar bancos de dados de backups em diferentes regiões geográficas. O armazenamento em nuvem do Azure fornece cinco níveis de redundância:

Blob e armazenamento de arquivos

Quando estiver a utilizar os Ficheiros do Azure com o protocolo SMB (Server Message Block) ou o protocolo NFS (Network File System) 4.1 para montar como armazenamento de cópia de segurança, os Ficheiros do Azure não suportam RA-GRS ou RA-GZRS.

O armazenamento de backup do Azure Files pode ser dimensionado até 100 (TiB), com suporte para opções de redundância LRS, GRS e GZRS.

Atualmente, o Armazenamento de Blobs do Azure montado por meio do protocolo NFS 3.0 oferece suporte apenas à redundância LRS e ZRS. O Armazenamento de Blobs do Azure configurado com qualquer opção de redundância pode ser montado via Blobfuse.

Cofre dos Serviços de Recuperação

Um cofre dos Serviços de Recuperação é uma entidade de gerenciamento que armazena pontos de recuperação criados ao longo do tempo. Ele fornece uma interface para executar operações relacionadas ao backup. Essas operações incluem a realização de backups sob demanda, a execução de restaurações e a criação de políticas de backup.

O Backup do Azure lida automaticamente com o armazenamento para o cofre. Você precisa especificar como esse armazenamento é replicado no momento da criação. Não é possível alterar a replicação depois que os itens estiverem protegidos no cofre. Para redundância regional, escolha a configuração de redundância geográfica.

Se você pretende restaurar para uma região emparelhada secundária do Azure, habilite o recurso Restauração entre regiões. Quando você habilita a restauração entre regiões, o armazenamento de backup é movido de GRS para RA-GRS.

Armazenamento de Blobs do Azure

O Armazenamento de Blobs do Azure é um serviço baseado em nuvem para armazenar grandes quantidades de dados não estruturados e é adequado para backups do Banco de Dados Oracle. Você pode montar o Armazenamento de Blobs do Azure em VMs Linux do Azure usando Blobfuse (Linux FUSE) ou o protocolo NFS v3.0.

Blobfusa

O Blobfuse é um projeto de código aberto que fornece um sistema de arquivos virtual apoiado pelo Armazenamento de Blobs do Azure. Ele usa a biblioteca de código aberto libfuse para se comunicar com o módulo do kernel Linux FUSE. Ele implementa operações do sistema de arquivos usando as APIs REST do Armazenamento de Blob do Azure.

Blobfuse está atualmente disponível para distribuições Ubuntu e Centos/RedHat. Também está disponível para Kubernetes através do driver CSI.

O Blobfuse é onipresente em todas as regiões do Azure e funciona com todos os tipos de conta de armazenamento, incluindo v1/v2 de uso geral e Azure Data Lake Storage Gen2. Mas não funciona tão bem quanto os protocolos alternativos. Para adequação como meio de backup de banco de dados, recomendamos usar o protocolo SMB ou NFS para montar o Armazenamento de Blobs do Azure.

NFS v3.0

O suporte do Azure para o protocolo NFS v3.0 está disponível. O suporte a NFS permite que clientes Windows e Linux montem um contêiner de Armazenamento de Blob do Azure em uma VM do Azure.

Para garantir a segurança da rede, a conta de armazenamento que você usa para montagem NFS deve estar contida em uma rede virtual. As ACLs (listas de segurança e controle de acesso) do Microsoft Entra ainda não são suportadas em contas com suporte ao protocolo NFS 3.0 habilitado.

Ficheiros do Azure

O Azure Files é um sistema de arquivos distribuído totalmente gerenciado e baseado em nuvem. Você pode montá-lo em clientes Windows, Linux ou macOS locais ou baseados em nuvem.

O Azure Files oferece compartilhamentos de arquivos entre plataformas totalmente gerenciados na nuvem que podem ser acessados por meio dos protocolos SMB e NFS. Atualmente, os Arquivos do Azure não oferecem suporte ao acesso a vários protocolos, portanto, um compartilhamento só pode ser um compartilhamento NFS ou um compartilhamento SMB. Recomendamos determinar qual protocolo melhor atende às suas necessidades antes de criar compartilhamentos de arquivos do Azure.

Você também pode ajudar a proteger os compartilhamentos de arquivos do Azure usando o Backup do Azure para um cofre dos Serviços de Recuperação. Essa abordagem fornece outra camada de proteção para os backups do Oracle RMAN.

Arquivos do Azure com NFS v4.1

Você pode montar compartilhamentos de arquivos do Azure em distribuições Linux usando o protocolo NFS v4.1. Há limitações para os recursos suportados. Para obter mais informações, consulte Suporte para recursos de armazenamento do Azure.

Os compartilhamentos de arquivos do Azure NFS são suportados em todas as mesmas regiões que oferecem suporte ao armazenamento de arquivos premium.

Para obter a lista mais atualizada, consulte a entrada Armazenamento de Arquivos Premium na página para produtos do Azure disponíveis por região.

Arquivos do Azure com SMB 3.0

Você pode montar compartilhamentos de arquivos do Azure em distribuições Linux usando o cliente do kernel SMB. O protocolo Common Internet File System (CIFS), disponível em distribuições Linux, é um dialeto do SMB. Quando você monta um compartilhamento de arquivos do Azure em VMs Linux usando SMB, ele é montado como um sistema de arquivos do tipo CIFS e o pacote CIFS deve ser instalado.

A capacidade de montar compartilhamentos de arquivos do Azure via SMB está geralmente disponível em todas as regiões do Azure. Ele mostra as mesmas características de desempenho dos protocolos NFS v3.0 e v4.1, portanto, atualmente o recomendamos como o método para fornecer mídia de armazenamento de backup para VMs Linux do Azure.

Duas versões suportadas do SMB estão disponíveis: SMB 2.1 e SMB 3.0. Recomendamos o SMB 3.0, porque suporta encriptação em trânsito. No entanto, as versões do kernel Linux têm suporte diferente para SMB 2.1 e 3.0. Para garantir que seu aplicativo ofereça suporte ao SMB 3.0, consulte Montar um compartilhamento de arquivos do Azure SMB no Linux.

Como o Azure Files é um serviço de compartilhamento de arquivos multiusuário, você deve ajustar certas características para torná-lo mais adequado como mídia de armazenamento de backup. Recomendamos desativar o cache e definir os IDs de usuário e grupo para os arquivos criados.

Azure NetApp Files

O serviço Azure NetApp Files é uma solução de armazenamento completa para o Oracle Database em VMs do Azure. Construído em armazenamento de arquivos limitado, ele suporta qualquer tipo de carga de trabalho e é altamente disponível por padrão. Juntamente com o driver Oracle Direct NFS, o Azure NetApp Files fornece uma camada de armazenamento altamente otimizada para o Banco de Dados Oracle.

Os Arquivos NetApp do Azure fornecem instantâneos eficientes baseados em armazenamento no sistema de armazenamento subjacente que usa um mecanismo de redirecionamento na gravação. Embora os instantâneos sejam rápidos para tirar e restaurar, eles servem apenas como uma primeira linha de defesa. Eles podem ser responsáveis pela maioria das operações de restauração necessárias de qualquer organização, que geralmente fazem parte da recuperação de erro humano.

No entanto, os snapshots não são um backup completo. Para cobrir todos os requisitos de backup e restauração, você deve criar réplicas de snapshot externas ou outros cofres de backup em uma geografia remota para ajudar a proteger contra interrupções regionais. Leia mais sobre como funcionam os instantâneos dos Arquivos NetApp do Azure.

Para garantir a criação de snapshots consistentes com o banco de dados, o processo de backup deve ser orquestrado entre o banco de dados e o armazenamento. A ferramenta de linha de comando Azure Application Consistent Snapshot (AzAcSnap) permite a proteção de dados para bancos de dados de terceiros. Ele lida com toda a orquestração necessária para colocar esses bancos de dados em um estado consistente com o aplicativo antes de tirar um instantâneo de armazenamento. Depois disso, ele retorna os bancos de dados a um estado operacional. As instâncias do Oracle Database são suportadas com o AzAcSnap desde a versão 5.1.

Para saber mais sobre como usar os Arquivos NetApp do Azure para Banco de Dados Oracle no Azure, consulte Arquiteturas de solução usando Arquivos NetApp do Azure.

Serviço de Backup do Azure

O Backup do Azure é uma solução de plataforma como serviço (PaaS) totalmente gerenciada para fazer backup de seus dados e recuperá-los da nuvem do Microsoft Azure. O Backup do Azure pode fazer backup e restaurar clientes locais, VMs do Azure e compartilhamentos de arquivos do Azure. Ele também pode fazer backup de bancos de dados SQL Server, Oracle, MySQL, PostgreSQL e SAP HANA em VMs do Azure.

O Backup do Azure fornece backups independentes e isolados para proteger contra a destruição acidental de dados originais. Os backups são armazenados em um cofre dos Serviços de Recuperação com gerenciamento interno de pontos de recuperação.

O Backup do Azure usa a nuvem do Azure para oferecer alta disponibilidade sem sobrecarga de manutenção ou monitoramento. Ele não limita a quantidade de dados de entrada ou saída que você transfere e não cobra pelos dados que você transfere. Os dados são protegidos em trânsito e em repouso.

O Backup do Azure oferece vários tipos de replicação para manter seus dados de backup altamente disponíveis:

  • O LRS replica seus dados três vezes (ou seja, cria três cópias de seus dados) em uma unidade de escala de armazenamento em um datacenter.
  • GRS é a opção de replicação padrão e recomendada. O GRS replica seus dados para uma região secundária, a centenas de quilômetros de distância do local principal dos dados de origem.

Um cofre criado com redundância GRS inclui a opção de configurar o recurso de restauração entre regiões. Você pode usar esse recurso para restaurar dados em uma região emparelhada secundária do Azure.

O serviço de Backup do Azure fornece uma estrutura para obter consistência de aplicativos durante backups de VMs Windows e Linux para vários aplicativos, como Oracle, MySQL, Mongo DB, SAP HANA e PostgreSQL: instantâneos consistentes com aplicativos. Essa estrutura envolve invocar pré-scripts (para desativar os aplicativos) antes de tirar um instantâneo dos discos. Ele chama post-scripts (comandos para descongelar os aplicativos) depois que o snapshot é concluído, para retornar os aplicativos ao modo normal.

Embora você possa encontrar exemplos de pré-scripts e pós-scripts no GitHub, você é responsável por criar e manter esses scripts. No caso do Oracle, o banco de dados deve estar no modo de log de arquivamento para permitir backups on-line. Você deve criar e manter os comandos de backup de início e fim de banco de dados apropriados que são executados nos pré-scripts e pós-scripts.

O Backup do Azure fornece uma estrutura de pré-script e pós-script aprimorada na qual fornece pré-scripts e pós-scripts empacotados para aplicativos selecionados. Basta nomear o aplicativo e, em seguida, o Backup do Azure invoca automaticamente os pré-scripts e pós-scripts relevantes. A Microsoft gerencia os pré-scripts e pós-scripts empacotados, para que você possa ter certeza do suporte, propriedade e validade desses scripts.

Atualmente, os aplicativos suportados para a estrutura aprimorada são Oracle 12.1 ou posterior e MySQL. O snapshot é uma cópia completa do armazenamento e não um snapshot incremental ou copy-on-write, portanto, é um meio eficaz para restaurar seu banco de dados.

Considerações sobre VLDB

As estratégias de backup para bancos de dados muito grandes (VLDBs) exigem uma consideração cuidadosa devido ao seu tamanho. Usar o RMAN para fazer backup no Armazenamento de Blobs do Azure ou nos Arquivos do Azure pode não fornecer a taxa de transferência necessária para fazer backup de um VLDB no período de tempo de destino.

Você pode usar o backup incremental do RMAN para reduzir os tamanhos de backup. Essa abordagem pode permitir que o Armazenamento do Azure seja usado como a mídia de backup para VLDBs. No entanto, pode não ser eficaz para VLDBs que têm grandes volumes de alterações.

Recomendamos o uso dos serviços do Azure que fornecem recursos de instantâneo, como o Backup do Azure ou os Arquivos NetApp do Azure, para VLDBs. Os instantâneos consistentes com o aplicativo, em que os bancos de dados são automaticamente colocados dentro e fora do modo de backup, levam apenas alguns segundos para serem criados, independentemente do tamanho do banco de dados.

Sua estratégia de backup também pode estar vinculada à solução geral de armazenamento que a organização usa para o Oracle Database. As cargas de trabalho de banco de dados que têm taxa de transferência de E/S extrema geralmente usam Arquivos NetApp do Azure ou soluções do Azure Marketplace de terceiros, como o Silk, para sustentar a taxa de transferência de armazenamento de banco de dados e os requisitos de IOPS. Essas soluções também fornecem snapshots consistentes com o aplicativo para operações rápidas de backup e restauração do banco de dados.

Próximos passos