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 ~/.bashrcBearbeiten 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.



















