Archivo de la categoría: Grafana

Grafana y Arduino

Grafana es un software libre basado en licencia de Apache 2.0, que permite la visualización y el formato de datos métricos. Permite crear cuadros de mando y gráficos a partir de múltiples fuentes, incluidas bases de datos de series de tiempo como Graphite, InfluxDB y OpenTSDB. Originalmente comenzó como un componente de Kibana y que luego le fue realizado una bifurcación.

Grafana es multiplataforma sin ninguna dependencia y también se puede implementar con Docker. Está escrito en lenguaje Go y tiene un HTTP API completo.

Además de administrar cuadros de mando clásicos (adiciones, eliminaciones, favoritos), Grafana ofrece compartir un cuadro de mando actual mediante la creación de un enlace o una instantánea estática del mismo.

Todos los paneles de control y las fuentes de datos están vinculados a una organización, y los usuarios de la aplicación están vinculados a organizaciones a través de roles.

Web: https://grafana.com/

Grafana API: https://grafana.com/docs/http_api/

Como obtener grafana: https://grafana.com/get

Wikipedia: https://es.wikipedia.org/wiki/Grafana

Introducing grafana 6: https://www.hostedgraphite.com/blog/introducing-grafana-6

Instalar Grafana

Download: https://grafana.com/grafana/download

Instalación en sistemas linux: https://grafana.com/docs/installation/rpm/

Para iniciar el servicio: sudo service grafana-server start

Esto iniciará el proceso grafana-server como el usuario grafana, que se crea durante la instalación del paquete. El puerto HTTP predeterminado es 3000, y el usuario y el grupo predeterminados son admin. Nombre de usuario y contraseña por defecto admin/admin

Guia de instalación en Debian/Ubuntu: https://grafana.com/docs/installation/debian/

Guia de instalación CentOS: https://grafana.com/docs/installation/rpm/

Instalar y configurar en CentOS: https://www.fosslinux.com/8328/how-to-install-and-configure-grafana-on-centos-7.htm

Actualizar grafana: https://grafana.com/docs/installation/upgrading/

Tutoriales para CentOS:

Instalar Grafana en Raspberry Pi

Download para Raspberry Pi: https://grafana.com/grafana/download?platform=arm

Comandos:

Para actualizar: sudo apt-get install grafana

Iniciar el servicio: sudo service grafana-server start

Para configurar grafana en el arranque: sudo systemctl enable grafana-server.service

Más información: https://grafana.com/docs/installation/rpm/

Ahora podemos acceder a Grafana desde el navegador en http://127.0.0.1:3000 con admin/admin y nos pedirá que cambiemos la contraseña.

Adicionalmente si queremos instalar influxDB: sudo apt-get install influxdb

Getting started InfluxDB: https://docs.influxdata.com/influxdb/v1.7/introduction/getting-started/

Configuring InfluxDB: https://docs.influxdata.com/influxdb/v1.7/administration/config/

Instalar Telegraf (opcional):

Herramientas:

  • Grafana: Una herramienta que te permite visualizar series de datos temporales de una forma visualmente muy atractiva. Además de la parte visual, dispone de un potente motor y editor de consultas, que te permite seleccionar y tratar los datos que necesitas mostrar en las gráficas y Dashboards que puedes crear en su interfaz web. Además, los datos que muestra se pueden incluir desde diversas fuentes de datos, entre las que se encuentran Graphite, InfluxDB, Prometheus, ElasticSearch, AWS CloudWatch, StackDriver, MySQL y muchos otros mediante los plugins que tiene disponibles.
  • InfluxDB: Es una base de datos diseñada para almacenar series de datos temporales, esto quiere decir, que se almacenan una serie de datos en registros asociados a un valor principal o índice, que es la marca de tiempo (fecha y hora). La monitorización es un caso típico de este almacenamiento de datos, donde se guarda la marca de tiempo, el nombre del host y los valores de métricas que se pretenden almacenar (CPU, memoria, IO, red, …). InfluxDB es software libre, y el rendimiento que definen para este tipo de entornos es muy competitivo.
  • Telegraf: Es un agente que se encarga de recopilar datos/métricas de un determinado sistema y almacenarlos donde le indiquemos. Por ejemplo, Telegraf recopilará datos de sistema tradicionales (uso de memoria, uso de MySQL/Apache, …) y los enviará a la URL con la API de InfluxDB, que se encargará de almacenarlo. Telegraf, al igual que InfluxDB, pertenecen a Influxdata, por lo que la integración entre ambos es perfecta.
  • Chronograf es la aplicación web de código abierto de InfluxData. Utilice Chronograf con los otros componentes de la pila TICK para visualizar sus datos de monitorización y crear fácilmente reglas de alerta y automatización.
  • Kapacitor es un motor de procesamiento de datos nativo. Puede procesar stream de datos de InfluxDB. Kapacitor le permite conectar su propia lógica personalizada o funciones definidas por el usuario para procesar alertas con umbrales dinámicos, hacer coincidir las métricas de los patrones, calcular anomalías estadísticas y realizar acciones específicas basadas en estas alertas, como el reequilibrio de carga dinámico.

TICK Stack: https://www.influxdata.com/time-series-platform/

Otros tutoriales:

Configurar Grafana

El archivo de configuración se encuentra en /etc/grafana/grafana.ini.

Para obtener detalles sobre todas esas opciones de configuración consultar: https://grafana.com/docs/installation/configuration/

Seguridad: https://grafana.com/docs/installation/security/

Autenticación: https://grafana.com/docs/auth/overview/

Añadir fuentes de datos a Grafana

Getting started: https://grafana.com/docs/guides/getting_started/

Conceptos básicos: https://grafana.com/docs/guides/basic_concepts/

Añadir la BBDD de MySQL donde hemos guardado nuestros datos de Arduino:

Adding data sources:

Primera Gráfica

Guia de novatos para hacer Dashboards: https://www.youtube.com/watch?v=sKNZMtoSHN4&index=7&list=PLDGkOdUX1Ujo3wHw9-z5Vo12YLqXRjzg2

Getting started: https://grafana.com/docs/guides/getting_started/

Pasos:

  • Crear un nuevo Dashboard
  • Añadir una Visualización
  • Elegir “Graph”
  • Poner en Column: IntensidadLuminosa
  • Crear otra visualización como tabla.

Resultado:

Métricas fáciles: https://www.ochobitshacenunbyte.com/2018/03/01/metricas-faciles-con-influxdb-telegraf-y-grafana/

Paneles https://grafana.com/docs/features/panels/graph/

  • Graph
  • Logs
  • Singlestat
  • Table
  • Heatmap
  • Alert List
  • Dasboard list
  • Text

Visualizar los datos de la raspberry Pi en un dashboard:

Plugins Grafana

Plugings grafana: https://grafana.com/plugins 

Instalar plugin grafana: https://grafana.com/grafana/plugins/grafana-piechart-panel/installation

Hosted Grafana

Web: https://grafana.com/products/cloud/

Si no queremos instalarlo tenemos disponible un grafana en la nube gratuito para un usuario y hasta 5 dashboards. Pricing: https://grafana.com/products/cloud/#pricing

Mi grafana cloud: https://aprendiendoarduino.grafana.net/