:::: MENU ::::

Create Software RAID under Linux systemCréer un RAID logiciel sous Linux

  • Feb 19 / 2014
  • 0
Linux

Create Software RAID under Linux systemCréer un RAID logiciel sous Linux

A hard drive disk is a device with limits (performance, lifetime, …) and a broken disk often leads to a data loss, and sometimes with a loss of data more or less important.
In order to avoid that kind of inconvenience, there are several hardware solutions allowing disk replication, but most of time with a too high cost for a standard use (non professional). Fortunately, there is also a software RAID, which can be set up easily and quickly without any additional hardware (assuming you already own at least 2 hard drive disks) given that it’s working on a software layer between the hardware abstraction layer and the file system.

There are different levels of RAID ; the most common levels are:

  • RAID 0 : the “striping” allows to improve performance by splitting the IO requests on several devices in parallel (2 to n disks)
  • RAID 1 : the “mirroring” allows to write same data on several disks at the same time (to disks)
  • RAID 5 : the “striping and mirroring” allows the combination of RAID 0 and RAID 1 (3 to n disks)

I will present here how to set up a RAID 1 solution (mirroring) but it will be easy to adapt the following steps if you need another RAID level.

RAID 1 setup

For the setting up, ensure you have the mdadm package installed and ready on your system. For Debian/Ubuntu, you can use the following command:

Prepare both disks in Software Raid (type 0xfd) thanks to the fdisk tool:

You can now shrink and erase both disks with zeros thanks to the command below:

Create your RAID 1 (or any level, by changing the level attribute):

Format this new partition in ext4:

Mount your partition you just created:

To get an automatic mounting point after any restart of the system, edit the file /etc/fstab  and add this following line:

You can now check and follow your RAID status, by using following commands:

RAID Monitoring

To ensure the RAID is always working correctly and be informed when a disk is out of order, it is possible to set a monitoring solution thanks to the common tools of mdadm with a mail alert system.

Check that the monitoring settings are correctly defined in the file /etc/mdadm/mdadm.conf with the sender address (MAILFROM) and the receiver address (MAILADDR):

You will need a mail server enabled on your server (postfix, ssmtp, …) and listening on port 25.

To check and test this configuration, ou can easily perform a test by sending a mail report thanks to this command:

To ensure that monitoring is enabled for your RAID devices, just check that the –monitor option is correctly set by performing the following command:

If it’s not, you will have to add the option in the /etc/default/mdadm file (DAEMON_OPTIONS).Un disque dur est un matériel qui a des limites (performances, durée de vie, …) et un disque qui lâche a bien souvent pour impact la perte de données, et parfois la perte d’informations plus ou moins importantes.
Afin d’éviter ce désagrément, il existe de nombreuses solutions matérielles permettant les réplications de disque, mais bien souvent à des prix trop élevés pour un usage standard et non professionnel. Heureusement, il existe également le RAID logiciel, qui peut être mis en place très facilement et rapidement sans matériel supplémentaire (il faudra bien entendu posséder au moins 2 disques) puisqu’il se base sur une couche logicielle entre la couche d’abstraction matérielle et le système de fichiers.

Il existe différents niveaux de RAID ; les niveaux les plus standards sont :

  • RAID 0 : les “volumes agrégés par bande” permettent de répartir les performances en faisant travailler plusieurs disques en parallèle (2 à n disques)
  • RAID 1 : la “réplication des disques” permet d’écrire les mêmes données sur plusieurs disques en même temps (à disques)
  • RAID 5 : le “volume agrégé par bandes à parité répartie” permet de combiner les aspects du RAID 0 et du RAID 1 (3 à n disques)

Je détaillerai ici, la mise en place du RAID 1 (réplication), mais il suffira d’adapter les commandes pour la mise en place d’un RAID d’un autre niveau.

Mise en place du RAID

Pour la mise en place, assurez-vous d’avoir le package mdadm installé sur votre système. Sous Debian/Ubuntu, vous pouvez utiliser la commande suivante :

Préparez vos deux disques en Software Raid (type 0xfd) grâce à l’outil fdisk :

Vous pouvez maintenant écraser les disques avec des zéros grâce à la commande suivante :

Créez votre RAID 1 (ou de tout autre niveau, en changeant l’attribut level) :

Formatez cette nouvelle partition en ext4 :

Montez votre partition tout juste créée :

Pour avoir un montage permanent à tout redémarrage, éditez le fichier /etc/fstab  et ajoutez la ligne suivante:

Vous pouvez maintenant vérifier et suivre le statut de votre RAID, grâce aux commandes suivantes :

Monitoring du RAID

Afin de s’assurer que le RAID est bien fonctionnel et être informé lorsque l’un des disques est défaillant, il est possible de mettre en place une solution de supervision des disques grâce aux outils standards avec un système d’alertes par mail.

Vérifiez que les paramètres de monitoring soient bien définis dans le fichier /etc/mdadm/mdadm.conf pour l’adresse émettrice (MAILFROM) et l’adresse réceptrice (MAILADDR) :

Il vous faudra bien entendu vérifier que vous ayez un serveur mail actif sur votre serveur (postfix, ssmtp,  …) et qui écoute sur le port 25.

Pour tester cette configuration, vous pouvez effectuer un test pour envoyer un rapport par mail grâce à la commande suivante :

Pour vous assurer que le monitoring est bien activé sur vos périphériques RAID, il suffit de vérifier que l’option –monitor est bien activée grâce à la commande suivante :

Si ce n’est pas le cas, il vous faudra ajouter l’option dans le fichier par défaut /etc/default/mdadm (DAEMON_OPTIONS).

Leave a comment

You must be logged in to post a comment.

Question ? Contact