Aller au contenu

LXD : le stockage

Le stockage de LXD repose sur des pools (un emplacement et un pilote) qui contiennent les disques des instances, les images et des volumes personnalisés. Les exemples utilisent des noms génériques (default, donnees).

Fenêtre de terminal
lxc storage list # liste les pools
lxc storage show default # configuration d'un pool
lxc storage info default # espace utilisé et disponible
lxc storage create pool2 dir # nouveau pool avec le pilote « dir »
lxc storage create pool3 zfs size=30GiB # pool ZFS de 30 Gio (fichier loop)
lxc storage delete pool3 # supprime (le pool doit être vide)
Pilote Caractéristiques
dir Le plus simple (dossier), sans snapshots ni copies rapides
zfs Snapshots et copies instantanés, quotas de taille
btrfs Snapshots et copies instantanés, quotas de taille
lvm Volumes logiques, snapshots, quotas de taille

Le pilote se choisit à la création du pool et ne se change pas ensuite.

Un volume personnalisé existe indépendamment des instances et peut être rattaché à l’une d’elles.

Fenêtre de terminal
lxc storage volume create default donnees # crée un volume
lxc storage volume list default # liste les volumes du pool
lxc storage volume show default donnees # détail
lxc storage volume delete default donnees # supprime

Rattacher le volume à une instance :

Fenêtre de terminal
lxc config device add c1 donnees disk pool=default source=donnees path=/mnt/donnees
lxc config device remove c1 donnees # détacher
Fenêtre de terminal
lxc config device add c1 site disk source=/srv/site path=/var/www/site
lxc config device add c1 conf disk source=/srv/conf path=/etc/app readonly=true # lecture seule

Des erreurs de droits sont fréquentes : les identifiants d’utilisateur de l’instance sont décalés par rapport à ceux de l’hôte. Consulter la documentation sur les correspondances d’identifiants (raw.idmap) avant d’ajuster les droits.

Fenêtre de terminal
lxc config device set c1 root size=20GiB # quota sur le disque racine
lxc config device override c1 root size=20GiB # si le disque vient d'un profil

Les quotas de taille dépendent du pilote (zfs, btrfs, lvm).

Fenêtre de terminal
lxc storage volume snapshot default donnees avant-maj
lxc storage volume restore default donnees avant-maj
lxc storage volume copy default/donnees default/donnees-copie
Fenêtre de terminal
lxc storage info default # espace total et utilisé