Architecture Ceph

Le cluster IBM Storage Ceph est une librairie de données réparties conçue pour offrir d'excellentes performances, fiabilité et évolutivité. La puissance du cluster IBM Storage Ceph peut transformer l'infrastructure informatique de votre organisation et votre capacité à gérer de grandes quantités de données, en particulier pour les plateformes de cloud computing telles que Red Hat Enterprise Linux OSP. Le cluster offre une évolutivité extraordinaire: des milliers de clients accèdent à des pétaoctets à des exaoctets de données et au-delà.

Les librairies réparties sont l'avenir du stockage, car elles prennent en charge des données non structurées et parce que les clients peuvent utiliser simultanément des interfaces d'objets modernes et des interfaces existantes.

Par exemple :

  • API dans de nombreux langages (C/C + +, Java, Python)

  • Interfaces RESTful (S3/Swift)

  • Interface de périphérique de bloc

  • Interface du système de fichiers

Le cluster IBM Storage Ceph est au cœur de chaque déploiement Ceph. Il se compose de trois types de démons:

Démon ceph oSD

Les définitions de système d'exploitation Ceph stockent les données pour le compte des clients Ceph. En outre, les systèmes d'exploitation Ceph utilisent l'UC, la mémoire et la mise en réseau des noeuds Ceph pour exécuter des fonctions de réplication de données, de codage d'effacement, de rééquilibrage, de récupération, de surveillance et de génération de rapports.

Moniteur Ceph

Un moniteur Ceph gère une copie maître de la mappe de cluster IBM Ceph Storage avec l'état en cours du cluster. Les moniteurs requièrent une cohérence élevée et utilisent Paxos pour garantir un accord sur l'état du cluster.

Gestionnaire Ceph

Le gestionnaire Ceph Manager gère des informations détaillées sur les groupes de placement, les métadonnées de processus et les métadonnées d'hôte à la place du moniteur Ceph, ce qui améliore de manière significative les performances à l'échelle. Le gestionnaire Ceph gère l'exécution de nombreuses requêtes de l'interface de ligne de commande Ceph en lecture seule, telles que les statistiques de groupe de placement. Ceph Manager fournit également les API de surveillance RESTful.

Figure 1. Démons
Démons

Les interfaces client Ceph lisent les données du cluster IBM Ceph Storage et y écrivent des données. Les clients ont besoin des données suivantes pour communiquer avec le cluster IBM Ceph Storage:

  • Fichier de configuration Ceph ou nom du cluster (généralement ceph) et adresse du moniteur.

  • Nom du pool.

  • Nom d'utilisateur et chemin d'accès à la clé secrète.

Les clients Ceph gèrent les ID objet et les noms de pool dans lesquels ils stockent les objets. Toutefois, ils n'ont pas besoin de gérer un index objet-OSD ou de communiquer avec un index d'objet centralisé pour rechercher des emplacements d'objet. Ensuite, les clients Ceph fournissent un nom d'objet et un nom de pool à librados, qui calcule le groupe de placement d'un objet et l'OSD principal pour le stockage et l'extraction des données à l'aide de l'algorithme CRUSH (réplication contrôlée sous hachage évolutif). Le client Ceph se connecte à l'OSD principal où il peut effectuer des opérations de lecture et d'écriture. Il n'y a pas de serveur intermédiaire, de courtier ou de bus entre le client et l'OSD.

Lorsqu'un OSD stocke des données, il reçoit des données d'un client Ceph-que le client soit un Ceph Block Device, une Ceph Object Gateway, un système de fichiers Ceph ou une autre interface et il stocke les données en tant qu'objet.
Remarque: un ID objet est unique sur l'ensemble du cluster et pas seulement sur un support de stockage OSD.

Les OSD Ceph stockent toutes les données en tant qu'objets dans un espace de nom non hiérarchique. Il n'y a pas de hiérarchies de répertoires. Un objet possède un identificateur unique à l'échelle du cluster, des données binaires et des métadonnées composées d'un ensemble de paires nom-valeur.

Figure 2. Objet
Objet
Les clients Ceph définissent la sémantique du format de données du client. Par exemple, l'unité par bloc Ceph mappe une image d'unité par bloc à une série d'objets stockés dans le cluster.
Remarque: les objets constitués d'un ID unique, de données et de métadonnées appariées nom / valeur peuvent représenter à la fois des données structurées et non structurées, ainsi que des interfaces de stockage de données existantes et de pointe.

Pour plus d'informations, voir le chapitre sur l 'architecture de IBM Storage Ceph, dans le livre rouge IBM Storage Ceph Concepts and Architecture Guide.