Installation enregistrement étincelles 2.4.5

 référence  https://data-flair.training/blogs/install-apache-spark-multi-node-cluster/

Télécharger étincelle  adresse 

 

 http://spark.apache.org/downloads.html

Préparer trois noeuds

192.168 . 1.1 [nom d' hôte] maître
 192,168 . 1.2 [nom d' hôte] SLAVE1
 192.168 . 1.3 [nom d' hôte] slave2

La configuration ci - dessus pour les trois noeuds annexer la machine   / etc / hosts   dans. Depuis que je suis ici trois machines domaine sont différentes, nous avons donc mis le [nom d' hôte], par exemple, le nœud maître

192.168 . 1.1 maître xxx.localdomain

Vérifiez le nom d'hôte pour la méthode,

$ hostname

Si la dernière erreur d'allumage départ nom d'hôte inconnu, se réfère généralement au nom d'hôte n'est pas défini, cette fois par 

$ Hostname -i

Trouvées sera rapporté les mêmes erreurs.

 

Étapes d'installation:

Tout d'abord, mettre le secret sans connexion ssh

Si vous n'installez pas ssh, vous devez installer

sudo apt installer openssh-server

Sur trois machines ont été exécutées

ssh-keygen -t rsa

La façon d'entrer, utilisez le paramètre par défaut (chemin du fichier clé et nom de fichier)

Le slave1 ci - dessus slave2   ~ / .ssh / id_rsa.pub  copier des fichiers vers le nœud maître,

scp ~ / .ssh / id_rsa.pub xxx @ maître: ~ / .ssh / id_rsa.pub.slave1 
scp ~ / .ssh / id_rsa.pub xxx @ maître: ~ / .ssh / id_rsa.pub.slave2

Note, xxx représente le nom d'utilisateur, les trois meilleures machines utilisent le même nom d'utilisateur, le cas échéant, l'utilisateur peut créer

# adduser xxx créer un nouvel utilisateur xxx 
passwd xxx xxx à mot de passe #

 

Joué sur le maître

cat ~ / .ssh / id_rsa.pub * >> ~ / .ssh / authorized_keys 
scp ~ / .ssh / authorized_keys xxx @ slave1: ~ / .ssh / authorized_keys
scp ~ / .ssh / authorized_keys xxx @ slave2: ~ / .ssh / authorized_keys

Vérifiez aucun mot de passe de connexion sur le maître

ssh slave1 
ssh slave2

Sur slave1 / slave2 peut également sans mot de passe deux autres noeuds.

Remarque: les autorisations de dossier .ssh doivent être 700, authorized_keys autorisations de fichiers doivent être 600 (autorisations supplémentaires valeurs peuvent ne pas fonctionner), modifier les autorisations d'utilisation

chmod 700 ~ / .ssh 
chmod 600 ~ / .ssh / authorized_keys

 

En second lieu, installer jdk, scala, étincelle

Omis, étincelle installé juste au-dessus du fichier téléchargé pour le décompresser. Note configuration variable d'environnement 

export JAVA_HOME = ... 
export SCALA_HOME = ... 
export SPARK_HOME = ... 
export PATH = $ JAVA_HOME / bin: $ SCALA_HOME / bin: $ SPARK_HOME / bin: $ PATH

Sur le nœud maître, entrez le répertoire sous SPARK_HOME conf,

cd conf 
étincelle cp -env.sh.template étincelles env.sh 
cp slaves.template esclaves

Modifier le fichier

# Localhost 
slave1 
slave2

Modifier le fichier spark-env.sh

export JAVA_HOME = ... 
exportation SPARK_WORKER_CORES = 8

Sur slave1 et slave2, effectuer les mêmes opérations.

Note: Annuaire des meilleurs spark reste le même dans les trois nœuds mêmes variables d'environnement SPARK_HOME

Troisièmement, démarrer le cluster

Exécuté sur le noeud maître

sbin / start-all.sh

Arrêtez le cluster est exécuté

sbin / stop-all.sh

Après le début, peut être effectuée sur le maître ou slave1 / SLAVE2   JPS   pour voir le processus java. Voir interface web, adresse

http: // MASTER-IP: 8080 /

 Si la connexion ne se trouve pas maître nœuds de travailleurs, compte tenu de la manière suivante

Causée par: java.io.IOException: Connexion à: 7077 chronométré out ( 120000 ms) 
... 
org.apache.spark.deploy.worker.Worker $$ anonfun étincelle deploy $ $ $ org apache $ travailleur $ $ Worker $$ tryRegisterAllMasters $ 1 $$ anon $ 1 .run 
...

Nous avons besoin de trois machines dans le SPARK_HOME $ / conf / spark-env.sh add

export SPARK_MASTER_HOST = <ip maître>

Réexécuter 

sbin / start-all.sh

 

Je suppose que tu aimes

Origine www.cnblogs.com/sjjsxl/p/12606062.html
conseillé
Classement