LVM (Logical Volume Management) est un bon moyen d'utiliser plus efficacement l'espace disque sur le serveur. L'un des avantages de LVM est que nous pouvons prendre des instantanés de partitions basées sur lvm et créer des volumes logiques finement provisionnés.
Le Thin Provisioning nous permet de créer des volumes logiques plus grands que l'espace disque disponible. Pour utiliser le provisionnement léger, nous devons créer un pool léger à partir d'un groupe de volumes, puis nous pouvons créer des volumes logiques à partir de ce pool léger.
Dans cet article, nous allons montrer comment créer étape par étape des volumes logiques à provisionnement fin sous Linux.
Supposons que nous ayons un serveur Linux (CentOS 7.x / RHEL 7.x) et que nous ayons attribué un nouveau disque de 10 Go. Nous allons créer un pool dynamique de 10 Go. À partir de ce pool dynamique, nous allons d'abord créer deux volumes logiques de 4 Go chacun et un volume logique de 1 Go.
Reportez-vous aux étapes suivantes pour créer des volumes logiques finement provisionnés
Étape 1) Créez le volume physique à l'aide de la commande pvcreate
Supposons que le nouveau disque est détecté comme /dev/sdb. Exécutez la commande pvcreate ci-dessous pour créer un volume physique sur le disque.
[[email protected] ~]# pvcreate /dev/sdb Physical volume "/dev/sdb" successfully created [[email protected] ~]#
Étape 2) Créer un groupe de volumes à l'aide de la commande vgcreate
Exécutez la commande vgcrereate pour créer un volume avec le nom 'volgrp'
[[email protected] ~]# vgcreate volgrp /dev/sdb Volume group "volgrp" successfully created [[email protected] ~]#
Étape 3) Créer un pool léger à partir du groupe de volumes
Le pool léger est comme un volume logique créé à l'aide de la commande lvcreate
Syntaxe :
# lvcreate –L
Où -L est utilisé pour spécifier la taille du pool et -T spécifie le thin pool
[[email protected] ~]# lvcreate -L 9.90G -T volgrp/lvpool Rounding up size to full physical extent 9.90 GiB Logical volume "lvpool" created. [[email protected] ~]#
Vérifiez la taille du pool léger
[[email protected] ~]# lvs /dev/volgrp/lvpool LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvpool volgrp twi-a-tz-- 9.90g 0.00 0.59 [[email protected] ~]#
Étape 4) Créer des volumes logiques à partir d'un pool léger
Créons deux volumes logiques de chaque taille 4 Go
Syntaxe :
# lvcreate -V
[[email protected] ~]# lvcreate -V 4G -T volgrp/lvpool -n node1 Logical volume "node1" created. [[email protected] ~]# lvcreate -V 4G -T volgrp/lvpool -n node2 Logical volume "node2" created. [[email protected] ~]#
Vérifiez l'état du pool léger et des volumes logiques à l'aide de la commande lvs ci-dessous,
[[email protected] ~]# lvs /dev/volgrp/lvpool && lvs /dev/volgrp/node{1..2} LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvpool volgrp twi-aotz-- 9.90g 0.00 0.65 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert node1 volgrp Vwi-a-tz-- 4.00g lvpool 0.00 node2 volgrp Vwi-a-tz-- 4.00g lvpool 0.00 [[email protected] ~]#
Étape 5) Formater les volumes logiques à allocation dynamique
Utilisez la commande mkfs pour créer un système de fichiers (ext4) sur les volumes logiques créés ci-dessus.
[[email protected] ~]# mkfs.ext4 /dev/volgrp/node1 [[email protected] ~]# mkfs.ext4 /dev/volgrp/node2 [[email protected] ~]# mkdir /opt/vol1 && mkdir /opt/vol2 [[email protected] ~]# mount /dev/volgrp/node1 /opt/vol1/ && mount /dev/volgrp/node2 /opt/vol2/ [[email protected] ~]#
Vérifiez les points de montage à l'aide de la "commande df"
[[email protected] ~]# df -Th /opt/vol1/ /opt/vol2/ Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/volgrp-node1 ext4 3.9G 16M 3.6G 1% /opt/vol1 /dev/mapper/volgrp-node2 ext4 3.9G 16M 3.6G 1% /opt/vol2 [[email protected] ~]#
Écrivez des données dans le système de fichiers créé ci-dessus à l'aide de la commande dd
[[email protected] ~]# dd if=/dev/zero of=/opt/vol1/file.txt bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 3.26031 s, 329 MB/s [[email protected] ~]# dd if=/dev/zero of=/opt/vol2/file.txt bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 2.70821 s, 396 MB/s [[email protected] ~]#
Vérifiez maintenant la taille des volumes logiques à allocation dynamique à l'aide de la commande lvs.
Comme nous pouvons le voir, les deux volumes logiques consomment 29 % de données.
Essayez maintenant de créer un troisième volume logique à partir du thin pool.
[[email protected] ~]# lvcreate -V 1G -T volgrp/lvpool -n node3 Logical volume "node3" created. [[email protected] ~]#
Scénario :
Eh bien, à partir de maintenant, nous avons consommé tout l'espace du pool mince en volumes logiques. Si quelqu'un me demande de créer un autre volume logique de taille 2G.
Puis-je créer un nouveau volume logique à partir du thin pool… ?
Que va-t-il se passer ? Prend-il en charge les surengagements… ?
La réponse est oui, nous pouvons créer un volume logique car il prend en charge le surengagement ou le sur-approvisionnement, mais lors de la création d'un volume logique, il lancera un message d'avertissement. L'exemple est illustré ci-dessous :
[[email protected] ~]# lvcreate -V 2G -T volgrp/lvpool -n node4 WARNING: Sum of all thin volume sizes (11.00 GiB) exceeds the size of thin pool volgrp/lvpool and the size of whole volume group (10.00 GiB)! For thin pool auto extension activation/thin_pool_autoextend_threshold should be below 100. Logical volume "node4" created. [[email protected] ~]#
Maintenant, vérifiez à nouveau l'état du volume logique
Étape 6) Étendez la taille du thin pool à l'aide de la commande lvextend
Supposons qu'un autre disque de 5G soit attribué au serveur (/dev/sdc), nous utiliserons ce disque pour étendre le thin pool.
Reportez-vous aux étapes suivantes
Créer le volume physique et étendre le groupe de volumes (volgrp)
[[email protected] ~]# pvcreate /dev/sdc Physical volume "/dev/sdc" successfully created [[email protected] ~]# vgextend volgrp /dev/sdc Volume group "volgrp" successfully extended [[email protected] ~]#
Comme le thin pool est un volume logique, nous pouvons donc étendre sa taille par la commande lvextend
[[email protected] ~]# lvextend -L+5G volgrp/lvpool
Vérifiez maintenant la taille du pool léger, elle devrait être d'environ 15 Go.
Remarque :Nous ne pouvons pas réduire ou rétrécir le pool mince, seule l'extension est prise en charge
C'est tout de ce guide, j'espère que vous l'avez trouvé instructif. S'il vous plaît partagez vos commentaires et commentaires.
Lire aussi :Les 5 meilleurs outils pour surveiller l'utilisation et les partitions de votre disque Linux