Grafana es una herramienta open source cuya finalidad es la visualización y formateo de datos, especialmente datos de serie temporales. Sus principales características son:
- Visualización: dispone de múltiples componentes de visualización como gráficos, tablas, Heatmaps, etc. que permiten la creación de dashboards dinámicos y personalizados.
- Alertas: permite crear alertas y notificaciones a través de Slack, Telegram, etc.
- Datos: admite múltiples fuentes de datos, entre las más famosas están Zabbix, InfluxDB, Prometheus, Elasticsearch, MySQL, SQL Server, etc.
- Colaboración: facilita la creación de equipos de trabajo para que puedan crear y compartir la información.
Instalación
Instalamos algunos requisitos en el caso que no los tengamos
apt-get install -y apt-transport-https software-properties-common wget
Descargamos la key del repositorio
wget -q -O - <https://packages.grafana.com/gpg.key> | apt-key add -
Añadimos el repositorio
echo "deb <https://packages.grafana.com/oss/deb> stable main" | tee -a /etc/apt/sources.list.d/grafana.list
Actualizamos el repositorio e instalamos el paquete
apt-get update
apt-get install grafana
Iniciamos el servicio de grafana
systemctl daemon-reload
systemctl start grafana-server
systemctl status grafana-server
Configuramos el servicio para que arranque al iniciar el sistema
systemctl enable grafana-server.service
Ya podemos acceder al panel web mediante la dirección
http://192.168.150.100:3000/login
Las credenciales por defecto son:
User: admin Pass: admin
Detalle de archivos
La instalación por defecto crea los siguientes archivos:
Archivo de variables de entorno: /etc/default/grafana-server
Archivo de configuración: /etc/grafana/grafana.ini
Archivo de base datos (sqlite3): /var/lib/grafana/grafana.db
Archivo de log: /var/log/grafana/grafana.log
Carpeta con archivos varios y web: /usr/share/grafana
Base de datos
La instalación por defecto utiliza una base de datos sqlite3, pero Grafana también admite la configuración de MySQL o Postgres. Podemos especificar qué base de datos queremos utilizar en el fichero de configuración.
Configurar base de datos MySQL
Creamos la base de datos grafana
CREATE DATABASE grafana; CREATE USER 'grafana'@'%' IDENTIFIED BY 'P@ssw0rd2000'; GRANT ALL PRIVILEGES ON grafana.* TO 'grafana'@'%'; FLUSH PRIVILEGES;
Editamos el archivo de configuración grafana.ini y bajo la sección [database] añadimos los siguientes parámetros:
[database] type = mysql host = 192.168.150.101:3306 name = grafana user = grafana password = P@ssw0rd2000
Reiniciamos el servicio grafana-server
service grafana-server status
Al conectarse a una base de datos vacía, crea automáticamente las tablas necesarias. Lo comprobamos de la siguiente manera:
mysql -u grafana -p
use grafana; show tables;
Aparecerán las siguiente tablas