Installation du cluster Spark Standalone et cas de test
1. Environnement expérimental
2. Étapes générales
- Préparez au moins 3 hôtes
- Modifier le nom d'hôte et la relation de mappage entre IP et nom d'hôte (cette opération est requise pour les 3 hôtes)
- Effectuez une opération de connexion sans mot de passe (obligatoire pour les 3 hôtes). Si cela a déjà été fait, vous pouvez le supprimer et le régénérer.
- Configurer Spark sur l'hôte en tant que nœud maître
- Il est nécessaire de copier l'environnement Spark configuré sur le nœud maître vers l'hôte de travail.
- Démarrez le cluster Spark (exécutez start-all.sh sur le nœud hôte)
- Vérifiez si le déploiement a réussi, comme suit :
- Vérifiez le processus :
Nœud maître :
Nœud maître esclave : Travailleur - Visitez l'interface SparkUI : http://ip|hostname:8080
- Remarque :
Si vous devez accéder à l'interface utilisateur par nom d'hôte + numéro de port, vous devez configurer la
relation de mappage entre le nom d'hôte de la machine virtuelle et l'adresse IP de la machine virtuelle sous Windows.
Sous le lecteur C : Fenêtre->Système32->pilote ->etc/hôtes
- Vérifiez le processus :
- Exécutez le test pour démontrer le nombre de mots
3. Étapes détaillées
-
Préparez au moins 3 hôtes.
Les machines virtuelles utilisées ici sont trois hôtes de machine virtuelle, comme indiqué ci-dessous :
-
Modifier le nom d'hôte et la relation de mappage entre l'IP et le nom d'hôte (
3台主机都需要操作
)- Exécutez la commande pour modifier le nom d'hôte :
hostnamectl --static set-hostname hadoop004
- Modifiez le fichier /etc/hosts et ajoutez les informations suivantes à la fin du fichier :
192.168.76.129 hadoop002 192.168.76.128 hadoop003 192.168.76.132 hadoop004
三台虚拟机主机配置的内容都一样
- Exécutez la commande pour modifier le nom d'hôte :
-
Effectuez une opération de connexion sans mot de passe (
3台主机都需操作
), si vous l'avez déjà fait, vous pouvez la supprimer et la régénérer.ssh-keygen -t rsa (执行命令后,只需连续敲三次回车键即可) cd ~/.ssh/ ssh-copy-id -i id_rsa.pub root@hadoop002 ssh-copy-id -i id_rsa.pub root@hadoop003 ssh-copy-id -i id_rsa.pub root@hadoop004
Remarque :
三台主机都需要操作
-
Configurez sur l'hôte du nœud maître (
hadoop002
) et entrez le répertoire conf sous le répertoire d'installation de Spark.- Modifier le fichier de configuration : spark-env.sh (il n'existe pas à l'avance et doit être créé ou copié)
export JAVA_HOME=/training/jdk1.8.0_171 export SPARK_MASTER_HOST=hadoop002 export SPARK_MASTER_PORT=7077 #history 配置历史服务 export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=30 -Dspark.history.fs.logDirectory=/training/spark-2.4.8-bin-hadoop2.7/history"
history目录需要事先创建
- Modifiez le fichier esclaves (il n'existe pas au préalable, vous devez créer ou copier le fichier modèle pour l'obtenir), et remplacez localhost par le nom d'hôte du nœud esclave, comme suit : Copiez le fichier modèle pour obtenir
:cp slaves.template slaves
hadoop003 hadoop004
- Copiez spark-defaults.conf.template dans spark-defaults.conf et ajoutez le contenu suivant :
spark.eventLog.enabled true spark.eventLog.dir /training/spark-2.4.8-bin-hadoop2.7/logs
- Modifier le fichier de configuration : spark-env.sh (il n'existe pas à l'avance et doit être créé ou copié)
-
Vous devez copier l'environnement Spark configuré sur le nœud maître vers l'hôte de travail et exécuter la commande suivante :
scp -r /training/spark-2.4.8-bin-hadoop2.7/ root@hadoop003:/training/ scp -r /training/spark-2.4.8-bin-hadoop2.7/ root@hadoop004:/training/
-
Démarrez le cluster Spark, entrez le sbin du répertoire d'installation Spark sur le nœud hôte et exécutez :
./start-all.sh
-
Vérifiez si le déploiement a réussi, comme suit :
- Vérifiez le processus. L'existence du processus suivant indique que la configuration est réussie :
Nœud maître :
Nœud maître esclave : Worker - Visitez l'interface SparkUI : http://ip|hostname:8080
注意事项
:
Si vous devez accéder à l'interface utilisateur par nom d'hôte + numéro de port, vous devez configurer la
relation de mappage entre le nom d'hôte de la machine virtuelle et l'adresse IP de la machine virtuelle sous Windows.
Sous le lecteur C : Window->System32->driver- >etc/hôtes
- Vérifiez le processus. L'existence du processus suivant indique que la configuration est réussie :
-
Exécutez le test pour démontrer le nombre de mots
- Préparez les données de test :
créez un nouveau fichier word.txt dans le répertoire /tools sur le nœud maître (hadoop002) et ajoutez le contenu suivant :I love Guizhou I love Guiyang Guiyang is the capital of Guizhou
- Envoyez le fichier word.txt dans le répertoire correspondant aux nœuds esclaves (hadoop003 et hadoop004) et exécutez :
scp -r word.txt root@hadoop003:/tools/ scp -r word.txt root@hadoop004:/tools/
- Démarrez spark-shell, entrez dans le répertoire bin du répertoire d'installation de Spark et exécutez :
./spark-shell --master spark://hadoop002:7077 --executor-memory 1g --total-executor-cores 2
Une fois le démarrage réussi, vous verrez l'interface suivante :
- Écrivez et exécutez le code suivant, appuyez sur Entrée pour exécuter
sc.textFile("file:///tools/word.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).saveAsTextFile("file:///tools/results/spark/wc")
sc.textFile("/tools/word.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).saveAsTextFile("/tools/results/spark/wc")
- Affichez le fichier de résultats : Entrez dans le répertoire /tools/results/spark/wc sous le nœud esclave hadoop003 et consultez les fichiers suivants : Entrez dans le
répertoire _temporary et voyez qu'il n'y a qu'un seul répertoire portant le nom de répertoire0
. Entrez le répertoire0
, et voir Comme suit :
Entrez le répertoire sous la case rouge dans l'image ci-dessus et voyez le fichier suivant :
part-00000 est le fichier de résultat. Vérifiez le contenu du fichier :
effectuez la même opération que ci-dessus sous le nœud esclave hadoop004, et vous obtiendrez voyez que le fichier de résultat est la partie 00001. Le contenu est le suivant :
À ce stade, l'ensemble du processus est terminé ! ! ! ! Arrêtez-vous ! ! !
- Préparez les données de test :
Installation du cluster Spark Standalone et cas de test
1. Environnement expérimental
2. Étapes générales
- Préparez au moins 3 hôtes
- Modifier le nom d'hôte et la relation de mappage entre IP et nom d'hôte (cette opération est requise pour les 3 hôtes)
- Effectuez une opération de connexion sans mot de passe (obligatoire pour les 3 hôtes). Si cela a déjà été fait, vous pouvez le supprimer et le régénérer.
- Configurer Spark sur l'hôte en tant que nœud maître
- Il est nécessaire de copier l'environnement Spark configuré sur le nœud maître vers l'hôte de travail.
- Démarrez le cluster Spark (exécutez start-all.sh sur le nœud hôte)
- Vérifiez si le déploiement a réussi, comme suit :
- Vérifiez le processus :
Nœud maître :
Nœud maître esclave : Travailleur - Visitez l'interface SparkUI : http://ip|hostname:8080
- Remarque :
Si vous devez accéder à l'interface utilisateur par nom d'hôte + numéro de port, vous devez configurer la
relation de mappage entre le nom d'hôte de la machine virtuelle et l'adresse IP de la machine virtuelle sous Windows.
Sous le lecteur C : Fenêtre->Système32->pilote ->etc/hôtes
- Vérifiez le processus :
- Exécutez le test pour démontrer le nombre de mots
3. Étapes détaillées
-
Préparez au moins 3 hôtes.
Les machines virtuelles utilisées ici sont trois hôtes de machine virtuelle, comme indiqué ci-dessous :
-
Modifier le nom d'hôte et la relation de mappage entre l'IP et le nom d'hôte (
3台主机都需要操作
)- Exécutez la commande pour modifier le nom d'hôte :
hostnamectl --static set-hostname hadoop004
- Modifiez le fichier /etc/hosts et ajoutez les informations suivantes à la fin du fichier :
192.168.76.129 hadoop002 192.168.76.128 hadoop003 192.168.76.132 hadoop004
三台虚拟机主机配置的内容都一样
- Exécutez la commande pour modifier le nom d'hôte :
-
Effectuez une opération de connexion sans mot de passe (
3台主机都需操作
), si vous l'avez déjà fait, vous pouvez la supprimer et la régénérer.ssh-keygen -t rsa (执行命令后,只需连续敲三次回车键即可) cd ~/.ssh/ ssh-copy-id -i id_rsa.pub root@hadoop002 ssh-copy-id -i id_rsa.pub root@hadoop003 ssh-copy-id -i id_rsa.pub root@hadoop004
Remarque :
三台主机都需要操作
-
Configurez sur l'hôte du nœud maître (
hadoop002
) et entrez le répertoire conf sous le répertoire d'installation de Spark.- Modifier le fichier de configuration : spark-env.sh (il n'existe pas à l'avance et doit être créé ou copié)
export JAVA_HOME=/training/jdk1.8.0_171 export SPARK_MASTER_HOST=hadoop002 export SPARK_MASTER_PORT=7077 #history 配置历史服务 export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=30 -Dspark.history.fs.logDirectory=/training/spark-2.4.8-bin-hadoop2.7/history"
history目录需要事先创建
- Modifiez le fichier esclaves (il n'existe pas au préalable, vous devez créer ou copier le fichier modèle pour l'obtenir), et remplacez localhost par le nom d'hôte du nœud esclave, comme suit : Copiez le fichier modèle pour obtenir
:cp slaves.template slaves
hadoop003 hadoop004
- Copiez spark-defaults.conf.template dans spark-defaults.conf et ajoutez le contenu suivant :
spark.eventLog.enabled true spark.eventLog.dir /training/spark-2.4.8-bin-hadoop2.7/logs
- Modifier le fichier de configuration : spark-env.sh (il n'existe pas à l'avance et doit être créé ou copié)
-
Vous devez copier l'environnement Spark configuré sur le nœud maître vers l'hôte de travail et exécuter la commande suivante :
scp -r /training/spark-2.4.8-bin-hadoop2.7/ root@hadoop003:/training/ scp -r /training/spark-2.4.8-bin-hadoop2.7/ root@hadoop004:/training/
-
Démarrez le cluster Spark, entrez le sbin du répertoire d'installation Spark sur le nœud hôte et exécutez :
./start-all.sh
-
Vérifiez si le déploiement a réussi, comme suit :
- Vérifiez le processus. L'existence du processus suivant indique que la configuration est réussie :
Nœud maître :
Nœud maître esclave : Worker - Visitez l'interface SparkUI : http://ip|hostname:8080
注意事项
:
Si vous devez accéder à l'interface utilisateur par nom d'hôte + numéro de port, vous devez configurer la
relation de mappage entre le nom d'hôte de la machine virtuelle et l'adresse IP de la machine virtuelle sous Windows.
Sous le lecteur C : Window->System32->driver- >etc/hôtes
- Vérifiez le processus. L'existence du processus suivant indique que la configuration est réussie :
-
Exécutez le test pour démontrer le nombre de mots
- Préparez les données de test :
créez un nouveau fichier word.txt dans le répertoire /tools sur le nœud maître (hadoop002) et ajoutez le contenu suivant :I love Guizhou I love Guiyang Guiyang is the capital of Guizhou
- Envoyez le fichier word.txt dans le répertoire correspondant aux nœuds esclaves (hadoop003 et hadoop004) et exécutez :
scp -r word.txt root@hadoop003:/tools/ scp -r word.txt root@hadoop004:/tools/
- Démarrez spark-shell, entrez dans le répertoire bin du répertoire d'installation de Spark et exécutez :
./spark-shell --master spark://hadoop002:7077 --executor-memory 1g --total-executor-cores 2
Une fois le démarrage réussi, vous verrez l'interface suivante :
- Écrivez et exécutez le code suivant, appuyez sur Entrée pour exécuter
sc.textFile("file:///tools/word.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).saveAsTextFile("file:///tools/results/spark/wc")
sc.textFile("/tools/word.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).saveAsTextFile("/tools/results/spark/wc")
- Affichez le fichier de résultats : Entrez dans le répertoire /tools/results/spark/wc sous le nœud esclave hadoop003 et consultez les fichiers suivants : Entrez dans le
répertoire _temporary et voyez qu'il n'y a qu'un seul répertoire portant le nom de répertoire0
. Entrez le répertoire0
, et voir Comme suit :
Entrez le répertoire sous la case rouge dans l'image ci-dessus et voyez le fichier suivant :
part-00000 est le fichier de résultat. Vérifiez le contenu du fichier :
effectuez la même opération que ci-dessus sous le nœud esclave hadoop004, et vous obtiendrez voyez que le fichier de résultat est la partie 00001. Le contenu est le suivant :
À ce stade, l'ensemble du processus est terminé ! ! ! ! Arrêtez-vous ! ! !
- Préparez les données de test :