Planifier la haute disponibilité pour les bases de données

Le service Oracle Cloud Infrastructure Database vous permet de lancer rapidement un système Oracle Database (système de base de données) et de créer des bases de données dessus. Le service Database prend en charge plusieurs types de système de base de données, allant de la taille, du prix et des performances.

Pour planifier la haute disponibilité de vos bases de données, vous devez tenir compte des stratégies de conception clés suivantes :
  • Utilisez les outils clés suivants : systèmes de base de données Exadata, systèmes de base de données RAC à 2 noeuds et Data Guard.
  • Configurez la couche CPU et stockage pour qu'elle s'adapte automatiquement.
Cet article décrit ces stratégies.

Utilisation des systèmes de base de données Exadata

Les systèmes de base de données Exadata vous permettent de tirer parti du potentiel d'Exadata dans Oracle Cloud Infrastructure.

Un système de base de données Exadata est composé d'un quart de rack, d'un demi-rack ou d'un rack complet de noeuds de calcul et de serveurs de stockage liés entre eux par un réseau InfiniBand à haut débit et à faible latence ainsi que par un logiciel Exadata intelligent. Vous pouvez configurer des sauvegardes automatiques, optimiser le système pour différentes charges de travail et le redimensionner afin de répondre à une augmentation des demandes.

Les systèmes de base de données Exadata fournissent des fonctionnalités de haute disponibilité intégrées. Toutes les meilleures pratiques existantes avec vos systèmes de base de données Exadata on-premise sont applicables.

Utiliser des systèmes de base de données RAC à 2 noeuds

Oracle Cloud Infrastructure propose des systèmes de base de données RAC à 2 noeuds sur des instances de calcul de machine virtuelle. Les systèmes de base de données RAC à 2 noeuds fournissent des fonctionnalités de haute disponibilité intégrées. Nous vous recommandons donc d'utiliser des systèmes de base de données RAC à 2 noeuds pour vos solutions nécessitant une haute disponibilité.

Vous pouvez configurer le service Database de façon à effectuer une sauvegarde automatique vers Oracle Cloud Infrastructure Object Storage. Le diagramme suivant illustre le déploiement d'un système de base de données RAC à 2 noeuds pour prendre en charge la haute disponibilité d'une application Web à trois niveaux :

Description de l'image rac-db.png
Description de l'illustration rac-db.png

Remarque :

L'architecture présente plusieurs domaines de disponibilité. Pour une région dotée d'un seul domaine de disponibilité, ajustez l'architecture afin de répartir les ressources entre les domaines de pannes du domaine de disponibilité.

Utiliser Data Guard

Pour les solutions avec un système de base de données à noeud unique, utilisez Oracle Data Guard afin d'obtenir une haute disponibilité. Data Guard garantit la haute disponibilité, la protection des données et la récupération après sinistre des données Enterprise.

L'implémentation de Data Guard dans le service Oracle Cloud Infrastructure Database requiert deux bases de données : une base de données principale et une base de données de secours. Les deux bases de données composent une association Data Guard. La plupart de vos applications accèdent à la base de données principale. La base de secours est une copie transactionnelle cohérente de la base de données principale. Pour améliorer la disponibilité et la récupération après sinistre, nous vous recommandons de placer le système de la base de données de secours dans un domaine de disponibilité différent de celui de la base de données principale. Ce déploiement s'effectue via le réseau hautes performances entre les domaines de disponibilité Oracle Cloud Infrastructure.

Description de l'image db-dg.png
Description de l'illustration db-dg.png

Remarque :

L'architecture présente plusieurs domaines de disponibilité. Pour une région dotée d'un seul domaine de disponibilité, ajustez l'architecture afin de répartir les ressources entre les domaines de pannes du domaine de disponibilité.

Pour mettre à jour la base de données de secours, Data Guard transmet les données redo à partir de la base de données principale et les applique. Si la base de données principale n'est plus disponible, vous pouvez utiliser Data Guard pour basculer la base de données de secours vers le rôle principal.

Vous pouvez effectuer les actions suivantes avec la configuration Data Guard pour prendre en charge la haute disponibilité :
  • Permutation : inverse les rôles des bases de données principale et de secours. Chaque base de données continue à participer à l'association Data Guard dans son nouveau rôle. La permutation de bases de données garantit l'absence de perte de données. Vous pouvez utiliser une permutation avant d'effectuer la maintenance planifiée sur la base de données principale.
  • Basculement : transfère la base de données de secours vers le rôle principal lorsque la base de données principale existante échoue ou devient inaccessible. Le basculement peut entraîner une perte de données si vous utilisez le mode de protection Performances maximales.
  • Rétablissement: Il rétablit le rôle de secours d'une base de données dans une association Data Guard. Vous pouvez utiliser la commande de rétablissement pour renvoyer une base de données en échec au service après avoir corrigé la cause de l'échec.

Redimensionnement automatique de l'UC et du stockage

Pour atteindre une haute disponibilité de vos solutions, vous devez vous assurer que vos systèmes de base de données ont une capacité suffisante. Les services de base de données sur Oracle Cloud Infrastructure peuvent redimensionner dynamiquement les coeurs de processeur ou le stockage de base de données en fonction des différentes formes de votre service Database.

Pour les systèmes de base de données basés sur des instances Compute Bare Metal, nous vous recommandons de commencer avec un nombre minimal de coeurs de processeur et d'augmenter dynamiquement le nombre de coeurs de processeur selon vos besoins. Pour les systèmes de base de données basés sur une forme de machine virtuelle, vous pouvez augmenter dynamiquement les coeurs de processeur et la taille de stockage.