El clúster Spark Standalone es un modo de clúster de la arquitectura Master-Slaves. Al igual que la mayoría de los clústeres Master-Slaves, hay un único punto de falla de Master. Cómo resolver este problema, Spark proporciona dos soluciones:
(1) basado en el sistema de archivos
# 1. Instale Zookeeper # 2. Modifique el archivo spark-env.sh y agregue la siguiente configuración. Comente lo siguiente: # SPARK_MASTER_HOST = hadoop102 / comente la IP del nodo maestro, porque el maestro de la implementación de alta disponibilidad se ha cambiado # SPARK_MASTER_PORT = 7077 agregado Lo siguiente:
export SPARK_DAEMON_JAVA_OPTS = "
-Dspark.deploy.recoveryMode = ZOOKEEPER
-Dspark.deploy.zookeeper.url = hdp01, hdp02, hdp03 // Rellene la IP del clúster del zookeeper autónomo, solo necesita completar uno aquí
-Dspark.deploy.zookeeper.dir = / spark "
Descripción del parámetro;
(1) recoveryMode, modo de recuperación (modo de reinicio maestro)
Hay tres tipos: Zookeeper, FileSystem, None
(2) deploy.zookeeper.url, la dirección del servidor de Zookeeper
(3) deploy.zookeeper.dir, archivos y directorios para almacenar información de metadatos del clúster.
Incluyendo trabajador, conductor, aplicación.
Nota:
Para iniciar el clúster en modo normal, solo necesita ejecutar start-all.sh en el host.
Para iniciar un grupo de chispas en modo de alta disponibilidad, primero debe iniciar el comando start-all.sh en cualquier nodo. Luego, inicie el maestro por separado en otro nodo.
Verifique el grupo de chispas: aparece el trabajador, hdp02 se inicia con éxito
Inicie el maestro de hdp02 por separado
El maestro se inicia correctamente, verifique en la interfaz de usuario web qué maestro está vivo
Verificación de alta disponibilidad, cierre el maestro del nodo hdp01, ¿puede iniciar automáticamente el nodo maestro del hdp02?
¡El clúster de alta disponibilidad spark + zookeeper se ha creado con éxito!