Búsqueda de sitios web

Instale Glances, InfluxDB y Grafana para monitorear CentOS 7


Glances es una herramienta de monitoreo gratuita, de código abierto, moderna, multiplataforma, en tiempo real y similar a htop con funciones avanzadas. Puede ejecutarse en diferentes modos: de forma independiente, en modo cliente/servidor y en modo servidor web.

InfluxDB es una base de datos de series temporales escalable y de código abierto para métricas, eventos y análisis en tiempo real.

Grafana es una herramienta multiplataforma de código abierto, rica en funciones, potente, elegante y altamente extensible para monitoreo y análisis de métricas, con paneles hermosos y personalizables. Es un software de facto para análisis de datos.

En este artículo explicaremos cómo instalar y configurar Glances, InfluxDB y Grafana para monitorear el rendimiento de un CentOS 7. fuerte> servidor.

Paso 1: Instale Glances en CentOS 7

1. Primero comience instalando la última versión estable de glances (v2.11.1) usando PIP. Si no tiene pip, instálelo de la siguiente manera, incluidos los Python-headers necesarios para instalar psutil.

yum install python-pip python-devel	

2. Una vez que tenga PIP y los Python-headers, ejecute el siguiente comando para instalar la última versión estable de glances y verificar la versión.

pip install glances
glances -V

Glances v2.11.1 with psutil v5.4.7

Alternativamente, si ya tiene instalado glances, puede actualizarlo a la última versión usando el siguiente comando.

pip install --upgrade glances

3. Ahora necesita iniciar vistazos a través de systemd para que se ejecute como un servicio. Cree una nueva unidad creando un archivo llamado glances.service en /etc/systemd/system/.

vim /etc/systemd/system/glances.service

Copie y pegue la siguiente configuración en el archivo glances.service. El --config especifica el archivo de configuración, la opción --export-influxdb le indica a los vistazos que exporten estadísticas a un servidor InfluxDB y el --disable-ip La opción desactiva el módulo IP.

[Unit]
Description=Glances
After=network.target influxd.service

[Service]
ExecStart=/usr/bin/glances --config /home/admin/.config/glances/glances.conf --quiet --export-influxdb --disable-ip
Restart=on-failure
RestartSec=30s
TimeoutSec=30s

[Install]
WantedBy=multi-user.target

Guarde el archivo y ciérrelo.

4. Luego, vuelva a cargar la configuración del administrador de systemd, inicie el servicio de miradas, vea su estado y habilítelo para que se inicie automáticamente en el momento del arranque.

systemctl daemon-reload 
systemctl start glances.service
systemctl status glances.service
systemctl enable glances.service

5. A continuación, debe descargar el archivo de configuración de miradas proporcionado por el desarrollador usando el comando wget como se muestra.

mkdir ~/.config/glances/
wget https://raw.githubusercontent.com/nicolargo/glances/master/conf/glances.conf -P ~/.config/glances/ 

6. Para exportar estadísticas de Glances a una base de datos InfluxDB, necesita la biblioteca Python InfluxdDB, que Puedo instalarlo usando el comando pip.

sudo pip install influxdb

Paso 2: Instale InfluxDB en CentOS 7

7. A continuación, debe agregar el repositorio Yum de InfluxDB para instalar la última versión del paquete InfluxDB como se muestra.

cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo
[influxdb]
name = InfluxDB Repository - RHEL $releasever
baseurl = https://repos.influxdata.com/rhel/$releasever/$basearch/stable
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key
EOF

8. Después de agregar el repositorio a la configuración de YUM, instale el paquete InfluxDB ejecutando.

yum install influxdb

9. A continuación, inicie el servicio InfluxDB a través de systemd, confirme que se está ejecutando viendo su estado y habilítelo para que se inicie automáticamente al iniciar el sistema.

systemctl start influxdb
systemctl status influxdb
systemctl enable influxdb

10. De forma predeterminada, InfluxDB usa el puerto TCP 8086 para la comunicación cliente-servidor a través de la API HTTP de InfluxDB; debe abrir este puerto en su firewall usando firewall-cmd.

firewall-cmd --add-port=8086/tcp --permanent
firewall-cmd --reload

11. A continuación, debe crear una base de datos en InfluxDB para almacenar datos de vistazos. El comando influx que se incluye en los paquetes de InfluxDB es la forma más sencilla de interactuar con la base de datos. Entonces ejecute influx para iniciar la CLI y conectarse automáticamente a la instancia local de InfluxDB.

influx

Ejecute los siguientes comandos para crear una base de datos llamada glances y ver las bases de datos disponibles.

Connected to http://localhost:8086 version 1.6.2
InfluxDB shell version: 1.6.2
> CREATE DATABASE glances
> SHOW DATABASES
name: databases
name
----
_internal
glances
> 

Para salir del shell InfluxQL, escriba salir y presione Entrar.

Paso 3: instale Grafana en CentOS 7

12. Ahora, instale Grafana desde su repositorio oficial YUM, comience agregando la siguiente configuración a /etc/yum.repos.d/grafana.repo archivo del repositorio.

[grafana]
name=grafana
baseurl=https://packagecloud.io/grafana/stable/el/7/$basearch
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

13. Después de agregar el repositorio a la configuración de YUM, instale el paquete Grafana ejecutando.

yum install grafana

14. Una vez que haya instalado Grafana, vuelva a cargar la configuración del administrador de systemd, inicie el servidor de grafana, verifique si el servicio está en funcionamiento viendo su estado y habilítelo para que se ejecute automáticamente. comenzar en el momento del arranque.

systemctl daemon-reload 
systemctl start grafana-server 
systemctl status grafana-server 
systemctl enable grafana-server

15. A continuación, abra el puerto 3000 en el que escucha el servidor Grafana, en su firewall usando el firewall-cmd.

firewall-cmd --add-port=3000/tcp --permanent
firewall-cmd --reload

Paso 4: monitorear las métricas del servidor CentOS 7 a través de Grafana

16. En este punto, puede usar la siguiente URL para acceder a la interfaz web de Grafana, que lo redirigirá a la página de inicio de sesión; use las credenciales predeterminadas para iniciar sesión.

URL: http://SERVER_IP:3000
Username: admin 
Password: admin

Se le pedirá que cree una nueva contraseña; una vez que lo haya hecho, será redirigido al panel de inicio, como se muestra en la captura de pantalla a continuación.

17. A continuación, haga clic en Crear su primera fuente de datos, que debe ser una base de datos InfluxDB. En Configuración, ingrese un nombre adecuado, por ejemplo, Importación de miradas, luego use los siguientes valores para las otras dos variables importantes (URL HTTP y Base de datos InfluxDB) como se muestra en la captura de pantalla.

HTTP URL: http://localhost:8086
InfluxDB Details - Database: glances

Luego haga clic en Guardar y probar para conectarse a la fuente de datos. Debería recibir un comentario que indique "La fuente de datos está funcionando".

18. Ahora necesitas importar el panel de Glances. Haga clic en el signo más (+) y vaya a Importar como se muestra en la captura de pantalla.

17. Necesitará la URL del panel de Glances o su ID o cargar su archivo .JSON que puede encontrar en Grafana.com. En este caso utilizaremos el Panel de Glances creado por el desarrollador de Glances, su URL es https://grafana.com/dashboards/2387 o ID es 2387.

18. Una vez que se haya cargado el panel de Grafana, en opciones, busque miradas y elija una fuente de datos de InluxDB (Importación de miradas) que creó anteriormente, luego haga clic en Importar como se muestra en la siguiente captura de pantalla.

19. Después de importar con éxito el panel de Glances, debería poder ver gráficos que muestran las métricas de su servidor proporcionadas por vistazos a través de influxdb.

¡Eso es todo por ahora! En este artículo, explicamos cómo monitorear el servidor CentOS 7 con Glances, InfluxDB y Grafana. Si tiene alguna consulta o información para compartir, utilice el formulario de comentarios a continuación para hacerlo.