Aller au contenu principal
Sommaire de la formation

Déploiement d'un cluster hautement disponible (HA)

coolibra248 vues

Déploiement proxmox HA

  • Introduction aux architectures de cluster Proxmox
  • Configuration du réseau pour un cluster
  • Déploiement d'un cluster Proxmox de 3 nodes

Introduction aux architectures de cluster Proxmox

Le clustering Proxmox permette de gérer plusieurs serveurs comme une entité unique, offrant des avantages importants:

  • Haute disponibilité (HA): Maintien des VMs en fonctionnement même en cas de défaillance d'un nœud
  • Migration à chaud: Déplacement des VMs entre nœuds sans interruption de service
  • Gestion centralisée: Administration de tous les nœuds depuis une interface unique
  • Répartition de charge: Distribution optimale des ressources

Un cluster Proxmox repose sur plusieurs composants:

  • Corosync: Assure la communication entre les nœuds
  • pmxcfs: Système de fichiers en cluster qui partage la configuration via Corosync
  • Quorum: Mécanisme qui détermine si un nœud est opérationnel
  • Fencing: Isolation d'un nœud défaillant pour éviter les corruptions

Configuration du réseau pour un cluster

La configuration réseau est cruciale pour le bon fonctionnement d'un cluster Proxmox:

  1. Recommandations de base:
    • Au moins deux interfaces réseau par nœud
    • Réseau dédié pour le trafic du cluster proxmox (Corosync)
    • Réseau séparé pour le management
  2. Types de réseaux à configurer pour la prod:
    • Quatres interfaces réseau par nœud 
    • Réseau public, management net: Accès à l'interface web et aux VMs depuis l'extérieur
    • Réseau Corosync, proxmox cluster net: Communication entre les nœuds du cluster (trafic privé)
    • Réseau de stockage ceph public net : Accès aux systèmes de stockage partagé
    • Réseau de stockage ceph cluster net: Accès aux systèmes de stockage partagé

Dans cet exemple, nous allons déployer un cluster proxmox avec la configuration suivante.

J'ai mon lab sur lxc/incus mais si vous avez autre solution qui vous permet d'avoir les requirements, let's go.

 

  • Bare metal
    • Une vm represente un bare metal
  • proxmox-node-01
    • 6 vcpu
    • 15 GiB RAM
    • un disk os 20GiB
    • un disk data 50 GiB
    • 5 nic
      • 10.11.11.209 (eth-1 management net) 10.12.12.238 (eth-2 corosync net) 10.13.13.132 (eth-3 ceph public net) 10.14.14.197 (eth-4 ceph cluster net) 10.15.15.126 (eth-5 vm net)
  • proxmox-node-02
    • 6 vcpu
    • 15 GiB RAM
    • un disk os 20GiB
    • un disk data 50 GiB
    • 5 nic
      • 10.11.11.122 (eth-1 management net) 10.12.12.222 (eth-2 corosync net) 10.13.13.185 (eth-3 ceph public net) 10.14.14.226 (eth-4 ceph cluster net) 10.15.15.120 (eth-5 vm net)
  • proxmox-node-03
    • 6 vcpu
    • 15 GiB RAM
    • un disk os 20GiB
    • un disk data 50 GiB
    • 5 nic
      • 10.11.11.163 (eth-1 management net) 10.12.12.162 (eth-2 corosync net) 10.13.13.202 (eth-3 ceph public net) 10.14.14.249 (eth-4 ceph cluster net) 10.15.15.195 (eth-5 vm net)

Installation de proxmox sur chaque node

  • Selectionner graphical et valider

  • Accepter la licence et suivant
  • Selectionner le disk os, la plus petite capacité. La plus grande sera pour ceph

  • Definir la time zone et next
  • Definir le root passwor et l'email et next

  • Selectionner la nic pour management net: pour moi 10.11.11.209 sur enp5s0

  • Decoche auto reboot et clic install

  • Patienter pendant quelques minutes jusqu'à la fin de l'installation
  • Detacher l'iso et restart le node

 

Interface web proxmox

https://10.11.11.209:8006/  remplacer par votre ip

  • Repeter l'operation sur les 2 autres node: proxmox-node-02 et proxmox-node-03

Interface web proxmox

https://10.11.11.209:8006/  remplacer par votre ip

https://10.11.11.122:8006/  remplacer par votre ip

https://10.11.11.163:8006/  remplacer par votre ip

 

Configuration nes autres nic

Sur proxmox-node-01 > network, on voit que seule la nic enp5s0 est configurée pour le management net (vmbr0). Nous l'avons fait pendant l'installation. Pour les autres nic proceder comme suit:

  • Double Clic sur enp6s0 > cocher autostart et valider > apply configration

  • Activer l'auto start pour tous les autres nic

  • Pour proxmox cluster net (ncorosync): Clic sur enp6s0 > create > select Linux Bridge > renseigner comme suit

  • Pour ceph public net (ncephpubli): Clic sur enp7s0 > create > select Linux Bridge > renseigner comme suit 

  • Pour ceph cluster net (ncephclust): Clic sur enp8s0 > create > select Linux Bridge > renseigner comme suit

  • Clic sur apply configuration pour appliquer les config

 

  • Proceder ainsi pour les 2 autres nodes:
    • proxmox-node-02

    • proxmox-node-03

 

Mise en place d'un cluster Proxmox

On peut maintenant monter le cluster proxmox avec nos 3 nodes: proxmox-node-01, proxmox-node-02, proxmox-node-03

  • Sur proxmox-node-01 > clic sur Datacenter > cluster > create cluster et rensigner comme suit. on selectionne bien le bridge ncorosync

 

  • Le cluster est bien inité

  • pour joindre les autre node, clic sur join information et copie information

  • Se rendre sur le node proxmox-node-02 > Datacenter > Cluster > Join cluster et coller > renseiger le root password > select le bridge ncorosync

  • Refresh l'ui du proxmox-node-02 pour valider le certificat. sur le proxmox-node-01 ou proxmox-node-02, on doit voir que 2 nodes font partir du cluster

 

  • Se rendre sur le node proxmox-node-03 > Datacenter > Cluster > Join cluster et coller > renseiger le root password > select le bridge ncorosync

  • Refresh l'ui du proxmox-node-03 pour valider le certificat. sur le proxmox-node-01, proxmox-node-02 ou proxmox-node-03, on doit voir que 3 nodes font partir du cluster.

Notre cluster est focntionnel. Dans la suite, on va créer des groupe HA pour l'affectation des vms et container. Monter le cluster ceph pour le stockage.

Commentaires

Connectez-vous pour rejoindre la discussion.

Aucun commentaire pour le moment.