Entdecken Sie die Rolle des Node Managers
In diesem Schritt lernen Sie die Rolle des Node Managers in der Hadoop YARN-Architektur kennen.
Der Node Manager ist ein wichtiger Bestandteil des Hadoop YARN (Yet Another Resource Negotiator)-Frameworks. Er ist für die Verwaltung der Ressourcen einzelner Knoten in einem Hadoop-Cluster verantwortlich. Jeder Knoten im Cluster führt eine Node-Manager-Instanz aus, die mit dem Resource Manager kommuniziert, um Aufgaben zu empfangen und auszuführen.
So funktioniert der Node Manager:
- Knotenregistrierung: Wenn ein Node Manager gestartet wird, registriert er sich beim Resource Manager und gibt Informationen über die verfügbaren Ressourcen auf seinem Knoten, wie CPU, Arbeitsspeicher und Festplattenspeicherplatz, weiter.
- Containerverwaltung: Der Node Manager ist für die Erstellung und Verwaltung von Containern verantwortlich, die isolierte Ausführungsumgebungen für Aufgaben sind. Jeder Container hat eine spezifische Ressourcenzuweisung, die vom Resource Manager definiert wird.
- Aufgabenausführung: Wenn der Resource Manager einer Aufgabe einem Knoten zuweist, erstellt der Node Manager einen Container und startet die Aufgabe darin. Der Node Manager überwacht die Ausführung der Aufgabe und meldet ihren Status zurück an den Resource Manager.
- Ressourcenüberwachung: Der Node Manager überwacht ständig die Ressourcenverwendung jedes Containers und Knotens, um sicherzustellen, dass Aufgaben nicht mehr Ressourcen verbrauchen als zugewiesen.
- Gesundheitsüberwachung: Der Node Manager überwacht auch den Gesundheitszustand des Knotens selbst und überprüft auf Probleme wie Festplattenschäden oder Netzwerkverbindungsstörungen. Wenn ein Knoten ungesund wird, kann der Node Manager dies an den Resource Manager melden, der dann entsprechende Maßnahmen ergreifen kann, wie das Neustarten oder Neuplanen von Aufgaben.
Um die Rolle des Node Managers zu erkunden, wechseln wir zunächst zum Benutzer hadoop
:
su - hadoop
Als Nächstes können wir den Status des Node Managers überprüfen, indem wir den folgenden Befehl ausführen:
yarn node -status <Node-Id>
Tipps: Sie können die 'Node-Id' mit dem Befehl yarn node -list
finden.
Dieser Befehl zeigt Informationen über den laufenden Node Manager an, einschließlich seiner Adresse, der verfügbaren Ressourcen auf dem Knoten und der derzeit laufenden Container.
hadoop:~/ $ yarn node -status iZj6c4hvgdd6j6qljtbxoaZ:39885 [21:53:30]
2024-03-23 21:54:08,741 INFO client.DefaultNoHARMFailoverProxyProvider: Connecting to ResourceManager at /0.0.0.0:8032
2024-03-23 21:54:09,119 INFO conf.Configuration: resource-types.xml not found
2024-03-23 21:54:09,128 INFO resource.ResourceUtils: Unable to find'resource-types.xml'.
Node Report :
Node-Id : iZj6c4hvgdd6j6qljtbxoaZ:39885
Rack : /default-rack
Node-State : RUNNING
Node-Http-Address : iZj6c4hvgdd6j6qljtbxoaZ:8042
Last-Health-Update : Sat 23/Mar/24 09:52:56:762CST
...