Travailler avec LVM

LVM est un système de gestion de l'espace disque avec un degré d'abstraction supplémentaire par rapport à la couche physique. Il permet une gestion souple et efficace de l'espace disque, une tolérance aux pannes de données, et aide également à résoudre diverses tâches liées à la sauvegarde des données, au déploiement de systèmes de stockage pour les environnements de virtualisation, etc.

Dans cet article, nous verrons comment installer et utiliser LVM sous Linux.

Installation de LVM

LVM est généralement installé avec votre système d'exploitation Linux, mais si ce n'est pas le cas, vous pouvez l'installer à l'aide du gestionnaire de paquets de votre distribution Linux. Pour la plupart des distributions, la commande d'installation de LVM se présente comme suit :

Pour Debian ou Ubuntu :

sudo apt-get install lvm2

Pour CentOS, Fedora et RHEL :

sudo yum install lvm2

Création de volumes physiques

Avant de créer des volumes logiques, vous devez créer des volumes physiques (pv). Un volume physique est un périphérique virtuel, tel qu'un disque dur ou une partition de disque, que LVM utilise pour créer des volumes logiques.

Remarque : il est recommandé de créer des volumes physiques au-dessus du disque dur sans utiliser de partitionnement, car sinon le processus de redimensionnement dynamique de LVM devient plus compliqué à long terme.

Pour créer un volume physique, procédez comme suit :

Utilisez la commande pvcreate pour créer un volume physique :

sudo pvcreate /dev/sdb

Où /dev/sdb est le chemin d'accès au périphérique physique.

2. Vérifiez le volume physique créé à l'aide de la commande pvdisplay:

sudo pvdisplay

Dans la sortie, vous verrez des informations sur le volume physique créé.

Création d'un groupe de volumes physiques

Un groupe de volumes physiques (vg) est un conteneur logique qui peut combiner plusieurs volumes physiques en un groupe commun. Cependant, rien n'empêche de l'utiliser au sein d'un seul volume physique. Pour créer un groupe de volumes physiques, procédez comme suit

1. utilisez la commande vgcreate pour créer un groupe de volumes physiques :

sudo vgcreate vg0 /dev/sdb
# либо для нескольких pv
sudo vgcreate vg0 /dev/sdb /dev/sdc

Création d'un volume logique

Vous pouvez maintenant créer des volumes logiques, qui peuvent être représentés de manière conventionnelle comme des partitions sur un disque dur.

1. Créez un volume logique dans le groupe de volumes physiques à l'aide de la commande lvcreate :

sudo lvcreate -n lv0 -L 10G vg0   # Создание логического тома lv0 размером 10 ГБ в группе физических томов vg0

Où -n est le nom du volume logique, -L est la taille du volume logique.

2. Vérifiez le volume logique créé à l'aide de la commande lvdisplay:

sudo lvdisplay

Vous obtiendrez des informations sur le volume logique créé.

3. Créez un système de fichiers sur le volume logique à l'aide de la commande mkfs:

sudo mkfs.ext4 /dev/vg0/lv0

4. créer un point de montage pour le nouveau système de fichiers à l'aide de la commande mkdir:

sudo mkdir /mnt/lv0

5. monter le nouveau système de fichiers sur le point de montage à l'aide de la commande mount :

sudo mount /dev/vg0/lv0 /mnt/lv0

Vous pouvez maintenant utiliser le nouveau système de fichiers situé sur le volume logique.

Utilisation de LVM

LVM propose de nombreuses commandes pour gérer les volumes physiques, les groupes de volumes physiques et les volumes logiques. Certaines des commandes les plus couramment utilisées sont énumérées ci-dessous :

  • pvcreate: Crée un nouveau volume physique.
  • pvdisplay: Affiche des informations sur les volumes physiques.
  • vgcreate: Crée un nouveau groupe de volumes physiques.
  • vgextend: Ajouteun volume physique à un groupe de volumes physiques : Ajoute un volume physique à un groupe de volumes physiques.
  • vgdisplay: Affiche des informations sur les groupes de volumes physiques.
  • lvcreate: Crée un nouveau volume logique.
  • lvextend: Augmente la taille d'un volume logique.
  • lvdisplay: Affiche des informations sur les volumes logiques.

LVM vous permet également d'augmenter la taille des volumes physiques, des groupes de volumes physiques et des volumes logiques pendant que le système fonctionne. Il existe des commandes correspondantes à cet effet :

  • pvresize: Redimensionne un volume physique.
  • vgresize: Redimensionne un groupe de volumes physiques.
  • lvresize: Modifie la taille d'un volume logique.

En exécutant l'une des commandes ci-dessus avec le paramètre --help, vous pourrez vous familiariser avec les paramètres supplémentaires des arguments de la commande.

Contrôler la taille d'un volume logique :

Par exemple, pour augmenter de 5 Go la taille du volume logique lv0 dans le groupe de volumes physiques vg0, utilisez la commande :

sudo lvresize -L +5G /dev/vg0/lv0

ou tout l'espace libre restant sur le volume physique :

sudo lvresize -l +100%FREE /dev/vg0/lv0
Notez que le dernier exemple utilise la lettre l en majuscule, alors que l'exemple précédent utilise la lettre L en majuscule.
Dans ce format, vous avez la possibilité de définir un pourcentage de l'espace libre restant sur le volume physique à ajouter au volume logique.

Vous pouvez ensuite redimensionner le système de fichiers à la volée à l'aide de la commande resize2fs:

sudo resize2fs /dev/vg0/lv0

Instantanés LVM

LVM sous Linux prend en charge un mécanisme d'instantanés qui permet de créer des copies exactes de volumes logiques à un moment précis. Il s'agit d'une fonctionnalité utile qui permet de sauvegarder l'état des données à un moment donné et de restaurer cet état si nécessaire.

La technologie des instantanés LVM fonctionne de la manière suivante : un instantané est créé en sauvegardant l'état d'un volume logique au moment de la création de l'instantané. Une fois l'instantané créé, toutes les modifications apportées au volume logique d'origine sont stockées dans un espace disque différentiel supplémentaire. Cela peut aider à sauvegarder et à restaurer des données au moment de la création de l'instantané.

Voyons maintenant comment créer et utiliser le mécanisme d'instantané LVM.

Création d'un instantané LVM

La création d'un instantané LVM s'effectue à l'aide de la commande lvcreate. Par exemple, pour créer un instantané du volume logique myvolume dans le groupe de volumes myvg, utilisez la commande suivante :

sudo lvcreate --snapshot --name myvolume_snap --size 1G /dev/myvg/myvolume

Cette commande créera un instantané du volume logique myvolume nommé myvolume_snap d'une taille de 1 Go.

Notez que vous devez spécifier la taille de l'instantané pour créer un instantané.

Utilisation d'un instantané LVM

Après avoir créé un instantané, vous pouvez l'utiliser pour effectuer diverses tâches. Par exemple, vous pouvez utiliser l'instantané pour restaurer des données ou pour créer une sauvegarde. Utilisez la commande suivante pour monter l'instantané sur le système de fichiers :

sudo mount /dev/myvg/myvolume_snap /mnt/snapshot

Ici, /mnt/snapshot est le point de montage où l'instantané sera monté. Une fois l'instantané monté, vous pouvez copier des données à partir de celui-ci ou l'utiliser pour récupérer des données.

Suppression d'un instantané LVM

Une fois qu'un instantané a été utilisé, il peut être supprimé. Pour supprimer un instantané, utilisez la commande lvremove. Par exemple, pour supprimer l'instantané myvolume_snapshot dans le groupe de volumes myvg, utilisez la commande suivante :

sudo lvremove /dev/myvg/myvolume_snap

Notez que si vous supprimez un instantané, toutes les données qui ont été modifiées après la création de l'instantané seront perdues.

Pools restreints

Le Thin pool est un mécanisme LVM qui permet de créer un volume logique qui n'utilise que la partie des unités de disque physique qui contient réellement des données. Cela permet de réduire la consommation d'espace disque et de gérer l'espace disque plus efficacement. Cette fonctionnalité de LVM est devenue très courante dans les systèmes de virtualisation en tant que solution pratique et économique pour allouer de l'espace disque aux machines virtuelles et aux conteneurs. Voyons maintenant comment créer un thin pool dans LVM.

Création d'un thin pool LVM

Le thin pool est créé à l'aide de la commande lvcreate. Par exemple, pour créer un thin pool mythinpool dans le groupe de volumes myvg sur les volumes physiques /dev/sdb et /dev/sdc, utilisez la commande suivante :

sudo lvcreate -L 50G -T myvg/mythinpool /dev/sdb /dev/sdc

Ici, -L spécifie la taille du thin pool en gigaoctets et -T indique que nous créons un thin pool. Cette commande créera un thin pool mythinpool de 50 Go.

Création d'un thin volume LVM

Un thin volume est un volume logique créé à l'intérieur d'un thin pool. Les thin volumes peuvent être créés à l'aide de la commande lvcreate. Par exemple, pour créer un thin volume mythinvolume de 10 Go dans le thin pool mythinpool du groupe de volumes myvg, utilisez la commande suivante :

sudo lvcreate -V 10G -T myvg/mythinpool -n mythinvolume

Ici, -V spécifie la taille du volume léger en gigaoctets et -n spécifie le nom du volume léger. Cette commande créera un thin volume mythinvolume de 10 Go dans le thin pool mythinpool.

Utilisation du thin volume LVM

Un volume fin peut être utilisé comme un volume logique normal. Par exemple, pour créer un système de fichiers ext4 sur un thin volume mythinvolume, utilisez la commande suivante :

sudo mkfs.ext4 /dev/myvg/mythinvolume

Une fois le système de fichiers du volume fin créé, il peut être monté et utilisé comme un volume logique normal.

Le thin pool permet de créer des configurations de stockage plus souples et plus efficaces sous Linux. Le thin pool est utilisé en combinaison avec le thin volume pour une utilisation optimale de l'espace disque.

How useful was this article?

VAT

  • Other

    Other

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    %
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • Other
  • canada
  • poland
  • european-union
  • france
  • germany
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria