Qu'est-ce que la réplication asynchrone ?¶
Dans le contexte de Ceph, la réplication asynchrone implique la copie des données d'un cluster source vers un cluster cible de manière non bloquante. Contrairement à la réplication synchrone où les écritures sont attendues sur tous les répliques avant de confirmer l'opération, la réplication asynchrone permet de continuer les écritures sur le cluster source, même si la réplication vers le cluster cible est en cours.
Ce ménanisme offre de nombreux avantages pour la haute disponibilité et la reprise après sinistre avec un site distant même avec une connexion reseau limité en bande passante.
Pourquoi utiliser la réplication asynchrone ?¶
Avantages de la réplication asynchrone¶
Haute disponibilité: En cas de défaillance du cluster source, le cluster cible peut servir de point de récupération.
Réduction de la latence: Les opérations d'écriture ne sont pas bloquées par la réplication synchrone sur une longue distance, ce qui améliore les performances. D'une maniere générale il n'est pas conseillé de dépasser 10km pour une réplication synchrone, contrairement a une réplication asynchrone qui peux dépasser elle plusieurs centaines de kilometres.
Scalabilité: La réplication asynchrone peut être utilisée pour répliquer de grands volumes de données.
Géoreplication: La réplication asynchrone permet de répliquer les données vers un site distant pour assurer la reprise après sinistre à grande échelle. par exemple pour protéger les données contre les catastrophes naturelles ou les pannes de site.
Limites de la réplication asynchrone¶
Perte de données potentielle: En cas de panne du cluster source avant que les modifications ne soient répliquées, il peut y avoir une perte de données liée a la frequance de réplication ou de l'interval des snapshot.
Latence de récupération: Le temps nécessaire pour récupérer les données à partir du cluster cible peut varier en fonction de la taille des données et de la latence du réseau.
Comment fonctionne la réplication asynchrone dans Ceph ?¶
Ceph fournit une solution de réplication pour chaque type de stockage Object,RBD ou CephFS. La configuration de la réplication asynchrone dans Ceph implique la création de paires de clusters, la définition des règles de réplication et la gestion des journaux de réplication. Ceph fournit des outils et des commandes pour faciliter cette tâche.
RBD Mirroring¶
Ceph propose un mécanisme de réplication asynchrone spécifique aux images RBD (RADOS Block Device). Ce mécanisme utilise soit un journal de réplication pour suivre les modifications apportées aux images et les reproduire sur le cluster cible, soit un mécanisme de snapshot régulié sur les images RBD source qui seront appliqués sur le cluster cible.
Il est possible de définir des rêgles du cluster source vers le cluster cible et vis versa, ce qui permet de revenir a une situation initiale facilement et avec un temps de coupure faible.
Pour plus d'information voir l'ANF CEPH 2022
CephFS Mirroring¶
CephFS, le système de fichiers distribué de Ceph, supporte également la réplication asynchrone de snapshots. Les snapshots sont répliqués vers un autre cluster CephFS, permettant ainsi de créer des sauvegardes à distance.
Attention: la version Quincy de ne permet que de définir une réliquation asynchrone d'un stockage CephFS source vers un cluster CephFS cible, sans gestion du retour à l'etat initiale.
Pour plus d'information voir l'ANF CEPH 2022
S3 Mirroring¶
Le mirroring asynchrone S3 consiste à répliquer des objets stockés dans un bucket S3 d'un cluster Ceph source vers un autre bucket S3 sur un cluster cible. Cette réplication est dite asynchrone car les écritures sur le cluster source ne sont pas bloquées en attendant que la réplication soit terminée.
- Comment cela fonctionne ?
Configuration des buckets: Vous créez deux buckets S3, un sur le cluster source et un sur le cluster cible.
Définition des règles de réplication: Vous configurez les règles de réplication qui spécifient les objets à répliquer, la fréquence de réplication.
Mode de réplication: Complet ou incrémental.
Processus de réplication: Ceph surveille les modifications apportées aux objets dans le bucket source et les réplique automatiquement vers le bucket cible.
- Avantages du mirroring asynchrone S3
Haute disponibilité: En cas de défaillance du cluster source, les données sont toujours disponibles sur le cluster cible.
Résilience: La réplication géographique permet de protéger les données contre les catastrophes naturelles ou les pannes de site.
Distribution de contenu: Le mirroring S3 peut être utilisé pour distribuer du contenu sur plusieurs régions géographiques afin de réduire la latence pour les utilisateurs finaux.
Flexibilité: Ceph offre une grande flexibilité dans la configuration des règles de réplication, permettant ainsi de répondre à différents besoins.
- Limitations
Latence: Il existe une latence entre le moment où une modification est apportée à un objet et le moment où elle est répliquée.
Complexité: La configuration et la gestion du mirroring S3 peuvent être complexes, en particulier pour les environnements à grande échelle.
- Cas d'utilisation
Sauvegarde: Le mirroring S3 peut être utilisé pour créer des sauvegardes hors site de vos données S3.
Réplication géographique: Pour répliquer les données vers une région distante afin d'améliorer la disponibilité et les performances.
Distribution de contenu: Pour distribuer du contenu statique (images, vidéos, etc.) sur plusieurs régions géographiques.
Archives: Pour archiver des données à long terme par exmple en gradant un plus grand nombre de copie sur le site ditant que le site source.
Pour plus d'information voir l'ANF CEPH 2022