
Introduction
Des erreurs catastrophiques peuvent arriver dans le monde des systèmes distribués. Imagine que tu supprimes par erreur tout un tas de clusters de ton infrastructure blockchain. Ce genre d'incident peut avoir des conséquences désastreuses.
Le meilleur moyen d'éviter ce genre de désastre, c'est de garder des réserves de données appropriées. Quand on a affaire à des cadres blockchain d'entreprise dans des cadres d'orchestration de conteneurs, il est super important d'avoir des données en réserve, surtout quand on met en place une stratégie de sauvegarde blockchain Kubernetes et une stratégie de sauvegarde d'orchestration de conteneurs fiable.
La combinaison de ces technologies offre une plateforme puissante et super sécurisée pour traiter les transactions blockchain. Le cadre lui-même est une solution open source gérée par la communauté qui propose une plateforme pour toutes les implémentations liées aux registres distribués.
Ce cadre présente de gros avantages, comme une bonne performance et une bonne évolutivité. Il offre un haut niveau de confiance entre les participants dont l'identité est connue et permet des requêtes riches sur un registre immuable.
Ce guide te donne toutes les infos sur la sauvegarde et la récupération de la blockchain, pour protéger et récupérer sans problème les données sur les réseaux blockchain qui tournent dans des environnements conteneurisés, y compris les scénarios de reprise après sinistre Hyperledger Fabric.
Comprendre pourquoi les réserves de données sont importantes, c'est la base de ce processus.
Pourquoi les réserves de données sont super importantes
La création de réserves de données n'est pas facultative, mais obligatoire pour plusieurs raisons importantes.
Fiabilité du système
Avoir des réserves de données permet aux équipes de bosser avec plus de confiance. Quand on utilise un stockage basé sur le cloud pour les sauvegardes, un niveau de sécurité supplémentaire empêche différentes formes de perte de données causées par :
- •Catastrophes naturelles
- •Erreur humaine
- •Attaques malveillantes
Par exemple, si des erreurs se produisent lors du redémarrage ou du plantage d'un pod sur la configuration correcte du chemin de montage pour une application dans la spécification de déploiement, la perte de données est inévitable sans sauvegardes appropriées.
Robustesse du système
Les réserves de données aident à rendre les applications plus solides en cas de plantages ou d'erreurs imprévus. Les membres de l'équipe peuvent parfois effacer des volumes par accident pendant les opérations normales. Avoir des réserves permet de restaurer les applications à leur état le plus récent, ce qui réduit les temps d'arrêt et les pertes de données.
Protection et respect des normes
Avoir des réserves aide à améliorer la sécurité globale des applications et garantit la conformité aux normes de l'industrie en protégeant contre les incidents imprévus de corruption des données et les attaques malveillantes. C'est super important dans les industries réglementées où les normes d'intégrité des données sont élevées.
Modifications de l'infrastructure
Les réserves de données facilitent la navigation à travers les modifications de l'infrastructure. Quand on migre des réseaux blockchain vers différents fournisseurs de cloud, il peut être nécessaire d'utiliser différents mécanismes de stockage pour réduire les coûts. Avoir des sauvegardes complètes rend ces transitions fluides et sans risque.
Mise en œuvre du réseau
Ce guide part du principe qu'il y a déjà un réseau blockchain sur une plateforme d'orchestration de conteneurs avec des espaces de noms dédiés pour chaque organisation où tous ses services fonctionnent.
La configuration du réseau doit avoir un espace de noms pour chaque organisation, et chaque espace de noms doit avoir certains types de déploiements.
Chaque espace de noms organisationnel aura généralement :
- •Certains nœuds pairs
- •Bases de données Ledger
- •Serveurs d'autorité de certification pour les organisations qui doivent enregistrer de nouvelles identités
- •Bases de données des serveurs d'autorités de certification
- •Nœuds de service de commande pour les organisations qui contribuent au service de commande
Persistance des données dans les environnements de conteneurs
Les applications avec état doivent stocker et récupérer des données pour bien marcher. L'application peut gérer ça toute seule ou déléguer tout ou partie de cette tâche à une autre application avec état, comme une base de données.
Au final, tout est stocké sous forme de fichiers ou de dossiers. Ces applications sont généralement configurées pour utiliser certains chemins d'accès aux fichiers sur lesquels elles stockent des données persistantes.
Les déploiements de conteneurs servent à assurer la persistance des données de la blockchain en combinant :
- •Montages de volumes persistants avec des volumes persistants
- •Cartes de configuration
- •Sécurisez les objets de stockage.
Les données sensibles, comme les clés cryptographiques et les certificats, sont montées comme des objets de stockage sécurisés. Les données de configuration, comme les fichiers de spécifications, sont montées comme des cartes de configuration.
Ça veut dire que les fichiers et dossiers qu'on trouve dans tous les chemins de montage des revendications de volume persistant, les objets de stockage sécurisé et les mappages de configuration forment l'ensemble complet des données pour ce déploiement.
Protégez votre infrastructure blockchain dès aujourd'hui
Mettez en place des stratégies de sauvegarde complètes pour protéger vos données blockchain et assurer la continuité de vos activités.
Organisation des données des nœuds pairs
Les nœuds pairs stockent certaines données localement à des emplacements par défaut et délèguent le reste des données à des bases de données de registres.
Le dossier Transport Layer Security contient le certificat et la paire de clés pour le nœud pair.
Le dossier de configuration du tissu contient des fichiers de spécifications avec la configuration utilisée quand le pair a été lancé.
Le dossier du fournisseur de services d'adhésion contient les infos d'adhésion des pairs, le certificat et la clé d'inscription, ainsi que la chaîne de certificats provenant du serveur de l'autorité de certification.
Le dossier « admin membership service provider » contient les identifiants de l'administrateur.
Le dossier production contient des parties des données du grand livre, notamment :
- •La blockchain elle-même
- •Données installées sur le chaincode et le cycle de vie
- •Stockage de données privées
- •Magasins transitoires inclus lors de la soumission de la transaction
Organisation des données du service de commande
Les nœuds de service de commande stockent la plupart des données localement à des emplacements par défaut. Plusieurs dossiers sont similaires à ceux des nœuds pairs, mais ceux-ci sont utilisés pour contenir :
- •Commander des infos sur l'adhésion au service
- •Certificat de sécurité de la couche transport et paires de clés
- •Certificat d'inscription et paires de clés
Le dossier ledger stocke les chaînes dont fait partie ce service de commande et les opérations en attente.
Le dossier production contient les fichiers spécifiques à un algorithme de consensus et à des instantanés particuliers.
Organisation des données du serveur de l'autorité de certification
Les serveurs d'autorité de certification stockent certaines données localement à des emplacements par défaut et le reste dans les bases de données des serveurs d'autorité de certification.
Le dossier « fabric certificate authority » contient :
- •Certificats de serveur
- •Certificats de sécurité de la couche transport
- •Les fichiers de configuration utilisés au démarrage du service
Lors de la restauration, vous pouvez conserver et utiliser les nouveaux certificats de sécurité de la couche de transport et le fichier de configuration du serveur pour l'autorité de certification, car ils représentent les dernières modifications apportées au profil, mais remplacez le contenu restant, tel que les certificats d'inscription, par le contenu du cluster précédent.
Stratégies pour la conservation des données
D'abord, assurez-vous de garder les objets de stockage sécurisés et les cartes de configuration. Il y a plusieurs façons de sauvegarder les données qui sont dans les volumes.
Une méthode consiste à prendre des instantanés des volumes utilisés par ces services. Une autre méthode consiste à utiliser des services ou des outils spécialisés spécialement conçus à cet effet, avec différentes fonctionnalités et capacités.
Choisis la bonne stratégie de conservation en fonction de tes besoins et du contexte. Certaines approches peuvent faciliter la migration des charges de travail entre les clusters, d'autres non.
Procédures de récupération des données
La stratégie de récupération dépend de la stratégie de conservation mise en place. Regarde la documentation de restauration qui va avec la méthode que tu as choisie.
Commence par recréer les objets de stockage sécurisés et les cartes de configuration à partir des données conservées. Ensuite, mets les services en veille et copie les données conservées dans le pod.
Répétez ce processus pour tous les services dans tous les espaces de noms, en prenant soin de restaurer les données normalement montées.
Commence par lancer les services indépendants comme les bases de données du grand livre et les bases de données du serveur d'autorité de certification, puis passe au reste des services. Cette approche par étapes permet de s'assurer que les dépendances sont satisfaites avant de démarrer les services dépendants.
Vérifier la cohérence de la conservation
Les réseaux blockchain sont des systèmes distribués, donc les processus de sauvegarde et de restauration posent des problèmes de cohérence des données.
À tout moment, la hauteur de la blockchain au niveau des nœuds pairs peut varier pour plein de raisons, notamment :
- •La vitesse du réseau
- •Proximité géographique
- •Le type de nœud pair
Les nœuds pairs leaders sont les premiers à recevoir les blocs du service de classement, donc ils peuvent valider les blocs en premier. Certains nœuds pairs peuvent avoir des plantages internes dont ils se remettent en répétant les étapes, ce qui fait qu'ils valident les blocs plus tard que les autres.
Il y a deux façons de gérer ça. D'abord, crée une fenêtre sans transaction où aucune transaction n'est envoyée au réseau. Ensuite, vérifie l'état du registre sur la blockchain à l'aide des commandes de l'interface de ligne de commande peer pour t'assurer que tous les nœuds peer sont au même niveau avant de commencer le processus de conservation.
Après avoir restauré les données, refais la vérification pour être sûr que tout s'est bien passé. Regarde les journaux des pairs et des services de commande pour vérifier que tout marche comme il faut.
Cette étape de vérification est super importante pour s'assurer que le réseau restauré fonctionne exactement comme le réseau d'origine avant la sauvegarde.
Dernières réflexions
Ce guide explique comment et où les réseaux blockchain sur les plateformes d'orchestration de conteneurs stockent les données, les avantages de la conservation des données et comment restaurer ou migrer des réseaux, ainsi que les tests de vérification pour garantir le succès.
Ce processus demande une planification et une exécution minutieuses. Il est super important de bien comprendre comment les données sont organisées dans les différents types de nœuds pour réussir à les conserver et à les récupérer.
Chaque composant stocke les données d'une manière différente et les approches globales de la conservation doivent tenir compte de toutes ces variations.
La récupération, c'est pas juste copier des fichiers à leur emplacement d'origine. Ça demande un séquençage soigné, qui commence par les services indépendants et passe ensuite aux services dépendants.
La nature distribuée des réseaux blockchain ajoute une certaine complexité et implique que des étapes de vérification supplémentaires doivent être effectuées pour s'assurer que tous les nœuds sont synchronisés après la récupération.
La nature distribuée des réseaux Blockchain rend les choses plus compliquées, et on doit avoir des procédures de conservation et de récupération solides pour assurer la continuité des activités et protéger les précieuses données blockchain en cas de :
- •Suppressions accidentelles
- •Migrations d'infrastructure
- •Scénarios de reprise après sinistre
Il est tout aussi important de tester régulièrement ces procédures pour s'assurer qu'elles fonctionnent correctement quand on en a vraiment besoin.


