Gestion d'un cluster Ceph : outils et configurations

État global du cluster

Pour consulter l'état général d’un cluster Ceph, utilisez la commande suivante : ``` [cephadmin@ceph-monitor-1 ~]$ ceph -s cluster: id: 7e1c1695-1b01-4151-beea-70c008cffd8c health: HEALTH_WARN 2 pools have pg_num > pgp_num

services: mon: 3 daemons, quorum ceph-monitor-1,ceph-monitor-2,ceph-monitor-3 mgr: ceph-monitor-2(active), standbys: ceph-monitor-1 mds: cephfs-1/1/1 up {0=ceph-monitor-1=up:active} osd: 7 osds: 7 up, 7 in rgw: 1 daemon active

data: pools: 8 pools, 224 pgs objects: 246 objects, 4.1 KiB usage: 16 GiB used, 304 GiB / 320 GiB avail pgs: 224 active+clean


Les champs clés sont : - **id** : identifiant unique du cluster. - **health** : état de santé (ex. : WARN indique un problème mineur). - **mon** : état des serveurs de moniteur. - **osd** : nombre d'OSDs actifs et en ligne. - **mgr** : statut des gestionnaires. - **mds** : statut des serveurs de métadonnées. - **pools** : nombre total de pools et de PGs. - **objects** : nombre d’objets stockés. - **usage** : espace utilisé vs disponible. - **pgs** : état des unités de répartition (PGs). Statut des PGs
--------------

Obtenez des informations sur les PGs via : ```
~]$ ceph pg stat
~]$ ceph pg dump

La commande dump fournit des détails approfondis sur chaque PG. Statut des pools

Affichez les métriques globales : ``` ~]$ ceph osd pool stats


Pour une analyse spécifique à un pool : ```
~]$ ceph osd pool stats <nom_pool>

Statut des OSDs

Utilisez ces commandes pour surveiller les OSDs : ``` ~]$ ceph osd stat ~]$ ceph osd dump ~]$ ceph osd tree


La dernière commande affiche une structure hiérarchique lisible. Statut des moniteurs
--------------------

Vérifiez l’état basique : ```
~]$ ceph mon stat
~]$ ceph mon dump

Pour connaître l’état d’agrément (quorum) : ``` ~]$ ceph quorum_status


Utilisation de l’espace du cluster
----------------------------------

Visualisez l’utilisation globale avec : ```
~]$ ceph df
~]$ ceph df detail

Fichier de configuration ceph.conf

Le fichier de configuration suit une syntaxe simple avec des commentaires en # ou ;. Il est chargé selon l'ordre suivant : 1. Variable d’environnement $CEPH\_CONF 2. Argument -c spécifié 3. /etc/ceph/ceph.conf 4. ~/.ceph/ceph.conf 5. ./ceph.conf Les sections supportées incluent : - global : paramètres globaux. - osd : configuration spécifique à un OSD (ex. osd.0). - mon : configuration pour un moniteur (ex. mon.ceph-monitor-1). - client : paramètres pour les clients. Des variables dynamiques peuvent être utilisées dans le fichier : - $cluster : nom du cluster. - $type : type de service (osd, mon, mgr...). - $id : identifiant du processus. - $host : nom de l’hôte. - $name : combinaison type.id. Fichiers de sockets

Les sockets Ceph sont situés par défaut sous /var/run/ceph/ avec l’extension .asok. Ils permettent d’interagir localement avec un daemon. Syntaxe d’utilisation : ``` ~]$ sudo ceph --admin-daemon /path/to/file <COMMAND>


Exemple pour lister les commandes disponibles : ```
~]$ sudo ceph --admin-daemon /var/run/ceph/ceph-mgr.ceph-monitor-1.asok help

Exemple pour obtenir l’état du manager : ``` ~]$ sudo ceph --admin-daemon /var/run/ceph/ceph-mgr.ceph-monitor-1.asok status


Redémarrage sans interruption
-----------------------------

Permet de modifier des paramètres en temps réel sans redémarrer les services. ### Commande tell

Permet d’injecter des arguments dans un daemon : ```
~]$ ceph tell {daemon-type}.{id|*} injectargs --{param}={value}

Exemple : autoriser la suppression de pool temporairement : ``` ~]$ ceph tell mon.ceph-monitor-1 injectargs --mon_allow_pool_delete=true


N’oubliez pas de rétablir la valeur par défaut après utilisation. ### Commande daemon

Modifie dynamiquement une option de configuration : ```
~]$ ceph daemon {daemon-type}.{id} config set {param}={value}

Exemple : ``` ~]$ sudo ceph daemon mon.ceph-monitor-1 config set mon_allow_pool_delete false

Étiquettes: ceph cluster management OSD Monitor PG

Publié le 21 septembre à 15h46