Website-Suche

So installieren Sie Hadoop auf Ubuntu 18.04 Bionic Beaver Linux


Apache Hadoop ist ein Open-Source-Framework, das für die verteilte Speicherung sowie die verteilte Verarbeitung großer Datenmengen auf Clustern von Computern verwendet wird und auf handelsüblicher Hardware ausgeführt wird. Hadoop speichert Daten im Hadoop Distributed File System (HDFS), und die Verarbeitung dieser Daten erfolgt mithilfe von MapReduce. YARN bietet eine API zum Anfordern und Zuweisen von Ressourcen im Hadoop-Cluster.

Das Apache Hadoop-Framework besteht aus den folgenden Modulen:

  • Hadoop Allgemein
  • Hadoop Verteiltes Dateisystem (HDFS)
  • GARN
  • MapReduce

In diesem Artikel wird erläutert, wie Sie Hadoop Version 2 unter Ubuntu 18.04 installieren. Wir werden HDFS (Namenode und Datanode), YARN, MapReduce auf dem Einzelknoten-Cluster im Pseudo Distributed Mode installieren, bei dem es sich um eine verteilte Simulation auf einem einzelnen Computer handelt. Jeder Hadoop-Daemon wie hdfs, yarn, mapreduce usw. wird als separater/individueller Java-Prozess ausgeführt.

In diesem Tutorial lernen Sie:

  • Hinzufügen von Benutzern für die Hadoop-Umgebung
  • Installieren und Konfigurieren des Oracle JDK
  • So konfigurieren Sie passwortloses SSH
  • So installieren Sie Hadoop und konfigurieren die erforderlichen zugehörigen XML-Dateien
  • So starten Sie den Hadoop-Cluster
  • So greifen Sie auf die Webbenutzeroberfläche von NameNode und ResourceManager zu

Namenode Web-Benutzeroberfläche.

Verwendete Softwareanforderungen und Konventionen

Andere Versionen dieses Tutorials

Ubuntu 20.04 (Fossa fokal)

Hinzufügen von Benutzern für die Hadoop-Umgebung

Erstellen Sie den neuen Benutzer und die neue Gruppe mit dem Befehl:

add user

Hinzufügen eines neuen Benutzers für Hadoop.

Installieren und Konfigurieren des Oracle JDK

Laden Sie das Java-Archiv herunter und extrahieren Sie es unter dem Verzeichnis /opt.

cd /opt
tar -xzvf jdk-8u192-linux-x64.tar.gz

oder

tar -xzvf jdk-8u192-linux-x64.tar.gz -C /opt

Um das JDK 1.8 Update 192 als Standard-JVM festzulegen, verwenden wir die folgenden Befehle:

update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_192/bin/java 100
update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_192/bin/javac 100

Führen Sie nach der Installation die folgenden Befehle aus, um zu überprüfen, ob Java erfolgreich konfiguriert wurde:

update-alternatives --display java
update-alternatives --display javac

Installation und Konfiguration des OracleJDK.

Konfigurieren von passwortlosem SSH

Installieren Sie den Open SSH Server und den Open SSH Client mit dem folgenden Befehl:

sudo apt-get install openssh-server openssh-client 

Generieren Sie öffentliche und private Schlüsselpaare mit dem folgenden Befehl. Das Terminal fordert Sie auf, den Dateinamen einzugeben. Drücken Sie ENTER und fahren Sie fort. Kopieren Sie danach die öffentlichen Schlüssel von id_rsa.pub nach authorized_keys.

ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

Passwortlose SSH-Konfiguration.

Überprüfen Sie die passwortlose SSH-Konfiguration mit dem Befehl:

ssh localhost

Passwortlose SSH-Prüfung.

Installieren von Hadoop und Konfigurieren der zugehörigen XML-Dateien

Laden Sie Hadoop 2.8.5 von der offiziellen Apache-Website herunter und extrahieren Sie es.

tar -xzvf hadoop-2.8.5.tar.gz

Einrichten der Umgebungsvariablen

Bearbeiten Sie die bashrc für den Hadoop-Benutzer, indem Sie die folgenden Hadoop-Umgebungsvariablen einrichten:

export HADOOP_HOME=/home/hadoop/hadoop-2.8.5
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

Beziehen Sie die .bashrc-Datei in der aktuellen Anmeldesitzung.

source ~/.bashrc

Bearbeiten Sie die hadoop-env.sh Datei, die sich in /etc/hadoop im Hadoop-Installationsverzeichnis befindet, und nehmen Sie die folgenden Änderungen vor und prüfen Sie, ob Sie andere Konfigurationen ändern möchten.

export JAVA_HOME=/opt/jdk1.8.0_192
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/home/hadoop/hadoop-2.8.5/etc/hadoop"}

Änderungen in hadoop-env.sh Datei.

Konfigurationsänderungen in core-site.xml Datei

Bearbeiten Sie die core-site.xml mit vim oder verwenden Sie einen der Editoren. Die Datei befindet sich unter /etc/hadoop im Hadoop-Home-Verzeichnis und fügen Sie die folgenden Einträge hinzu.

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadooptmpdata</value>
</property>
</configuration>

Erstellen Sie außerdem das Verzeichnis unter dem Home-Ordner Hadoop.

mkdir hadooptmpdata

Konfiguration für core-site.xml Datei.

Konfigurationsänderungen in hdfs-site.xml Datei

Bearbeiten Sie das hdfs-site.xml, das sich unter demselben Speicherort befindet, d.h. /etc/hadoop im Hadoop-Installationsverzeichnis, und erstellen Sie die Namenode/Datanode-Verzeichnisse im Hadoop-Benutzer-Home-Verzeichnis.

mkdir -p hdfs/namenode
mkdir -p hdfs/datanode
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
<name>dfs.name.dir</name>
<value>file:///home/hadoop/hdfs/namenode</value>
<name>dfs.data.dir</name>
<value>file:///home/hadoop/hdfs/datanode</value>
</property>
</configuration>

Konfiguration für hdfs-site.xml Datei.

Konfigurationsänderungen in mapred-site.xml Datei

Kopieren Sie die mapred-site.xml aus mapred-site.xml.template mit dem Befehl cp und bearbeiten Sie dann die mapred-site.xml in /etc/hadoop im Verzeichnis hadoop instillation mit den folgenden Änderungen.

cp mapred-site.xml.template mapred-site.xml

Erstellen der neuen mapred-site.xml Datei.

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

Konfiguration für mapred-site.xml Datei.

Konfigurationsänderungen in yarn-site.xml Datei

Bearbeiten Sie yarn-site.xml mit den folgenden Einträgen.

<configuration>
<property>
<name>mapreduceyarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

Konfiguration für yarn-site.xml Datei.

Starten des Hadoop-Clusters

Formatieren Sie den Namenode, bevor Sie ihn zum ersten Mal verwenden. Führen Sie als HDFS-Benutzer den folgenden Befehl aus, um den Namenode zu formatieren.

hdfs namenode -format

Formatieren Sie den Namenode.

Sobald der Namenode formatiert wurde, starten Sie das HDFS mit dem Skript start-dfs.sh.

Starten des DFS-Startskripts zum Starten von HDFS.

Um die YARN-Dienste zu starten, müssen Sie das yarn start-Skript ausführen, d.h. start-yarn.sh

Starten des YARN-Startskripts, um YARN zu starten.

Um zu überprüfen, ob alle Hadoop-Dienste/-Daemons erfolgreich gestartet wurden, können Sie den Befehl jps verwenden.

/opt/jdk1.8.0_192/bin/jps
20035 SecondaryNameNode
19782 DataNode
21671 Jps
20343 NodeManager
19625 NameNode
20187 ResourceManager

Ausgabe von Hadoop-Daemons aus dem JPS-Befehl.

Jetzt können wir die aktuelle Hadoop-Version überprüfen, die Sie mit dem folgenden Befehl verwenden können:

hadoop version

oder

hdfs version

Überprüfen Sie die Hadoop-Version.

HDFS-Befehlszeilenschnittstelle

Um auf HDFS zuzugreifen und einige Verzeichnisse oben in DFS zu erstellen, können Sie die HDFS-CLI verwenden.

hdfs dfs -mkdir /test
hdfs dfs -mkdir /hadooponubuntu
hdfs dfs -ls /

HDFS-Verzeichniserstellung mit der HDFS-CLI.

Greifen Sie über den Browser auf den Namenode und YARN zu

Sie können sowohl auf die Web-Benutzeroberfläche für NameNode als auch auf den YARN Resource Manager über einen beliebigen Browser wie Google Chrome/Mozilla Firefox zugreifen.

Namenode-Web-Benutzeroberfläche – Hostname/IP-Adresse des http://<Hadoop-Clusters>:50070

Namenode Web-Benutzeroberfläche.

HDFS-Details aus der Web-Benutzeroberfläche von Namenode.

HDFS-Verzeichnis-Browsing über die Web-Benutzeroberfläche von Namenode.

Auf der Weboberfläche des YARN Resource Manager (RM) werden alle laufenden Aufträge im aktuellen Hadoop-Cluster angezeigt.

Resource Manager-Webbenutzeroberfläche – http://<Hostname/IP-Adresse des Hadoop-Clusters>:8088

Resource Manager-Webbenutzeroberfläche.

Schlussfolgerung

Die Welt verändert die Art und Weise, wie sie derzeit funktioniert, und Big Data spielt in dieser Phase eine wichtige Rolle. Hadoop ist ein Framework, das unsere Arbeit mit großen Datenmengen vereinfacht. Es gibt Verbesserungen an allen Fronten. Die Zukunft ist spannend.

Verwandte Artikel: