Aller au contenu

Proxmox 4.x : mise en place d’un Cluster HA avec Ceph


Ldfa

Messages recommandés

Un mémo sur la mise en place d’un cluster haute disponibilité d’hyperviseurs Proxmox avec un stockage distribuée et redondant Ceph.
Cet article traite uniquement de l’installation et de la configuration de Ceph avec Proxmox pour avoir un stockage partagé entre les noeuds.

Présentation de mon cluster Proxmox

Mon cluster sera composé de 3 nœuds Proxmox avec 2 partages Ceph et 1 serveur NFS pour les snapchots des VM et le stockage des ISOs.
Les VMs gourmandent en ressources seront hébergées sur le pool des disques 300Go.
Les machines virtuelles seront réparties sur les 3 noeuds Proxmox.

  • 3 Serveurs Dell R730 pour les Proxmox, avec :
    • 2 disques 146 Go SAS 15K RAID1 pour PVE + Monitor
    • 3 disques 300 GO SAS 15K : 2 OSD + 1 journalisation
    • 3 disques 4 TO SATA 7.4K pour OSD
  • Les réseaux :
    • LAN réseau entreprise : 10.10.8.0/24
    • LAN privée : 192.168.1.0/24
    • Les interfaces réseaux :
      • Vmbr0 : interface administration des proxmox en port cuivre
      • Vmbr1 : interface réseau sur le LAN réseau entreprise en port fibre, cette interface sera configurée pour le réseau des VMs
      • Vmbr2 : interface réseau sur le LAN privé en port fibre, cette interface sera utilisée pour le cluster et Ceph
  • Schéma réseau simplifié du cluster HA :
    proxmox-ceph-550x425.png
    • Adresses réseaux :
      • cluster-01 :
        • vmbr0 10.10.8.202
        • vmbr2 192.168.1.1
      • cluster-02 :
        • vmbr0 10.10.8.204
        • vmbr2 192.168.1.2
      • cluster-03 :
        • vmbr0 10.10.8.206
        • vmbr2 192.168.1.3

L’installation de Proxmox 4.x est identique à la version 3.x : tuto installation Proxmox 3.x

Mise en cluster des 3 nœuds proxmox

  • Sur tous les noeuds, ajouter ces informations dans /etc/hosts :
    • 192.168.1.1 cluster-01
    • 192.168.1.2 cluster-02
    • 192.168.1.3 cluster-03
  • Sur pve-01 créé le nom du cluster :
pvecm create kluster -bindnet0_addr 192.168.1.1 -ring0_addr cluster-01
Sur pve-02, rejoindre le cluster :
pvecm add cluster-01 -ring0_addr cluster-02
Même chose sur pve-03 :
pvecm add cluster-01 -ring0_addr cluster-03
Dans l’interface web, les 3 nœuds sont présent :

pve4xclusterha-01.png

Installation et configuration de Ceph

Ce qui va suivre risque d’évoluer dans le temps, car à ce jour cette architecture est ma maquette de test et n’est pas encore en production. A chaque modification, je tiendrais cet article à jour.

Installation de Ceph

  • Installation de Ceph sur chaque nœud Proxmox :
https_proxy=http://IP_Proxy:PORT pveceph install -version jewel
Sur le premier nœud cluster-01 :
pveceph init --network 192.168.1.0/24
Sur Chaque nœud, créer le moniteur « mon » :
pveceph createmon

Création des OSD

Chaque disque est configuré en RAID 0.

  • Sur chaque nœud :
    • Le premier disque dédié à la journalisation :
    pveceph createosd /dev/sdb -journal_dev /dev/sdb
  • Créer les OSD avec les disques restant :
pveceph createosd /dev/sd[X]
Ce qui donne une fois terminée, dans l’interface web de Proxmox, menu OSD :

pve-ceph-osd-global-550x268.png

Personnalisation du Crush MAP

La Crush MAP permet de déterminer comment vont être utilisés chaque OSD. Mon but est de regrouper les disques de 300Go ensemble et idem pour ceux de 4To.

  • Création des root :
ceph osd crush add-bucket 300SAS root
ceph osd crush add-bucket 4ToSAS root
ceph osd crush add-bucket journal root
Création des hosts :
ceph osd crush add-bucket ceph1-300SAS host
ceph osd crush add-bucket ceph2-300SAS host
ceph osd crush add-bucket ceph3-300SAS host
ceph osd crush add-bucket ceph1-4ToSAS host
ceph osd crush add-bucket ceph2-4ToSAS host
ceph osd crush add-bucket ceph3-4ToSAS host
ceph osd crush add-bucket ceph1-journal host
ceph osd crush add-bucket ceph2-journal host
ceph osd crush add-bucket ceph3-journal host
Déplacer les hosts sur chaque root respectif :
ceph osd crush move ceph1-journal root=journal
ceph osd crush move ceph2-journal root=journal
ceph osd crush move ceph3-journal root=journal
ceph osd crush move ceph1-300SAS root=300SAS
ceph osd crush move ceph2-300SAS root=300SAS
ceph osd crush move ceph3-300SAS root=300SAS
ceph osd crush move ceph1-4ToSAS root=4ToSAS
ceph osd crush move ceph2-4ToSAS root=4ToSAS
ceph osd crush move ceph3-4ToSAS root=4ToSAS
Ajouter les OSDs aux hosts respectifs, exemple avec le host journal :

Pour lister les OSDs :

ceph osd tree
ceph osd crush add osd.0 0.200 host=ceph1-journal
ceph osd crush set osd.0 0.2 root=journal host=ceph1-journal
ceph osd crush add osd.1 0.200 host=ceph2-journal
ceph osd crush set osd.1 0.2 root=journal host=ceph2-journal
ceph osd crush add osd.2 0.200 host=ceph3-journal
ceph osd crush set osd.2 0.2 root=journal host=ceph3-journal
Supprimer les hosts inutiles créés par défaut :
ceph osd crush rm pve-01
ceph osd crush rm pve-02 
ceph osd crush rm pve-03

Les OSD sont maintenant répartis de cette manière :
pve-ceph-full-osd-550x329.png

Création des Pools

  • Un pool avec les disques 300Go :
pveceph createpool 300SAS -min_size 1 -pg_num 256 -size 2 -crush_ruleset
Un pool avec les disques 4To :
pveceph createpool 4ToSAS -min_size 1 -pg_num 256 -size 2 -crush_ruleset 2

Ajout du stockage Ceph pour les noeuds Proxmox

  • Menu Stockage, cliquer sur « Add » puis choisir RDB :

pve-ceph-add-rdb-00.png

Renseigner les champs :
  • ID : donner un nom au nouveau stockage
  • Pool : choisir le bon pool
  • Monitor(s)s : renseigner les adresses Ip de chaque noeuds séparées d’un espace
  • User name : laisser admin

pve-ceph-add-rbd-01-550x209.png

Les nouveaux stockages sont disponibles pour chaque nœud :

pve-ceph-stockage-550x291.png

Pour avoir les autorisations d’accès, créer un fichier de clé pour chaque nouveau stokage RBD :
mkdir /etc/pve/priv/ceph
cp /etc/ceph/ceph.client.admin.keyring /etc/pve/priv/ceph/SAS300.keyring
cp /etc/ceph/ceph.client.admin.keyring /etc/pve/priv/ceph/SAS4To.keyring

Ressources

Afficher l’article complet

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.