Mettre en oeuvre la réplication d'Oracle Database File System (DBFS)
Toute réplication vers la base de données de secours implique deux étapes dans ce modèle : du dossier d'origine de la base principale au montage DBFS intermédiaire, puis, dans le site secondaire, du montage DBFS au dossier de destination de la base de données de secours. Les copies intermédiaires sont effectuées à l'aide de rsync. Comme il s'agit d'une copie rsync locale à faible latence, certains des problèmes qui surviennent lors d'une opération de copie rsync distante sont évités avec ce modèle.
Note :
Cette méthode n'est pas prise en charge avec Oracle Autonomous Database, qui n'autorise pas les connexions DBFS.replica-mid-tier-dbfs-oracle.zip
Les avantages de la mise en oeuvre de la réplique de niveau intermédiaire (middle tier) avec DBFS sont les suivants :
- Cette méthode tire parti de la robustesse de la réplique Oracle Data Guard.
- Le stockage de niveau intermédiaire réel peut rester monté sur les noeuds secondaires. Il n'y a aucune étape supplémentaire pour attacher ou monter le stockage dans le secondaire lors de chaque opération de permutation ou de basculement.
Voici les points à considérer pour implémenter la réplique de niveau intermédiaire (middle tier) avec DBFS :
- Cette méthode nécessite Oracle Database avec Oracle Data Guard.
- Les hôtes de niveau intermédiaire (middle tier) ont besoin du client Oracle Database pour monter le DBFS.
- L'utilisation de DBFS pour la réplication a des implications du point de vue de la configuration, du stockage de base de données et du cycle de vie. Il nécessite une installation du client Oracle Database sur les hôtes de niveau intermédiaire (middle tier), une certaine maintenance de la base de données (pour nettoyer, compresser et réduire le stockage des tables) et une bonne compréhension du comportement des points de montage DBFS.
- Les répertoires DBFS ne peuvent être montés que si la base de données est ouverte. Lorsque Oracle Data Guard n'est pas Active Data Guard, la base de données de secours est à l'état de montage. Par conséquent, pour accéder au montage DBFS du site secondaire, vous devez convertir la base de données en base de données de secours instantanée. Lorsque Active Data Guard est utilisé, le système de fichiers peut être monté pour les lectures et il n'est pas nécessaire de passer à un instantané.
- Il n'est pas recommandé d'utiliser DBFS comme solution à usage général pour répliquer tous les artefacts (en particulier les fichiers d'exécution) vers la base de secours. L'utilisation de DBFS pour répliquer les fichiers binaires est une surcharge. Toutefois, cette approche convient pour répliquer quelques artefacts, tels que la configuration, lorsque d'autres méthodes telles que la réplication de stockage ou
rsyncne répondent pas aux besoins du système. - Il incombe à l'utilisateur de créer les scripts personnalisés pour chaque environnement et de les exécuter périodiquement.
- Il est de la responsabilité de l'utilisateur de mettre en œuvre un moyen d'inverser la direction de la réplique.
Configurer la réplication pour le système de fichiers de base de données
Cette mise en oeuvre utilise la technologie rsync et suit le modèle peer-to-peer. Dans ce modèle, la copie est effectuée directement entre les hôtes pairs de niveau intermédiaire (middle tier). Chaque noeud a une connectivité SSH à son homologue et utilise des commandes rsync sur SSH pour répliquer les artefacts de fichier de niveau intermédiaire principaux.
Les éléments suivants sont requis pour mettre en oeuvre une réplique de niveau intermédiaire (middle tier) avec DBFS :
- Installation du client Oracle Database sur les hôtes de niveau intermédiaire (middle tier) qui effectuent la copie, à la fois dans le primaire et le secondaire.
- Système de fichiers DBFS créé dans la base de données.
- Un montage DBFS sur les hôtes de niveau intermédiaire (middle tier) qui effectuent les copies, à la fois en primaire et en secondaire. Cela monte le système de fichiers DBFS de la base de données. Ce système de fichiers peut être monté sur plusieurs hôtes, car DBFS est un système de fichiers partageable.
- Scripts qui copient les artefacts de fichier de niveau intermédiaire (middle tier) vers le montage DBFS du site principal.
- Scripts qui copient les artefacts de fichier de niveau intermédiaire (middle tier) du montage DBFS dans les dossiers du site secondaire. Selon la mise en oeuvre, cette méthode peut nécessiter une connectivité SQL*net entre les hôtes de niveau intermédiaire (middle tier) et la base de données distante pour les opérations de base de données telles que les conversions de rôle.
- Un moyen de gérer les informations spécifiques au site, soit en excluant ces informations de la copie, soit en les mettant à jour avec les informations appropriées après la réplique.
- Programmez l'exécution continue de ces scripts.
- Mécanisme permettant de modifier la direction de la réplique après une permutation ou un basculement.
Note :
L'exemple suivant s'applique aux systèmes Oracle WebLogic. Vous pouvez l'utiliser comme référence pour copier d'autres dossiers du système de niveau intermédiaire au moyen de DBFS, mais cet exemple particulier utilise un script qui réplique le dossier de domaine de l'administrateur WebLogic vers le dossier secondaire au moyen de DBFS.Cet exemple montre comment répliquer le dossier de domaine de l'hôte d'administration WebLogic au moyen de DBFS. Le contenu situé en dehors du dossier de domaine, ainsi que le contenu sur d'autres hôtes, n'est pas inclus dans cet exemple. Le dossier de domaine ne réside pas directement sur DBFS; le montage DBFS n'est qu'un dossier intermédiaire pour stocker une copie du dossier de domaine.
Cet exemple fournit un script pour effectuer ces actions, qui doivent s'exécuter périodiquement sur les sites principal et de secours. Ce script copie le dossier du domaine d'administration WebLogic, en ignorant certains éléments tels que les fichiers tmp, .lck, .state et tnsnames.ora. La procédure se compose des éléments suivants :
- Lorsque le script s'exécute sur l'hôte d'administration WebLogic du site principal, le script copie le dossier de domaine WebLogic dans le dossier DBFS.
- Les fichiers copiés dans le DBFS, tels qu'ils sont stockés dans la base de données, sont automatiquement transférés vers la base de données de secours au moyen d'Oracle Data Guard.
- Lorsque le script s'exécute sur l'hôte d'administration WebLogic du site secondaire :
- Le script convertit la base de données de secours en base de données de secours instantanée.
- Il monte ensuite le système de fichiers DBFS à partir de la base de données de secours.
- Le dossier de domaine répliqué est maintenant disponible dans ce dossier DBFS. Le script le copie du montage DBFS vers le dossier du domaine réel.
- Enfin, le script convertit de nouveau la base de données de secours en base de secours physique.
- En cas de modification de rôle, le script adapte automatiquement l'exécution au nouveau rôle. Il rassemble le rôle réel du site en vérifiant le rôle de base de données.
Ce script reproduit uniquement le dossier de domaine de l'hôte d'administration WebLogic. Le contenu du dossier DOMAIN_HOME/config est automatiquement copié vers tous les autres noeuds qui font partie du domaine WebLogic au démarrage des serveurs gérés. Les fichiers situés en dehors de ce dossier et les fichiers situés sur d'autres hôtes ne sont pas répliqués et doivent être synchronisés séparément.
Pour les opérations de déploiement d'application, utilisez l'option de déploiement Charger vos fichiers dans la console d'administration WebLogic. De cette façon, les fichiers déployés sont placés sous le répertoire de chargement du serveur d'administration ($DOMAIN_HOME/servers/admin_server_name/upload), et le script de réplique de configuration les synchronise sur le site de secours.
Cet exemple fournit un autre script pour installer le client de base de données et configurer un montage DBFS dans les hôtes de niveau intermédiaire (middle tier). L'image est un exemple de système Oracle WebLogic Server pour OCI avec réplication DBFS.
wls-dbfs-replication-oracle.zip
Effectuez les opérations suivantes pour utiliser la méthode DBFS pour répliquer le domaine WebLogic :
Valider la réplication pour le système de fichiers de base de données
Lors d'une opération de permutation ou de basculement, les informations répliquées doivent être disponibles et utilisables sur le site de secours avant le démarrage des processus. Cela est également nécessaire lorsque vous validez le système secondaire (en ouvrant la base de données de secours en mode instantané).
Dans cette mise en oeuvre, le stockage est toujours disponible dans la base de données de secours; vous n'avez pas besoin d'attacher ou de monter de volume. La seule action dont vous avez besoin est de vous assurer qu'elle contient la dernière version du contenu.
Effectuez les opérations suivantes pour utiliser le contenu répliqué dans la base de secours :
Effectuer une réplication continue pour le système de fichiers de base de données
Exécutez le script de réplication périodiquement pour garder le domaine secondaire synchronisé avec le domaine principal.
rsync à partir des hôtes de niveau intermédiaire :
- Utilisez le crontab du système d'exploitation ou un autre outil de programmation pour programmer la réplication. Il doit permettre aux scripts de terminer la réplication. Sinon, les tâches suivantes peuvent se chevaucher.
- Conservez les processus de niveau intermédiaire arrêtés sur le site de secours. Si les serveurs sont actifs sur le site de secours pendant la réplication des modifications, celles-ci prendront effet lors du prochain démarrage. Démarrez-les uniquement lors de la validation du site de secours ou lors de la procédure de permutation ou de basculement.
- Gérez les informations propres à chaque site et tenez-les à jour. Par exemple, ignorez
tnsnames.orade la copie afin que chaque système ait ses détails de connectivité. Si vous effectuez une modification danstnsnames.oraen primaire (par exemple, en ajoutant un nouvel alias), mettez à jour manuellementtnsnames.oraen secondaire en conséquence. - Après une permutation ou un basculement, inversez la direction de la réplique. Cela dépend de la mise en œuvre spécifique. Les scripts peuvent utiliser une vérification dynamique pour identifier qui est le site actif, ou vous pouvez effectuer une modification manuelle après une permutation ou un basculement (par exemple, en désactivant et en activant les scripts appropriés). Dans l'exemple fourni, le script
config_replica.shadapte automatiquement l'exécution au rôle réel du site en vérifiant le rôle de base de données locale.

