Ein praktisches Tutorial zum Erstellen einer vollständig verteilten Hadoop-Umgebung unter Ubuntu 16.4

Ein praktisches Tutorial zum Erstellen einer vollständig verteilten Hadoop-Umgebung unter Ubuntu 16.4

Vorwort

In diesem Artikel werden hauptsächlich die relevanten Inhalte zur vollständig verteilten Konstruktion von Ubuntu 16.4 Hadoop vorgestellt und zu Ihrer Information und zum Lernen bereitgestellt. Werfen wir einen Blick auf die ausführliche Einführung.

Eine virtuelle Maschine

1. Mounten Sie die virtuelle Maschine im NAT-Netzwerkkartenmodus

2. Es ist am besten, den Hostnamen mehrerer zu verwendender virtueller Maschinen zu ändern, statische IP /etc/network/interface, hier sind drei Hosts s101 s102 s103 ubantu, ändern Sie die Datei /etc/hostname

3. Installieren Sie ssh

Auf dem ersten Host erstellt s101 einen öffentlichen und privaten Schlüssel

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

>cd .ssh

>cp id_rsa.pub >authorized_keys Erstellen Sie eine Schlüsselbibliothek

Übertragen Sie id_rsa.pub auf andere Hosts und legen Sie es im .ssh-Verzeichnis ab

Über den Server nc -l 8888 >~/.ssh/authorized_keys

Kunde nc s102 8888 <id_rsa.pub

Beginnen Sie mit der Installation von Hadoop/jdk

1. Installieren Sie VM-Tools, um das Ziehen von Dateien von Win 10 nach Ubuntu zu erleichtern

2. Erstellen Sie ein Verzeichnis /soft

3. Ändern Sie die Gruppe chown ubantu:ubantu /soft, um die Dateiübertragung mit Berechtigungen zu erleichtern

4. Legen Sie die Datei in /soft ab (Sie können cp/mv src dst vom Desktop aus verwenden).

tar -zxvf jdk oder hadoop erstellt automatisch ein Dekomprimierungsverzeichnis

Konfigurieren Sie die Installationsumgebung (/etc/environment).

1. Fügen Sie das Verzeichnis JAVA_HOME=/soft/jdk-...jdk hinzu

2. Fügen Sie HADOOP_HOME=/soft/hadoop (Hadoop-Verzeichnis) hinzu

3. Fügen Sie dem Pfad /soft/jdk-...jdk/bin:/soft/hadoop/bin/:/soft/hadoop/sbin hinzu

4. Überprüfen Sie die Versionsnummer über java -version Erfolgreich

5.hadoop-Version hat Versionsnummer Erfolg

Beginnen Sie mit der Konfiguration der vier wichtigsten HDFS-Dateien core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml

core-site.xml

<Konfiguration>
 <Eigenschaft>
 <name>fs.defaultFS</name>
 <Wert>hdfs://s101:9000</Wert>
 </Eigenschaft>

</Konfiguration>

2.hdfs-site.xml

<Konfiguration>
<!-- Konfigurationen für NameNode: -->
<Eigenschaft>
 <name>dfs.replikation</name>
 <Wert>2</Wert>
</Eigenschaft>

<Eigenschaft>
 <name>dfs.namenode.name.dir</name>
 <Wert>Datei:/Daten/hdfs/Name</Wert>
</Eigenschaft>

<Eigenschaft>
 <name>dfs.datanode.data.dir</name>
 <Wert>Datei:/Daten/hdfs/Daten</Wert>
</Eigenschaft>

<Eigenschaft>
 <name>dfs.namenode.secondary.http-Adresse</name>
 <Wert>s101:50090</Wert>
</Eigenschaft>

<Eigenschaft>
 <name>dfs.namenode.http-adresse</name>
 <Wert>s101:50070</Wert>
 <Beschreibung>
 Die Adresse und der Basisport, auf denen die DFS-Namenode-Web-Benutzeroberfläche lauscht.
 Wenn der Port 0 ist, wird der Server auf einem freien Port gestartet.
 </Beschreibung>
</Eigenschaft> 

<Eigenschaft>
 <name>dfs.namenode.checkpoint.dir</name>
 <Wert>Datei:/Daten/hdfs/Checkpoint</Wert>
</Eigenschaft>

<Eigenschaft>
 <name>dfs.namenode.checkpoint.edits.dir</name>
 <Wert>Datei:/Daten/hdfs/Edits</Wert>
</Eigenschaft>
</Konfiguration>

3. mapred-site.xml

<Konfiguration>
 <Eigenschaft>
 <name>mapreduce.framework.name</name>
 <value>Garn</value>
 </Eigenschaft>
</Konfiguration>

4.yarn-site.xml

<Konfiguration>

<!-- Sitespezifische YARN-Konfigurationseigenschaften -->
 <Eigenschaft>
 <name>yarn.nodemanager.aux-services</name>
 <Wert>mapreduce_shuffle</Wert>
 </Eigenschaft>
 <Eigenschaft>
 <name>garn.resourcemanager.hostname</name>
 <Wert>s101</Wert>
 </Eigenschaft>
</Konfiguration>

Das ist die halbe Miete. . . . . . . . . . . . . .

Erstellen eines Ordners

mkdir /data/hdfs/tmp
mkdir /data/hdfs/var
mkdir /data/hdfs/logs
mkdir /data/hdfs/dfs
mkdir /data/hdfs/data
mkdir /Daten/hdfs/Name
mkdir /data/hdfs/checkpoint
mkdir /data/hdfs/edits

Denken Sie daran, die Verzeichnisberechtigungen zu ändern

  • sudo chown ubantu:ubantu /data

Als nächstes übertragen Sie den /soft-Ordner auf andere Hosts

Erstellen Sie die ausführbare xsync-Datei

sudo touch xsync

sudo chmod 777 xsync -Berechtigungen werden zu ausführbaren Dateien

sudo nano xsync

#!/bin/bash
Anzahl = $#
wenn((pAnzahl<1));dann
 echo keine Argumente;
 Ausfahrt;
fi

p1 = $1;
fname=`Basisname $p1`
pdir=`cd -P $(dirname $p1);pwd`

cuser=`wer bin ich`
für((Host=102 ; Host<105 ; Host=Host+1));machen
 echo --------s$host--------
 rsync -rvl $pdir/$fname $cuser@s$host:$pdir
Erledigt

xsync /soft --------> überträgt den Ordner auf andere Hosts

xsync /data

Erstellen Sie xcall, um Befehle an andere Hosts weiterzugeben

#!/bin/bash
Anzahl = $#
wenn((pAnzahl<1));dann
 echo keine Argumente;
 Ausfahrt;
fi
echo --------localhost--------

$@
für ((Host = 102; Host < 105; Host = Host + 1)); machen
 echo --------$shost--------
 ssh s$host $@
Erledigt

Keine Sorge, es ist fast vorbei.

Sie müssen auch Mitarbeiter konfigurieren, die nach Preisen fragen

  • Tragen Sie darin den Hostnamen ein, der als Datenknoten (DataNode) konfiguriert werden soll, einen pro Zeile

Achten Sie auf den entscheidenden Punkt

Formatieren Sie hadoop -namenode -format first

Starten Sie start-all.sh neu

Sehen Sie sich den Prozess xcall jps an

Zur Website


Wolltest du wirklich weinen? Du hast es geschafft! ! !

Es gab viele Probleme in der Mitte

1. Unzureichende rsync-Berechtigungen: Löschen Sie den Ordner und ändern Sie die Ordnerberechtigungen chown

2. Lernen Sie, Protokolle zu lesen

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Hadoop NameNode-Föderation
  • Erläuterung der neuen Funktion von Hadoop 2.X, der Papierkorbfunktion
  • Anwendung von Hadoop-Zählern und Datenbereinigung
  • Hadoop 2.x vs. 3.x 22-Punkte-Vergleich, Hadoop 3.x Verbesserungen gegenüber 2.x
  • So erstellen Sie eine Hadoop-Clusterumgebung mit Ubuntu Docker
  • Detaillierte Schritte zum Erstellen von Hadoop in CentOS
  • Beispielcode für die Wortzählung in Hadoop
  • Java/Web ruft Hadoop für MapReduce-Beispielcode auf
  • Erläuterung des Arbeitsmechanismus von Namenode und SecondaryNameNode in Hadoop

<<:  Tipps und Vorsichtsmaßnahmen zur Verwendung des MySQL-Index

>>:  Detaillierte Erklärung der neuen Erfahrung von Vite

Artikel empfehlen

Eine kurze Diskussion über den JavaScript-Bereich

Inhaltsverzeichnis 1. Geltungsbereich 1. Globaler...

Beispiel für die Verwendung von Dockerfile zum Erstellen eines Nginx-Images

Einführung in Dockerfile Docker kann automatisch ...

Unterschied und Prinzipanalyse des Nginx-Forward- und Reverse-Proxy

1. Der Unterschied zwischen Forward-Proxy und Rev...

Der Button hat einen hässlichen grauen Rand. Wie kann ich ihn entfernen?

Ich habe den Dialog beim Schließen verwendet und e...

Bedeutung und Verwendung einer Linux-CD

Was bedeutet Linux-CD? Unter Linux bedeutet cd „V...

Mysql5.7.14 Linux-Version Passwort vergessen perfekte Lösung

Fügen Sie in der Datei /etc/my.conf unter [mysqld...

Realisierung des Karusselleffekts basierend auf jQuery

In diesem Artikel wird der spezifische Code von j...

Asynchrone JS ES6-Lösung

Inhaltsverzeichnis Erste Verwendung der Callback-...

Erfahren Sie mehr über das V-Modell und seine Modifikatoren in einem Artikel

Inhaltsverzeichnis Vorwort Modifikatoren des V-Mo...

Detaillierte Erklärung zur Verwendung von MySQL, wobei

Inhaltsverzeichnis 1. Einleitung 2. Haupttext 2.1...

So ändern Sie die Längenbeschränkung von group_concat in MySQL

In MySQL gibt es eine Funktion namens „group_conc...

Besser aussehende benutzerdefinierte CSS-Stile (Titel h1 h2 h3)

Rendern Häufig verwendete Stile im Blog Garden /*...