Nutanix – Les rôles d’un Cluster
La plate-forme Nutanix est composée d’éléments ayant les fonctions suivantes :
Cassandra
Rôle: Store de distribution des métadatas
Description: Medusa est une couche d’abstraction Nutanix qui est liée à la base de données et qui détient les métadatas de toutes les données inclues dans le cluster. La base de données est distribuée sur tous les nœuds du cluster, et utilise Medusa, une forme modifiée de Cassandra. Comme les machines virtuelles se déplacent entre les nœuds du cluster, l'emplacement de leurs données est toujours identifié. La capacité d’identifier rapidement où se trouvent toutes les données, fait que les pannes de disque dur, les défaillances de serveurs et même les blocs entiers peuvent se produire (à condition d’avoir au moins trois blocs avant la perte d’un bloc complet), le cluster continuera à fonctionner. L’algorithme Paxos est utilisé pour assurer la stricte cohérence. Ce service fonctionne sur chaque nœud du cluster.
Zeus
Rôle clé: Gestionnaire de la configuration du Cluster
Description: Zeus stocke toute la configuration du Cluster y compris les hyperviseurs, les IPs, l’état, etc. Il est basé sur Apache Zookeeper. Ce service fonctionne sur trois nœuds du cluster, dont l’un est élu en tant que leader. Le leader reçoit toutes les demandes et les transmet aux deux autres. Si le leader ne répond plus ou n’est plus disponible, un nouveau leader est automatiquement élu.
Zeus est la bibliothèque Nutanix que tous les autres composants utilisent pour accéder à la configuration du cluster. Il permet l’interaction avec d’autres composants dans le système de fichiers. Zeus maintient la liste des adresses IP des hôtes, des contrôleurs de stockage virtuels, l’information sur la santé à travers l’IPMI (équivalent au ILOT ou iDRAC des serveurs), les capacités, les règles de réplication de données. Cependant, même sans avoir le port IPMI branché, l’administrateur de la plateforme Nutanix peut obtenir toutes les statistiques de la santé dont il a besoin.
Stargate
Rôle clé: Gestionnaire de données I / O
Description: Stargate est responsable de la gestion des données et des opérations E/S. Il fait office d’interface principale de l’hyperviseur (via NFS, iSCSI ou SMB). Ce service fonctionne sur chaque nœud du cluster afin de distribuer les I/O localement.
Stargate est donc le principal point de contact pour du cluster Nutanix. Toutes les opérations de lecture et d’écriture sont envoyées au process Stargate pour être traité. Stargate effectue un « checksums » des données avant de les écrire et puis en vérifie la lecture. Stargate dépend de Medusa pour recueillir des métadatas et de Zeus pour recueillir des données de configuration du cluster. Stargate comprend 6 composants : Front-end Adapter, Admission Control, vDisk Controller, Oplog, Extent Store et Extent Cache.
Curator
Rôle clé: Gestion de cluster
Description: Il est responsable de la gestion et de la répartition des tâches tout au niveau du Cluster, y compris l’équilibrage de charge au niveau disque, répartition proactive, et beaucoup d’autres choses. Curator fonctionne sur chaque nœud et il est contrôlé par un leader élu parmi les noeuds et qui est responsable de la délégation de tâches et des jobs. Il existe deux types de scan pour Curator. Soit il effectue une analyse complète (qui se produit environ toutes les 6 heures) soit il effectue une analyse partielle (qui se produit toutes les heures).
Prism
Rôle clé: Interface utilisateur et API
Description: Prism est l’interface de gestion destiné aux administrateurs afin de configurer et de surveiller le cluster Nutanix. Cela comprend Ncli, l’interface HTML5 et le REST API. Prism fonctionne sur chaque nœud du cluster et utilise un rôle de leader élu parmi les noeuds comme chaque composants du cluster.
Genesis
Rôle clé: Composante du Cluster et gestionnaire de services
Description: Genesis est un processus qui fonctionne sur chaque nœud et qui est responsable de toutes les interactions de services ainsi que la configuration initiale (Start / Stop / etc.). Genesis est un processus qui fonctionne indépendamment du Cluster et ne nécessite pas de configuration au niveau du cluster. Le seul prérequis au fonctionnement de Genesis, hormis le fait qu’il doit être en cours d’execution, est que Zookeeper soit actif. Les pages de cluster_init et cluster_status sont affichées par le processus de genesis.
Chronos
Rôle: Jobs et planificateur de tâches
Description: Chronos prend en charge les jobs et les tâches résultant d’un scan de Curator et d’ordonnancement des tâches. Chronos fonctionne sur chaque nœud et il est contrôlé par un leader élu qui est responsable de la délégation de tâches et de job et fonctionne sur le même noeud que le leader Curator.
Cerebro
Rôle clé: Réplication / gestionnaire Data Recovery
Description: Cerebro est responsable de la réplication et des capacités Data Recovery de DFS (Distributed Fabric Storage). Cela comprend la planification des snapshots, la réplication sur des sites distants, et la migration/failover vers un site. Cerebro s’exécute sur chaque nœud du cluster Nutanix et tous les nœuds participent à la réplication distante clusters/sites.
Pithos
Rôle clé: Gestionnaire de configuration vDisk
Description: Pithos est responsable de la configuration de vDisk (fichier DFS). Pithos fonctionne sur chaque nœud et se situe juste au-dessus de Cassandra.