Comment configurer DRBD pour reproduire le stockage sur deux serveurs CentOS 7
- 1686
- 96
- Zoe Dupuis
Le Dbd (représente Appareil de bloc répliqué distribué) est une solution de stockage répliquée distribuée, flexible et polyvalente pour Linux. Il reflète le contenu de dispositifs de bloc tels que des disques durs, des partitions, des volumes logiques, etc. Entre les serveurs. Il implique une copie de données sur deux périphériques de stockage, de sorte que si l'un échoue, les données de l'autre peuvent être utilisées.
Vous pouvez y penser un peu comme une configuration RAID RAID 1 avec les disques reflétés sur les serveurs. Cependant, il fonctionne d'une manière très différente de Raid et même de Raid Network.
Initialement, Dbd a été principalement utilisé dans les grappes d'ordinateurs de haute disponibilité (HA), cependant, en commençant par la version 9, il peut être utilisé pour déployer des solutions de stockage cloud.
Dans cet article, nous montrerons comment installer DRBD dans CentOS et montrer brièvement comment l'utiliser pour reproduire le stockage (partition) sur deux serveurs. Ceci est l'article parfait pour démarrer avec l'utilisation de DRBD dans Linux.
Environnement de test
Aux fins de cet article, nous utilisons deux nœuds pour cette configuration.
- Node1: 192.168.56.101 - Tecmint.Tecmint.lan
- Node2: 192.168.56.102 - Server1.Tecmint.lan
Étape 1: Installation des packages DRBD
Dbd est implémenté comme un module de noyau Linux. Il constitue précisément un pilote pour un dispositif de bloc virtuel, il est donc établi juste au bas de la pile d'E / S d'un système.
Dbd peut être installé à partir du Elrépo ou Epel référentiels. Commençons par importer la clé de signature du package Elrepo et activez le référentiel comme indiqué sur les deux nœuds.
# RPM --Import https: // www.elrépo.org / rpm-gpg-key-elrepo.org # rpm -uvh http: // www.elrépo.org / elrepo-release-7.0-3.EL7.elrépo.noarch.RPM
Ensuite, nous pouvons installer le module du noyau DRBD et les utilitaires sur les deux nœuds en fonctionnant:
# yum install -y kmod-drbd84 drbd84-utils
Si tu as Selinux Activé, vous devez modifier les politiques pour exempter les processus DRBD du contrôle SELINUX.
# SEMANAGE Permissive -a DRBD_T
De plus, si votre système a un pare-feu activé (Firewalld), vous devez ajouter le Dbd port 7789 dans le pare-feu pour permettre la synchronisation des données entre les deux nœuds.
Exécutez ces commandes sur le premier nœud:
# Firewall-Cmd - Permanent --Add-Rich-Rule = 'Rule Family = "IPv4" Source Address = "192.168.56.102 "port port =" 7789 "protocole =" TCP "accepter '# # Firewall-Cmd - Reload
Ensuite, exécutez ces commandes sur le deuxième nœud:
# Firewall-Cmd - Permanent --Add-Rich-Rule = 'Rule Family = "IPv4" Source Address = "192.168.56.101 "port port =" 7789 "protocole =" TCP "accepter '# # Firewall-Cmd - Reload
Étape 2: Préparation du stockage de niveau inférieur
Maintenant que nous avons Dbd Installé sur les deux nœuds de cluster, nous devons préparer une zone de stockage de taille approfondie sur les deux nœuds. Il peut s'agir d'une partition de disque dur (ou d'un disque dur physique complet), d'un dispositif de raid logiciel, d'un volume logique LVM ou d'un tout autre type de périphérique de bloc trouvé sur votre système.
Aux fins de cet article, nous créerons un dispositif de bloc facturé de taille 2 Go en utilisant le Commande DD.
# dd if = / dev / zéro de = / dev / sdb1 bs = 2024k count = 1024
Nous supposerons qu'il s'agit d'une partition inutilisée (/ dev / sdb1) sur un deuxième périphérique de bloc (/ dev / sdb) attaché aux deux nœuds.
Étape 3: Configuration de DRBD
Le fichier de configuration principal de DRBD est situé à / etc / drbd.confli et des fichiers de configuration supplémentaires peuvent être trouvés dans le / etc / drbd.d annuaire.
Pour reproduire le stockage, nous devons ajouter les configurations nécessaires dans le / etc / drbd.d / global_common.confli fichier qui contient les sections globales et communes de la configuration DRBD et nous pouvons définir des ressources en .res des dossiers.
Faisons une sauvegarde du fichier d'origine sur les deux nœuds, puis ouvrons un nouveau fichier pour l'édition (utilisez un éditeur de texte de votre goût).
# mv / etc / drbd.d / global_common.conf / etc / drbd.d / global_common.confli.orig # vim / etc / drbd.d / global_common.confli
Ajoutez les lignes suivantes dans les deux fichiers:
Global Utilisation-Count OUI; commun net protocole c;
Enregistrez le fichier, puis fermez l'éditeur.
Assormions brièvement plus de lumière sur la ligne protocole C. DRBD prend en charge trois modes de réplication distincts (donc trois degrés de synchronicité de réplication) qui sont:
- protocole a: Protocole de réplication asynchrone; il est le plus souvent utilisé dans les scénarios de réplication à longue distance.
- Protocole B: Protocole de réplication semi-synchrone AKA Protocole synchrone de mémoire.
- protocole C: couramment utilisé pour les nœuds dans de courts réseaux éloignés; C'est de loin le protocole de réplication le plus utilisé dans les configurations DRBD.
Important: Le choix du protocole de réplication influence deux facteurs de votre déploiement: protection et latence. Et débit, En revanche, est largement indépendant du protocole de réplication sélectionné.
Étape 4: Ajout d'une ressource
UN Ressource est le terme collectif qui fait référence à tous les aspects d'un ensemble de données répliquées particulier. Nous définirons notre ressource dans un fichier appelé / etc / drbd.d / test.res.
Ajoutez le contenu suivant dans le fichier, sur les deux nœuds (n'oubliez pas de remplacer les variables du contenu par les valeurs réelles de votre environnement).
Prenez note du noms d'hôtes, Nous devons spécifier le nom d'hôte réseau qui peut être obtenu en exécutant la commande uname -n.
Test de ressources sur Tecmint.Tecmint.lan device / dev / drbd0; disque / dev / sdb1; Méta-disque interne; Adresse 192.168.56.101: 7789; sur Server1.Tecmint.lan device / dev / drbd0; disque / dev / sdb1; Méta-disque interne; Adresse 192.168.56.102: 7789;
où:
- sur le nom d'hôte: les états de section ON qui hébergent les instructions de configuration ci-jointes s'appliquent à.
- test: est le nom de la nouvelle ressource.
- périphérique / dev / drbd0: Spécifie le nouveau périphérique de bloc virtuel géré par DRBD.
- disque / dev / sdb1: La partition du périphérique de bloc est-elle le périphérique de support pour le périphérique DRBD.
- méta-disque: Définit où DRBD stocke ses métadonnées. L'utilisation interne signifie que DRBD stocke ses méta-données sur le même appareil de niveau inférieur physique que les données de production réelles.
- adresse: Spécifie l'adresse IP et le numéro de port du nœud respectif.
Notez également que si les options ont des valeurs égales sur les deux hôtes, vous pouvez les spécifier directement dans la section des ressources.
Par exemple, la configuration ci-dessus peut être restructurée à:
Resource Test Device / Dev / Drbd0; disque / dev / sdb1; Méta-disque interne; sur Tecmint.Tecmint.lan adresse 192.168.56.101: 7789; sur Server1.Tecmint.lan adresse 192.168.56.102: 7789;
Étape 5: Initialisation et activité de ressources
Interagir avec Dbd, Nous utiliserons les outils d'administration suivants qui communiquent avec le module du noyau afin de configurer et d'administrer des ressources DRBD:
- drbdadm: un outil d'administration de haut niveau du DRBD.
- drbdsetup: Un outil d'administration de niveau inférieur pour fixer les périphériques DRBD avec leurs appareils de blocage de support, pour configurer des paires de périphériques DRBD pour refléter leurs périphériques de blocage de support, et pour inspecter la configuration de l'exécution de périphériques DRBD.
- Drbdmeta: est l'outil de gestion des méta-données.
Après avoir ajouté toutes les configurations de ressources initiales, nous devons afficher la ressource sur les deux nœuds.
# DRBDADM Create-MD TestInitialiser le stockage des méta-données
Ensuite, nous devons activer le Ressource, qui fixera la ressource avec son périphérique de support, puis il définit les paramètres de réplication et connecte la ressource à son pair:
# Test UP DRBDADM
Maintenant, si vous exécutez la commande LSBLK, vous remarquerez que le périphérique / volume DRBD drbd0 est associé au dispositif de support / dev / sdb1:
# lsblkRépertorier les appareils de blocage
Pour désactiver la ressource, exécutez:
# DRBDADM Test Down
Pour vérifier l'état des ressources, exécutez la commande suivante (notez que le Incohérent / incohérent L'état de disque est attendu à ce stade):
# Test d'état DRBDADM ou # Test d'état DRBDSetUp --verbose --statistics # pour un statut plus détailléVérifiez l'état des ressources sur les nœuds
Étape 6: Définissez la ressource primaire / source de synchronisation initiale du dispositif
À ce stade, Dbd est maintenant prêt pour l'opération. Nous devons maintenant lui dire quel nœud doit être utilisé comme source de synchronisation initiale du dispositif.
Exécutez la commande suivante sur un seul nœud pour démarrer la synchronisation complète initiale:
# DRBDADM Primary - Test de force # Test d'état DRBDADMDéfinir le nœud primaire pour l'appareil initial
Une fois la synchronisation terminée, l'état des deux disques doit être À jour.
Étape 7: Tester la configuration DRBD
Enfin, nous devons tester si le périphérique DRBD fonctionnera bien pour le stockage de données répliquées. N'oubliez pas que nous avons utilisé un volume de disque vide, nous devons donc créer un système de fichiers sur l'appareil et le monter pour tester si nous pouvons l'utiliser pour le stockage de données répliquées.
Nous pouvons créer un système de fichiers sur l'appareil avec la commande suivante, sur le nœud où nous avons commencé la synchronisation complète initiale (qui a la ressource avec un rôle principal):
# MKFS -T EXT4 / DEV / DRBD0Faire du système de fichiers sur le volume DRBD
Puis montez-le comme indiqué (vous pouvez donner au point de montage un nom approprié):
# mkdir -p / mnt / drdb_pri / # mont / dev / drbd0 / mnt / drdb_pri /
Copiez ou créez maintenant des fichiers dans le point de montage ci-dessus et faites une longue liste à l'aide de la commande LS:
# cd / mnt / drdb_pri / # ls -lÉnumérez le contenu du volume primaire DRBD
Suivant, déboucher L'appareil (assurez-vous que le support n'est pas ouvert, modifiez le répertoire après le non-respect pour éviter toute erreur) et modifier le rôle du nœud de primaire pour secondaire:
# umount / mnt / drdb_pri / # CD # Test secondaire DRBDADM
Sur l'autre nœud (qui a la ressource avec un rôle secondaire), faites-le principalement, puis montez l'appareil dessus et effectuez une longue liste du point de montage. Si la configuration fonctionne bien, tous les fichiers stockés dans le volume doivent être là:
# DRBDADM Test primaire # mkdir -p / mnt / drdb_sec / # mont / dev / drbd0 / mnt / drdb_sec / # cd / mnt / drdb_sec / # ls -lTester la configuration DRBD travaillant sur le nœud secondaire
Pour plus d'informations, consultez les pages de l'homme des outils d'administration de l'espace utilisateur:
# man dbdadm # man drbdsetup # man drbdmeta
Référence: Le guide de l'utilisateur DRBD.
Résumé
Dbd est extrêmement flexible et polyvalent, ce qui en fait une solution de réplication de stockage adaptée à l'ajout de HA à à peu près n'importe quelle application. Dans cet article, nous avons montré comment installer Dbd dans Centos 7 et a brièvement démontré comment l'utiliser pour reproduire le stockage. N'hésitez pas à partager vos réflexions avec nous via le formulaire de rétroaction ci-dessous.
- « Installation de Centos 7.1 Double démarrage avec Windows 8.1 sur les systèmes de firmware UEFI
- Les 8 meilleurs programmes antivirus gratuits pour Linux »