====== La création d'un raid logiciel avec MDADM ======
{{ :wiki:linux:drive:raid-1.jpg?400 |}}
Cette fiche la création d'un RAID1 sous linux avec l'utilitaire mdadm.
Nous considérons que vous avez monté deux disques de 60Mo sur la VM.
## Installer MDADM pour importer le RAID dans Debian
`apt install mdadm`
## Création du RAID1
```
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
mdadm --detail /dev/md0
cat /proc/mdstat
```
## Suppression du RAID1 (Si besoin uniquement)
```
mdadm --stop /dev/md0
# mdadm --remove /dev/md0
mdadm --zero-superblock /dev/sdb /dev/sdc
```
## Création LVM sur RAID et système de fichier
### Création du PV sur le disque RAID
pvcreate /dev/md0
pvdisplay
### Création du VG ''vgdata''
vgcreate vgdata /dev/md0
vgdisplay
### Création du LV de 30Mo
lvcreate -n lv_data -L 30M vgdata
lvdisplay /dev/vgdata/lv_data
### Formatage de la partition en ext4
mkfs.ext4 /dev/mapper/vgdata-lv_data
### Vérification
lsblk
lsblk -f
# Manipulation avec le RAID
### Assembler le RAID sur la Debian
mdadm --assemble /dev/md0 /dev/sdb /dev/sdc
#### Manuellement
mdadm --assemble -scan #Detection automatique via Metadata
cat /proc/mdstat
mdadm --detail /dev/md0
### Ajouter la configuration de la grappe RAID au fichier de conf MDADM pour import au démarrage
mdadm --detail --scan --verbose >> /etc/mdadm/mdadm.conf
### Monter le système de fichier
mkdir /mnt/data
mount /dev/mapper/vgdata-lv_data /mnt/data
cat /etc/mtab | grep /mnt/data >> /etc/fstab
### Arrêter la VM et enlever un des 2 disques de 60Mb.
*Redémarrer la machine : le démarrage est bloqué.*
df -h
-> Le système de fichiers du RAID n'est **pas** monté
cat /proc/mdstat
-> Le RAID est **inactif**
### Il faut activer le RAID avec un seul disque dur :
mdadm --run /dev/md0
-> Démarre le RAID avec un disque manquant
mdadm --readwrite /dev/md0
-> Passe le RAID en lecture/écriture même avec un disque manquant
### Reconstruire le RAID
*Ajouter un nouveau disque de 60Mb*
- Identifier le nouveau disque
lsblk
- Vérifier la reconstruction & voir l'état du raid
mdadm --manage /dev/md0 --add /dev/sdb
cat /proc/mdstat
mdadm --detail /dev/md0