Instale Glances, InfluxDB y Grafana para monitorear CentOS 7


Glances es una herramienta gratuita de monitoreo de código abierto, moderna, multiplataforma, superior y en tiempo real con características avanzadas. Puede ejecutarse en diferentes modos: como independiente, en modo cliente/servidor y en modo servidor web.

InfluxDB es una base de datos de fuente abierta y escalable de tiempo 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 métrico, con paneles de control hermosos y personalizables. Es un software de facto para el análisis de datos.

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

Paso 1: Instalar miradas en CentOS 7

1. Empiece por instalar la última versión estable de miradas ( v2.11.1 ) utilizando PIP. Si no tienes pip , instálalo de la siguiente manera, incluyendo Python-headers necesario para instalar psutil .

# yum install python-pip python-devel	

2. Una vez que tengas PIP y Python-headers , ejecuta el siguiente comando para instalar la última versión estable de miradas y verificar la versión.

# pip install glances
# glances -V

Glances v2.11.1 with psutil v5.4.7

Alternativamente, si ya tiene miradas instaladas, puede actualizarlo a la última versión con el siguiente comando

# pip install --upgrade glances

3. Ahora necesita iniciar miradas 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 dice a las miradas que exporten estadísticas a un servidor de InfluxDB y el --disable-ip 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 del sistema, inicie el servicio de visitas, 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 utilizando 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 Glances estadísticas a una base de datos InfluxDB , necesita la liberación Python InfluxdDB Puede instalarlo usando el comando pip.

# sudo pip install influxdb

Paso 2: Instale InfluxDB en CentOS 7

7. A continuación, debe agregar el repositorio InfluxDB Yum 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 al ver 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 manera 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 utilizando el 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 miradas . El comando influx que se incluye en los paquetes InfluxDB es la forma más sencilla de interactuar con la base de datos. Así que ejecute afluencia para iniciar la CLI y conéctese automáticamente a la instancia de InfluxDB local.

# influx

Ejecute los siguientes comandos para crear una base de datos llamada miradas 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: Instala 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 de 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, instala el paquete Grafana ejecutando.

# yum install grafana

14. Una vez que haya instalado Grafana , vuelva a cargar la configuración del administrador del sistema, inicie el servidor de Grafana, verifique que el servicio esté funcionando y vea su estado y habilítelo para que comenzar en el momento de 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 Grafana el servidor escucha, en su firewall utilizando 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 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 siguiente captura de pantalla.

17. A continuación, haga clic en Crear su primera fuente de datos , que debería ser una base de datos InfluxDB. En Configuración , ingrese un nombre adecuado, por ejemplo, Glances Import , luego use los siguientes valores para las otras dos variables importantes ( URL de 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 & amp; Pruebe para conectarse a la fuente de datos. Debería recibir un comentario que indique " La fuente de datos funciona ".

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

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

18. Una vez que se haya cargado el panel de Grafana, en opciones, busque miradas y elija una fuente de datos InluxDB ( Importaciones 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 control Miradas , debería poder ver los gráficos que muestran las métricas de su servidor tal como lo proporcionan las miradas mediante influxdb.

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