eviden-logo

Evidian > Produits > SafeKit : logiciel tout-en-un de haute disponibilité « SANless » et de clustering d'applications > Réplication synchrone vs asynchrone : guide sur la perte de données et le basculement

Réplication synchrone vs asynchrone : guide sur la perte de données et le basculement

Evidian SafeKit

Perte de données ou non lors d'un basculement applicatif avec réplication synchrone ou asynchrone ?

Il existe une différence significative entre la réplication synchrone et la réplication asynchrone. Selon votre choix, vous pouvez subir une perte de données lors d'un basculement (failover) de l'application.

  • La réplication synchrone, telle qu'implémentée par le logiciel SafeKit, est essentielle pour le basculement d'applications transactionnelles. Avec la réplication synchrone, toutes les données validées (committed) sur le disque du serveur primaire sont également présentes sur le disque du serveur secondaire.
  • La réplication asynchrone comporte un risque de perte des données validées sur le disque du serveur primaire en cas de panne, car elles n'ont pas encore été copiées sur le serveur secondaire.
  • La réplication semi-synchrone est une solution alternative où les données validées atteignent le serveur secondaire mais ne sont pas nécessairement écrites sur son disque.

Pour vous aider à prendre la bonne décision entre réplication synchrone et asynchrone, nous expliquons ci-dessous les mécanismes techniques et l'impact sur le basculement applicatif.

Schéma comparatif de la réplication synchrone vs asynchrone montrant le risque de perte de données lors du basculement

Comment fonctionne la réplication asynchrone ?

Dans le cadre de la réplication asynchrone, le serveur primaire acquitte les opérations d'écriture immédiatement, puis met à jour les répliques plus tard par lots programmés avec un certain délai. Ce découplage permet de surmonter les problèmes de latence liés à la réplication sur longue distance, ce qui en fait une stratégie privilégiée pour les sauvegardes et la reprise après sinistre entre des sites distants.

Cependant, cette efficacité introduit un défi de cohérence, où le serveur secondaire peut détenir des informations obsolètes. Étant donné que la mise à jour du secondaire intervient après la finalisation de l'écriture sur le primaire, toute défaillance du serveur primaire entraînera la perte des données en transit (in-flight data).

Comment fonctionne la réplication synchrone ?

Avec la réplication synchrone telle qu'elle est implémentée par SafeKit, lorsqu'une opération d'E/S (I/O) disque est effectuée par l'application ou par le cache du système de fichiers sur le serveur primaire, le système garantit la cohérence des données grâce à un processus de double acquittement.

SafeKit attend l'accusé de réception de l'E/S du disque local ainsi que celui du serveur secondaire avant de renvoyer l'acquittement final à l'application ou au cache du système de fichiers. Ce mécanisme synchrone est essentiel pour le basculement d'applications transactionnelles, car il garantit que les transactions sont entièrement sécurisées sur les deux nœuds avant d'être considérées comme validées (committed).

Comment fonctionne la réplication semi-synchrone ?

La réplication semi-synchrone sert d'approche hybride pour l'intégrité des données. Comme pour la réplication synchrone, SafeKit attend un acquittement provenant à la fois du serveur primaire et du serveur secondaire avant de confirmer l'opération d'E/S à l'application ou au cache du système de fichiers.

La différence cruciale réside dans le délai de réponse du serveur secondaire. Dans le cas semi-synchrone, le serveur secondaire envoie un acquittement au primaire immédiatement après avoir reçu les données en mémoire, pour ensuite les valider sur le disque. À l'inverse, la réplication synchrone exige que le serveur secondaire écrive l'E/S sur le disque physique avant d'envoyer l'acquittement.

Verdict final : choisir la bonne réplication pour la haute disponibilité

Le choix entre réplication synchrone et asynchrone est un arbitrage entre l'intégrité absolue des données et les performances réseau. Pour les infrastructures critiques, cette décision détermine directement votre Objectif de Point de Récupération (RPO).

Résumé comparatif de la réplication

  • Réplication asynchrone : La référence pour la sauvegarde, mais pas pour la haute disponibilité. Bien qu'elle supporte la connectivité longue distance, il existe un risque inhérent de perte de données car les données du nœud secondaire accusent un retard par rapport à celles du nœud primaire.
  • Réplication synchrone : La référence pour la haute disponibilité, mais pas pour la sauvegarde. Elle garantit que les fichiers du nœud secondaire sont un clone en temps réel du primaire, garantissant un basculement sans aucune perte de données.
  • Réplication semi-synchrone : Offre un compromis haute performance pour la haute disponibilité. En confirmant les données au niveau de la mémoire avant l'écriture sur disque, elle minimise la latence tout en maintenant une protection des données supérieure aux méthodes asynchrones.

⭐ Recommandation SafeKit : Pour les applications critiques, donnez toujours la priorité à la réplication synchrone ou semi-synchrone afin de garantir la continuité d'activité, de maximiser les performances et d'éliminer les risques associés à un basculement incohérent.

Tableau comparatif : réplication synchrone vs asynchrone vs semi-synchrone

Caractéristique Synchrone Semi-synchrone Asynchrone
RPO (Perte de données potentielle) Zéro Zéro Supérieur à zéro (Perte possible : dépend de la dernière copie)
Acquittement des E/S à distance Après écriture sur le disque distant Après écriture dans la RAM distante N'attend pas d'acquittement
Impact sur la performance Nécessite un réseau à faible latence - Dépend du temps de trajet aller-retour (RTT < 2ms typique) Nécessite un réseau à faible latence - Dépend du temps de trajet aller-retour (RTT < 2ms typique) Supporte les réseaux à latence élevée
Limites de distance Local / VLAN étendu (Stretched) Local / VLAN étendu (Stretched) Réseau étendu (WAN)
Idéal pour Haute disponibilité (Basculement automatique) Haute disponibilité (Basculement automatique) Solutions de sauvegarde (Basculement manuel)

Configuration de la réplication synchrone en temps réel et de la haute disponibilité

Tutoriel SafeKit : Réplication synchrone en temps réel et gestion du basculement (8:48)

Dans cette vidéo, découvrez comment mettre en œuvre la réplication synchrone en temps réel pour garantir une perte de données nulle entre les nœuds. SafeKit simplifie la haute disponibilité en gérant automatiquement la synchronisation des données et l'IP virtuelle, assurant une redirection instantanée des services applicatifs lors d'un basculement.

Points clés de la vidéo

  1. Présentation de l'architecture : 2 nœuds avec SQL Server (0:32)
  2. Configuration du cluster et du module mirror.safe (3:58)
  3. Test de la réplication synchrone en temps réel, de la migration et du basculement sur panne (4:17)

FAQ : Stratégies de réplication dans les clusters de haute disponibilité

Technologie et mécanismes de réplication

SafeKit envoie-t-il le fichier complet sur le réseau à chaque modification ?

Non. SafeKit utilise la réplication au niveau de l'octet (byte-level). Il intercepte les modifications d'E/S spécifiques à l'intérieur des fichiers et ne réplique que les octets modifiés, minimisant ainsi le trafic réseau.

La réplication est-elle déclenchée chaque fois que l'application écrit dans ses fichiers ?

Non. La réplication n'a lieu que lorsque l'application demande une validation d'E/S (I/O commit) sur le disque local. SafeKit s'assure que ces données sont acquittées par le serveur secondaire avant de finaliser l'écriture.

La réplication synchrone ralentit-elle mon application ?

La latence est liée au temps de trajet aller-retour du réseau (RTT). Sur un réseau local (LAN), l'impact est négligeable (similaire à un stockage NAS/SAN). Sur les réseaux étendus (WAN) à latence élevée, les modes asynchrones sont souvent privilégiés pour éviter les goulots d'étranglement de performance.


Stratégie de déploiement : HA vs Sauvegarde

Quand dois-je choisir la réplication synchrone vs asynchrone ?

Choisissez le mode Synchrone pour la Haute Disponibilité (basculement automatique, zéro perte de données). Choisissez le mode Asynchrone pour la Sauvegarde/PRA lorsque la distance empêche la synchronisation en temps réel et qu'un basculement automatique n'est pas requis.

SafeKit supporte-t-il la réplication asynchrone ?

Non. SafeKit est une solution de Haute Disponibilité exigeant une perte de données nulle pour le basculement automatique. Pour des besoins purement asynchrones, orientez-vous vers des solutions de sauvegarde.

La Haute Disponibilité remplace-t-elle le besoin d'une solution de sauvegarde ?

Non, la haute disponibilité ne supprime pas la nécessité d'une solution de sauvegarde complète.

Bien que les solutions de réplication en temps réel comme SafeKit assurent une continuité d'activité constante, elles servent un objectif différent des sauvegardes. La réplication en temps réel est conçue pour protéger contre les défaillances matérielles et l'interruption des serveurs, mais elle ne peut pas protéger contre les cybermenaces comme les ransomwares qui chiffrent les deux nœuds simultanément. Seule une solution de sauvegarde avec une politique de rétention peut résoudre ce problème.

Comment puis-je combiner la réplication synchrone et asynchrone ?

Vous pouvez utiliser une architecture hybride à 3 nœuds : un cluster local de 2 nœuds avec réplication synchrone pour la HA, et une troisième copie distante via une solution de sauvegarde avec réplication asynchrone pour la reprise après sinistre (Disaster Recovery).

Pour plus d'informations, voir : SafeKit Haute Disponibilité et Reprise après Sinistre (HADR)

🔍 Hub de navigation SafeKit Haute Disponibilité

Explorez SafeKit : fonctionnalités, vidéos techniques, documentation et essai gratuit
Type de ressource Description Lien direct
Fonctionnalités clés Pourquoi choisir SafeKit pour une haute disponibilité simple et économique ? Voir pourquoi choisir SafeKit pour la Haute Disponibilité
Modèle de déploiement HA SANless tout-en-un : Cluster logiciel sans partage (Shared-Nothing) Voir SafeKit HA SANless tout-en-un
Partenaires SafeKit : La référence en haute disponibilité pour les partenaires Voir pourquoi SafeKit est la référence HA pour les partenaires
Stratégies HA SafeKit : Infrastructure (VM) vs Haute Disponibilité au niveau applicatif Voir SafeKit HA & Redondance : Niveau VM vs Niveau Applicatif
Spécifications techniques Limitations techniques pour le clustering SafeKit Voir les limitations de la Haute Disponibilité SafeKit
Preuve de concept SafeKit : Démos de configuration HA et de basculement Voir les tutoriels de basculement SafeKit
Architecture Fonctionnement du cluster miroir SafeKit (Réplication et basculement en temps réel) Voir Cluster miroir SafeKit : réplication et basculement en temps réel
Architecture Fonctionnement du cluster de ferme SafeKit (Répartition de charge réseau et basculement) Voir Cluster de ferme SafeKit : répartition de charge et basculement
Avantages concurrentiels Comparaison : SafeKit vs Clusters de Haute Disponibilité (HA) traditionnels Voir la comparaison SafeKit vs Clusters HA traditionnels
Ressources techniques SafeKit Haute Disponibilité : Documentation, téléchargements et essai Voir l'essai gratuit SafeKit HA & la documentation technique
Solutions préconfigurées Bibliothèque de modules applicatifs SafeKit : solutions HA prêtes à l'emploi Voir les modules applicatifs de Haute Disponibilité SafeKit
FAQ Questions fréquemment posées sur l'architecture, la technique et les fonctionnalités Voir la FAQ SafeKit HA