plugin apache spark

16
Plugin para coger metricas de todos los ejecutores de todas las apps en ejecución o finalizadas de tu server Spark. Introducción Matriz de compatibilidad Pre requisitos Configuración Parámetros generales del plugin Parámetros específicos del plugin Configuración en pandora Módulos generados Plugin Apache Spark

Upload: others

Post on 14-Jul-2022

59 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Plugin Apache Spark

Plugin para coger metricas de todos los ejecutores de todas las apps en ejecución o finalizadas detu server Spark.

IntroducciónMatriz de compatibilidadPre requisitosConfiguraciónParámetros generales del pluginParámetros específicos del pluginConfiguración en pandoraMódulos generados

Plugin Apache Spark

Page 2: Plugin Apache Spark

Ver. 03-09-2021

Plugin para coger metricas de todos los ejecutores de todas las apps en ejecución o finalizadas detu server Spark.

Tipo: Plug-in de servidor 

Introducción

Page 3: Plugin Apache Spark

Sistemas donde se ha probado CentOS 7, Fedora

Sistemas donde debería funcionar Cualquier sistema linux 

 

Matriz de compatibilidad

Page 4: Plugin Apache Spark

Se requiere:

Un servidor SparkTener activado el history server de SparkTener el Data Server de Pandora FMS habilitadoTener el Plugin Server de Pandora FMS habilitado

Pre requisitos

Page 5: Plugin Apache Spark

El plugin hace uso de unos endpoints de la rest api de Spark, para poder acceder a ellos desde elplugin tendremos que tener una serie de puertos activos y que no los bloquee el firewall, estos sonlos siguientes :

6066: Rest url (cluster mode).

7077: Server master.

8080 : Web UI.

4040: Para aplicaciones en ejecución.

18080: Para el history server.

Para poder hacer uso del history server tendremos que activar spark.eventLog.enabled, spark.eventLog.dir y spark.history.fs.logDirectory en spark-defaults.conf.

Podemos encontrar una plantilla del conf en /conf

Crearemos en esa ruta el archivo con:

Configuración

firewall-cmd --permanent --zone=public --add-port=6066/tcp

firewall-cmd --permanent --zone=public --add-port=7077/tcp

firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp

firewall-cmd --permanent --zone=public --add-port=4040/tcp

firewall-cmd --permanent --zone=public --add-port=18080/tcp

firewall-cmd --reload

Page 6: Plugin Apache Spark

Y lo dejaremos así, puedes elegir la ruta en la que quieres guardar los eventos.

Ahora podremos activar el history server, en /sbin la misma ruta donde se activa el master, losworkers, etc.

Lo iniciaremos con :

Si vamos al log que nos devuelve la salida veremos como correctamente se ha iniciado y su url.

Si accedemos a la url veremos como nos sale el history server.

vi spark-defaults.conf

./start-history-server.sh

Page 7: Plugin Apache Spark

Nota:

Esto se presupone, pero para que funcione el plugin se tendrá que tener activo el server maestro,así como tener aplicaciones en ejecución o que han sido ejecutadas y han finalizado, ya que es delas aplicaciones de lo que cogeremos las métricas, concretamente de sus ejecutores.

 

 

Page 8: Plugin Apache Spark

Si la ejecución es correcta veremos un 1.

Si quieres coger los datos de aplicaciones en ejecución, introduce la ip con el puerto 4040, siquieres coger los datos de aplicaciones finalizadas introduce el puerto 18080.

Parámetros generales delplugin

./pandora_spark -i <ip-with-port> -[ -g <group> ] [ --data_dir <data dir> ]

Page 9: Plugin Apache Spark

El plugin cuenta con los siguientes parámetros:

Parameter Description

-i <ip-with-port> --ip <ip-with-port> ip con el puerto, obligatorio.

-g GROUP, --group GROUP Grupo de destino de Pandora FMS (opcional)

--data_dir DATA_DIRDirectorio de datos de Pandora FMS. Por defecto es /var/spool/pandora/data_in/(opcional)

Ejemplo de ayuda:

Parámetros específicos delplugin

./pandora_spark

Page 10: Plugin Apache Spark

Instalación desde consola

Para el registro del plugin, desde la consola, se debe ir al apartado "registrar plugin".

Daremos a seleccionar archivo.

Seleccionaremos el fichero.pspz2 que contiene el plugin.

Una vez subido se nos mostrará un mensaje indicando que ha salido correctamente.

Configuración en pandora

Page 11: Plugin Apache Spark

Una vez registrado el plugin, lo veremos en el apartado plugins.

En el apartado de parámetros, saldrán todos los que contiene el plugin, aunque solo seráobligatorio usar el de ip.

Page 12: Plugin Apache Spark

Abajo podremos asignarle el valor requerido a cada macro.

 

Instalación manual

La mejor forma de manejar plugins de servidor en Pandora es desde"/usr/share/pandora_server/util/plugin" asi que lo enviaremos esa ruta.

Después nos moveremos a la carpeta en la que lo hemos metido ("/usr/share/pandora_server/util/plugin" es la recomendada").

Recuerda: Tienes que instalar las dependencias que necesita el módulo Requests en tu

sistema, esta explicado en el apartado configuración.

Nos movemos desde home con :

Ejecutamos el plugin para ver que funciona :

cd /usr/share/pandora_server/util/plugin/

./pandora_spark -i <ip-with-port> -[ -g <group> ] [ --data_dir <data dir> ]

Page 14: Plugin Apache Spark

Metemos como comando la ruta al plugin, y como parámetros los que hemos metido ejecutando elplugin, los campos "_field_" son macros definidas más abajo.

Ponemos por cada macro la descripción que se prefiera y como valor los datos de tu ip.

Hecho esto si ejecutamos el plugin desde el terminal se nos habrá creado el agente con losmódulos.

 

Page 15: Plugin Apache Spark

Se nos creará un agente por cada aplicación de nuestro server con datos de todos sus ejecutores,el nombre de cada módulo estará compuesto de la id del ejecutor más su función.

Módulos de los ejecutores

Nombre del módulo

id

hostPort

rddBlocks

memoryUsed

diskUsed

activeTasks

failedTasks

completedTasks

totalTasks

totalDuration

totalInputBytes

totalShuffleRead

totalShuffleWrite

maxMemory

Módulos generados