« Raid » : différence entre les versions

De wiki jackbot
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 13 : Ligne 13 :


Pour ce test on va avoir besoin de plusieurs fichiers qui feront office de disques durs virtuels. On va en créer 3 en utilisant la commande :
Pour ce test on va avoir besoin de plusieurs fichiers qui feront office de disques durs virtuels. On va en créer 3 en utilisant la commande :
<pre style="color: silver; background: black;">dd if=/dev/zero of=Vdisque1 bs=1M count=1024 status=progress</pre>
<pre style="color: silver; background: black;"># dd if=/dev/zero of=Vdisque1 bs=1M count=1024 status=progress</pre>
Le paramètre "of=" spécifie l'emplacement du fichier de sortie, on réitère donc avec Vdisque2 et Vdisque3, le paramètre "status=progress" quant à lui permet de voir la progression.
Le paramètre "of=" spécifie l'emplacement du fichier de sortie, on réitère donc avec Vdisque2 et Vdisque3, le paramètre "status=progress" quant à lui permet de voir la progression.


<pre style="color: silver; background: black;">
<pre style="color: silver; background: black;">
ls -lh
# ls -lh
total 3,1G
total 3,1G
-rw-r--r-- 1 root root 1,0G 24 févr. 11:08 Vdisque1
-rw-r--r-- 1 root root 1,0G 24 févr. 11:08 Vdisque1
Ligne 28 : Ligne 28 :
Avoir les fichiers c'est bien, mais encore faut-il qu'ils soient reconnus par le système comme étant des disques durs. Pour cela on utilise la commande :
Avoir les fichiers c'est bien, mais encore faut-il qu'ils soient reconnus par le système comme étant des disques durs. Pour cela on utilise la commande :


<pre style="color: silver; background: black;">losetup  -f Vdisque1</pre>
<pre style="color: silver; background: black;"># losetup  -f Vdisque1</pre>
L'option "-f" va cherche le premier périphérique inutilisé.
L'option "-f" va cherche le premier périphérique inutilisé.
En itérant ça pour le second fichier on obtient :
En itérant ça pour le second fichier on obtient :
Ligne 54 : Ligne 54 :


<pre style="color: silver; background: black;">
<pre style="color: silver; background: black;">
mdadm --create /dev/md/raid_test --level=1 --raid-devices=2 /dev/loop0 /dev/loop1
# mdadm --create /dev/md/raid_test --level=1 --raid-devices=2 /dev/loop0 /dev/loop1
mdadm: partition table exists on /dev/loop0
mdadm: partition table exists on /dev/loop0
mdadm: partition table exists on /dev/loop0 but will be lost or
mdadm: partition table exists on /dev/loop0 but will be lost or
Ligne 74 : Ligne 74 :


<pre style="color: silver; background: black;">
<pre style="color: silver; background: black;">
fdisk -l
# fdisk -l


...
...
Ligne 88 : Ligne 88 :


<pre style="color: silver; background: black;">
<pre style="color: silver; background: black;">
cat /proc/mdstat  
# cat /proc/mdstat  
Personalities : [raid1]  
Personalities : [raid1]  
md127 : active raid1 loop1[1] loop0[0]
md127 : active raid1 loop1[1] loop0[0]

Version du 24 février 2020 à 10:35


Pas besoin d'écrire tout un article là dessus, d'autres personnes font ça mieux que moi. Il ne s'agit ici que d'un pense bete :

le carnet du maker


Test de création d'un raid 1 (miroir)

Le but de ce chapitre est de tester la création d'un raid 1 histoire de se faire la main sans pour autant modifier la configuration des disques durs physiques.

Création des fichiers

Pour ce test on va avoir besoin de plusieurs fichiers qui feront office de disques durs virtuels. On va en créer 3 en utilisant la commande :

# dd if=/dev/zero of=Vdisque1 bs=1M count=1024 status=progress

Le paramètre "of=" spécifie l'emplacement du fichier de sortie, on réitère donc avec Vdisque2 et Vdisque3, le paramètre "status=progress" quant à lui permet de voir la progression.

# ls -lh
total 3,1G
-rw-r--r-- 1 root root 1,0G 24 févr. 11:08 Vdisque1
-rw-r--r-- 1 root root 1,0G 24 févr. 11:08 Vdisque2
-rw-r--r-- 1 root root 1,0G 24 févr. 11:08 Vdisque3

Faire passer ces fichier pour des disques physiques

Avoir les fichiers c'est bien, mais encore faut-il qu'ils soient reconnus par le système comme étant des disques durs. Pour cela on utilise la commande :

# losetup  -f Vdisque1

L'option "-f" va cherche le premier périphérique inutilisé. En itérant ça pour le second fichier on obtient :

fdisk -l

Disque /dev/loop0 : 1 GiB, 1073741824 octets, 2097152 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets


Disque /dev/loop1 : 1 GiB, 1073741824 octets, 2097152 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets

Nos deux fichiers sont maintenant reconnus comme des disques dur et se situe en /dev/loopX


Création du raid avec mdadm

Pour créer le raid à proprement parler il faut maintenant utiliser mdadm.

# mdadm --create /dev/md/raid_test --level=1 --raid-devices=2 /dev/loop0 /dev/loop1
mdadm: partition table exists on /dev/loop0
mdadm: partition table exists on /dev/loop0 but will be lost or
       meaningless after creating array
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
mdadm: partition table exists on /dev/loop1
mdadm: partition table exists on /dev/loop1 but will be lost or
       meaningless after creating array
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md/raid_test started.

Comme on peut le constater s'il existe une table de partition, celle ci sera détruite lors de la création du raid. En vérifiant avec fdisk on peut voir ceci :

# fdisk -l

...

Disque /dev/md127 : 1022 MiB, 1071644672 octets, 2093056 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets

On peut également vérifier l'état du raid avec :


# cat /proc/mdstat 
Personalities : [raid1] 
md127 : active raid1 loop1[1] loop0[0]
      1046528 blocks super 1.2 [2/2] [UU]
      
unused devices: <none>