NETDATA: Monitorizacion del host de HA

Buenas a todos, hoy os traigo una aplicación de monitoriazcion para controlar el estado de los recursos del HOST donde tenemos alojado nuestro Home Assistant… ¿como? ¿usas docker? no te preocupes, también hay para ti, comenzamos!

Netdata nos ayudara a controlar y comprobar el estado del sistema, consumo de ram, procesador, red, etc, y en caso de ejecutar contenedores en docker tambien podremos controlar el consumo de recursos de los mismos.

Instalación directa sobre Linux

Si queremos una instalación directa del sistema sobre un entorno linux simplemente tenemos que lanzar desde un terminal el siguiente comando:

bash <(curl -Ss https://my-netdata.io/kickstart.sh)

Nos pedirá la clave de SUDO para iniciar la instalación y empezara a comprobar y a instalar lo que falte pidiéndonos que pulsemos intro en alguna ocasión para ejecutar la instalación de las dependencias o directamente la instalación de netdata, hay que ser pacientes, tarda un ratito hasta que se instala todo:

Una vez termine de instalar todo nos aparecerá esto:

Ahora lo único que tenemos que hacer es irnos a un navegador y escribir:

http://ipdelservidordondeestainstaladonetdata:19999

Y nos mostrara directamente netdata:

Ya podemos movernos por las diferentes secciones de la derecha para ir comprobando los sensores que posee, pero en principio para un control normal con los contadores que muestro arriba es suficiente.

Instalación en un contenedor

Ahora vamos a ver como hacer la instalación en un contenedor, primero de todo vamos a abrir un terminal y a escribir lo siguiente:

grep docker /etc/group | cut -d ':' -f 3

Nos devolverá algo similar a esto:

¿para que necesitamos ese 999? para poder pasárselo como una variable de entorno (PGID) al contenedor y que nos muestre los nombres de los contenedores, ya que sino aparecerán los ID y no sabremos cual es cual.

Una vez tenemos el numero pasamos a la creación del contenedor con la siguiente sentencia (sustituir el 999 de «-e PGID=» por el que os ha devuelto el comando anterior en caso de ser otro numero distinto):

Utilizando la red de docker:

docker run -d --name=netdata \
-p 19999:19999 \
-v /proc:/host/proc:ro \
-v /sys:/host/sys:ro \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-e PGID=999 \
--cap-add SYS_PTRACE \
--security-opt apparmor=unconfined \
--restart always \
netdata/netdata:v1.19.0

Utilizando directamente la red del host:

docker run -d --name=netdata \
--network host \
-v /proc:/host/proc:ro \
-v /sys:/host/sys:ro \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-e PGID=999 \
--cap-add SYS_PTRACE \
--security-opt apparmor=unconfined \
--restart always \
netdata/netdata:v1.19.0

Alguno puede preguntarse porque no usar la imagen «latest» de docker, bien, esa imagen suele actualizarse todos los días, incluso 2 veces al día, y no siempre funciona todo, a veces al actualizar no conecta con los contenedores, etc, por ello mejor directamente la ultima estable, en este caso a 14/01/2020 es la v1.19.0

Bien, una vez lanzado el contenedor para crearlo se ejecutara automáticamente y haremos como en la instalación directa en linux, accedemos a un navegador y escribimos:

http://ipdelservidordondeestainstaladonetdata:19999

Y nos debe aparecer la interfaz de la aplicación, y abajo a la derecha aparecerán los contenedores, paciencia si no aparecen, hay que ir pulsando F5, hasta que no lea todos no los muestra y puede tardar unos minutos, calculo que en unos 5-10 minutos ya debería estar el sistema estable con todos los plugin habilitados (incluido el de docker), basta con ir refrescando la pagina para ir comprobándolo:

Si pulsamos en ellos podremos ver el consumo que tiene cada contenedor, bastante interesante si vemos ralentizaciones o problemas con alguna plataforma que tengamos en alguno de nuestro contenedores.

Con esto lo tendriamos todo, en apenas un momento y con un consumo de recursos insignificante tenemos una plataforma para monitorizar el sistema donde tengamos alojado nuestro HA (o cualquier otra cosa).

Un saludo y cualquier cosa estoy por telegram @jasimancas en el grupo de Domology!

Deja un comentario

Síguenos

Siguenos en facebook