Les volumes LVM sur Proxmox VE
Au sommaire :
- 1-Qu'est-ce que le LVM ?
- 2-Création du groupe de volumes
- 3-Création du pool de stockage
- 4-Ajout du LVM-Thin dans PVE
1-Qu'est-ce que le LVM ?
Un LVM (Logical Volume Manager) permet la création et la gestion de volumes logiques.
Voyez ces derniers comme des disques virtuels, une abstraction des disques physiques.
Vous pouvez entre autres :
- Créer plusieurs volumes au sein d'un pool de stockage
- Formater ces volumes en différents format
- Les diminuer ou les agrandir sans reformater
- Ajouter des disques physique au pool de stockage
Pour plus d'informations.
2-Création du groupe de volumes
Dans ce tutoriel, je vais mettre en place un pool de stockage LVM-Thin (Thin Provisionning).
L'avantage du LVM-Thin c'est qu'il alloue de l'espace disque en petite quantité donc par exemple, au lieu de monopoliser 50 Go pour le disque d'une machine virtuelle, le disque reflétera sa taille réelle à l'instant T (uniquement les fichiers écris, pas la taille finale).
On va prendre un cas concret. J'ai un Dell Optiplex 7020 SFF (16 Go de RAM, Xeon E3-1265l v3) qui dispose de 3 disques :
- sda : un SSD 128 Go qui est le disque principal de Proxmox VE
- sdb : un disque dur de 8 To qui me sert à stocker des données statiques (vidéos, musiques, jeux etc.)
- nvme0n1 : le NVME de 480 Go que j'ai connecté au port PCIE du PC
Si je tape la commande "lsblk", je trouve bien les 3 disques.
J'ai besoin de ce NVME pour pouvoir stocker mes conteneurs et machines virtuelles ainsi que gagner en performances pour en lancer plusieurs simultanément car le port PCIE à un débit supérieur au port SATA.
Je vais donc créer un groupe de volume qui sera nommé "vg_thin" avec comme cible le NVME qui se trouve dans /dev/nvme0n1".
vgcreate -s 32M vg_thin /dev/nvme0n1
Si je tape la commande "vgs", je trouve bien le groupe "vg_thin" dans la liste en plus du "pve" que j'ai créer à l'installation du serveur PVE.
vgs
3-Création du pool de stockage
Enfin, je dois créer un pool en "thin provisionning" que je nommerai "homelab_pool".
Il monopolisera l'ensemble du NVME et servira à stocker des conteneurs ainsi que des machines virtuelles.
lvcreate -L 465G --thinpool homelab_pool vg_thin
Donc j'ai créer
- Un groupe de volume nommé "vg_thin"
- Un pool de stockage nomm" "homelab_pool"
Dans un autre cas, j'aurai pu :
- Créer deux ou trois pools de stockage (150 Go chacun, 450 Go le tout)
- Créer des volumes dans ces pools
- Monter et formater ces derniers en n'importe quel format
Mais c'est pas l'objectif de ce tutoriel et PVE ne reconnais que les groupes de volume (LVM) et les pools de stockage (LVM-Thin) dans le cadre du stockage des machines virtuelles et des conteneurs.
4-Ajout du LVM-Thin dans PVE
Allez dans Datacenter\Storage\LVM-Thin.
- ID : indiquez un nom à votre LVM-Thin
- Volume group : le groupe "vg_thin" que j'ai créer précédemment
- Thin Pool : le pool "homelab_pool" que j'ai également créer
Bingo!!!! Le LVM-Thin apparait bien comme espace de stockage.