Hadoop - Umgebung Sucht Einrichten



Hadoop wird von GNU / Linux-Plattform und seine Aromen unterstützt. Deshalb haben wir einen Linux-Betriebssystem für den Einrichten von Hadoop Umgebung installieren. In Falls Sie haben ein Betriebssystem anderes als Linux-, können installieren Sie eine Virtualbox Software in es und haben Linux inner der Virtualbox.

Vorinstallation Einrichten

Vor der Installation von Hadoop in die Linux-Umgebung, müssen wir einrichten Linux mit SSH (Secure Shell). folgen Sie den Schritten gegeben unten für den Aufbau des Linux-Umgebung.

Erstellen eines Benutzer

Bei Anfang ist es empfehlenswert, einen eigenen Benutzer erstellen für Hadoop zu isolieren Hadoop-Dateisystem von Unix-Dateisystem. Befolgen Sie die unten angegebenen Schritte, um einen Benutzer zu erstellen:

  • Öffnen Sie die Wurzel verwendung dem Befehl "su".
  • Erstellen Sie einen Benutzer aus der Root-Account verwendung dem Befehl "useradd Benutzername".
  • Nun können Sie ein bestehendes Benutzerkonto mit dem Befehl "su username" zu öffnen.

Öffnen Sie die Linux-Terminal und die folgenden Befehle ein, um einen Benutzer zu erstellen.

$ su 
   password: 
# useradd hadoop 
# passwd hadoop 
   New passwd: 
   Retype new passwd 

SSH setup und schlüssel Erzeugungs

SSH-Setup ist erforderlich, um verschiedene Operationen auf einem Cluster zu tun, wie Starten, Stoppen, verteilt Daemon Shell Operationen. Um verschiedene Benutzer von Hadoop authentifizieren, es ist es erforderlich zu stellt öffentliche / private Schlüsselpaar für eine Hadoop Benutzer und teilen es mit verschiedene Benutzern.

Die folgenden Befehle werden zur Erzeugung eines Schlüsselwertpaar verwendung SSH benutzt. Kopieren die öffentlichen Schlüssel bilden von id_rsa.pub zu authorized_keys, und stellt die Besitzer mit Lese- und Schreibzugriff auf Dateien bzw. authorized_keys datei respektive.

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

Installieren von Java

Java ist die Haupt- Voraussetzung für Hadoop. Zunächst einmal sollten Sie die Existenz von Java in Ihrem System zu verifizieren verwendung dem Befehl "java -version". Die Syntax der Java-Version Befehl ist unten angegeben.

$ java -version 

Wenn alles in Ordnung ist, wird es Ihnen die folgende Ausgabe.

java version "1.7.0_71" 
Java(TM) SE Runtime Environment (build 1.7.0_71-b13) 
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)  

Wenn Java nicht auf Ihrem System installiert, dann gehen Sie folgendermaßen vor für die Installation von Java.

Schritt 1

Herunterladen java (JDK <latest version> - X64.tar.gz) indem den Besuch den folgenden Link https://www.oracle.com/java/technologies/

Dann jdk-7u71-linux-x64.tar.gz wird sein in Ihr System herunterladen.

Schritt 2

In der Regel werden Sie die heruntergeladene Java-Datei im Download-Ordner zu finden. verifizieren Sie es und extrahieren Sie die jdk-7u71-linux-x64.gz Datei verwendung den folgenden Befehlen.

$ cd Downloads/ 
$ ls 
jdk-7u71-linux-x64.gz 
$ tar zxf jdk-7u71-linux-x64.gz 
$ ls 
jdk1.7.0_71   jdk-7u71-linux-x64.gz 

Schritt 3

Zu machen Java verfügbar für alle Benutzer verfügbar , müssen Sie sie auf den Standort "/ usr / local /" zu bewegen. Öffnen Sie root und die folgenden Befehle ein.

$ su 
password: 
# mv jdk1.7.0_71 /usr/local/ 
# exit 

Schritt 4

Zum Einrichten von PATH und JAVA_HOME Variablen, fügen Sie die folgenden Befehle ein, um ~/.bashrc datei.

export JAVA_HOME=/usr/local/jdk1.7.0_71 
export PATH=PATH:$JAVA_HOME/bin 

Nun verifizieren Sie den Befehl java -version aus dem Terminal, wie oben erklärt.

Herunterladen Hadoop

Herunterladen und extrahieren Hadoop 2.4.1 von Apache Software Foundation verwendung den folgenden Befehlen.

$ su 
password: 
# cd /usr/local 
# wget http://apache.claz.org/hadoop/common/hadoop-2.4.1/ 
hadoop-2.4.1.tar.gz 
# tar xzf hadoop-2.4.1.tar.gz 
# mv hadoop-2.4.1/* to hadoop/ 
# exit 

Hadoop Betriebs arten

Wenn Sie Hadoop heruntergeladen haben, können Sie Ihre Hadoop-Cluster in einer der drei unterstützten Modi betrieben:

  • lokal / Standalone- Modus: Nach dem Download Hadoop in Ihrem System standardmäßig wird es in einem Standalone-Modus konfiguriert und kann als eine einzelne Java-Prozess ausgeführt werden.

  • Pseudo verteilten Modus: Es ist eine verteilte Simulation auf einzige Maschine. Jedes Hadoop-Daemon wie HDFS, Garn, MapReduce etc., werden als separate Java-Prozess ausführen. Dieser Modus ist nützlich für die Entwicklung.

  • Vollständig verteilten Modus: Dieser Modus ist mit mindestens zwei oder mehr Maschinen als Cluster verteilt. Wir werden kommen über in diesem Modus im Detail in den kommen Kapiteln.

Installieren von Hadoop im Standalone-Modus

Hier werden wir die Installation zu besprechen auf Hadoop 2.4.1 im Standalone-Modus.

Es gibt keine Daemons laufen und alles läuft in einer einzigen JVM. Standalone-Modus eignet sich für die Ausführung von Karte verkleinern-Programme während der Entwicklung, da es einfach zu testen und zu debuggen ihnen.

Einrichten Hadoop

Sie können setzen Hadoop Umgebungsvariablen durch Anhängen die folgenden Befehle ein, um ~/.bashrc datei.

export HADOOP_HOME=/usr/local/hadoop 

Bevor Sie fortfahren weiter, müssen Sie sicherstellen, dass Hadoop funktioniert prima. einfach nur Ausgabe den folgenden Befehl ein:

$ hadoop version 

Wenn alles in Ordnung ist mit Ihren Einstellung, dann sollten Sie folgendes Ergebnis sehen:

Hadoop 2.4.1 
Subversion https://svn.apache.org/repos/asf/hadoop/common -r 1529768 
Compiled by hortonmu on 2013-10-07T06:28Z 
Compiled with protoc 2.5.0
From source with checksum 79e53ce7994d1628b240f09af91e1af4 

Es bedeutet, Ihre Hadoop Standalone-Modus Setup ist gut funktioniert. Standardmäßig ist Hadoop so konfiguriert, dass in einer nicht-verteilten Modus auf einer einzigen Maschine ausgeführt werden.

Beispiel

Lassen Überprüfung Sie uns ein einfaches Beispiel für Hadoop. Hadoop-Installation liefert das folgende Beispiel MapReduce JAR-Datei, die grundlegenden Funktionen des MapReduce bietet und kann für die Berechnung, wie Pi Wert, Wort zählt in einer bestimmten Liste von Dateien, etc. verwendet werden.

$HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.2.0.jar 

Werfen wir einen Eingang Verzeichnis, in dem wir ein paar Dateien zu drücken und unser Anspruch ist es, die Gesamtzahl der Wörter in diesen Dateien zählen. Um die Gesamtzahl der Wörter zu berechnen, brauchen wir nicht zu unserem MapReduce zu schreiben, sofern die .jar-Datei enthält die Implementierung für die Wortzahl. Sie können andere Beispiele versuchen, mit den gleichen .jar-Datei; nur die folgenden Befehle unterstützt MapReduce funktionale Programme Hadoop-verkleinern-Beispiele-2.2.0.jar Datei zu überprüfen.

$ hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduceexamples-2.2.0.jar 

Schritt 1

Erstellen Sie temporäre Content-Dateien in das Eingabeverzeichnis. Sie können diese Eingabeverzeichnis überall erstellen Sie möchten, um zu arbeiten.

$ mkdir input 
$ cp $HADOOP_HOME/*.txt input 
$ ls -l input 

Es werden geben die folgenden Dateien in Ihrem Eingabeverzeichnis:

total 24 
-rw-r--r-- 1 root root 15164 Feb 21 10:14 LICENSE.txt 
-rw-r--r-- 1 root root   101 Feb 21 10:14 NOTICE.txt
-rw-r--r-- 1 root root  1366 Feb 21 10:14 README.txt 

Diese Dateien wurden von der Installations-Home-Verzeichnis Hadoop kopiert. Für das Experiment, können Sie unterschiedlich und große Setz von Dateien zu haben.

Schritt 2

Lassen start Sie uns die Hadoop-Prozess, um die Gesamtzahl der Wörter in allen im Eingabeverzeichnis Dateien zu zählen, wie folgt:

$ hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduceexamples-2.2.0.jar  wordcount input ouput 

Schritt 3

Schritt-2 werden tun die erforderliche Verarbeitung , und speichern Sie die Ausgabe in Ausgabe / Teil r00000 Datei, die Sie durch die Verwendung prüfen:

$cat output/* 

Es wird Liste unten alle Wörter zusammen mit ihren Gesamtzählung verfügbar in allen Dateien verfügbar in Eingabeverzeichnis.

"AS      4 
"Contribution" 1 
"Contributor" 1 
"Derivative 1
"Legal 1
"License"      1
"License");     1 
"Licensor"      1
"NOTICE”        1 
"Not      1 
"Object"        1 
"Source”        1 
"Work”    1 
"You"     1 
"Your")   1 
"[]"      1 
"control"       1 
"printed        1 
"submitted"     1 
(50%)     1 
(BIS),    1 
(C)       1 
(Don't)   1 
(ECCN)    1 
(INCLUDING      2 
(INCLUDING,     2 
.............

Installieren von Hadoop in Pseudo verteilten Modus

folgen Sie die angegebenen unten angegebenen Schritte, um Hadoop 2.4.1 in pseudo verteilten Modus installieren.

Schritt 1: Einrichten von Hadoop

Sie können Hadoop Umgebungsvariablen durch Anhängen die folgenden Befehle ein, um ~/.bashrc datei.

export HADOOP_HOME=/usr/local/hadoop 
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_INSTALL=$HADOOP_HOME 

Nun gelten alle Änderungen in laufenden System.

$ source ~/.bashrc 

Schritt 2: Hadoop-Konfiguration

Sie können alle Hadoop-Konfigurationsdateien in der Lage “$HADOOP_HOME/etc/hadoop”. Es ist erforderlich, um Änderungen in diesen Konfigurationsdateien je nach Hadoop Infrastruktur.

$ cd $HADOOP_HOME/etc/hadoop

Um Hadoop-Programme in Java zu entwickeln, sie haben zu rücksetzen um die Java-Umgebungsvariablen in hadoop-env.sh Datei durch Ersetzen JAVA_HOME Wert mit der Lage der Java in Ihrem System.

export JAVA_HOME=/usr/local/jdk1.7.0_71

Im Folgenden finden Sie die Liste der Dateien, die Sie bearbeiten die Konfiguration Hadoop haben.

core-site.xml

Die core-site.xml Datei enthält Informationen wie beispielsweise die Portnummer verwendet für Hadoop-Instanz, Speicher für das Dateisystem zugeordnet, Speichergrenze zum Speichern der Daten, und die Größe des Lese- / Schreibpuffer.

Öffnen Sie die Kern-site.xml und fügen Sie die folgenden Eigenschaften in zwischen <Konfiguration>,</Konfiguration> tags.

<configuration>

   <property>
      <name>fs.default.name </name>
      <value> hdfs://localhost:9000 </value> 
   </property>
 
</configuration>

hdfs-site.xml

Diehdfs-site.xml Datei enthält Informationen wie beispielsweise den Wert der Replikation Daten, namenKnoten Weg, und DatenKnoten Weg aus Ihren lokalen Dateisystemen . Es Mittel ist der Ort, an dem Sie die Hadoop-Infrastruktur gespeichert werden soll.

nehmen wir an, die folgenden Daten.

dfs.replication (data replication value) = 1 
(In the below given path /hadoop/ is the user name. 
hadoopinfra/hdfs/namenode is the directory created by hdfs file system.) 
namenode path = //home/hadoop/hadoopinfra/hdfs/namenode 
(hadoopinfra/hdfs/datanode is the directory created by hdfs file system.) 
datanode path = //home/hadoop/hadoopinfra/hdfs/datanode 

Öffnen Sie diese Datei und fügen Sie die folgenden Eigenschaften in zwischen der <Konfiguration> </Konfiguration> Tags in dieser Datei.

<configuration>

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

Hinweis: In der oben angegebenen Datei sind alle Eigenschaftswerte benutzerdefiniert und sie können machen Änderungen nach Ihren Hadoop Infrastruktur machen.

yarn-site.xml

Diese Datei wird verwendet, um Garn in Hadoop konfigurieren. Öffnen Sie die Garn-Datei site.xml und fügen Sie die folgenden Eigenschaften zwischen der<Konfiguration>, </Konfiguration> Tags in dieser Datei.

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

mapred-site.xml

Diese Datei wird verwendet angeben, welche Karte verkleinern Rahmen wir sind verwenden. Standardmäßig Hadoop enthält eine Vorlage von Garn-site.xml. Zunächst einmal ist es erforderlich, die Datei von mapred-site,xml.template zu mapred-site.xml Datei mit dem folgenden Befehl.

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

Öffnen mapred-site.xml datei und fügen Sie die folgenden Eigenschaften in zwischen der <Konfiguration>, </Konfiguration>Tags in dieser Datei.

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

Verifizieren der Hadoop-Installation

Die folgenden Schritte werden verwendet, um die Hadoop-Installation zu überprüfen.

Schritt 1: Namenknoten Einrichten

Einrichten die namenKnoten verwendung dem Befehl "HDFS namenode -format" wie folgt ein.

$ cd ~ 
$ hdfs namenode -format 

Das erwartete Ergebnis ist wie folgt.

10/24/14 21:30:55 INFO namenode.NameNode: STARTUP_MSG: 
/************************************************************ 
STARTUP_MSG: Starting NameNode 
STARTUP_MSG:   host = localhost/192.168.1.11 
STARTUP_MSG:   args = [-format] 
STARTUP_MSG:   version = 2.4.1 
...
...
10/24/14 21:30:56 INFO common.Storage: Storage directory 
/home/hadoop/hadoopinfra/hdfs/namenode has been successfully formatted. 
10/24/14 21:30:56 INFO namenode.NNStorageRetentionManager: Going to 
retain 1 images with txid >= 0 
10/24/14 21:30:56 INFO util.ExitUtil: Exiting with status 0 
10/24/14 21:30:56 INFO namenode.NameNode: SHUTDOWN_MSG: 
/************************************************************ 
SHUTDOWN_MSG: Shutting down NameNode at localhost/192.168.1.11 
************************************************************/

Schritt 2: Verifizieren Hadoop dfs

Mit dem folgenden Befehl wird verwendet, um dfs starten. Die Ausführung dieses Befehls wird Ihre Hadoop-Dateisystem starten.

$ start-dfs.sh 

Die erwartete Ausgabe ist wie folgt:

10/24/14 21:37:56 
Starting namenodes on [localhost] 
localhost: starting namenode, logging to /home/hadoop/hadoop
2.4.1/logs/hadoop-hadoop-namenode-localhost.out 
localhost: starting datanode, logging to /home/hadoop/hadoop
2.4.1/logs/hadoop-hadoop-datanode-localhost.out 
Starting secondary namenodes [0.0.0.0]

Schritt 3: Verifizieren Yarn skript

Mit dem folgenden Befehl wird verwendet, um das Garn Skript zu starten. Die Ausführung dieses Befehls wird Ihre Garn-Dämonen starten.

$ start-yarn.sh 

Die erwartete Ausgabe wie folgt:

starting yarn daemons 
starting resourcemanager, logging to /home/hadoop/hadoop
2.4.1/logs/yarn-hadoop-resourcemanager-localhost.out 
localhost: starting nodemanager, logging to /home/hadoop/hadoop
2.4.1/logs/yarn-hadoop-nodemanager-localhost.out 

Schritt 4: Der Zugriff Hadoop auf Browser

Die Standardportnummer zu Hadoop zugreifen ist 50070. Verwenden Sie die folgende URL, um Hadoop Dienstleistungen Browser benötigt.

http://localhost:50070/
Der Zugriff auf Hadoop Browser

Schritt 5: Verifizieren Sie , alle Anträge auf Cluster

Die Standardportnummer für alle Anwendungen von Cluster-Zugriff ist 8088. Verwenden Sie die folgende URL, um diesen Dienst zu besuchen.

http://localhost:8088/
Hadoop Application Cluster
Advertisements