Open IT Experts for Enterprise

Zylk empresa de desarrollo de ecommerce

Monitorizando el cluster de hadoop y kafka con Ganglia

Gustavo Fernández
Gustavo Fernández

Siguiendo con los artículos anteriores relacionados con los nuevos
paradigmas del desarrollo, hemos montado en el laboratorio donde
hacemos las pruebas, en zylk.net, un sistema de monitorización para
tener métricas de los siguientes productos

  • Sistema operativo
  • HDFS
  • MAP&REDUCE (yarn)
  • Hbase
  • Kafka

Todos estos productos ya los hemos ido describiendo en anteriores
entradas del blog y ahora lo que hemos hecho es agrupar todas las
metrircas que los mismos producen y almacenarlas usando el siguiente
producto (ganglia). Esto
se puede hacer porque detrás de todos los productos java que estamos
usando existe una librería java (yammer) que es
capaz de recolectar las métricas definidas por los desarolladores y
publicarlas en distintos formatos. En este caso en un formato válido
para Ganglia. Con esto lo que tenemos son las métricas de los
productos en una herramienta centralizada para poder explotarla.

El proceso en relativamente sencillo yo he seguido estos manuales

https://www.digitalocean.com/community/tutorials/introduction-to-ganglia-on-ubuntu-14-04
(manual general para configurar ganglia)

Ganglia configuration for a small Hadoop cluster and some troubleshooting


(manual para configurar hadoop y hbase)

Para la parte de kafka he usado el siguiente plugin/librería

https://github.com/myfitnesspal/kafka-statsd-reporter

La configuración que he realizado tiene dos clusters (uno de
servidores apache web y otro con los nodos del laboratorio de bigdata)

Monitorizando el cluster de hadoop y kafka con Ganglia

En el cluster de hadoop-zoo-services disponemos de todas las metricas
que los desarrolladores han puesto a nuestra disposición, son más de
200 metricas relacionadas con los tres productos principales que son
hdfs, hbase y kafka. Con estas metricas podemos ver el estado de lo
nodos, el numero de tablas y regiones en hbase, el numero de mensajes
procesados por segundo en una cola concreta de kafka… vamos mucha
mucha información.

La configuración que hemos probado es la siguiente

  • Comunicación multi-cast entre los ganglia moniotors y el
    recolector de la información
  • Dos grupos/clusters para porbar el mutli-cluster en una sola
    intancia de ganglia

Lo idea dado el numero de servicios y metricas que los productos
aportan sería montar una representación lógica por servicio y así
agrupar las metricas por servicio, por ejemplo

  • Kafka
  • HDFS
  • HBase

Ya que si se agrupa en estructura física como lo hemos montado ahora,
son demasiadas métricas para cada nodo del cluster y no es fácil
encontara la información relacionada.

Monitorizando el cluster de hadoop y kafka con Ganglia

Una tema que nos quedaría pendiente es integrar todo esto con el
modelo de desarrollo para ello, siguiendo lo que hacen los productos
que hemos analizado bastaría con incluir la libería yammer a nuestros
desarrollos para poder obtener las metricas en el formato que ganglias
las entienda y poder así tener también monitorizado el estado de
nuestros desarrollos, ya sean desarrollo basados en bigdata, ya sean
desarrollo normale de java web.

Si te ha parecido interesante comparte este post en RRS

Facebook
LinkedIn
Telegram
Email

Leer más sobre temas relacionados

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *