Gluster : Procédure d'installation Gluster sur un cluster Proxmox via une infrastructure VPN Zerotier

De www.yakakliker.org

Qu'est ce que Zerotier ?

ZeroTier est une surcouche VPN permettant de créer très facilement une infrastructure réseau Local cryptée.

Contrairement aux solutions VPN traditionnelles, Zerotier crée des connexions peer-to-peer bidirectionnelles, donc pas de point central d'interconnexion.

https://www.zerotier.com/

Qu'est ce que GlusterFS ?

GlusterFS est un système de fichier dit "distribué". Il s'agit d'un espace de stockage réparti entre différents disques (des briques de stockages) repartis sur différents serveurs et composant un "volume" sur le réseau.

Il est extensible et sécurisé.

GlusterFS intègre la déduplication et réplication des fichiers, georeplication, partage de charge, gestion des pannes etc..

https://www.gluster.org/

Qu'est ce que Proxmox ?

Proxmox Virtual Environment est une plateforme type "baremetal" pour la virtualisation d'entreprise.

Elle possède la particularité de proposer à la fois, la virtualisation, la possibilité de stockage (CEPH, ZFS, GlusterFS, etc.) ainsi que la sauvegarde (Proxmox Backup Server).

Avec une seule solution, vous répondez à l'essentiel des besoins en virtualisation.

https://www.proxmox.com/en/

Architecture

L'objectif :

Mettre en place une infrastructure Proxmox connecté à un volume GlusterFS qui fonctionnera sur une infrastructure VPN Zerotier (permettant de la replication sécurisée)

Besoins pour la démonstration :

  • Minimum 2 serveurs avec 1 HD système + 1 HD datas
    • Réseau Local : 192.168.1.0/24
  • Une infrastructure VPN Zerotier
    • Réseau VPN : 10.10.10.0/24

Installation de Zerotier

Les synchronisations GlusterFS se feront à travers l'infrastructure VPN Zerotier

  • Sur tous les nodes du cluster
curl -s https://install.zerotier.com | sudo bash
curl -o Zerotier.sh https://raw.githubusercontent.com/Yakakliker37/Base_info/main/Zerotier.sh
sh Zerotier.s

Edition des fichiers Hosts

  • Sur tous les nodes du cluster

Créer les entrées DNS/IP dans les fichiers /etc/hosts

nano /etc/hosts
  • Exemple de fichier hosts
127.0.0.1 localhost.localdomain localhost
192.168.1.150 pve01.yakakliker.org pve01
10.10.10.216 pve02.yakakliker.org pve02
10.10.10.164 pve03.yakakliker.org pve03
10.10.10.25 pc001.yakakliker.org pc001

Installation de Gluster

  • Sur tous les nodes du cluster
apt-get install glusterfs-server -y
systemctl start glusterd
systemctl enable glusterd
systemctl status glusterd

Préparation du disque dur datas

fdisk /dev/sdb

mkfs.xfs /dev/sdb1

mkdir /mnt/glustervolume
mkdir /mnt/glustervolume/hd01

nano /etc/fstab

/dev/sdb1 /mnt/glustervolume/hd01 xfs defaults 0 0

systemctl daemon-reload
mount -a

df -h

Configuration du volume Gluster

gluster peer probe node2
gluster pool list
  • Sur tous les nodes du cluster
mkdir /mnt/glustervolume/hd01/volume01

Création du volume

gluster volume create gluster01 replica 2 transport tcp pve01:/mnt/glustervolume/hd01/volume01 pve02:/mnt/glustervolume/hd01/volume01
gluster volume start gluster01
gluster volume status
gluster volume info gluster01

Montage Gluster dans /etc/fstab (optionel)

nano /etc/fstab
localhost:/gluster01 /opt/Gluster glusterfs defaults,_netdev 0 0

Montage dans Proxmox

Liens

https://www.howtoforge.com/how-to-install-and-configure-glusterfs-on-ubuntu-22-04/

https://medium.com/@sm4rthink/how-to-deploy-glusterfs-with-proxmox-ve-5531ef287526

https://blog.zwindler.fr/2017/02/28/tutoriel-creer-un-cluster-de-stockage-glusterfs-sous-proxmox/

https://docs.gluster.org/en/v3/

https://www.unixmaniax.fr/wiki/index.php?title=GlusterFS