In diesem Tutorial zeigen wir Ihnen, wie Sie Apache Hadoop auf Debian 9 Stretch installieren. Für diejenigen unter Ihnen, die es nicht wussten, Apache Hadoop ist ein Open-Source-Framework, das für verteilte Speicherung verwendet wird sowie die verteilte Verarbeitung von Big Data auf Clustern von Computern, die auf handelsüblicher Hardware ausgeführt werden. Hadoop speichert Daten im Hadoop Distributed File System (HDFS), und die Verarbeitung dieser Daten erfolgt mit MapReduce. YARN bietet eine API zum Anfordern und Zuweisen von Ressourcen im Hadoop-Cluster.
Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo
hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen die schrittweise Installation von Apache Hadoop auf einem Debian 9 (Stretch) Server.
Voraussetzungen
- Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:Debian 9 (Stretch).
- Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
- SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
- Ein
non-root sudo user
oder Zugriff auf denroot user
. Wir empfehlen, alsnon-root sudo user
zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.
Installieren Sie Apache Hadoop auf Debian 9 Stretch
Schritt 1. Bevor wir Software installieren, ist es wichtig sicherzustellen, dass Ihr System auf dem neuesten Stand ist, indem Sie den folgenden apt-get
ausführen Befehle im Terminal:
apt-get update apt-get upgrade
Schritt 2. Installieren von Java (OpenJDK).
Apache Hadoop erfordert Java Version 8 und höher. Sie können also entweder OpenJDK oder Oracle JDK installieren:
- Installieren Sie Java JDK 8 unter Debian:
[email protected] ~# java -version java version "1.8.0_192" Java(TM) SE Runtime Environment (build 1.8.0_192-b02) Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode)
Schritt 3. Installieren von Apache Hadoop auf Debian 9.
Um Sicherheitsprobleme zu vermeiden, empfehlen wir, eine neue Hadoop-Benutzergruppe und ein neues Benutzerkonto einzurichten, um alle Hadoop-bezogenen Aktivitäten mit den folgenden Befehlen zu erledigen:
sudo addgroup hadoopgroup sudo adduser —ingroup hadoopgroup hadoopuser
Nachdem der Benutzer erstellt wurde, muss er auch schlüsselbasiertes ssh auf seinem eigenen Konto einrichten. Führen Sie dazu die folgenden Befehle aus:
su - hadoopuser ssh-keygen -t rsa -P "" cat /home/hadoopuser/.ssh/id_rsa.pub >> /home/hadoopuser/.ssh/authorized_keys chmod 600 authorized_keys ssh-copy-id -i ~/.ssh/id_rsa.pub slave-1 ssh slave-1
Laden Sie als Nächstes die neueste stabile Version von Apache Hadoop herunter. Zum Zeitpunkt des Schreibens dieses Artikels ist es Version 2.8.1:
wget http://www-us.apache.org/dist/hadoop/common/hadoop-3.1.1/hadoop-3.1.1.tar.gz tar xzf hadoop-3.1.1.tar.gz mv hadoop-3.1.1 hadoop
Schritt 4. Einrichtungsumgebung Apache Hadoop.
Einrichtung der Umgebungsvariablen. Bearbeiten Sie ~/.bashrc
Datei und hängen Sie die folgenden Werte am Ende der Datei an:
export HADOOP_HOME=/home/hadoop/hadoop 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
Umgebungsvariablen auf die aktuell laufende Sitzung anwenden:
source ~/.bashrc
Bearbeiten Sie nun $HADOOP_HOME/etc/hadoop/hadoop-env.sh
Datei und legen Sie die Umgebungsvariable JAVA_HOME fest:
export JAVA_HOME=/usr/jdk1.8.0_192/
Hadoop verfügt über viele Konfigurationsdateien, die gemäß den Anforderungen Ihrer Hadoop-Infrastruktur konfiguriert werden müssen. Beginnen wir mit der Konfiguration mit der grundlegenden Einrichtung eines Hadoop-Clusters mit einem einzigen Knoten:
cd $HADOOP_HOME/etc/hadoop
Bearbeiten Sie core-site.xml
:
<configuration> <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> </configuration>
Bearbeiten Sie hdfs-site.xml
:
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.name.dir</name> <value>file:///home/hadoop/hadoopdata/hdfs/namenode</value> </property> <property> <name>dfs.data.dir</name> <value>file:///home/hadoop/hadoopdata/hdfs/datanode</value> </property> </configuration>
Bearbeiten Sie mapred-site.xml
:
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
Bearbeiten Sie yarn-site.xml
:
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
Formatieren Sie jetzt namenode mit dem folgenden Befehl, vergessen Sie nicht, das Speicherverzeichnis zu überprüfen:
hdfs namenode -format
Starten Sie alle Hadoop-Dienste mit dem folgenden Befehl:
cd $HADOOP_HOME/sbin/ start-dfs.sh start-yarn.sh
Sie sollten die Ausgabe beobachten, um sicherzustellen, dass versucht wird, Datanode nacheinander auf Slave-Knoten zu starten. Um zu überprüfen, ob alle Dienste ordnungsgemäß gestartet wurden, verwenden Sie 'jps
‘Befehl:
jps
Schritt 5. Firewall für Apache Hadoop einrichten.
Apache Hadoop durch die Firewall zulassen:
ufw allow 50070/tcp ufw allow 8088/tcp ufw reload
Schritt 6. Zugriff auf Apache Hadoop.
Apache Hadoop ist standardmäßig auf HTTP-Port 8088 und Port 50070 verfügbar. Öffnen Sie Ihren bevorzugten Browser und navigieren Sie zu http://yourdomain.com:50070
oder http://server-ip:50070
.
Herzlichen Glückwunsch! Sie haben Apache Hadoop erfolgreich installiert. Vielen Dank, dass Sie dieses Tutorial zur Installation von Apache Hadoop in Debian 9 Stretch-Systemen verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Ihnen, die offizielle Apache Hadoop-Website zu besuchen .