Nœuds de Master dans les clusters Hadoop

Les nœuds maîtres dans les clusters Hadoop distribués abritent les différents services de stockage et de gestion de traitement, décrits dans cette liste, pour l'ensemble du cluster Hadoop. La redondance est essentiel pour éviter les points de défaillance, si vous voyez deux interrupteurs et trois nœuds maîtres.

Sommaire

  • NameNode: Gère le stockage HDFS. Pour assurer la haute disponibilité, vous avez à la fois un actif et un NameNode NameNode veille. Chaque fonctionne sur son propre nœud, dédié maître.

  • Checkpoint noeud (ou nœud de sauvegarde): Fournit checkpointing services pour le NameNode. Cela implique la lecture de modifier le journal de l'NameNode des changements aux fichiers HDFS (nouveaux, supprimés, et les fichiers annexés) depuis le dernier point de contrôle, et de les appliquer au fichier maître de l'NameNode que correspondre les fichiers à des blocs de données.

    En outre, la sauvegarde des noeuds conserve une copie de l'espace de système de fichiers dans la mémoire et le maintient en synchronisation avec l'état de l'NameNode. Pour les déploiements de haute disponibilité, ne pas utiliser un noeud point de contrôle ou noeud de sauvegarde - utiliser un NameNode veille à la place. En plus d'être une veille active pour la NameNode, la veille NameNode maintient les services de points de reprise et conserve une copie à jour de l'espace de système de fichiers en mémoire.

  • JournalNode: Reçoit modifications édition de journaux indiquant modifications apportées aux fichiers dans HDFS du NameNode. Au moins trois services de JournalNode (et il ya toujours un nombre impair) doivent être exécutés dans un cluster, et ils sont assez léger qui ils peuvent être colocalisés avec d'autres services sur les nœuds maîtres.

  • Resource Manager: Superviser la planification des tâches et la gestion des ressources du cluster Hadoop application. Ce service est le cœur de fil.

  • JobTracker: Pour Hadoop 1 serveurs, gère la gestion des ressources de cluster et l'ordonnancement. Avec du fil, l'JobTracker est obsolète et ne sert pas. Un certain nombre de déploiements Hadoop ont pas encore migré vers Hadoop 2 et de fils.




  • HMaster: Surveille les serveurs de la région Hbase et gère tous les changements de métadonnées. Pour assurer la haute disponibilité, veillez à utiliser une deuxième instance de HMaster. Le service de HMaster est assez léger pour être installé à proximité d'autres services sur les nœuds maîtres. Dans Hadoop 1, instances du service de HMaster courent sur des nœuds maîtres. Dans Hadoop 2, avec Hoya (HBase sur le fil), les instances de HMaster courent dans des conteneurs sur des nœuds esclaves.

  • Zookeeper: Coordonne les composants distribués et prévoit des mécanismes pour les maintenir dans la synchro. Zookeeper est utilisé pour détecter l'échec de la NameNode et élire un nouveau NameNode. Il est également utilisé avec HBase pour gérer les états de la HMaster et les RegionServers.

    Comme avec le JournalNode, vous avez besoin d'au moins trois cas de nœuds Zookeeper (et toujours un nombre impair), et ils sont assez léger pour être colocalisé avec d'autres services sur les nœuds maîtres.

    image0.jpg

Ici, vous avez trois nœuds maîtres (avec le même matériel), où les services clés de NameNode actif, veille NameNode, et Resource Manager ont chacun leur propre serveur. Il ya des services JournalNode et Zookeeper fonctionnant sur chaque serveur ainsi, mais ceux-ci sont légers et ne sera pas une source de conflits de ressources avec les services de NameNode et Resource Manager.

image1.jpg

Les principes sont les mêmes pour Hadoop 1, où vous avez besoin d'un nœud maître dédié pour le NameNode, NameNode secondaire, et les services de JobTracker.

Si vous prévoyez d'utiliser HBase avec Hoya dans Hadoop 2, vous ne devez pas tous les services supplémentaires. Pour Hadoop 1 déploiements utilisant HBase, consultez la figure suivante pour le déploiement de services sur les nœuds maîtres du cluster Hadoop.

image2.jpg

Il ya deux différences lorsque l'on compare ces serveurs maîtres à les serveurs maîtres Hadoop 1 sans le soutien HBase: ici, vous avez besoin de deux services de HMaster (un pour coordonner HBase, et l'autre pour agir comme une veille) et les services de Zookeeper sur les trois nœuds maîtres pour gérer le basculement .

Si vous avez l'intention d'utiliser votre Hadoop 1 cluster uniquement pour HBase, vous pouvez le faire sans le service de JobTracker, depuis HBase ne dépend pas de l'infrastructure de MapReduce Hadoop 1.

Quand les gens parlent de matériel pour Hadoop, ils soulignent généralement l'utilisation de marchandise composants - ceux bon marché. Parce que vous avez débarquez pour seulement quelques nœuds maîtres (typiquement, trois ou quatre), vous n'êtes pas touché par la multiplication des coûts si, par exemple, vous décidez d'utiliser coûteux disques durs.

Gardez à l'esprit que, sans nœuds maîtres, il n'y a pas de groupe Hadoop. Nœuds Master remplissent une fonction essentielle à la mission, et même si vous avez besoin de redondance, vous devez les concevoir avec la haute disponibilité et la résilience à l'esprit.

Stockage recommandée

Pour les nœuds de base Hadoop, quel que soit le nombre de noeuds esclaves ou les utilisations de la grappe, les caractéristiques de stockage sont cohérentes. Utilisez quatre disques SAS 900 Go, avec un contrôleur de disque dur RAID configuré en RAID 1 + 0. Les disques SAS sont plus chers que les disques SATA, et ont une capacité de stockage inférieure, mais ils sont plus rapides et beaucoup plus fiable.

Déploiement de vos disques SAS en tant que matrice RAID assure que les services de gestion Hadoop ont un magasin redondante pour leurs données à mission critique. Cela vous donne stockage suffisamment stable, rapide, et redondante pour soutenir la gestion de votre cluster Hadoop.

Processeurs recommandées

Au moment d'écrire ces lignes, la plupart des architectures de référence recommandent d'utiliser les cartes mères avec deux sockets de CPU, chacun avec six ou huit cœurs. L'architecture Intel Ivy Bridge est couramment utilisé.

Mémoire recommandée

Les besoins en mémoire varient considérablement en fonction de l'échelle d'un cluster Hadoop. La mémoire est un facteur critique pour nœuds maîtres Hadoop parce que les serveurs de NameNode actifs et de secours dépendent fortement de RAM pour gérer HDFS. En tant que tel, utiliser la mémoire de correction d'erreur (ECC) pour les nœuds maîtres Hadoop. Typiquement, nœuds maîtres doivent entre 64 Go et 128 Go de RAM.

L'exigence de mémoire NameNode est une fonction directe du nombre de blocs de fichiers stockés dans HDFS. En règle générale, l'NameNode utilise environ 1 Go de RAM par million blocs HDFS. (Rappelez-vous que les fichiers sont divisés en blocs individuels et répliqué afin que vous ayez trois exemplaires de chaque bloc.)

Les exigences de mémoire de Resource Manager, HMaster, Zookeeper, et les serveurs de JournalNode sont considérablement moins que pour le serveur de NameNode. Cependant, il est de bonne pratique de la taille des nœuds maîtres d'une manière cohérente de sorte qu'ils sont interchangeables en cas de panne matérielle.

Réseautage recommandée

Une communication rapide est vital pour les services sur les nœuds de maître, de sorte que nous recommandons d'utiliser une paire de connexions 10 GbE liés. Cette paire collée assure la redondance, mais sert également à débit 20GbE. Pour les petits groupes (par exemple, moins de 50 nœuds) vous pourriez sortir avec l'aide des connecteurs 1 GbE.


» » » » Nœuds de Master dans les clusters Hadoop