Les systèmes d’exploitation modernes disposent de nombreuses fonctionnalités pour améliorer la sécurité des données et la convivialité. Dans cet article, nous comparerons RAID LVM et RAID mdadm – deux technologies intéressantes dont le but principal est de maintenir votre serveur, votre ordinateur ou votre NAS en fonctionnement et de sauvegarder vos données en cas de défaillance matérielle.
Contenu
- Quelle est la différence entre Lvm et mdadm
- Comparaison entre RAID LVM et RAID mdadm
- Est-il possible d'utiliser mdadm et LVM en même temps?
- Comment récupérer des données perdues?
Quelle est la différence entre Lvm et mdadm
Lvm et mdadm sont deux utilitaires similaires et en même temps complètement différents conçus pour gérer les informations sur les disques. La similitude réside dans le fait que à la fois LVM et mdadm distribuent les données entre les disques au niveau logiciel. C’est-à-dire que vous pouvez créer un ensemble RAID logiciel ou des disques Lvm en utilisant uniquement les capacités du système d’exploitation. Aucun matériel supplémentaire n’est nécessaire. Pour comprendre la différence, expliquons d’abord chaque technologie l’une après l’autre.
LVM (gestionnaire de volumes logiques) est une couche abstraite entre le contrôleur de disque et le système d’exploitation. En fait, c’est un sous-système permettant à l’utilisateur de combiner l’espace de plusieurs disques en un seul volume, puis de le partitionner en plusieurs disques logiques.
Prenons l’exemple de deux disques de 100 Go. En utilisant LVM, nous pouvons les combiner en un seul volume de 200 Go (100 Go + 100 Go) et ensuite créer trois disques logiques: un de 120 Go et deux de 40 Go. De cette manière, nous avons pris une partie de la mémoire de l’autre disque et l’avons ajoutée au premier.
Ainsi, grâce à la technologie LVM, nous pouvons répartir la mémoire entre les disques sans être limités par la taille de l’un des disques. La seule limitation sera la quantité de mémoire partagée par tous les disques.
De plus, LVM vous permet d’ajouter dynamiquement de nouveaux disques pour augmenter la mémoire disponible, de gérer de manière flexible les disques au niveau physique (ajouter des disques sans arrêter le serveur, le NAS ou l’ordinateur) et de changer les disques en arrêtant le stockage uniquement pendant le remplacement physique du disque (sans avoir à arrêter lors de l’ajout d’un disque au niveau logiciel). Vous conviendrez que LVM est une fonctionnalité très pratique. Cependant, LVM ne fournit aucune redondance.
Oui, LVM peut mettre en œuvre une sorte de tableau RAID en utilisant ses propres solutions, mais elles seront soit nettement inférieures en termes de performances, soit elles passeront des commandes à l’utilitaire md, c’est-à-dire au dispositif mdraid lui-même. Mais nous en parlerons un peu plus tard.
Parlons maintenant de ce qu’est mdadm.
Mdadm est un utilitaire spécial du système d’exploitation Linux dont le but principal est de créer et gérer des ensembles RAID. Autrement dit, l’objectif principal de mdadm est de fournir une redondance, c’est-à-dire de sauvegarder les données si un ou plusieurs disques tombent en panne (selon le type de RAID sélectionné). En fait, mdadm communique avec les disques et répartit les données entre eux au niveau physique, sans avoir absolument rien à voir avec le partitionnement logique des disques. L’ensemble RAID de plusieurs disques est affiché dans le système d’exploitation comme un lecteur de disque séparé qui peut être manipulé de la même manière qu’un lecteur de disque classique.
Comparaison entre RAID LVM et RAID mdadm
Comme mentionné précédemment, il est possible de créer un RAID logiciel en utilisant la technologie LVM (par exemple, LVM RAID 0 ou LVM RAID 5).
Le RAID LVM fait référence à une méthode spéciale de construction d’une partition LV qui utilise un pilote DM (Device Mapper) pour gérer les partitions LV et un pilote MD pour distribuer les informations entre les disques.
Le RAID LVM peut également être créé en contournant le pilote MD, mais dans ce cas, les performances d’un tel ensemble seront grandement affectées. De plus, si quelque chose arrive à l’un des disques, son remplacement et la récupération des données seront très difficiles.
Jusqu’à présent, tout semble clair. Parlons maintenant des inconvénients de cette solution.
Tout d’abord, il est important de mentionner que lors de l’utilisation des volumes LVM standard, il faut connaître un très grand nombre de commandes et d’utilitaires pour pouvoir travailler correctement avec les volumes, car il n’y a pas d’interface graphique.
Deuxièmement, lors de l’utilisation de LVM, il est important de savoir quels systèmes de fichiers utiliser (c’est-à-dire ceux qui sont évolutifs) et lesquels ne pas utiliser. Votre choix de système de fichiers a des implications pour l’ajout de nouveaux disques.
En résumé, LVM est assez complexe à maintenir et nécessite que l’utilisateur ait une connaissance approfondie du système d’exploitation.
Il convient de mentionner que les systèmes d’exploitation Windows et Mac OS ne prennent pas en charge le travail avec LVM.
L’autre inconvénient de LVM apparaît lors de son utilisation sur des SSD. Pour comprendre cela, découvrons comment LVM fonctionne.
Toutes les informations dans LVM sont divisées en extents (ce sont des blocs d’informations) qui sont écrits sur le disque. La taille minimale d’un extent est de 4 Mo. Il existe plusieurs algorithmes pour écrire les extents sur les disques. Nous prendrons le plus simple, appelé linéaire, car c’est la manière la plus facile de comprendre comment fonctionne LVM.
Lors de l’utilisation de l’algorithme linéaire, tous les extents sont écrits sur les disques dans l’ordre. S’il n’y a pas suffisamment d’espace disque pour écrire les extents, ils sont écrits dans l’ordre sur le deuxième disque, et ainsi de suite.
Cela signifie que physiquement, le fichier peut être stocké sur plusieurs disques en même temps, mais le sous-système LVM se souvient de l’ordre des extents et sait donc dans quel ordre les lire pour ouvrir le fichier souhaité. Schématiquement, cela peut être représenté comme suit:
Cependant, c’est un inconvénient de LVM – puisque tous les extents sont écrits séquentiellement – l’enregistrement sur le disque SSD suivant ne commencera qu’après que le premier soit complètement plein. Comme vous le savez, il n’est pas recommandé de remplir les disques SSD, car cela dégrade considérablement les performances et réduit les performances du garbage collector (en d’autres termes, cela réduit la vitesse et réduit la durée de vie du disque).
Et ici, beaucoup diront que vous pouvez utiliser la méthode de striping (une sorte de RAID 0 dans mdadm). Ils auront partiellement raison, car la charge sur les disques diminuera et la vitesse de lecture/écriture augmentera proportionnellement au nombre de disques utilisés, car les informations seront écrites sur tous les disques simultanément. Cependant, il y a aussi des pièges ici…
Le problème est que pour étendre notre volume, nous devrons utiliser un multiple du nombre de disques déjà utilisés. C’est-à-dire que si nous avons utilisé 3 disques, nous pouvons ajouter 3, 6, 9, etc. disques.
Mais le plus important est que lors de l’ajout d’un nouveau groupe de disques, le striping ne se fera pas entre tous les disques en même temps, mais au sein de chaque groupe de disques.
Il s’avère que l’enregistrement sur un nouveau groupe de disques ne commencera que lorsque le premier sera plein. On peut donc en conclure que le premier groupe de disques travaillera sous stress.
Mdadm peut résoudre ce problème, car ses nouvelles versions permettent d’ajouter de nouveaux disques à l’ensemble RAID 0 sans aucun problème, après quoi l’écriture sur ces disques se fera en striping avec les disques déjà installés, réduisant ainsi la charge et le niveau d’usure des disques SSD.
En fait, mdadm est une utilitaire très fonctionnelle qui ajoute la prise en charge du RAID à Linux au niveau du noyau (c’est pourquoi LVM utilise le pilote MD pour travailler avec les disques au niveau physique).
Il existe également une interface graphique pour mdadm appelée « Webmin« , ce qui signifie que l’utilisateur peut créer un ensemble RAID logiciel de presque n’importe quel type en quelques clics seulement (y compris RAID 10, 50, 60), plutôt que d’utiliser une multitude de commandes, etc. (ce qui ne nécessite aucune connaissance spécifique du système d’exploitation). Vous pouvez lire comment faire cela dans l’article « Comment créer un ensemble RAID logiciel?«
Il convient également de noter que les ensembles RAID créés avec l’utilitaire mdadm ont les meilleures performances car ils n’ont pas d’intermédiaires sous la forme de pilotes et d’utilitaires supplémentaires pour envoyer des commandes aux disques. C’est également la raison pour laquelle un disque défaillant peut être remplacé plus rapidement qu’avec RAID LVM, car aucune manipulation supplémentaire du sous-système LVM n’est nécessaire.
Pour cette raison, nous vous recommandons d’utiliser mdadm pour créer un ensemble RAID logiciel, car il sera à la fois plus rapide et plus fiable.
En résumé, on peut tirer la conclusion suivante:
Les avantages de LVM:
- allocation flexible de l’espace disque;
- ajout dynamique de disques (sans arrêter le serveur);
Les inconvénients de LVM:
- complexité de l’administration (nécessite de connaître un grand nombre de commandes et d’utilitaires);
- il est très difficile de remplacer les disques dans un ensemble RAID;
- les ensembles créés avec LVM seront plus lents;
- il n’est pas recommandé de les utiliser sur des disques SSD;
- il est nécessaire de savoir quels systèmes de fichiers peuvent être utilisés et lesquels sont indésirables;
- de nombreux systèmes d’exploitation ne prennent pas en charge LVM;
Les avantages de mdadm:
- ensembles RAID très rapides;
- ajout dynamique de disques à l’ensemble RAID (en utilisant des disques de secours à chaud);
- remplacement rapide et facile des disques défaillants;
- administration facile (grâce à l’interface graphique Webmin);
Est-il possible d’utiliser mdadm et LVM en même temps?
Nous avons déjà dit que la meilleure façon de créer des matrices RAID est d’utiliser l’utilitaire mdadm. Cependant, si vous souhaitez avoir la flexibilité de créer des volumes ainsi que la fiabilité, vous pouvez utiliser LVM sur RAID. C’est-à-dire, vous créez d’abord un RAID du type requis (par exemple, RAID 5) puis utilisez LVM pour créer plusieurs disques logiques.
Cela vous fournira fiabilité et vitesse, en plus de pouvoir partitionner l’espace disque comme vous le souhaitez. De plus, si vous avez besoin d’ajouter un nouveau disque au système, vous pouvez le faire avec mdadm.
L’inconvénient est que vous devez connaître de nombreuses commandes pour travailler correctement avec les volumes LVM, car bien que vous puissiez créer une matrice RAID en quelques clics avec Webmin, LVM reste difficile à administrer et il n’y a rien que vous puissiez y faire.
Note importante: Si vous décidez d’utiliser RAID en combinaison avec LVM, vous devez d’abord faire le RAID et construire les volumes LVM par-dessus. Si vous faites l’inverse, vous obtiendrez une matrice très difficile à gérer qui n’est pas non plus très rapide. Et si l’un des disques tombe en panne, il sera très difficile de les remplacer.
Comment récupérer des données perdues?
Malgré l’utilisation de différentes technologies, telles que les baies RAID, personne ne peut garantir une sécurité des données à 100 %. Et même si l’utilisation de baies RAID permet d’augmenter quelque peu le niveau de sécurité des données, différents types d’extensions, comme LVM, peuvent entraîner la perte de données importantes au lieu d’ajouter de nouvelles fonctionnalités. De plus, bien que LVM offre une certaine ressemblance avec RAID, il est moins fiable que RAID mdadm.
Cependant, même cette technologie ne peut pas garantir à 100 % que vous ne perdrez pas d’informations, car il peut y avoir des pannes de contrôleur, et la suppression accidentelle de données ou le formatage accidentel d’un ensemble ne peuvent pas être exclus.
C’est pourquoi l’utilisateur doit savoir quoi faire s’il perd des informations importantes pour quelque raison que ce soit. Dans une telle situation, il faut immédiatement utiliser un reconstructeur RAID professionnel qui sera en mesure de fournir une récupération réussie des données de l’ensemble RAID.
Nous vous suggérons d’utiliser RS RAID Retrieve – la meilleure solution pour reconstituer un ensemble RAID défaillant et récupérer ensuite les données perdues.
Le programme est simple et facile à utiliser et prend en charge pratiquement toutes les configurations RAID (y compris hybrides) et LVM. De plus, RS RAID Retrieve prend en charge TOUS les systèmes de fichiers modernes, ainsi que le stockage NAS. Il vous permet également de récupérer des données à partir d’ensembles RAID, quel que soit le système d’exploitation sur lequel ils fonctionnaient – que ce soit Windows, Linux, MacOS ou Solaris.
Il vous suffit de connecter tous les disques de l’ensemble à un ordinateur en fonctionnement et de suivre une série d’étapes simples:
Étape 1: Téléchargez et installez RS RAID Retrieve. Lancez l’application après l’installation. Le « constructeur RAID » intégré s’ouvrira devant vous. Cliquez sur « Suivant«
Étape 2: Choisissez la méthode d’ajout d’un ensemble RAID pour la numérisation. RS RAID Retrieve propose trois options au choix:
- Mode automatique – vous permet de simplement spécifier les disques qui composaient l’ensemble, et le programme déterminera automatiquement leur ordre, le type d’ensemble et d’autres paramètres;
- Recherche par fabricant – cette option doit être choisie si vous connaissez le fabricant de votre contrôleur RAID. Cette option est également automatique et ne nécessite aucune connaissance sur la structure de l’ensemble RAID. Disposer des informations sur le fabricant permet de réduire le temps de construction de l’ensemble, et est donc plus rapide que l’option précédente;
- Création manuelle – cette option est à utiliser si vous savez quel type de RAID vous utilisez. Dans ce cas, vous pouvez spécifier tous les paramètres que vous connaissez, et ceux que vous ne connaissez pas – le programme les déterminera automatiquement
Après avoir sélectionné l’option appropriée – cliquez sur « Suivant« .
Étape 3: Sélectionnez les disques qui composent l’ensemble RAID et cliquez sur « Suivant« . Le processus de détection des configurations de l’ensemble commencera. Lorsqu’il est terminé, cliquez sur « Terminer« .
Étape 4: Une fois que le constructeur a construit l’ensemble, il apparaîtra comme un disque normal. Double-cliquez dessus. L’Assistant de récupération de fichiers s’ouvrira devant vous. Cliquez sur « Suivant«
Étape 5: RS RAID Retrieve vous proposera de numériser votre ensemble à la recherche de fichiers à récupérer. Vous aurez deux options: une numérisation rapide et une analyse complète de l’ensemble. Sélectionnez l’option souhaitée. Ensuite, sélectionnez le type de système de fichiers qui était utilisé sur l’ensemble. Si vous ne connaissez pas cette information, cochez toutes les options disponibles, comme sur la capture d’écran. Il convient de noter que RS RAID Retrieve prend en charge TOUS les systèmes de fichiers modernes.
Étape 6: Le processus de numérisation de l’ensemble commencera. Lorsqu’il est terminé, vous verrez la structure précédente des fichiers et des dossiers. Trouvez les fichiers nécessaires, cliquez avec le bouton droit dessus et sélectionnez « Récupération«
Étape 7: Spécifiez l’emplacement où les fichiers récupérés seront enregistrés. Il peut s’agir d’un disque dur, d’une archive ZIP ou d’un serveur FTP. Cliquez sur « Suivant«
Après avoir cliqué sur le bouton « Suivant« , le programme commencera le processus de récupération. Lorsqu’il est terminé, les fichiers sélectionnés se trouveront à l’emplacement spécifié.
Une fois que tous les fichiers sont récupérés avec succès, recréez votre ensemble RAID, puis copiez les fichiers à nouveau.
Comme vous pouvez le voir, le processus de récupération de données RAID est assez simple et ne nécessite pas beaucoup de connaissances en informatique, ce qui fait de RS RAID Retrieve l’application parfaite aussi bien pour les professionnels que pour les utilisateurs novices.