Cómo instalar Graphite y Graphite Web en Ubuntu 20.04 | Ubuntu 21.10

Cómo instalar Graphite y Graphite Web en Ubuntu 20.04 | Ubuntu 21.10

 

Graphite es una herramienta de monitoreo gratuita y de código abierto para almacenar datos numéricos de series de tiempo y su gráfico en tiempo real.

Graphite no recopila datos por sí mismo, sino que recibe datos de otras herramientas. Tan pronto como Graphite recibe datos, puede crear gráficos en la aplicación web.

En este tutorial, aprendemos cómo instalar Graphite y Graphite Web en Ubuntu 20.04 usando docker . La forma más fácil de tener una instancia de Graphite en ejecución es usando docker.

¿Cómo funciona el grafito?

La descripción general de la arquitectura Graphite muestra que consta de tres componentes de software:

  • Carbono : Daemon retorcido que escucha pasivamente datos de series temporales para la recopilación de datos.
  • Whisper : biblioteca de base de datos simple para almacenar datos de series temporales
  • Graphite WebApp : Django WebApp que renderiza gráficos bajo demanda usando Cairo.

La aplicación envía los datos al backend de procesamiento de Graphite, Carbon, que almacena los datos en la base de datos Whisper de Graphite. Luego, los datos se pueden ver a través de la interfaz web de Graphite, Graphite Web App.

Paso 1: Instalar Docker en Ubuntu

Primero, instalaremos Docker en Ubuntu . Usando Docker puedes ejecutar Grapgitue en segundos.

Para instalar Docker, deberá instalar algunos requisitos previos:

$ sudo apt install apt-transport-https ca-certificates curl software-properties-common

Ahora agreguemos la clave GP del repositorio docker:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Ahora agregue Docker a las fuentes APT. Actualizará automáticamente el caché.

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Ahora instala docker usando el siguiente comando:

$ sudo apt install docker-ce

Agregue el usuario al grupo docker para que pueda usar el comando docker sin privilegios sudo :

$ sudo usermod -aG docker username

Luego salga e inicie sesión nuevamente para que la acción surta efecto

Paso 2: ejecuta Graphite con Docker

Es muy rápido ejecutar Graphite con Docker. Esta vez necesitará algunos otros componentes además del predeterminado que hemos visto anteriormente:

  • Nginx : proxies inversos del panel de grafito
  • Grafito : salpicadero frontal
  • Carbono : back-end
  • Statsd : proxy de back-end basado en UDP

También deberá verificar si los diferentes puertos que necesita el grafito estarán disponibles. Además, durante el proceso, se realizará una asignación de puertos entre el host y el contenedor para que pueda cambiar alguna configuración de asignación de su lado si no se ajusta a su configuración real. Puedes tener más información en el repositorio oficial de Github de Graphite .

Host Container Service
80 80 nginx
2003 2003 receptor de carbono – texto sin formato
2004 2004 receptor de carbono – salmuera
2023 2023 agregador de carbono – texto sin formato
2024 2024 Agregador de carbón – salmuera
8080 8080 Puerto gunicorn interno de grafito (sin proxy Nginx).
8125 8125 estadísticas
8126 8126 administrador de estadísticas

Ejecutar ventana acoplable nginx

En nuestro caso, ejecutaremos un contenedor independiente como nuestro proxy inverso de Nginx.

$ docker run -d --name nginx -p 80:80 -p 443:443 -v /etc/nginx/htpasswd:/etc/nginx/htpasswd -v /etc/nginx/vhost.d:/etc/nginx/vhost.d:ro -v /etc/nginx/certs:/etc/nginx/certs -v /var/run/docker.sock:/tmp/docker.sock:ro etopian/nginx-proxy

Nos ayudará a redirigir todo el tráfico HTTP predeterminado a HTTPS cuando integre sus certificados. Debería notar el volumen mapeado para integrar sus certificados que es/etc/nginx/certs

Ahora abra el puerto 80 y 443 en el firewall:

$ sudo ufw allow 80,443/tcp

Paso 3: Graphite: integre su certificado SSL en nginx

Estamos considerando que ya posee sus certificados SSL. Tendrás que copiarlo en el volumen mapeado configurado para este caso en Nginx. Nombraremos nuestra clave y certificado de la siguiente manera:

  • dominio.com.crt
  • dominio.com.clave

Y copiaremos los dos archivos en el volumen mapeado. Copiar el certificado

$ cp websitefortesting.com.crt /etc/nginx/certs

copia la clave

$ cp websitefortesting.com.key /etc/nginx/certs

Ejecutar grafito

Para ejecutar Graphite, también usaremos el comando docker run con algunas opciones. En nuestro caso, indicaremos el nombre de dominio nuestro de servicio con el parámetro -e VIRTUAL_HOST=domain.comal iniciarlo

$ docker run -d\
  --name graphite\
  --restart=always\
  -e VIRTUAL_HOST=websitefortesting.com\
  -p 2003-2004:2003-2004\
  -p 2023-2024:2023-2024\
  -p 8125:8125/udp\
  -p 8126:8126\
  graphiteapp/graphite-statsd

Como puede ver, no es necesario asignar el puerto 80 de Nginx, ya que ya se está ejecutando. Ahora intente acceder a graphite por la URLhttps://domain.com

Cómo instalar Graphite y Graphite Web en Ubuntu 20.04

Puedes echar un vistazo a statsd.

Cómo instalar Graphite y Graphite Web en Ubuntu 20.04

El nombre de usuario de inicio de sesión predeterminado de Graphite es root e inicie sesión con la contraseña de root.

Cómo instalar Graphite y Graphite Web en Ubuntu 20.04

Debe cambiar la contraseña predeterminada del perfil raíz para que sea más seguro utilizando at https://domain.com/admin/password_change/

Cómo instalar Graphite y Graphite Web en Ubuntu 20.04

Puedes acceder con tu nueva contraseña.

Conclusión

En este tutorial, aprendimos cómo ejecutar Graphite en Ubuntu 20.04 usando Docker. Ahora puede monitorear y graficar fácilmente datos numéricos de series de tiempo.

Deja un comentario

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.