Introduction

Introduction

12 mars 2013
par Lubos Rendek

Introduction

Que vous administriez un petit réseau domestique ou un réseau d'entreprise pour une grande entreprise, le stockage de données est toujours une préoccupation. Il peut être en termes de manque d'espace disque ou de solution de sauvegarde inefficace. Dans les deux cas. Dans ce guide, nous configurerons le stockage de données distribué et reproduit / miroir. Comme son nom l'indique, un mode de stockage distribué de GlusterFS vous permettra de redistribuer également vos données sur plusieurs nœuds de réseau, tandis qu'un mode répliqué s'assurera que toutes vos données sont miroirs sur tous les nœuds réseau.

Qu'est-ce que Glusterfs

Après avoir lu l'introduction, vous devriez déjà avoir une idée juste de ce qu'est Glusterfs. Vous pouvez le considérer comme un service d'agrégation pour tout votre espace disque vide sur l'ensemble de votre réseau. Il connecte tous les nœuds avec l'installation de GlusterFS sur TCP ou RDMA créant une ressource de stockage unique combinant tout l'espace disque disponible en un seul volume de stockage ( distribué mode) ou utilise le maximum d'espace disque disponible sur toutes les notes pour refléter vos données ( reproduit mode). Par conséquent, chaque volume est composé de plusieurs nœuds qui, dans la terminologie de Glusterfs, sont appelés briques.

Hypothèses préliminaires

Bien que GlusterFS puisse par installé et utilisé sur n'importe quelle distribution Linux, cet article utilisera principalement Ubuntu Linux. Cependant, vous devriez pouvoir utiliser ce guide sur n'importe quelle distribution Linux comme Redhat, Fedora, SUSE, etc. La seule partie qui sera différente sera le processus d'installation de Glusterfs.

De plus, ce guide utilisera 3 exemples de noms d'hôte:

  • stockage.Server1 - Glusterfs Storage Server
  • stockage.Server2 - Serveur de stockage Glusterfs
  • stockage.Client - Client de stockage Glusterfs

Utilisez le fichier DNS Server ou / etc / hosts pour définir vos noms d'hôte et ajuster votre scénario à ce guide.

Installation de Glusterfs

Le serveur Glusterfs doit être installé sur tous les hôtes que vous souhaitez ajouter à votre volume de stockage final. Dans notre cas, ce sera un stockage.Server1 et stockage.serveur2. Vous pouvez utiliser GlusterFS en tant que serveur unique et une connexion client pour agir en tant que serveur NFS. Cependant, la vraie valeur de Glusterfs est lors de l'utilisation de plusieurs hôtes de serveur pour agir comme un. Utilisez la commande Linux suivante sur les deux serveurs pour installer le serveur Glusterfs:

stockage.server1 $ sudo apt-get install glusterfs-server

et

stockage.server2 $ sudo apt-get install glusterfs-server

Les commandes ci-dessus installeront et démarreront Glusterfs-Server sur les deux systèmes. Confirmez que les deux serveurs fonctionnent avec:

$ sudo Service Glusterfs-Server Status

Configuration de stockage distribué

Nous allons d'abord créer un volume distribué Glusterfs. En mode distribué, GlusterFS distribuera uniformément toutes les données sur toutes les briques connectées. Par exemple, si les clients écrivent des fichiers Fichiers File1, File2, File3 et File4 dans un répertoire monté GlusterFS, puis serveur.Storage1 contiendra File1 et File2 et Server.Storage2 obtiendra le fichier3 et le fichier4. Ce scénario est illustré en utilisant le diagramme ci-dessous.

Sonde de pairs

Premièrement, nous devons faire des deux serveurs Glusterfs pour se parler, ce qui signifie que nous créons efficacement un pool de serveurs de confiance.

stockage.serveur1 $ sudo gluster pair sonde stockage.serveur2
Sonder réussi

La commande ci-dessus ajoutera du stockage.Server2 à un pool de serveurs de confiance. Ces paramètres sont reproduits sur tous les serveurs connectés afin que vous n'ayez pas à exécuter la commande ci-dessus sur d'autres services. Désormais, les deux serveurs auront le fichier de configuration de pairs disponible à celui ci-dessous:

$ Cat / etc / Glusterd / Peers / 951B8732-42F0-42E1-A32F-0E1C4BAEC4F1
UUID = 951B8732-42F0-42E1-A32F-0E1C4BAEC4F1
état = 3
HostName1 = Storage.serveur2

Créer un volume de stockage

Ensuite, nous pouvons utiliser les deux serveurs pour définir un nouveau volume de stockage composé de deux briques, une pour chaque serveur.

stockage.Volume de gluster Server1 $ sudo Créer un stockage dist-vol.server1: / dist-data \ stockage.server2: / dist-data
La création de volume dist-vol a réussi. Veuillez démarrer le volume pour accéder aux données.

La commande ci-dessus a créé un nouveau volume appelé dist-vol composé de deux briques. Si Directory / Dist-Data n'existe pas, il sera également créé sur les deux serveurs par la commande ci-dessus. Comme il a déjà été mentionné précédemment, vous ne pouvez ajouter qu'une seule brique au volume et faire agir ainsi le serveur ClusterFS comme un serveur NFS. Vous pouvez vérifier si votre nouveau volume a été créé par:

$ sudo gluster volume info dist-vol
Nom du volume: dist-vol
Type: distribuer
Statut: créé
Nombre de briques: 2
Type de transport: TCP
Briques:
Brick1: Storage.server1: / dist-data
Brick2: stockage.server2: / dist-data

Démarrer le volume de stockage

Maintenant, nous sommes prêts à commencer votre nouveau volume:

stockage.server1 $ sudo volume de gluster start dist-vol
Le volume de départ Dist-vol a réussi
stockage.Server1 $ sudo glusters volume info Dist-vol
Nom du volume: dist-vol
Type: distribuer
Statut: commencé
Nombre de briques: 2
Type de transport: TCP
Briques:
Brick1: Storage.server1: / dist-data
Brick2: stockage.server2: / dist-data

Ceci conclut une configuration du serveur de données GlusterFS en mode distribué. Le résultat final devrait être un nouveau volume distribué appelé dist-vol composé de deux briques.

Configuration du client

Maintenant que nous avons créé un nouveau volume Glusterfs, nous pouvons utiliser le client Glusterfs pour monter ce volume à tous les hôtes. Connectez-vous à l'hôte client et installez le client Glustefs:

stockage.Client $ sudo apt-get install glusterfs-client

Ensuite, créez un point de montage auquel vous monterez votre nouveau volume Dist-vol Glusterfs, par exemple Export-Dist:

stockage.Client $ sudo MKDIR / Export-Dist

Maintenant, nous pouvons monter le volume Dist-vol Glusterfs avec le monter commande:

stockage.Client $ sudo mont -t Glusterfs Storage.Server1: dist-vol / export-rist

Tous crient être prêts. Utilisez le monter commande pour voir si vous avez monté correctement le volume Glusterfs:

$ mont | glustef grep

Tester la configuration distribuée de Glusterfs

Tout est prêt pour que nous puissions commencer quelques tests. Sur la caisse côté client 4 fichiers dans le répertoire monté Glusterfs:

stockage.Client $ touch / export-disst / file1 file2 file3 file4 fichier4

Les Glusterfs prendront désormais tous les fichiers et les redistribueront uniformément parmi toutes les briques du volume Dist-Vol. Par conséquent, le stockage.Server1 contiendra:

stockage.server1 $ ls / dist-data /
fichier3 fichier4

et stockage.Server2 contiendra:

stockage.server2 $ ls / dist-data
fichier1 fichier2

Bien sûr, vos résultats peuvent être différents.

Configuration de stockage reproduit

La procédure de création d'un volume GlusterFS répliqué est similaire au volume distribué expliqué précédemment. En fait, la seule différence est la façon dont le volume ClusterFS est créé. Mais allons à nouveau depuis le début:

Sonde de pairs

Premièrement, nous devons faire des deux serveurs Glusterfs pour se parler, ce qui signifie que nous créons efficacement un pool de serveurs de confiance.

stockage.serveur1 $ sudo gluster pair sonde stockage.serveur2
Sonder réussi

Si cela est déjà fait, vous pouvez sauter cette étape.

Créer un volume de stockage

Dans cette étape, nous devons créer un volume de réplique.

Volume de gluster $ Sudo Créer une réplique Rep-vol 2 \ Storage.serveur 1: stockage de données de reproche.server2: / reproa La création de volume Rep-vol a réussi. Veuillez démarrer le volume pour accéder aux données. 

La traduction de base de la commande ci-dessus pourrait être que nous avons créé un volume répliqué (réplique) appelé repl-vol . Le numéro 2 de la commande indique le nombre de rayures, ce qui signifie que lors de l'expansion de ce volume, nous devons toujours ajouter le nombre de briques égales au multiple du nombre de rayures de volume (2, 4, 8 16 etc.).

Démarrer le volume de stockage

Il est temps de démarrer notre nouveau volume répliqué:

$ sudo gluster volume start Rep-vol
Le volume de départ Rep-vol a réussi

Vérifiez l'état:

stockage.serveur1 $ sudo gluster volume info rep-vol
Nom du volume: Rep-vol
Type: reproduire
Statut: commencé
Nombre de briques: 2
Type de transport: TCP
Briques:
Brick1: Storage.serveur1: / reprola
Brick2: stockage.serveur2: / reprola

Configuration du client

La configuration du client est la même que lors de la configuration du client pour le support de volume distribué.

Installer le client:

stockage.Client $ sudo apt-get install glusterfs-client

Créez un point de montage:

stockage.Client $ sudo mkdir / export-repl

Montez le volume Rep-vol Glusterfs avec le monter commande:

stockage.Client $ sudo mont -t Glusterfs Storage.Server1: repl-vol / export-repl

Tous les cries sont maintenant prêts. Utilisez le monter commande pour voir si vous avez monté correctement le volume Glusterfs:

$ mont | glustef grep

Tester la configuration répliquée de GlusterFS

Le point du volume répliqué Glusterfs est que les données seront miraillées de manière transparente sur tous les nœuds. Ainsi lors de la création de fichiers dans / export-repl /

$ touch / export-repl / file1 file2 file3 file4 fichier4

Tous les fichiers seront disponibles sur les deux serveurs:

stockage.server1 $ ls / rep-data /
file1 file2 file3 fichier4

et

stockage.server2 $ ls / rep-data /
file1 file2 file3 fichier4

Expansion des volumes de Glusterfs

Dans le cas où vous devez augmenter votre stockage de données pour inclure des briques supplémentaires, le processus est simple:

Rangement de rep-vol de volume de volume de volume de Gluster $ Sudo.serveur3: stockage de Rep-vol.Server4: Rep-vol / Export-Repl

Cela ajoutera deux autres briques de stockage à votre Rep-vol. Une fois que vous avez ajouté de nouvelles briques, vous devrez peut-être rééquilibrer l'intégralité du volume avec:

$ sudo gluster volume rééquilibrer Rep-vol Fix-Layout start

et synchroniser / migrer toutes les données avec:

$ sudo gluster volume rééquilibrage repl-vol migrate-data start

De plus, vous pouvez vérifier les progrès de la réédition avec

$ sudo gluster volume rééquilibrer vol0 status

Les paramètres de sécurité

En plus de la configuration ci-dessus, vous pouvez rendre le volume entier plus sécurisé en permettant à certains hôtes de rejoindre le pool de confiance. Par exemple, si nous ne voulons que l'hôte avec 10.1.1.10 Pour être autorisé à participer au volume Rep-vol, nous utilisons la commande Linux suivante:

$ sudo gluster volume set rep-vol auth.Autoriser 10.1.1.dix

Dans le cas où nous avons besoin que l'ensemble du sous-réseau utilise simplement Asterisk:

$ sudo gluster volume set rep-vol auth.Autoriser 10.1.1.*

Conclusion

Glusterfs est un puissant logiciel sous licence GPL3. On peut également l'utiliser comme un raid logiciel rapide 1 en définissant deux briques de périphérique physique distinctes sur l'hôte unique dans le volume répliqué Glusterfs. Bien sûr, il serait préférable d'utiliser le raid logiciel pour ce travail, mais la possibilité est toujours là. J'ai trouvé Glusterfs facile à utiliser et à configurer.

annexe

Ici, je vais simplement énumérer quelques erreurs et réponses que j'ai rencontrées en jouant avec Glusterfs:

Nombre incorrect de briques

Nombre incorrect de briques fournies 1 pour la réplique de type avec le nombre 2

Si vous avez créé un volume avec Stripe Count 2, vous devez ajouter au moins 2 briques supplémentaires à ce moment-là.

Stockage d'hôtes.serveur1 pas un ami

Stockage d'hôtes.serveur1 pas un ami

Ajoutez d'abord le serveur Glusterfs au pool de confiance avant de tenter de l'inclure dans le volume.

Tutoriels Linux connexes:

  • Miroirs Ubuntu
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Choses à installer sur Ubuntu 20.04
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Choses à faire après l'installation d'Ubuntu 22.04 Jammy Jellyfish…
  • Comment utiliser ADB Android Debug Bridge pour gérer votre Android…
  • Ubuntu 20.04 Guide
  • Téléchargement du fichier WGET sur Linux
  • Choses à installer sur Ubuntu 22.04
  • Ubuntu 22.04 Sauvegarde et restauration du système