Hallo Zusammen,
die Reise des verteilten Rechnens geht weiter. Ich setze voraus, dass ihr bereits einen Funktionsfähigen Hadoop-Cluster habt. Wie man diesen Aufsetzt kann hier nachgelesen werden: Hadoop-Cluster mit Debian 9 aufsetzen
Ich setze bei der Namensgebung stark auf diese Anleitung auf. Es lohnt sich also immer, diese
Spark Herunterladen und Konfigurieren
Ich setze hier voraus, dass ihr die Key-File-Anmeldung mit SSH eingerichtet habt und die verschiedenen Rechner in der /etc/hosts benannt sind.
Alle folgenden Arbeiten werden zunächst auf dem Master „hadoop-master“ (192.168.123.90) durchgeführt (vgl. Hadoop-Cluster mit Debian 9 aufsetzen). Zunächst die aktuelle Version herunterladen und entpacken. Wählt dazu die Pre-build Version für Apache Hadoop in der entsprechenden Version.
cd /opt/ wget https://d3kbcqa49mib13.cloudfront.net/spark-2.2.0-bin-hadoop2.7.tgz tar xvf spark-2.2.0-bin-hadoop2.7.tgz mv spark-2.2.0-bin-hadoop2.7/ spark/ chown -R hadoop:hadoop spark/
- /opt/spark/conf/slaves.template zu /opt/spark/conf/slaves kopieren, anpassen und festlegen, auf welchen Maschinen ein Spark Worker gestartet werden soll
# A Spark Worker will be started on each of the machines listed below. #localhost hadoop-master hadoop-slave-1 hadoop-slave-2 hadoop-slave-3 hadoop-slave-4 hadoop-slave-5 hadoop-slave-6
- /opt/spark/conf/sparks-env.sh.template zu /opt/spark/conf/spark-env.sh kopieren und am Ende Folgendes einfügen:
SPARK_MASTER_HOST=hadoop-master
- /opt/spark/conf/sparks-defaults.conf.template zu /opt/spark/conf/spark-defaults.conf kopieren und wie folgt anpassen:
spark.master spark://hadoop-master:7077 spark.eventLog.enabled true spark.eventLog.dir hdfs://hadoop-master:8021/spark-log
Spark auf Slaves Verteilen
Nun erstelle wir zunächst mit Hilfe von tmuxinator (vgl. ) auf den Slaves das Sparks-Verzeichnis.
sudo mkdir /opt/spark/ sudo chown -R hadoop:hadoop /opt/spark/
Jetzt verteilen wir auf dem master die files auf die slaves:
scp -r spark/* hadoop-slave-1:/opt/spark/. scp -r spark/* hadoop-slave-2:/opt/spark/. scp -r spark/* hadoop-slave-3:/opt/spark/. scp -r spark/* hadoop-slave-4:/opt/spark/. scp -r spark/* hadoop-slave-5:/opt/spark/. scp -r spark/* hadoop-slave-6:/opt/spark/.
Spark Cluster Starten
Nun sollte alles installiert sein und wir können den Spark-Cluster starten:
# Starts both a master and a number of slaves. ./opt/spark/sbin/start-all.sh # Stops both the master and the slaves. ./opt/spark/sbin/stop-all.sh
Ab jetzt kann man über http://192.168.123.90:8080/ (hier natürlich die eigene IP eingeben) das Webinterface aufrufen und sieht seine Worker.