Stratégies de sauvegarde pour Oracle Database sur une machine virtuelle Linux Azure

Attention

Cet article fait référence à CentOS, une distribution Linux proche de l’état EOL (End Of Life). Faites le point sur votre utilisation et organisez-vous en conséquence. Pour plus d’informations, consultez l’aide relative à la fin de vie de CentOS.

S’applique à : ✔️ Machines virtuelles Linux

Les sauvegardes de base de données aident à protéger la base de données contre des pertes de données résultant de défaillances du composant de stockage et du centre de données. Elles peuvent également permettre de réparer des erreurs humaines, ainsi que de cloner des bases de données à des fins de développement ou de test.

Dans Azure, tout le stockage est hautement redondant. La perte d’un ou de plusieurs disques n’entraîne pas de panne de base de données. Les sauvegardes sont le plus souvent utilisées pour protéger contre les erreurs humaines, pour faciliter les opérations de clonage ou pour préserver les données à des fins réglementaires.

Elles permettent également de se prémunir contre d’éventuelles pannes régionales quand une technologie de récupération d’urgence telle que DataGuard n’est pas disponible. Dans ce cas, les sauvegardes doivent être stockées dans différentes régions Azure à l’aide d’une réplication géo-redondante, de sorte qu’elles soient disponibles en dehors de la région de la base de données primaire.

Stockage Azure

Les services Stockage Azure sont des solutions de stockage cloud de Microsoft pour des scénarios de stockage de données modernes. Stockage Azure offre des services que vous pouvez utiliser pour monter un stockage externe sur une machine virtuelle Linux Azure, qui convient en tant que support de sauvegarde pour les instances Oracle Database. Un outil de sauvegarde tel qu’Oracle Recovery Manager (RMAN) est requis pour lancer une opération de sauvegarde ou de restauration, et copier la sauvegarde vers/depuis le service Stockage Azure.

Le service Stockage Azure offre les avantages suivants :

  • Durable et hautement disponible: La redondance garantit que vos données sont sécurisées lors de pannes matérielles temporaires. Par défaut, tout le stockage est triplé en miroir. Vous pouvez également choisir de répliquer des données entre des centres de données ou des régions géographiques pour une protection supplémentaire contre les catastrophes locales ou les catastrophes naturelles. Les données ainsi répliquées restent hautement disponibles en cas de panne inattendue.

  • Sécurisé : Stockage Azure chiffre toutes les données écrites dans un compte de stockage. Le Stockage Azure vous permet de contrôler de manière plus précise qui a accès à vos données.

  • Évolutif : Le Stockage Azure est conçu pour être hautement évolutif afin de répondre aux besoins de stockage de données et de performances des applications actuelles.

  • Géré. Azure gère la maintenance du matériel, les mises à jour et les problèmes critiques pour vous.

  • Accessible : Les données dans le Stockage Azure sont accessibles n’importe où dans le monde via HTTP ou HTTPS. Microsoft fournit des bibliothèques clientes pour le Stockage Azure dans une variété de langages, dont .NET, Java, Node.js, Python, PHP, Ruby et Go. Microsoft fournit également une API REST mature.

    Le Stockage Azure prend en charge l’écriture de scripts dans Azure PowerShell ou l’interface de ligne de commande Azure. Le portail Azure et l’Explorateur Stockage Azure offrent des solutions visuelles simples pour utiliser vos données.

La plateforme de stockage Azure inclut les services de données suivants, utilisables en tant que support de sauvegarde pour Oracle Database :

  • Stockage Blob Azure : un magasin d’objets pour les données texte et binaires. Il inclut également la prise en charge de l’analytique Big Data via Azure Data Lake Storage Gen2.

  • Azure NetApp Files: solution de stockage réseau complète, notamment des fonctionnalités avancées de gestion des données pour prendre des instantanés, cloner et répliquer des volumes de base de données.

  • Azure Files : partages de fichiers gérés pour les déploiements sur le cloud ou locaux.

  • Stockage sur disque : des volumes de stockage de niveau bloc pour les machines virtuelles Azure.

Montage de stockage interrégion

La possibilité d’accéder au stockage de sauvegarde entre les régions est un aspect important de la continuité d’activité et de la reprise d’activité (BCDR). Il est également utile pour cloner des bases de données à partir de sauvegardes dans différentes régions géographiques. Le stockage cloud Azure offre cinq niveaux de redondance :

  • Stockage localement redondant (LRS) : vos données sont répliquées trois fois au sein d’un même emplacement physique dans la région primaire.
  • Stockage redondant interzone (ZRS) : vous données sont répliquées de façon synchrone dans trois zones de disponibilité au sein de la région primaire. LRS permet de protéger vos données dans la région primaire et de protéger chaque zone de disponibilité.
  • Stockage géo-redondant (GRS) : vos données sont répliquées de manière asynchrone dans une région secondaire. LRS permet de protéger vos données dans les régions primaire et secondaire.
  • Stockage géo-redondant interzone (GZRS) : vos données sont copiées de façon synchrone dans trois zones de disponibilité au sein de la région primaire en utilisant un ZRS. Vos données sont ensuite copiées de façon asynchrone vers un emplacement physique unique dans la région secondaire. Dans tous les emplacements, LRS permet de protéger les données.
  • Stockage géo-redondant avec accès en lecture (RA-GRS) et le stockage géo-redondant interzone avec accès en lecture (RA-GZRS) : vous avez à tout moment un accès en lecture seule aux données répliquées dans la région secondaire.

Blob et stockage de fichiers

Lorsque vous utilisez Azure Files avec le protocole SMB (Server Message Block) ou le protocole NFS (Network File System) 4.1 pour le montage en tant que stockage de sauvegarde, Azure Files ne prend pas en charge RA-GRS ou RA-GZRS.

Le stockage de sauvegarde Azure Files peut effectuer un scale-up jusqu’à 100 (Tio), avec prise en charge des options de redondance LRS, GRS et GZRS.

Un Stockage Blob Azure monté à l’aide du protocole NFS 3.0 ne prend actuellement en charge que les redondances LRS et ZRS. Un Stockage Blob Azure configuré avec n’importe quelle option de redondance peut être monté à l’aide de Blobfuse.

Coffre Recovery Services

Un coffre Recovery Services est une entité de stockage qui stocke les points de récupération créés au fil du temps. Il fournit une interface pour effectuer des opérations liées à la sauvegarde. Ces opérations comprennent l’exécution de sauvegardes à la demande, l’exécution de restaurations et la création de stratégies de sauvegarde.

La Sauvegarde Azure gère automatiquement le stockage du coffre. Vous devez spécifier le mode de réplication de ce stockage au moment de sa création. Vous ne pouvez pas modifier la réplication une fois que les éléments sont protégés dans le coffre. Pour la redondance régionale, choisissez le paramètre géo-redondant.

Si vous envisagez d’effectuer une restauration vers une région jumelée Azure secondaire, activez la fonctionnalité de restauration inter-région. Lorsque vous activez la restauration inter-région, le stockage de sauvegarde est déplacé de GRS vers RA-GRS.

Stockage Blob Azure

Le Stockage Blob Azure est un service basé sur le cloud permettant de stocker d’importantes quantités de données non structurées qui peut être utilisé pour les sauvegardes Oracle Database. Vous pouvez monter Stockage Blob Azure sur des machines virtuelles Linux Azure à l’aide de Blobfuse (Linux FUSE) ou du protocole NFS v3.0.

Blobfuse

Blobfuse est un projet open source qui fournit un système de fichiers virtuel soutenu par Stockage Blob Azure. Il utilise la bibliothèque open source libfuse pour communiquer avec le module de noyau FUSE Linux. Il implémente les opérations de système de fichiers à l’aide des API REST du Stockage Blob Azure.

Blobfuse est actuellement disponible pour les distributions Ubuntu et Centos/RedHat. Il est également disponible pour Kubernetes à l’aide du pilote CSI.

Blobfuse est omniprésent dans les régions Azure et fonctionne avec tous les types de comptes de stockage, y compris v1/v2 à usage général et Azure Data Lake Storage Gen2. Mais il ne fonctionne pas aussi bien que les protocoles alternatifs. Pour un support de sauvegarde de base de données, nous vous recommandons d’utiliser les protocoles SMB ou NFS pour monter le Stockage Blob Azure.

NFS v3.0

Le support Azure pour le protocole NFS v3.0 est disponible. La prise en charge du protocole NFS permet à des clients Windows et Linux de monter un conteneur de Stockage Blob Azure sur une machine virtuelle Azure.

Pour garantir la sécurité du réseau, le compte de stockage utilisé pour le montage NFS doit être contenu dans un réseau virtuel. La sécurité Microsoft Entra et les listes de contrôle d’accès (ACL) ne sont pas encore prises en charge dans les comptes sur lesquels la prise en charge du protocole NFS 3.0 est activée.

Azure Files

Azure Files est un système de fichiers distribués entièrement managé et basé sur le cloud. Vous pouvez le monter sur des clients Windows, Linux ou macOS locaux ou basés sur le cloud.

Azure Files offre des partages de fichiers entièrement gérés dans le cloud, qui sont accessibles à l’aide des protocoles SMB et de système de fichiers NFS. Actuellement, Azure Files ne prend pas en charge l’accès multi-protocole, ainsi un partage ne peut être qu’un partage NFS ou un partage SMB. Nous vous recommandons de déterminer quel protocole correspond le mieux à vos besoins avant de créer des partages de fichiers Azure.

Vous pouvez également protéger des partages de fichiers Azure à l’aide de Sauvegarde Azure pour un coffre Recovery Services. Cette approche fournit une autre couche de protection aux sauvegardes Oracle RMAN.

Azure Files avec NFS v4.1

Vous pouvez monter des partages de fichiers Azure dans des distributions Linux à l’aide du protocole NFS v4.1. Il existe un certain nombre de limitations aux fonctionnalités prises en charge. Pour plus d’informations, consultez Prise en charge des fonctionnalités de Stockage Azure.

Les partages de fichiers NFS Azure sont pris en charge dans toutes les régions qui prennent en charge le stockage de fichiers Premium.

Pour obtenir la liste la plus récente, consultez l’entrée Stockage de fichiers Premium sur la page des produits Azure disponibles par région.

Azure Files avec SMB 3.0

Vous pouvez monter des partages de fichiers Azure dans des distributions Linux à l’aide du client noyau SMB. Le protocole CIFS (Common Internet File System), disponible sur les distributions Linux, est un dialecte de SMB. Lorsque vous montez un partage de fichiers Azure sur des machines virtuelles Linux à l’aide de SMB, il est monté en tant que système de fichiers de type CIFS et le package CIFS doit être installé.

La possibilité de monter des partages de fichiers Azure via SMB est généralement disponible dans toutes les régions Azure. Il possède les mêmes niveaux de performances que les protocoles NFS v3.0 et v4.1, nous vous recommandons donc d’utiliser cette méthode comme support de stockage de sauvegarde pour vos machines virtuelles Azure Linux.

Deux versions prises en charge de SMB sont disponibles : SMB 2.1 et SMB 3.0. Nous recommandons SMB 3.0, car il prend en charge le chiffrement en transit. Toutefois, diverses versions de noyaux Linux assurent une prise en charge différente de SMB 2.1 et 3.0. Pour vous assurer que votre application prend en charge SMB 3.0, consultez Monter un partage de fichiers Azure SMB sur Linux.

Puisque Azure Files est conçu pour être un service de partage de fichiers multi-utilisateurs, vous devez régler certaines caractéristiques afin de le rendre plus adapté en tant que support de stockage de sauvegarde. Il est recommandé de désactiver la mise en cache et la définition des ID d’utilisateur et de groupe pour les fichiers créés.

Azure NetApp Files

Le service Azure NetApp Files est une solution de stockage complète pour Oracle Database dans des machines virtuelles Azure. S’appuyant sur un stockage de fichiers mesuré, il prend en charge tout type de charge de travail et est hautement disponible par défaut. Avec le pilote Direct NFS Oracle, le service Azure NetApp Files fournit une couche de stockage hautement optimisée pour Oracle Database.

Le service Azure NetApp Files fournit des instantanés adossés à un stockage efficace sur le système de stockage sous-jacent qui utilise un mécanisme de redirection en écriture (Redirect on Write, RoW). Bien que les instantanés soient rapides à prendre et à restaurer, ils servent uniquement de première ligne de défense. Ils peuvent prendre en compte la plupart des opérations de restauration requises de n’importe quel organisation, qui font souvent partie de la récupération après une erreur humaine.

Toutefois, les instantanés ne constituent pas une sauvegarde complète. Pour couvrir toutes les exigences en matière de sauvegarde et de restauration, des réplicas d’instantanés externes ou d’autres coffres de sauvegarde doivent être créés dans une zone géographique distante pour vous protéger contre une panne régionale. Pour plus d’informations, consultez le fonctionnement des instantanés Azure NetApp Files.

Pour garantir la création d’instantanés cohérents de la base de données, le processus de sauvegarde doit être orchestré entre la base de données et le stockage. Vous pouvez utiliser l’outil Azure Application Consistent Snapshot (AzAcSnap) afin d’activer la protection des données pour les bases de données tierces. Il gère toute l’orchestration nécessaire pour placer les bases de données dans un état de cohérence d’application avant de prendre un cliché instantané du stockage. Après cela, il retourne les bases de données à un état opérationnel. Les instances Oracle Database sont prises en charge avec AzAcSnap depuis la version 5.1.

Pour en savoir plus sur l’utilisation de Azure NetApp Files pour Oracle Database sur Azure, consultez Architectures de solution à l’aide de Azure NetApp Files.

Service Azure Backup

La sauvegarde Azure est une solution PaaS (Plateforme en tant que service) complètement managée permettant de sauvegarder vos données et de les récupérer à partir du cloud Microsoft Azure. La sauvegarde Azure permet de sauvegarder et de restaurer des clients locaux, des machines virtuelles Azure et des partages de fichiers Azure. Elle peut également sauvegarder des bases de données SQL Server, Oracle, MySQL, PostgreSQL et SAP HANA sur des machines virtuelles Azure.

Le service Sauvegarde Azure fournit des sauvegardes indépendantes et isolées pour éviter une destruction accidentelle des données d’origine. Les sauvegardes sont stockées dans un coffre Recovery Services avec gestion intégrée des points de récupération.

Le service Sauvegarde Azure utilise le cloud Azure pour offrir une haute disponibilité sans surcharge de maintenance ou de supervision. Il ne limite pas la quantité de données entrantes ou sortantes que vous transférez, et ne génère pas de frais pour les données transférées. Les données sont sécurisées en transit et au repos.

Le service Sauvegarde Azure offre plusieurs types de réplication pour assurer la haute disponibilité des données de votre sauvegarde :

  • Le (LRS) réplique vos données trois fois (c’est-à-dire qu’il crée trois copies de vos données) dans une unité d’échelle de stockage d’un centre de données.
  • Le (GRS) est l’option de réplication par défaut recommandée. Le stockage géo-redondant (GRS) réplique vos données vers une région secondaire distante de plusieurs centaines de kilomètres de l’emplacement principal des données sources.

Un coffre créé avec la redondance GRS comprend l’option permettant de configurer la fonctionnalité de restauration inter-région. Vous pouvez utiliser cette fonctionnalité pour restaurer des données dans une seconde région associée Azure.

Le service Sauvegarde Azure fournit une infrastructure pour assurer la cohérence des applications lors des sauvegardes de machines virtuelles Windows et Linux pour diverses applications telles qu’Oracle, MySQL, Mongo DB, SAP HANA et PostGreSQL, appelées instantanés de cohérence d’application. Cette infrastructure implique l’appel d’un pré-script pour suspendre les applications avant la capture instantanée des disques. Il appelle des post-scripts (commandes pour dégeler les applications) une fois le instantané terminé, pour retourner les applications en mode normal.

Bien que vous puissiez trouver des exemples de pré-scripts et de post-scripts sur GitHub, vous êtes responsable de la création et de la maintenance de ces scripts. Dans le cas d’Oracle, la base de données doit être en mode journal archive pour autoriser les sauvegardes en ligne. Vous devez créer et gérer les commandes appropriées de sauvegarde de début et de fin de base de données qui sont exécutées dans les pré-scripts et les post-scripts.

Sauvegarde Azure fournit une infrastructure de pré-script et de post-script améliorée dans laquelle se trouve des pré-scripts et des post-scripts empaquetés pour les applications sélectionnées. Il suffit de nommer l’application après quoi le service Sauvegarde Azure appelle automatiquement les pré-scripts et post-scripts appropriés. Microsoft gère les pré-scripts et les post-scripts empaquetés, ce qui vous garantit la prise en charge, la propriété et la validité de ces scripts.

Les applications actuellement prises en charge pour l’infrastructure améliorée sont Oracle 12.1.x (ou version supérieure) et MySQL. La capture instantanée étant une copie complète du stockage, et non un instantané incrémentiel ou de copie sur écriture, il s'agit donc d'un support efficace à partir duquel restaurer votre base de données.

Considérations relatives aux bases de données très volumineuses (VLDB)

Les stratégies de sauvegarde pour les bases de données très volumineuses (VLDB) requièrent une attention particulière en raison de leur taille. Il se peut que l’utilisation de RMAN pour sauvegarder sur un Stockage Blob Azure ou sur Azure Files n’offre pas le débit requis pour sauvegarder une VLDB dans le laps de temps cible.

Vous pouvez utiliser la sauvegarde incrémentielle RMAN pour réduire les tailles de sauvegarde. Cette approche peut permettre à Stockage Azure d’être utilisé comme support de sauvegarde pour les VLDBs. Toutefois, elle peut ne pas être efficace pour les VLDB qui ont des volumes élevés de modifications.

Nous vous recommandons d’utiliser des services Azure qui fournissent des fonctionnalités de capture instantanée, comme le service Sauvegarde Azure ou Azure NetApp Files pour les VLDB. La création de captures instantanées cohérentes avec les applications, dans lesquelles le mode de sauvegarde est automatiquement activé ou désactivé pour les bases de données, ne prend que quelques secondes, quelle que soit la taille de la base de données.

Votre stratégie de sauvegarde peut également être liée à la solution de stockage globale que votre organisation utilise pour Oracle Database. Les charges de travail de base de données à extrême débit d’E/S utilisent souvent Azure NetApp Files ou des solutions tierces de la Place de marché Azure, telles que Silk, pour soutenir le débit de stockage de base de données et répondre aux besoins en IOPS. Ces solutions fournissent également des captures instantanées cohérentes avec les applications qui peuvent être utilisées pour les opérations de sauvegarde et de restauration de base de données rapides.

Étapes suivantes