Aller au contenu

Remplacer un disque dans un Volume Group

disque durNous allons voir comment remplacer un disque dans un Volume Group.

Cette opération se fait en trois étapes :
- on ajoute le nouveau disque dur au Volume Group,
- on déplace les données de l'ancien disque vers le nouveau,
- puis on réalise l'échange physique des disques.

L'opération s'effectue au moyen de quelques commandes simples.

Introduction

Avant de commencer, je me dois de rappeler que toute manipulation sur des disques contenant des données comporte des risques. Je vous recommande donc fortement de faire des sauvegardes de vos données avant de vous lancer.

Connaître les disques dur faisant partie d'un Volume Group

# pvdisplay
Cette commande nous permet de connaître la liste des Volume Groups ainsi que celle des disques durs qui les composent.

Identifier avec certitude le disque concerné

Nous souhaitons remplacer le disque /dev/sdb qui fait partie du Volume Group VGData. Nous allons, tout d'abord, utiliser quelques commandes nous permettant d'identifier physiquement et avec certitude le disque dur concerné.

# hdparm -i /dev/sdb
Cette commande nous permet d'obtenir le numéro de série du disque, qu'il faudra comparer avec l'étiquette figurant sur le disque dur.

Eteindre la machine pour mettre en place le nouveau disque

# shutdown -h now
Petite astuce si vous n'avez plus de port SATA disponible sur votre carte mère : vous pouvez utiliser celui sur lequel le lecteur de CD/DVD est branché (c'est ce que j'ai fait, et ça ne pose aucun problèmes).

La procédure à proprement parler

Il est maintenant temps de rallumer la machine pour procéder à l'opération.

Le nouveau disque est identifié par /dev/sdf dans notre système. Nous allons commencer par créer un volume physique sur notre disque.

# pvcreate --verbose /dev/sdf
Ensuite, nous allons ajouter notre volume physique au Volume Group VGData
# vgextend --verbose VGData /dev/sdf
Puis viens le moment de déplacer les données. Cette opération est, bien entendu, la plus longue.
# pvmove --verbose /dev/sdb1 /dev/sdf
Notez que le volume physique de départ est /dev/sdb1, cela tient au fait que le disque a été partitionné, et c'est la première partition qui représente le volume physique attaché au Volume Group. Un volume physique peut également être un disque non partitionné, ce sera le cas de notre nouveau disque.

Maintenant que le déplacement des données est terminé, il faut retirer l'ancien disque du Volume Group.

# vgreduce --verbose VGData /dev/sdb1

Echange physique des disques

Il ne reste plus qu'à éteindre la machine pour retirer physiquement l'ancien disque et mettre le nouveau à sa place.

Un dernier conseil, attendez que les disques refroidissent, parce qu'après le travail que nous leur avons demandé, ils sont sans doute très chauds.

9 thoughts on “Remplacer un disque dans un Volume Group

  1. avatarRemi

    Et il y en a encore pour ne pas utiliser LVM et préférer le système obsolète des partitions... ?

    Merci pour cette preuve supplémentaire de la souplesse de LVM. Je l'ai déjà expérimenté. à chaud sans redémarrer (bon avec un baie de disque bien sur) : ça marche du tonnerre.

    +

  2. avatarMarcet

    Ca marche du tonnerre en effet. Je suis en train de remplacer mon 3eme disque d'une grappe de 4 en ce moment même.

    Dommage que l'application system-config-lvm ne soit pas vraiment à la hauteur. Je ne m'en sert que pour une chose : étendre un volume logique. Afin que le nouveau disque soit utilisé à 100 % de sa capacité.

  3. avatarRemi

    > Afin que le nouveau disque soit utilisé à 100 % de sa capacité.
    Pas sur que cela soit une bonne idée.

    En effet, l'un des atouts majeurs de LVM est d'autoriser le redimensionnement, à chaud, des LV (+ FS). Mais uniquement pour agrandir, la réduction doit se faire à froid.

    Donc une bonne habitude, c'est de tailler les LV à la taille utile et de les agrandir en cas de nouveaux besoins. Donc toujours conserver un espace libre. Perso je dois avois 15 LV et seulement 60% d'espace alloué (sur ma machine perso, mais c'est encore plus vrai sur les serveurs).

    +

  4. avatarMarcet

    Tu as parfaitement raison, mais en l'occurrence, ce groupe de volumes est utilisé pour obtenir un volume logique disposant d'un très grand espace contigu destiné à stocker des fichiers de même nature.

    Le / et le /home sont sur un groupe de volumes séparé.

  5. avatarriri

    En effet la souplesse de LVM nous permet d'oublier que l'on dispose de n disques. (du SAN en local 🙂

    S'il s'agit de disque dur SATA il n'est pas nécessaire d'éteindre la machine pour enlever ou mettre physiquement les disques.

  6. avatarMarcet

    riri: S’il s’agit de disque dur SATA il n’est pas nécessaire d’éteindre la machine pour enlever ou mettre physiquement les disques.

    A ma connaissance, ce n'est possible seulement si le port SATA est configuré en AHCI (corrigez-moi si je me trompe).

  7. avatarriri

    Marcet: A ma connaissance, ce n’est possible seulement si le port SATA est configuré en AHCI (corrigez-moi si je me trompe).

    Oui, en tous cas configuré dans le BIOS.

  8. avatardroidrider

    Merci beaucoup pour ces eclaircicement. J'avais besoin de changer de LV qui etais dans le VG pve-data pour y mettre une LVM que j'avais mis dans un RAID5 logiciel. Une fois le pvmove terminer je pourrais enfin mettre mes VMs dans la grappe RAID. J'espère que j'obtiendrai de meilleurs I/O.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.