Comment créer un volume logique LVM sur un volume EBS complet?

Date de la dernière mise à jour : 24/06/2020

Comment utiliser le gestionnaire de volumes logiques (LVM) pour créer un volume logique (LV) sur l'ensemble de mon volume Amazon Elastic Block Store (Amazon EBS) ?

Brève description

LVM vous permet d'allouer de l'espace disque et de réduire, de remettre en miroir et de redimensionner des volumes logiques. Avec LVM, vous pouvez allouer un volume EBS ou un ensemble de volumes EBS à un ou plusieurs volumes physiques.

Pour utiliser LVM sur votre volume EBS et étendre les partitions :

  1. Créez des volumes physiques (PV) à partir de votre volume EBS.
  2. Créez un groupe de volumes (VG) et ajoutez les volumes physiques dans le groupe de volumes.
  3. Créez un volume logique (LV) et un répertoire de montage sur le LVM.
  4. Créez et montez un système de fichiers.
  5. Redimensionnez le volume logique.

Remarque : pour plus d'informations sur l'utilisation de LVM avec des instances Nitro, consultez le chapitre 11. LVM (Logical Volume Manager) sur le site Web du portail client Red Hat.

Solution

Remarque : si vous avez déjà créé LVM sur votre volume et que vous l'avez monté pour l'utiliser, suivez les instructions à partir de la page Extension du volume logique.

Créer des volumes physiques à partir de vos volumes EBS

L'unité de stockage physique sous-jacente d'un volume logique LVM est un périphérique de stockage en mode bloc tel qu'une partition d'un volume EBS ou un volume EBS entier. Vous pouvez créer un PV sur un seul volume EBS ou plusieurs volumes EBS.

Remarque : les instances Nitro exposent les volumes en tant que périphériques NVMe. Les noms de dispositif de stockage en mode bloc suivent le modèle /dev/nvme1n1, /dev/nvme2n1, /dev/nvme3n1 et ainsi de suite. Si vous utilisez une instance Nitro, remplacez les noms de dispositif dans les étapes suivantes par le nom de dispositif approprié. Pour plus d'informations sur l'attribution de noms de dispositif, consultez Considérations relatives aux noms de dispositif.

1.    Ouvrez la console Amazon Elastic Compute Cloud (Amazon EC2).

2.    Créez votre volume EBS, puis attachez le volume à votre instance.

3.    Utilisez la commande pvcreate pour créer un volume physique. L'exemple suivant utilise un volume, /dev/xvdf pour créer le volume physique.

$ sudo pvcreate /dev/xvdf
  Physical volume "/dev/xvdf" successfully created.

Utilisez la commande pvs ou pvdisplay pour afficher les informations du volume physique :

$ sudo pvs
  PV         VG Fmt  Attr PSize  PFree 
  /dev/xvdf      lvm2 ---  10.00g 10.00g

Créer des groupes de volumes et ajouter les volumes physiques dans le groupe de volumes

Utilisez la commande vgcreate pour créer un groupe de volumes afin de combiner les nouveaux volumes physiques. L'exemple suivant utilise un volume physique pour créer le groupe de volumes Dock.

$ sudo vgcreate Dock /dev/xvdf                     
  Volume group "Dock" successfully created

Utilisez vgs ou vgdisplay pour afficher les informations du nouveau groupe de volumes :

 

$ sudo vgs
  VG             #PV #LV #SN Attr   VSize  VFree 
  Dock           1   0   0 wz--n- <10.00g <10.00g

Créer un volume logique (LV) et un répertoire de montage

1.    Utilisez la commande lvcreate pour créer des volumes logiques (partitions) à partir de votre groupe de volumes. L'exemple suivant crée le volume logique de 9 Go, station1, à partir du groupe de volumes Dock.

$ sudo lvcreate -n station1 -L 9G Dock
  Logical volume "station1" created.

Utilisez la commande lvs ou lvdisplay pour afficher les informations du volume logique :

$ sudo lvs
  LV          VG   Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  station1   Dock -wi-a----- 9.00g 

2.    Utilisez la commande mkdir pour créer un répertoire de montage. L'exemple suivant crée le répertoire /mnt1.

$ sudo mkdir /dev/Dock/station1 /mnt1

Créer et monter un système de fichiers

1.    Utilisez les commandes suivantes pour créer un système de fichiers et monter les partitions à utiliser :

Exécutez la commande mkfs -t pour créer le système de fichiers. Remarque : remplacez xfs par votre type de système de fichiers, s'il est différent. Par exemple, ext2, ext3 ou ext4.

 

$ sudo mkfs -t xfs /dev/Dock/station1

Exécutez la commande lsblk -f pour vérifier la création du nouveau système de fichiers. Remarque : le type de système de fichiers que vous avez créé à l'étape précédente s'affiche sous FSTYPE.

$ lsblk -f
NAME                         FSTYPE      LABEL UUID                                   MOUNTPOINT
xvda                                                                                  
├─xvda1                                                                               
└─xvda2                      xfs               66e5e079-770e-4359-a9da-5205c3d8d5af   /
xvdf                         LVM2_member       YeDuj5-YHmY-U0Hx-xJyt-R1BP-SPIj-3uCcGF 
└─Dock-station1              xfs              Feiuj5-kH9Y-UxHx-zJ9t-R7cP-5PIY-7ugcuM     

Exécutez la commande mount pour monter le système de fichiers dans le répertoire de montage que vous avez créé à l'étape précédente :

$ sudo mount /dev/Dock/station1 /mnt1 

2.    Modifiez les options de montage dans le fichier /etc/fstab afin que le nouveau montage persiste après le redémarrage.

Remarque : remplacez xfs par votre type de système de fichiers dans l'entrée /etc/fstab s'il est différent.

/dev/Dock/station1 /mnt1  xfs     defaults,nofail   0   0

Étendre le volume logique

Deux options s'offrent à vous pour étendre les volumes logiques :

  • Option 1 : augmenter la taille du volume EBS existant.
  • Option 2 : ajouter des volumes EBS supplémentaires à votre groupe de volumes.

Remarque : lorsque vous augmentez la taille de votre volume existant, les modifications de taille sont appliquées en quelques secondes lorsque le volume passe à l'état d'optimisation. Les performances du volume sont affectées lorsqu'il est à l'état d'optimisation, mais ne sont pas inférieures à la spécification de configuration source. En fonction de votre type de volume, les changements de performances peuvent prendre de quelques minutes à quelques heures. Pour plus d'informations, consultez Surveillance de l’avancement des modifications de volume.

Option 1 : augmenter la taille du volume EBS existant

1.    Modifiez la taille du volume EBS existant.

2.    Exécutez la commande pvresize pour redimensionner le volume physique :

$ sudo pvresize /dev/xvdf
  Physical volume "/dev/xvdf" changed
  1 physical volume(s) resized / 0 physical volume(s) not resized 

Utilisez pvs ou pvdisplay pour afficher les informations du volume physique :

$ sudo pvs
  PV         VG            Fmt  Attr PSize   PFree  
  /dev/xvdf  Dock          lvm2 a--  <20.00g <11.00g

Utilisez vgs ou vgdisplay pour afficher les informations du groupe de volumes :

$ sudo vgs
  VG            #PV #LV #SN Attr   VSize   VFree  
  Dock            1   1   0 wz--n- <20.00g <11.00g

3.    Exécutez la commande lvextend pour étendre le volume logique :

$ sudo lvextend -L 19G /dev/Dock/station1

Utilisez la commande lvs ou lvdisplay pour afficher les informations du volume logique :

$ sudo lvs
  LV        VG            Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  station1  Dock          -wi-a----- 19.00g                                  

4.    Étendez le système de fichiers :

Remarque : en fonction de votre cas d'utilisation, suivez les étapes pour les systèmes de fichiers XFS ou Ext2, Ext3 et Ext4.

Systèmes de fichiers Ext2, Ext3 et Ext4 :

$ sudo resize2fs /dev/Dock/station1

Systèmes de fichiers XFS:

$ sudo yum install xfsprogs
$ sudo xfs_growfs /dev/Dock/station1

Option 2 : ajouter un volume EBS supplémentaire au groupe de volumes

1.    Créez un autre volume EBS de 10 Go et attachez le volume à l'instance. Dans l'exemple suivant, le nom du dispositif de stockage en mode bloc du volume est /dev/xvdi.

$ sudo pvcreate /dev/xvdi

2.    Utilisez la commande vgextend pour étendre le groupe de volumes et ajouter le nouveau volume. L'exemple suivant étend le groupe de volumes Dock pour inclure le volume /dev/xvdi.

$ sudo vgextend Dock /dev/xvdi
  Physical volume "/dev/xvdi" successfully created.
  Volume group "Dock" successfully extended

Pour confirmer l'extension, utilisez la commande vgs ou vgdisplay. L'exemple suivant indique qu'il existe désormais deux PV dans le groupe de volumes Dock .

$ sudo vgs
  VG            #PV #LV #SN Attr   VSize   VFree   
  Dock            2   1   0 wz--n-  29.99g   20.99g

3.    Utilisez la commande lvextend pour étendre le volume logique :

$ sudo lvextend -L 29G /dev/Dock/station1

4.    Redimensionnez le système de fichiers.

Remarque : en fonction de votre cas d'utilisation, suivez les étapes pour les systèmes de fichiers XFS ou Ext2, Ext3 et Ext4.

Systèmes de fichiers Ext2, Ext3 et Ext4 :

$ sudo resize2fs /dev/Dock/station1

Systèmes de fichiers XFS:

$ sudo xfs_growfs /dev/Dock/station1

Cet article vous a-t-il été utile ?

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?