Dans ce tutoriel, je vais vous expliquer comment configurer le multipath sur Proxmox.
Généralement, le multipath est nécessaire quand on utilise une architecture deux tiers pour les hyperviseurs avec des serveurs et un stockage de type SAN (baie de disques FC/iSCSI/…).
Pour assurer une haute disponibilité de stockage, les serveurs ont généralement plusieurs connexion à la baie de disque, ce que l’on appel en informatique le multipath (multi chemins).
Sur Proxmox quand on présente une LUN depuis la baie de stockage, on peut voir que le disque apparait plusieurs fois, autant que de chemins disponibles.
Ici, on peut voir que le disque est présenté 4 fois, car il y a 4 chemin possible pour accéder au disque.
Afin de pouvoir exploiter ce disque dans Proxmox, il est nécessaire de configurer le multipath.
Configuration du multipath dans Proxmox
Cette configuration se fait en ligne de commande.
Pour commencer, il faut installer les outils qui gèrent le multipath
sudo apt-get install multipath-tools -y
La première étape va être de récupérer le wwid (Worl Wide Name IDentifier) qui est l’identifiant unique du volume dans un réseau SAN (FC / SCSI / …)
Pour cela entrer la commande suivante :
/lib/udev/scsi_id -g -u -d /dev/sdX
Remplacer X par la lettre qui correspond au disque.
On va maintenant pouvoir commencer la configuration du multipath sur Proxmox. Cette configuration se fait dans le ficher /etc/multipath.con
f qui n’est pas créer par défaut.
Vous pouvez accéder à la documentation du fichier avec la commande suivante :
man multipath.conf
On va maintenant créer le fichier de configuration et le remplir :
nano /etc/multipath.conf
Voici un exemple de configuration :
Dans le block default {...}
, on retrouve la configuration globale du multipath.
Dans le block blacklist {...}
, on indique les disques qui ne sont pas concerné par la configuration du multipath, par défaut on exclus tous les disques.
Dans le block blacklist_execeptions{...}
, on va indiquer le wwid du ou des disques qui doivent appliquer la configuration du multipath. Ici vous devez indiquer le wwid des disques, un par ligne.
Maintenant, il faut ajouter le wwid du volume dans le fichier /etc/multipath/wwid
s, pour ce faire entrer la commande suivante :
multipath -a 36006016010YYYYYYYXXXXXXZZZZZZZZ
Redémarrer le service multipath-tools pour la prise en compte :
systemctl restart multipath-tools.service
Vérifier la prise en compte de la configuration avec la commande suivante :
multipath -ll
On peut voir que le disque est mapper sur mpatha
qui est visible dans le dossier /dev/mapper/
.
La configuration du multipath est terminée.
Configuration du stockage pour le rendre disponible dans Proxmox
Maintenant, nous allons configurer le disque mpatha
afin de pouvoir l’utiliser dans Proxmox. La aussi cette configuration se fait en ligne de commande.
On va commencer par effacer totalement les disques, cette étape est facultative :
dd if=/dev/zero of=/dev/sdX bs=512 count=1 conv=notrunc
A faire sur chaque disque présenter par le stockage SAN
On fait la même chose sur le volume créer par le multipath
dd if=/dev/zero of=/dev/mapper/mpatha bs=512 count=1 conv=notrunc
Maintenant, on crée le disque LVM, en commençant par le volume physique :
pvcreate /dev/mapper/mpatha
Ensuite on crée le groupe de volume que l’on va nommer san-lun-1
:
vgcreate san-lun-1 /dev/mapper/mpatha
Pour finir, il faut éditer le fichier de configuration de stockage de Proxmox pour déclarer le volume.
Ouvrir le fichier suivant :
nano /etc/pve/storage.cfg
Dans le fichier, on commence par indiquer le type (lmv) et le nom du stockage, a la seconde ligne, on spécifie le vg que l’on a créé précédemment. La ligne 3, on indique à quoi va servir le stockage, la ligne 4 on spécifie les serveurs Proxmox qui peuvent utiliser le stockage si plusieurs nœud (Node1,Node2,…) et la dernier ligne indique qu’il est partagé entre plusieurs serveurs Proxmox.
La configuration est terminé, le stockage devrait être visible dans Proxmox.
Vous savez maintenant comment configurer le multipath dans Proxmox et créer un volume pour l’exploiter.