Configuración de alertas y notificaciones en Grafana

Si utilizas un dashboard descargado desde la web de Grafana y has intentado crear alertas y notificaciones de alguna de las métricas, seguramente habrás observado el siguiente error:

De momento no podemos crear alertas desde templates predefinidos. Una solución consiste en crearnos nuestro propio panel de alertas con los umbrales que deseemos.

Para el artículo me baso en una configuración de Grafana con InfluxDB como datasource y Collectd como recolector de métricas. Puedes ver cómo instalar y configurar todos los componentes en un artículo que escribí anteriormente.

Sigue leyendo

Mi configuración de red para KVM en Debian

Como ya había comentado anteriormente utilizo mi máquina principal Debian como host para varios servidores virtualizados con KVM. En cuanto a la configuración en red comencé configurando una interfaz bridge por DHCP, aunque actualmente utilizo una configuración bridge estática. La configuración de ambas en Debian no es complicada.

Lo que sí hice desde el principio en ambas configuraciones fue deshabilitar Network Manager para evitar cambios inesperados de configuración:

systemctl stop NetworkManager.service
systemctl disable NetworkManager.service

Sigue leyendo

Apache como proxy para Grafana

Casi siempre suelo configurar Apache o Nginx como proxys para otros servicios que ejecuto de forma local. Principalmente por dos razones:

  • Cuantas menos aplicaciones tengamos escuchando en una IP accesible desde el exterior mejor, ya que reducimos la superficie de ataques y vulnerabilidades.
  • Permite centrar la configuración de seguridad en un único punto, llamémosle Apache/Nginx o un F5 o balanceador que tengamos por delante. Además podemos complementar estos componentes frontales con soluciones que mejoren la seguridad, como por ejemplo mod_security para Apache.

Sigue leyendo

Uso de puertos privilegiados con usuarios no administradores en Linux

Con un usuario normal sin permisos de administración no puedes hacer uso de puertos por debajo del 1024 por motivos de seguridad. Estos puertos son utilizados por servicios conocidos como FTP, servidores web Apache o Nginx, DNS, etc… y requieren de root o usuario con permisos adecuados.

Podemos hacer una prueba sencilla con netcat (nc) intentando abrir un socket en un puerto por debajo del 1024 con un usuario no administrativo:

[jota@jota-pc ~]$ nc -v -l 90
nc: Permission denied

Ahora en un puerto no privilegiado no habrá problemas:

[jota@jota-pc ~]$ nc -v -l 9000
Listening on [0.0.0.0] (family 0, port 9000)

Tenemos distintas opciones para conseguir que un usuario normal pueda utilizar estos puertos.

Sigue leyendo

Monitorizando el sistema con Collectd+InfluxDB+Grafana (Debian)

Ya hace tiempo que lo tengo montado y tenía pendiente escribir el artículo a modo de wiki. Ya habíamos visto anteriormente cómo utilizar Grafana como capa de presentación con Glances e InfluxDB. Donde antes utilizaba Glances para recolectar métricas ahora tengo Collectd, utilidad más madura y con más opciones de configuración.

Los distintos componentes por tanto son:

  • Collectd como recolector de métricas de sistema.
  • InfluxDB será la Base de Datos para almacenar dichas métricas.
  • Grafana como capa de presentación (dashboard) de las métricas que se vayan almacenando en InfluxDB.

Sigue leyendo