Master-Knoten in Hadoop-Clustern

Die Master-Knoten in verteilten Hadoop Cluster Host die verschiedenen Speicher- und Verarbeitungs-Management-Services, in dieser Liste beschrieben, für den gesamten Hadoop-Cluster. Redundanz ist von entscheidender Bedeutung in einzelnen Fehlerquellen vermieden werden, so dass Sie sehen zwei Schalter und drei Master-Knoten.

  • NameNode: Leitet HDFS Lagerung. Um eine hohe Verfügbarkeit sicherzustellen, haben Sie sowohl eine aktive NameNode und eine Standby-NameNode. Jeder läuft auf einem eigenen, speziellen Master-Knoten.

  • Checkpoint Knoten (oder Backup-Knoten): Anbieten Checkpointing Dienstleistungen für die NameNode. Dies beinhaltet die NameNode das Bearbeitungsprotokoll für Änderungen an Dateien in HDFS (neu, gelöscht, und die angehängten Dateien) seit dem letzten Checkpoint zu lesen, und sie in die NameNode Master-Datei der Anwendung, die Dateien auf Datenblöcke abbildet.

    Darüber hinaus hält der Backup-Knoten eine Kopie des Dateisystems Namensraum im Speicher und hält sie synchron mit dem Zustand des NameNode. Um eine hohe Verfügbarkeit Implementierungen keinen Checkpoint Knoten oder Backup-Knoten verwenden - eine Standby NameNode stattdessen verwenden. Neben einem aktiven Standby-Modus für die NameNode zu sein, unterhält die Standby-NameNode die Prüfpunktverfahren Dienste und hält einen up-to-date Kopie des Dateisystems Namensraum im Speicher.

  • JournalNode: Empfängt Bearbeitungsprotokoll Änderungen Änderungen an Dateien in HDFS vom NameNode anzeigt. Mindestens drei JournalNode Dienste (und es ist immer eine ungerade Zahl) müssen in einem Cluster ausgeführt werden, und sie sind leicht genug, dass sie mit anderen Diensten auf den Master-Knoten colocated werden kann.

  • Ressourcenmanager: Überwacht die Planung von Anwendungsaufgaben und die Verwaltung der Ressourcen des Hadoop-Cluster. Dieser Service ist das Herz von GARN.

  • Jobtracker: Für Hadoop 1 Server, Griffe Cluster-Ressource-Management und Scheduling. Mit GARN, ist die Jobtracker veraltet und wird nicht verwendet. Eine Reihe von Hadoop-Bereitstellungen noch nicht migriert Hadoop 2 und GARN.

  • HMaster: Überwacht die HBase Region-Server und kümmert sich um alle Änderungen von Metadaten. Um eine hohe Verfügbarkeit zu gewährleisten, sollten Sie eine zweite HMaster Instanz zu verwenden. Der HMaster Service ist leicht genug, um mit anderen Diensten auf den Master-Knoten colocated werden. In Hadoop 1, Instanzen des HMaster Dienst laufen auf dem Master-Knoten. In Hadoop 2, mit Hoya (HBase auf Yarn), HMaster Instanzen in Containern auf Slave-Knoten laufen.

  • Zoowärter: Koordinaten verteilten Komponenten und stellt Mechanismen bereit, sie synchron zu halten. Zookeeper wird verwendet, um den Ausfall des NameNode zu erkennen und einen neuen NameNode wählen. Es ist auch mit HBase zu verwalten die Zustände des HMaster und den RegionServers verwendet.

    Wie bei der JournalNode, müssen Sie mindestens drei Instanzen von Zookeeper Knoten (und immer eine ungerade Zahl), und sie sind leicht genug, um mit anderen Diensten auf den Master-Knoten colocated werden.

    bild0.jpg

Hier haben Sie drei Master-Knoten (mit der gleichen Hardware) bekam, wo die wichtigsten Dienste Aktive NameNode, Standby NameNode und Ressourcen-Manager für jeweils einen eigenen Server haben. Es gibt JournalNode und Zookeeper Dienste auf jedem Server als auch laufen, aber diese sind leicht und nicht eine Quelle der Ressourcenkonflikte mit den NameNode und Resource Manager Dienste sein.

image1.jpg

Die Prinzipien sind die gleichen für Hadoop 1, in dem Sie einen eigenen Master-Knoten für die NameNode, Secondary NameNode benötigen, und Jobtracker Dienstleistungen.

Wenn Sie planen, HBase mit Hoya in Hadoop 2 zu verwenden, brauchen Sie keine zusätzlichen Dienste. Für Hadoop 1-Implementierungen HBase, überprüfen Sie die folgende Abbildung für die Bereitstellung von Diensten auf der Hadoop-Cluster Master-Knoten aus.

image2.jpg

Es gibt zwei Unterschiede, wenn diese Master-Server auf die Hadoop 1 Master-Server ohne HBase Unterstützung zu vergleichen: hier müssen Sie zwei HMaster Dienste (ein HBase zu koordinieren, und eine als Stand-by zu handeln) und Zookeeper-Dienste auf allen drei Master-Knoten Failover zu handhaben .

Wenn Sie Ihr Hadoop 1 Cluster für HBase nur zu verwenden, können Sie ohne den Jobtracker Dienst tun, da HBase nicht auf die 1 MapReduce Infrastruktur Hadoop abhängen.

Wenn Leute über Hardware für Hadoop sprechen, betonen sie in der Regel die Verwendung von Ware Komponenten - die die billigen. Da Sie nur für ein paar Master-Knoten hinschmeißen haben (in der Regel drei oder vier), sind Sie nicht durch Multiplikation Kosten schlagen, wenn zum Beispiel entscheiden Sie teure Festplattenlaufwerke zu verwenden.

Beachten Sie, dass, ohne Master-Knoten gibt es keine Hadoop-Clusters ist. Master-Knoten dienen dazu, eine unternehmenskritische Funktion, und auch wenn Sie Redundanz benötigen, sollten Sie sie entwerfen mit hoher Verfügbarkeit und Ausfallsicherheit im Auge behalten.

Empfohlene Lager

Für Hadoop Masterknoten, unabhängig von der Anzahl der Slave-Knoten oder Verwendungen des Clusters sind die Lagerungseigenschaften konsistent. Verwenden Sie vier 900GB SAS-Laufwerke, zusammen mit einem RAID-Festplatten-Controller für RAID konfiguriert 1 + 0. SAS-Laufwerke sind teurer als SATA-Laufwerke und haben eine geringere Speicherkapazität, aber sie sind schneller und zuverlässiger.

Bereitstellen der SAS-Laufwerke als RAID-Array stellt sicher, dass die Hadoop-Management-Services einen redundanten Speicher für ihre unternehmenskritischen Daten. Dies gibt Ihnen genügend stabil, schnell und redundante Speicherung die Verwaltung Ihrer Hadoop-Cluster zu unterstützen.

Empfohlene Prozessoren

Zum Zeitpunkt des Schreibens dieses Artikels, empfehlen die meisten Referenzarchitekturen Motherboards mit zwei CPU-Sockel verwenden, die jeweils mit sechs oder acht Kernen. Die Intel Ivy Bridge-Architektur wird häufig verwendet.

Empfohlene Speicher

Der Speicherbedarf erheblich variieren je nach Umfang eines Clusters Hadoop. Der Speicher ist ein kritischer Faktor für Hadoop-Master-Knoten, da die aktiven und Standby-Server NameNode verlassen sich stark auf RAM HDFS zu verwalten. Als solche verwenden Fehlerkorrekturspeicher (ECC) für Hadoop-Master-Knoten. Typischerweise Master-Knoten müssen zwischen 64 GB und 128 GB RAM.

Der NameNode Speicherbedarf ist eine direkte Funktion der Anzahl der Datei in HDFS gespeicherten Blöcke. In der Regel verwendet der NameNode etwa 1 GB RAM pro Million HDFS Blöcke. (Denken Sie daran, dass Dateien in einzelne Blöcke zerlegt und repliziert, so dass Sie drei Kopien von jedem Block.)

Die Speicheranforderungen von Resource Manager, HMaster, Zoowärter und JournalNode Server sind deutlich geringer als für den NameNode Server. Allerdings ist es ratsam, die Master-Knoten in einer konsistenten Art und Weise zu Größe, so dass sie im Falle eines Hardware-Defekts austauschbar sind.

Empfohlene Vernetzung

Schnelle Kommunikation ist von entscheidender Bedeutung für die Dienste auf dem Master-Knoten, so dass wir empfehlen, ein Paar von gebundenen 10GbE-Verbindungen. Dieses verbundenes Paar bietet Redundanz, aber auch verdoppelt den Durchsatz zu 20GbE. Für kleinere Cluster (zum Beispiel weniger als 50 Knoten) können Sie mit der Verwendung von 1-GbE-Anschlüsse weg.

Menü