Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Re: SSD en Raid 1

7 réponses
Avatar
Christophe PEREZ
Le lundi 9 juillet 2018 09:46:26 UTC-4, Christophe PEREZ a écrit :
> Le Sun, 08 Jul 2018 15:15:54 +0200, Pascal Hambourg a écrit :
>
> > fdisk /dev/mdX Les partitions seront nommées /dev/mdXpY.
>
> Effectivement.
> Les SSD sont en commandes. Je verrai tout ça dans 2 semaines.

2 semaines, 2 mois, 2 ans, c'est presque pareil mais mieux vaut tard que
jamais.

J'ai donc commandé ces 2 SSD, reçus il y a déjà un moment, mais je
n'avais pas encore pu me résoudre à arrêter le serveur pour les installer.

Aujourd'hui c'est chose faite. Ils sont en place, partitionnés comme tu
me l'avais suggéré.
C'est vrai que c'est quand même le plus simple.
Je n'ai pas encore recopié les données pour rebooter dessus puisqu'il
faudra pour ça que je stoppe tout.

Par contre, je me pose une question concernant les HD desquels j'enlève
les données pour les mettre sur SSD.
Comme je l'avais indiqué, j'avais d'abord partitionné les disques, pour
ensuite associer les partitions par raid.
J'ai donc :
# cat /proc/mdstat
Personalities : [raid0] [raid1]
md1 : active raid1 sda1[0] sdb1[1]
24000 blocks [2/2] [UU]
bitmap: 0/3 pages [0KB], 4KB chunk

md2 : active raid1 sda2[0] sdb2[1]
20000832 blocks [2/2] [UU]
bitmap: 0/153 pages [0KB], 64KB chunk

md3 : active raid1 sda3[0] sdb3[1]
2000000 blocks [2/2] [UU]
bitmap: 0/123 pages [0KB], 8KB chunk

md5 : active raid1 sda5[0] sdb5[1]
2995968 blocks [2/2] [UU]
bitmap: 2/183 pages [8KB], 8KB chunk

md6 : active raid1 sda6[0] sdb6[1]
30001280 blocks [2/2] [UU]
bitmap: 3/229 pages [12KB], 64KB chunk

md7 : active raid1 sda7[0] sdb7[1]
60002624 blocks [2/2] [UU]
bitmap: 2/229 pages [8KB], 128KB chunk

md8 : active raid1 sda8[0] sdb8[1]
861734528 blocks [2/2] [UU]
bitmap: 0/206 pages [0KB], 2048KB chunk

md0 : active raid1 sde1[1] sdd1[0]
117219712 blocks [2/2] [UU]
bitmap: 0/1 pages [0KB], 65536KB chunk

md1, md2, md3, md5, md6 et md7 passent sur le md0 des SSD. md8 reste.
Mais du coup, pour récupérer cette place et avoir md8 qui occupe toute la
place du raid, suis-je effectivement contraint (tel que je l'imagine) de :
- recopier tous md8 ailleurs
- détruire le raid
- refaire le raid non morcelé (éventuellement de la même façon que pour
les SSD)
- remettre mes données

Je ne vois pas d'autre solution que de déplacer les 600G, mais ça
m'aurait bien arrangé de ne pas avoir à le faire. Donc si une solution
miracle te saute aux yeux...

Merci.

7 réponses

Avatar
Pascal Hambourg
Le 14/12/2018 à 21:24, Christophe PEREZ a écrit :
J'ai donc commandé ces 2 SSD, reçus il y a déjà un moment, mais je
n'avais pas encore pu me résoudre à arrêter le serveur pour les installer.
Aujourd'hui c'est chose faite. Ils sont en place, partitionnés comme tu
me l'avais suggéré.

Je n'avais rien suggéré mais juste listé les alternatives.
Par contre, je me pose une question concernant les HD desquels j'enlève
les données pour les mettre sur SSD.
Comme je l'avais indiqué, j'avais d'abord partitionné les disques, pour
ensuite associer les partitions par raid.

(...)
md1, md2, md3, md5, md6 et md7 passent sur le md0 des SSD. md8 reste.
Mais du coup, pour récupérer cette place et avoir md8 qui occupe toute la
place du raid, suis-je effectivement contraint (tel que je l'imagine) de :
- recopier tous md8 ailleurs
- détruire le raid
- refaire le raid non morcelé (éventuellement de la même façon que pour
les SSD)
- remettre mes données
Je ne vois pas d'autre solution que de déplacer les 600G, mais ça
m'aurait bien arrangé de ne pas avoir à le faire. Donc si une solution
miracle te saute aux yeux...

Il faudra bien déplacer les données puisque les partitions membres de
md8 sont, je suppose, à la fin des disques. Mais tu peux le faire
d'autres façons, par exemple :
Si md8 utilise un format de superbloc 1.1 ou 1.2 (situé au début des
partitions RAID) :
- arrêter md1 à 8
- supprimer les partition 1 à 7 des deux disques
- déplacer le début des partitions 8 au début des disques avec gparted
- assembler md8
- agrandir md8 (mdadm --grow --size=max)
ou bien :
- arrêter md1 à 7
- dégrader md8 en retirant une des partitions (mdadm --fail --remove)
- supprimer les partitions du disque correspondant
- créer une partition occupant tout le disque
- ajouter la partition à md8 (mdadm --add)
- attendre la fin de la resynchronisation (à suivre dans /proc/mdstat)
- recommencer avec l'autre disque
- agrandir md8
J'en profite pour signaler que l'utilisation de LVM aurait évité le
déplacement des données et l'arrêt ou la dégradation de md8 :
- arrêter md1 à 7
- supprimer les partitions 1 à 7 des deux disques
- créer deux partitions occupant l'espace libre sur les deux disques
- créer un ensemble RAID sur ces deux partitions
- formater l'ensemble RAID comme volume physique LVM
- ajouter le PV au groupe LVM dont fait partie md8
- agrandir ou créer les volumes logiques comme souhaité
Avatar
Christophe PEREZ
Le Sat, 15 Dec 2018 09:37:36 +0100, Pascal Hambourg a écrit :
Je n'avais rien suggéré mais juste listé les alternatives.

Et pourtant, j'ai bien fait gaffe à ne pas écrire "conseillé" :D
Il faudra bien déplacer les données puisque les partitions membres de
md8 sont, je suppose, à la fin des disques. Mais tu peux le faire
d'autres façons, par exemple :

Je garde tout ça sous le coude, et je m'y pencherai quand j'aurai réglé
mon problème de grub, et que je saurai booter sur les SSD.
Merci.
Avatar
Christophe PEREZ
Je reviens donc sur le sujet.
Le Sat, 15 Dec 2018 09:37:36 +0100, Pascal Hambourg a écrit :
Il faudra bien déplacer les données puisque les partitions membres de
md8 sont, je suppose, à la fin des disques. Mais tu peux le faire
d'autres façons, par exemple :
Si md8 utilise un format de superbloc 1.1 ou 1.2 (situé au début des
partitions RAID) :

ce qui n'est pas mon cas
ou bien :
- arrêter md1 à 7
- dégrader md8 en retirant une des partitions (mdadm --fail --remove)
- supprimer les partitions du disque correspondant
- créer une partition occupant tout le disque
- ajouter la partition à md8 (mdadm --add)
- attendre la fin de la resynchronisation (à suivre dans /proc/mdstat)
- recommencer avec l'autre disque

Jusqu'ici, je crois savoir
- agrandir md8

Là, j'ai un doute.
J"ai commencé des recherches qui parlent de resize2fs et de mdadm --grow /
dev/md2 --size=xxxxx
Je suis sur la bonne voix ? :)
Avatar
Christophe PEREZ
Le Sun, 06 Jan 2019 21:17:36 +0000, Christophe PEREZ a écrit :
Je suis sur la bonne voix ?

Il faut croire.
Tout s'est bien passé.
Avatar
Otomatic
Christophe PEREZ écrivait :
Je suis sur la bonne voix ? :)

Je n'ai rien entendu.
Avatar
Christophe PEREZ
Le Mon, 07 Jan 2019 19:30:32 +0100, Otomatic a écrit :
Je n'ai rien entendu.

J'avoue, c'est moche !
Avatar
Pascal Hambourg
Le 06/01/2019 à 22:17, Christophe PEREZ a écrit :
Le Sat, 15 Dec 2018 09:37:36 +0100, Pascal Hambourg a écrit :
Il faudra bien déplacer les données puisque les partitions membres de
md8 sont, je suppose, à la fin des disques. Mais tu peux le faire
d'autres façons, par exemple :
Si md8 utilise un format de superbloc 1.1 ou 1.2 (situé au début des
partitions RAID) :

ce qui n'est pas mon cas

Et c'est dommage, car les autres types de superblocs (0.9, 1.0) sont
situés à la fin des partitions RAID, donc agrandir les partitions
implique de déplacer les superblocs. On ne peut pas juste arrêter
l'ensemble RAID pour agrandir les partitions, car les superblocs ne
seraient plus à la fin et l'ensemble ne pourrait plus être assemblé. Les
deux façons de réaliser cela ne sont pas exemptes de risque :
- soit on dégrade l'ensemble deux fois (méthode exposée ci-dessous), ce
qui le rend vulnérable à une défaillance matérielle du disque actif
pendant les deux reconstructions.
- soit on agrandit les partitions à chaud pendant que l'ensemble RAID
est actif (si c'est seulement possible), et on peut ensuite l'agrandir à
chaud. Mais en cas de pépin entre l'agrandissement des partitions et
l'agrandissement de l'ensemble (qui replace les superblocs à la fin des
partitions), on se retrouve dans la situation à éviter mentionnée ci-dessus.
ou bien :
- arrêter md1 à 7
- dégrader md8 en retirant une des partitions (mdadm --fail --remove)
- supprimer les partitions du disque correspondant
- créer une partition occupant tout le disque
- ajouter la partition à md8 (mdadm --add)
- attendre la fin de la resynchronisation (à suivre dans /proc/mdstat)
- recommencer avec l'autre disque

Jusqu'ici, je crois savoir
- agrandir md8

Là, j'ai un doute.
J"ai commencé des recherches qui parlent de resize2fs et de mdadm --grow /
dev/md2 --size=xxxxx
Je suis sur la bonne voix ? :)