# CEPH : Architecture générale ## Programme - CEPH - VLAN - Trunking - Routage Inter-VLAN ## Objectifs Nécessité du CEPH, son architecture, le rôle de CRUSH, des Pools, des PG. Distinguer les 3 services de stockage possibles. Connaître les bonnes pratiques. ### Pourquoi CEPH Il peut continuer le stockage en cas de panne de disque/noeud/switch. Plus évolué que le RAID, il trouvera d'autres stockages en : - scalant en ajoutant des machines - ne se concentrant pas sur un SPOF - utilisant du stockage bloc, fichier, ou l'objet - équilibrant le stockage avec ce qu'il a à disposition CEPH repose sur une couche logicielle nommée RADOS, composée de 3 daemons : - MON (ceph-mon) : Moniteur, gère la carte du cluster (qui est en vie, où sont les données, quelles règles de placement) - OSD (ceph-osd) : Stocke les données - MGR (ceph-mgr) : Manager, surveille, fournit de la métrique, met de l'orchestration supplémentaire Il existe des démons supplémentaires : - MDS (ceph-mds) : Uniquement si on stocke en mode système de fichiers, avec CephFS - RGW (radosgw) : Passerelle (Gateway) pour stockage S3 - RBD (radosblocks) : Stockage en mode blocs ### Où se trouvent les données Ceph utilise l'algorithme CRUSH. Il décide où mettre les données en fonction d'une carte décrivant une topologie. - Le placement est déterministe : tout le monde obtient le même résultat chacun de son côté. - Pas de BDD. ### Nomenclature - POOL : zone virtuelle - PG : *Placement Group*, Groupes de placement - OSD : Disque de stockage Un Pool est découpé en PGs avec chacun ses OSDs (vous m'suivez ?) ## Mise en place Commande centrale : `cephadm` Générer le premier noaud : `cephadm bootstrap --mon-node Noeud1` Cela installe : - 1 MON - 1 MGR - 1 shell CEPH Vérifier la santé : `ceph status` Vérifier la topologie : `ceph osd tree` Vérifier l'espace : `ceph df` Activer la Web UI (pour un cluster déjà mis en service) : `ceph mgr module enable dashboard` ## Exercice 1 1. Quel protocole utilisent les MON et MGR pour communiquer entre eux ? 2. Quelle(s) sont le(s) bonne(s) pratique(s) auxquelles cet exercice ne se plie pas ? 3. À quoi sert le SSH dans une infrastructure Ceph ? 4. La WebUI semble t-elle protéger les communications via un chiffrement SSL/TLS ? 5. Quelle est la différence entre le Backfill et le Recovery ? ## Exercice 2