Réplication de données avec le RAID 1
Attention : Le RAID n'est pas une solution de sauvegarde, il s'agit d'une solution qui permet un rétablissement relativement rapide de la situation .
Avec un RAID de niveau 1 ou plus, les données sont copiées sur plusieurs disques. Lorsqu'un disque tombe en panne, le système continue de fonctionner avec ceux restant. C'est une solution de haute disponibilité pour des systèmes dont les services ou l'accès aux données ne doivent pas être interrompus.
Définition du RAID 1: 2 disques minimum - Taille du plus petit disque - En RAID 1 vos données sont copiées sur deux disques ou plus. C'est-à-dire que chaque disque sera l'exacte copie du premier. Si l'un d'eux grille, il suffit de le remplacer pour créer une nouvelle copie sur ce nouveau disque.
L'exemple ci dessous va présenter comment mettre en place un montage RAID 1 logiciel.
Le logiciel qui va nous permettre de remplir notre objectif s'appelle mdadm.
Mise en place d'un système de réplication type RAID 1
Prérequis :
Avoir au moins 2 disques prêts à l'emploi. L'utilisation de disques durs SATA, est plus que recommandée, car ils permettent une extraction à chaud (Hot Plug).
sudo apt update
sudo apt install mdadm
Configuration du serveur utilisé pour le RAID 1
| Type de Disque | Identification | Taille | Description |
| SDD | sda | 10 Go | Disque utilisé pour le boot et la racine (/) du serveur |
| HDD | sdb | 8 Go | Disque vierge à utiliser pour le RAID 1 |
| HDD | sdc | 8 Go | Disque vierge à utiliser pour le RAID 1 |
Créer les partitions
Créez une partition de type RAID sur chaque disque dur à l'aide de l'outil fdisk.
Exécutez les commandes suivantes pour chaque disque dur (sdb et sdc) :
sudo fdisk /dev/sdb
# n to create new partition
# p to create a primary partition
# enter
# enter
# enter
# t to change type of partition
# fd to select RAID LINUX
# w to save
Créer le RAID 1
Créez le périphérique RAID 1 en utilisant mdadm :
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
# y to continue
Cela crée un périphérique RAID appelé /dev/md0 avec un niveau RAID 1 utilisant les deux partitions que vous avez créées (/dev/sdb1 et /dev/sdc1).
Une fois que le RAID est créé, vous pouvez formater le périphérique RAID avec le système de fichiers de votre choix (par exemple, ext4):
sudo mkfs.ext4 /dev/md0
A ce niveau de la procédure notre configuration ressemble à ceci :
root@debianVM:~# lsblk -f
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
sda
└─sda1 ext4 1.0 a305e837-99f5-4d7c-a293-4ffa11ca5441 1,2G 89% /
sdb
└─sdb1 linux_raid_member 1.2 debianVM:0 6caf09bd-22a0-d6d6-a2ab-502641c28dfc
└─md0 ext4 1.0 4479440e-6a32-45c3-a977-bd153d6e412b
sdc
└─sdc1 linux_raid_member 1.2 debianVM:0 6caf09bd-22a0-d6d6-a2ab-502641c28dfc
└─md0 ext4 1.0 4479440e-6a32-45c3-a977-bd153d6e412b
On remarque que la partition md0 partage le même UUID sur les 2 disques.
Monter le RAID 1
Pour monter notre RAID il suffit de créer un dossier à l'endroit voulu, dans notre cas ça sera /mnt/raid.
mkdir /mnt/raid
mount /dev/md0 /mnt/raid
Pour automatiser le montage du RAID au démarrage du serveur éditer le fichier /etc/fstab pour mettre la ligne suivante :
UUID=2d2599e6-0925-4091-87f1-9f631cb7c709 /mnt/raid ext4 defaults 0 2
# UUID correspond à l'uuid de la partition md0
Enfin, redémarrez votre système ou montez manuellement le RAID avec sudo mount -a.
Pour vérifier le bon fonctionnement du RAID on peux utiliser la commande cat /proc/mdstat, ce qui donne :
root@debianVM:~# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdc1[1] sdb1[0]
8382464 blocks super 1.2 [2/2] [UU]
unused devices: <none>
Et notre configuration final ressemble à :
root@debianVM:~# lsblk -f
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
sda
└─sda1 ext4 1.0 a305e837-99f5-4d7c-a293-4ffa11ca5441 1,2G 89% /
sdb
└─sdb1 linux_raid_member 1.2 debianVM:0 6caf09bd-22a0-d6d6-a2ab-502641c28dfc
└─md0 ext4 1.0 4479440e-6a32-45c3-a977-bd153d6e412b 7,4G 0% /mnt/raid
sdc
└─sdc1 linux_raid_member 1.2 debianVM:0 6caf09bd-22a0-d6d6-a2ab-502641c28dfc
└─md0 ext4 1.0 4479440e-6a32-45c3-a977-bd153d6e412b 7,4G 0% /mnt/raid