Réplication de fichiers au niveau octet vs réplication de disques au niveau bloc
Evidian SafeKit
Réplication de fichiers au niveau octet vs réplication de disques au niveau bloc dans un cluster de haute disponibilité
Aperçu
Cet article étudie les avantages et les inconvénients de la réplication de fichiers au niveau octet par rapport à la réplication de disques au niveau bloc dans un cluster de haute disponibilité. Nous examinons le volume de données répliquées, l'impact sur l'organisation des données applicatives, le temps de récupération, la simplicité de mise en œuvre.
Les tableaux comparatifs suivants détaillent la réplication de fichiers au niveau octet mise en œuvre par SafeKit, un produit logiciel de haute disponibilité.
Qu'est-ce que la réplication de fichiers au niveau octet ?
La réplication de fichiers au niveau octet (comme avec SafeKit) signifie que seules les modifications à l'intérieur des fichiers sont répliquées.
La réplication synchrone est requise dans un cluster de haute disponibilité pour avoir 0 perte de données en cas de défaillance. La réplication asynchrone est destinée aux solutions de sauvegarde.
Le volume de données répliquées est réduit aux informations modifiées par les applications à l'intérieur de leurs fichiers. Aucune donnée supplémentaire n'est répliquée.
Il n'y a pas d'impact sur l'organisation des données d'une application. Par exemple, si une application a ses données sur le disque système, la réplication de fichiers au niveau octet fonctionne.
Le temps de récupération (RTO) en cas de basculement est réduit au temps de redémarrage de l'application sur les fichiers répliqués du serveur secondaire.
Enfin, la solution est très simple à configurer puisque seuls les chemins des répertoires à répliquer sont configurés.
Qu'est-ce que la réplication de disques au niveau bloc ?
La réplication de disques au niveau bloc (comme avec DRBD) signifie que seules les modifications à l'intérieur d'un disque sont répliquées.
Le volume de données répliquées n'est pas réduit aux informations modifiées par les applications. Des données supplémentaires sont répliquées comme les métadonnées de gestion du disque (liste des blocs libres, informations internes au système de fichiers).
Il y a un fort impact sur l'organisation des données applicatives. Toutes les données doivent être localisées sur le disque répliqué. A minima, cela nécessite une reconfiguration de l'application. Ou alors, c'est impossible si certaines données à répliquer se trouvent dans le disque système, car ce disque doit rester propre à chaque serveur.
Le temps de récupération (RTO) augmente avec la procédure de récupération du système de fichiers sur le disque répliqué après un basculement.
Enfin, la solution n'est pas facile à configurer car des compétences sont nécessaires pour configurer un disque spécial avec un système de fichiers. De plus, des compétences applicatives sont requises pour configurer les données de l'application dans le disque répliqué.
Avantages et inconvénients de la réplication de fichiers au niveau octet par rapport à la réplication de disques au niveau bloc
Cluster avec réplication de fichiers au niveau octet | Cluster avec réplication de disques au niveau bloc |
Produit | |
SafeKit sous Windows et Linux | Produits de réplication de disques comme DRBD |
Organisation des données de l'application | |
0 impact sur l'organisation des données de l'application avec SafeKit.
Il suffit de définir les répertoires à répliquer en temps réel. Même des répertoires dans le disque système peuvent être répliqués. |
Impact sur l'organisation des données de l'application.
Configuration spéciale de l'application pour mettre ses données sur un disque répliqué. Les données du disque système ne peuvent pas être répliquées. |
Réplication de données | |
Réplication de fichiers en temps réel synchrone au niveau octet.
Réplication de données temps réel et continue suivant l'activité d'écriture générée par l'application. Aucune métadonnée n'est répliquée. Seules les données modifiées à l'intérieur des fichiers sont répliquées et pas les fichiers dans leur totalité (réplication de fichiers au niveau octet). Réplication synchrone pour éviter la perte de données en cas de panne |
Réplication de disques au niveau bloc.
Réplique toutes les données modifiées dans le disque répliqué. Les données applicatives et les métadonnées sont répliquées. Par exemple, l'heure du dernier accès à un fichier est répliquée (l'heure du dernier accès est modifiée chaque fois que le fichier est lu). |
Complexité du déploiement | |
Non - installer un logiciel sur 2 serveurs | Oui - nécessite des compétences informatiques spécifiques pour la configuration du système d'exploitation et du disque répliqué |
Basculement | |
Redémarrer simplement l'application sur le deuxième serveur | Remonter le système de fichiers du disque répliqué.
Passer la procédure de récupération sur le système de fichiers. Et enfin redémarrer l'application |
Réintégration d'un serveur dans le cluster | |
Réintégration automatique.
Resynchronisation des données sur le serveur secondaire sans arrêter l'application sur le serveur principal. Pas de basculement d'application tant que les données ne sont pas resynchronisées. |
Tous les produits ne sont pas au même niveau de fonctionnalité. |
Quorum et split brain | |
Application exécutée sur un serveur unique après une isolation de réseau (split brain).
Cohérence des données après un split brain. Pas besoin d'une troisième machine, d'un disque de quorum ou d'une voie de heartbeat spéciale pour le split brain. Plus d'informations sur les heartbeats, le failover et le quorum |
Requiert un disque de quorum spécial ou un troisième serveur de quorum pour gérer le split brain |
Convient pour | |
Les éditeurs de logiciels qui souhaitent ajouter une option de haute disponibilité simple pour leur application | Les entreprises possédant des compétences en informatique dans le clustering |
Cluster miroir d'Evidian SafeKit avec réplication de fichiers temps réel et reprise sur panne |
|
Économisez avec 3 produits en 1 |
|
Configuration très simple |
|
Réplication synchrone |
|
Retour d'un serveur tombé en panne totalement automatisé (failback) |
|
Réplication de n'importe quel type de données |
|
Réplication de fichiers vs réplication de disque |
|
Réplication de fichiers vs disque partagé |
|
Sites distants et adresse IP virtuelle |
|
Split brain et quorum En savoir plus > |
|
Cluster actif/actif |
|
Solution de haute disponibilité uniforme |
|
|
|
Cluster ferme d'Evidian SafeKit avec load balancing et reprise sur panne |
|
Pas de load balancer, ni de serveur proxy dédié, ni d'adresse Ethernet multicast spéciale En savoir plus > |
|
Toutes les fonctionnalités de clustering En savoir plus > |
|
Sites distants et adresse IP virtuelle En savoir plus > |
|
Solution de haute disponibilité uniforme En savoir plus > |
|
|
|
Cluster de type "shared nothing"" vs cluster à disque partagé |
|
|
|
|
|
Haute disponibilité vs tolérance aux fautes |
|
|
|
Réplication synchrone vs réplication asynchrone |
|
|
|
Réplication de fichiers au niveau octet vs réplication de disque au niveau du bloc |
|
|
|
Heartbeat, reprise sur panne et quorum pour éviter 2 serveurs maîtres |
|
|
|
|
|
Partenaires, le succès avec SafeKit
Cette solution indépendante de la plateforme est idéale pour un partenaire revendant une application critique et qui souhaite proposer une option de redondance et de haute disponibilité simple à déployer auprès de nombreux clients.
Avec de nombreuses références dans de nombreux pays gagnées par des partenaires, SafeKit s'est avéré être la solution la plus simple à mettre en œuvre pour la redondance et la haute disponibilité des logiciels de gestion des bâtiments, vidéosurveillance, contrôle d'accès, systèmes SCADA...
Etape 1. Réplication en temps réel
Le serveur 1 (PRIM) exécute l'application. Les utilisateurs sont connectés à une adresse IP virtuelle. Seules les modifications faites par l'application à l'intérieur des fichiers sont répliquées en continue à travers le réseau.
La réplication est synchrone sans perte de données en cas de panne contrairement à une réplication asynchrone.
Il vous suffit de configurer les noms des répertoires à répliquer dans SafeKit. Il n'y a pas de pré-requis sur l'organisation du disque. Les répertoires peuvent se trouver sur le disque système.
Etape 2. Basculement automatique
Lorsque le serveur 1 est défaillant, SafeKit bascule l'adresse IP virtuelle sur le serveur 2 et redémarre automatiquement l'application. L'application retrouve les fichiers répliqués à jour sur le serveur 2.
L'application poursuit son exécution sur le serveur 2 en modifiant localement ses fichiers qui ne sont plus répliqués vers le serveur 1.
Le temps de basculement est égal au temps de détection de la panne (30 secondes par défaut) et au temps de relance de l'application.
Etape 3. Réintégration après panne
A la reprise après panne du serveur 1 (réintégration du serveur 1), SafeKit resynchronise automatiquement les fichiers de ce serveur à partir de l'autre serveur.
Seuls les fichiers modifiés sur le serveur 2 pendant l'inactivité du serveur 1 sont resynchronisés.
La réintégration du serveur 1 se fait sans arrêter l'exécution de l'application sur le serveur 2.
Etape 4. Retour à la normale
Après la réintégration, les fichiers sont à nouveau en mode miroir comme à l'étape 1. Le système est en haute disponibilité avec l'application qui s'exécute sur le serveur 2 et avec réplication temps réel des modifications vers le serveur 1.
Si l'administrateur souhaite que son application s'exécute en priorité sur le serveur 1, il peut exécuter une commande de basculement, soit manuellement à un moment opportun, soit automatiquement par configuration.
Plus d'information sur une coupure de courant et un isolement du réseau dans un cluster.
Pourquoi une réplication de quelques Tera-octets ?
Temps de resynchronisation après panne (étape 3)
- Réseau 1 Gb/s ≈ 3 heures pour 1 téraoctet.
- Réseau 10 Gb/s ≈ 1 heure pour 1 téraoctet ou moins en fonction des performances d'écriture disque.
Alternative
- Pour un grand volume de données, utilisez un stockage partagé externe.
- Plus cher, plus complexe.
Pourquoi une réplication < 1 000 000 fichiers ?
- Performance du temps de resynchronisation après panne (étape 3).
- Temps pour vérifier chaque fichier entre les deux nœuds.
Alternative
- Placez les nombreux fichiers à répliquer sur un disque dur virtuel / une machine virtuelle.
- Seuls les fichiers représentant le disque dur virtuel / la machine virtuelle seront répliqués et resynchronisés dans ce cas.
Pourquoi un basculement ≤ 32 VMs répliquées ?
- Chaque VM s'exécute dans un module miroir indépendant.
- Maximum de 32 modules miroir exécutés sur le même cluster.
Alternative
- Utilisez un stockage partagé externe et une autre solution de clustering de VMs.
- Plus cher, plus complexe.
Pourquoi un réseau LAN/VLAN entre sites distants ?
- Basculement automatique de l'adresse IP virtuelle avec 2 nœuds dans le même sous-réseau.
- Bonne bande passante pour la resynchronisation (étape 3) et bonne latence pour la réplication synchrone (typiquement un aller-retour de moins de 2 ms).
Alternative
- Utilisez un équilibreur de charge pour l'adresse IP virtuelle si les 2 nœuds sont dans 2 sous-réseaux (supporté par SafeKit, notamment dans le cloud).
- Utilisez des solutions de backup avec réplication asynchrone pour un réseau à latence élevée.
Cluster miroir d'Evidian SafeKit avec réplication de fichiers temps réel et reprise sur panne |
|
Économisez avec 3 produits en 1 |
|
Configuration très simple |
|
Réplication synchrone |
|
Retour d'un serveur tombé en panne totalement automatisé (failback) |
|
Réplication de n'importe quel type de données |
|
Réplication de fichiers vs réplication de disque |
|
Réplication de fichiers vs disque partagé |
|
Sites distants et adresse IP virtuelle |
|
Split brain et quorum En savoir plus > |
|
Cluster actif/actif |
|
Solution de haute disponibilité uniforme |
|
|
|
Cluster ferme d'Evidian SafeKit avec load balancing et reprise sur panne |
|
Pas de load balancer, ni de serveur proxy dédié, ni d'adresse Ethernet multicast spéciale En savoir plus > |
|
Toutes les fonctionnalités de clustering En savoir plus > |
|
Sites distants et adresse IP virtuelle En savoir plus > |
|
Solution de haute disponibilité uniforme En savoir plus > |
|
|
|
Cluster de type "shared nothing"" vs cluster à disque partagé |
|
|
|
|
|
Haute disponibilité vs tolérance aux fautes |
|
|
|
Réplication synchrone vs réplication asynchrone |
|
|
|
Réplication de fichiers au niveau octet vs réplication de disque au niveau du bloc |
|
|
|
Heartbeat, reprise sur panne et quorum pour éviter 2 serveurs maîtres |
|
|
|
|
|
Partage de charge réseau et reprise sur panne |
|
Windows farm |
Linux farm |
Generic farm > | Generic farm > |
Microsoft IIS > | - |
NGINX > | |
Apache > | |
Amazon AWS farm > | |
Microsoft Azure farm > | |
Google GCP farm > | |
Other cloud > |
Architectures de clustering avancée
Plusieurs modules peuvent être déployés dans le même cluster. Ainsi, des architectures de clustering avancées peuvent être mises en œuvre :
- un cluster qui mixte ferme et miroir avec le déploiement d’un module ferme et d’un module miroir dans le même cluster,
- un cluster actif/actif avec réplication en déployant plusieurs modules miroirs sur 2 serveurs,
- un cluster Hyper-V ou un cluster KVM avec réplication temps réel et reprise de machines virtuelles complètes entre 2 hyperviseurs actifs,
- un cluster N-1 avec le déploiement de N modules miroirs sur N+1 serveurs.
Réplication de fichiers temps réel et reprise sur panne |
|||||||||||||||||||||||||||||||
Windows mirror |
Linux mirror |
||||||||||||||||||||||||||||||
Generic mirror > | Generic mirror > | ||||||||||||||||||||||||||||||
Microsoft SQL Server > | - | ||||||||||||||||||||||||||||||
Oracle > | |||||||||||||||||||||||||||||||
MariaDB > | |||||||||||||||||||||||||||||||
MySQL > | |||||||||||||||||||||||||||||||
PostgreSQL > | |||||||||||||||||||||||||||||||
Firebird > | |||||||||||||||||||||||||||||||
Windows Hyper-V > | Linux KVM > | ||||||||||||||||||||||||||||||
- | Docker > Podman > Kubernetes K3S > |
||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||
- | Elasticsearch > | ||||||||||||||||||||||||||||||
Milestone XProtect > | - | ||||||||||||||||||||||||||||||
Genetec SQL Server > | - | ||||||||||||||||||||||||||||||
Hanwha Vision > Hanwha Wisenet > |
- | ||||||||||||||||||||||||||||||
Nedap AEOS > | - | ||||||||||||||||||||||||||||||
Siemens SIMATIC WinCC > Siemens SIMATIC PCS 7 > Siemens Desigo CC > Siemens Siveillance suite > Siemens Siveillance VMS > Siemens SiPass > Siemens SIPORT > |
- | ||||||||||||||||||||||||||||||
Bosch AMS > Bosch BIS > Bosch BVMS > |
- | ||||||||||||||||||||||||||||||
Amazon AWS mirror > | |||||||||||||||||||||||||||||||
Microsoft Azure mirror > | |||||||||||||||||||||||||||||||
Google GCP mirror > | |||||||||||||||||||||||||||||||
Other cloud > |
Evidian SafeKit 8.2
Toutes les nouvelles fonctionnalités par rapport à la SafeKit 7.5 décrites dans le release notes
Packages
- Windows (with Microsoft Visual C++ Redistributable)
- Windows (without Microsoft Visual C++ Redistributable)
- Linux
- OS supportés et derniers fixes
Licence d'essai gratuit d'un mois
Documentation technique
Training
Information produit
Introduction
-
- Demonstration
- Examples of redundancy and high availability solution
- Evidian SafeKit sold in many different countries with Milestone
- 2 solutions: virtual machine or application cluster
- Distinctive advantages
- More information on the web site
- SafeKit training
-
- Cluster of virtual machines
- Mirror cluster
- Farm cluster
Installation, Console, CLI
- Install and setup / pptx
- Package installation
- Nodes setup
- Upgrade
- Web console / pptx
- Configuration of the cluster
- Configuration of a new module
- Advanced usage
- Securing the web console
- Command line / pptx
- Configure the SafeKit cluster
- Configure a SafeKit module
- Control and monitor
Advanced configuration
- Mirror module / pptx
- start_prim / stop_prim scripts
- userconfig.xml
- Heartbeat (<hearbeat>)
- Virtual IP address (<vip>)
- Real-time file replication (<rfs>)
- How real-time file replication works?
- Mirror's states in action
- Farm module / pptx
- start_both / stop_both scripts
- userconfig.xml
- Farm heartbeats (<farm>)
- Virtual IP address (<vip>)
- Farm's states in action
Troubleshooting
- Troubleshooting / pptx
- Analyze yourself the logs
- Take snapshots for support
- Boot / shutdown
- Web console / Command lines
- Mirror / Farm / Checkers
- Running an application without SafeKit
Support
- Evidian support / pptx
- Get permanent license key
- Register on support.evidian.com
- Call desk