Website-Suche

So installieren und konfigurieren Sie Apache Hadoop auf einem einzelnen Knoten in CentOS 7


Apache Hadoop ist ein Open-Source-Framework, das für die verteilte Speicherung und Verarbeitung von Big Data-Daten über Computercluster hinweg entwickelt wurde. Das Projekt basiert auf folgenden Komponenten:

  1. Hadoop Common – es enthält die Java-Bibliotheken und Dienstprogramme, die von anderen Hadoop-Modulen benötigt werden.
  2. HDFS – Hadoop Distributed File System – Ein Java-basiertes skalierbares Dateisystem, das über mehrere Knoten verteilt ist.
  3. MapReduce – YARN-Framework für die parallele Big-Data-Verarbeitung.
  4. Hadoop YARN: Ein Framework für die Verwaltung von Clusterressourcen.

In diesem Artikel erfahren Sie, wie Sie Apache Hadoop auf einem Cluster mit einem einzelnen Knoten in CentOS 7 installieren können (funktioniert auch für RHEL 7 und Fedora 23+). Dieser Konfigurationstyp wird auch als Hadoop Pseudo-Distributed Mode bezeichnet.

Schritt 1: Java auf CentOS 7 installieren

1. Bevor Sie mit der Java-Installation fortfahren, melden Sie sich zuerst mit einem Root-Benutzer oder einem Benutzer mit Root-Rechten an, der den Hostnamen Ihres Computers mit dem folgenden Befehl einrichtet.

# hostnamectl set-hostname master

Fügen Sie außerdem einen neuen Datensatz in der Hosts-Datei mit Ihrem eigenen Maschinen-FQDN hinzu, der auf Ihre System-IP-Adresse verweist.

# vi /etc/hosts

Fügen Sie die folgende Zeile hinzu:

192.168.1.41 master.hadoop.lan

Ersetzen Sie die oben genannten Einträge für den Hostnamen und den FQDN durch Ihre eigenen Einstellungen.

2. Gehen Sie als Nächstes zur Oracle Java-Download-Seite und laden Sie die neueste Version von Java SE Development Kit 8 mit Hilfe des curl-Befehls auf Ihr System herunter:

# curl -LO -H "Cookie: oraclelicense=accept-securebackup-cookie" “http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-linux-x64.rpm”

3. Nachdem der Download der Java-Binärdatei abgeschlossen ist, installieren Sie das Paket, indem Sie den folgenden Befehl eingeben:

# rpm -Uvh jdk-8u92-linux-x64.rpm

Schritt 2: Installieren Sie das Hadoop-Framework in CentOS 7

4. Erstellen Sie als Nächstes ein neues Benutzerkonto auf Ihrem System ohne Root-Befugnisse, das wir für den Hadoop-Installationspfad und die Arbeitsumgebung verwenden. Das neue Basisverzeichnis des Kontos befindet sich im Verzeichnis /opt/hadoop.

# useradd -d /opt/hadoop hadoop
passwd hadoop

5. Besuchen Sie im nächsten Schritt die Apache Hadoop-Seite, um den Link für die neueste stabile Version zu erhalten und das Archiv auf Ihr System herunterzuladen.

# curl -O http://apache.javapipe.com/hadoop/common/hadoop-2.7.2/hadoop-2.7.2.tar.gz 

6. Extrahieren Sie das Archiv und kopieren Sie den Inhalt des Verzeichnisses in den Home-Pfad des Hadoop-Kontos. Stellen Sie außerdem sicher, dass Sie die Berechtigungen für kopierte Dateien entsprechend ändern.

#  tar xfz hadoop-2.7.2.tar.gz
cp -rf hadoop-2.7.2/* /opt/hadoop/
chown -R hadoop:hadoop /opt/hadoop/

7. Melden Sie sich als Nächstes mit dem Hadoop-Benutzer an und konfigurieren Sie Hadoop und Java-Umgebungsvariablen auf Ihrem System, indem Sie die .bash_profile Datei bearbeiten.

# su - hadoop
vi .bash_profile

Fügen Sie die folgenden Zeilen am Ende der Datei an:

## JAVA env variables
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

## HADOOP env variables
export HADOOP_HOME=/opt/hadoop
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

8. Initialisieren Sie nun die Umgebungsvariablen und überprüfen Sie ihren Status, indem Sie die folgenden Befehle ausführen:

$ source .bash_profile
echo $HADOOP_HOME
echo $JAVA_HOME

9. Konfigurieren Sie abschließend die auf dem SSH-Schlüssel basierende Authentifizierung für das Hadoop-Konto, indem Sie die folgenden Befehle ausführen (ersetzen Sie den Hostnamen oder den FQDN entsprechend durch den Befehl ssh-copy-id).

Lassen Sie außerdem das Feld für die Passphrase leer, um sich automatisch über SSH anzumelden.

$ ssh-keygen -t rsa
ssh-copy-id master.hadoop.lan

Verwandte Artikel: