Proxmox et NFS : étendre le stockage pour médias et données partagées
Les nuc BEH peuvent avoir deux drives : m2 ssd et un SATA classique. J’ai profité de l’occasion pour avoir 500 Go SSD et 2To classiques. Je me sert du NFS (network file system) pour partager mon disque de data à toute VM en ayant besoin !
Oui, mais dans proxmox, comment rendre ce stockage utile ?!
Deux possibilités :
– Vouloir mettre d’autres VM dessus
– Vouloir en faire un espace de stockage partagé (ici)
Ce second article concerne la seconde possibilité.
Préparation du disque et du host
Ouvrez un shell depuis PVE dans Proxmox
- Listez vos disques et détectez le volume nouvellement ajouté
fdisk -l
- créez la partition
cfdisk /dev/sda
- Select label type :
- Si moins de 2TO : DOS
- Sinon : GPT
- Free Space est sélectionné, validez « New »
- Partition Size : tout ou partie
- Primary
- Write
- Tapez « yes »
- Vous devriez avoir ca :
- Formatez la partition en ext3
mkfs.ext3 /dev/sda1
- Montez le drive dans un répertoire
mkdir /mnt/dataStorage
mount -t ext3 /dev/sda1 /mnt/dataStorage
Ajoutez-le à fstab pour etre certain qu’il soit monter automatiquement lors d’un reboot (nano /etc/fstab)
/dev/sda1 /mnt/dataStorage ext3 defaults,errors=remount-ro 0 1
NFS et préparation d’une utilisation dans des containers
Préparez proxmox a laisser passer le protocole en ajoutant le système de fichier NFS dans apparmor
On va créer un fichier de config pour les containers qui devront atteindre le partage nfs
cp -i /etc/apparmor.d/lxc/lxc-default-cgns /etc/apparmor.d/lxc/lxc-default-with-nfs
Editez le fichier (nano /etc/apparmor.d/lxc/lxc-default-with-nfs et ajoutez :
mount fstype=nfs*,
mount fstype=rpc_pipefs,
Rechargez apparmor
apparmor_parser -r /etc/apparmor.d/lxc-containers
systemctl reload apparmor
Utilisez ce profil pour un container particulier
Il faudra utiliser le profil créé dans un conteneurs en éditant le fichier concerné par le container : /etc/pve/lxc/${container_id}.conf et en ajoutant :
lxc.apparmor.profile: lxc-container-default-with-nfs
apt-get update
apt-get install nfs-common nfs-kernel-server
Editez le fichier exports
nano /etc/exports
Ajoutez la ligne concernant le partage à rendre accessible.
Si vous avez suivi les même naming que le tuto , vérifiez seulement votre réseau qui est généralement de la forme 192.168.1.0/255.255.255.0
/mnt/dataStorage 192.168.86.0/255.255.255.0(rw,no_subtree_check,no_root_squash,sync,anonuid=1000,anongid=1000)
Démarrez les services et programmez le démarrage auto au reboot :
exportfs -r
service nfs-kernel-server start
systemctl start nfs-kernel-server
systemctl enable nfs-kernel-server
Ajoutez-le dans proxmox :
Enfin, pour les utilisateurs de windows 10 vous pouvez également ajouter votre partage en utilisant cet excellent guide