Geekflare recibe el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliación de los enlaces de compra en este sitio.
En Linux Última actualización: 25 de septiembre de 2023
Compartir en:
Escáner de seguridad de aplicaciones web Invicti - la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

En este tutorial, hablaré sobre Prometheus y Grafana. Aprenderá a instalar ambos en CentOS/RHEL y entenderá cómo utilizar Prometheus y Grafana para monitorizar el servidor Linux

Introducción

Grafana es una de las principales series de tiempo, una plataforma de código abierto para la visualización y monitorización. Le permite consultar, visualizar, establecer alertas y comprender métricas sin importar dónde estén almacenadas. Puede crear increíbles cuadros de mando en Grafana para visualizar y supervisar las métricas

Prometeo es un sistema de supervisión de series temporales de código abierto para arquitecturas centradas en máquinas y orientadas a servicios altamente dinámicos. Puede, literalmente, monitorizarlo todo. Se integra muy bien con Grafana, ya que Grafana también ofrece Prometheus como una de sus fuentes de datos

Si es un novato, le sugiero que consulte a un artículo de introducción a Prometheus y Grafana

Permítame mostrarle cómo instalarlos en CentOS. Usted debe tener al menos 2 GB de RAM. Usted puede obtener un servidor en la nube de DigitalOcean para probar

Instalación de Prometheus

Paso 1: Descargar Prometheus

Descargue el último paquete de Prometheus Linux desde la página oficial

Compruebe la página oficial de la versión para obtener la última versión

[centos@geekflare ~]$ wget https://github.com/prometheus/prometheus/releases/download/v2.18.1/prometheus-2.18.1.linux-amd64.tar.gz
--2020-05-20 10:06:22--
https://github.com/prometheus/prometheus/releases/download/v2.18.1/prometheus-2.18.1.linux-amd64.tar.gz
Resolviendo github.com (github.com)... 13.234.176.102
Conectando con github.com (github.com)|13.234.176.102|:443... conectado.
Solicitud HTTP enviada, esperando respuesta... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/6838921/2f454700-90ae-11ea-89e1-3aeb351fdfa5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T140622Z&X-Amz-Expires=300&X-Amz-Signature=53d5c6a02e8eeee82f380c4d1edf62a7adfb2b38f2b173059852040b14ddb19c&X-Amz-SignedHeaders=host&actor_id=0&repo_id=6838921&response-content-disposition=attachment; filename=prometheus-2.18.1.linux-amd64.tar.gz&response-content-type=application/octet-stream <x>[following]</x>
--2020-05-20 10:06:22--
https://github-production-release-asset-2e65be.s3.amazonaws.com/6838921/2f454700-90ae-11ea-89e1-3aeb351fdfa5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T140622Z&X-Amz-Expires=300&X-Amz-Signature=53d5c6a02e8eeee82f380c4d1edf62a7adfb2b38f2b173059852040b14ddb19c&X-Amz-SignedHeaders=host&actor_id=0&repo_id=6838921&response-content-disposition=attachment; filename=prometheus-2.18.1.linux-amd64.tar.gz&response-content-type=application/octet-stream
Resolviendo github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.24.236
Conectando con github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.24.236|:443... conectado.
Solicitud HTTP enviada, esperando respuesta... 200 OK
Longitud: 63373350 (60M) [application/octet-stream]
Guardando en: ‘prometheus-2.18.1.linux-amd64.tar.gz’

100%[============================================================================================================>] 63.373.350 2,09 MB/s en 50s

2020-05-20 10:07:13 (1,21 MB/s) - 'prometheus-2.18.1.linux-amd64.tar.gz' guardado [63373350/63373350]

Extraiga el paquete que ha descargado

[centos@geekflare ~]$ tar -xzf prometheus-2.18.1.linux-amd64.tar.gz
[centos@geekflare ~]$ ls
Escritorio
Documentos Descargas Música
Imágenes
prometheus-2.18.1.linux-amd64
prometheus-2.18.1.linux-amd64.tar.gz
Plantillas públicas Vídeos

Paso 2: Configurar Prometheus

Cree un nuevo usuario Prometheus utilizando el siguiente comando
[

centos@geekflare ~]$ sudo useradd -s /sbin/false prom

etheus

Dé la propiedad de todos los archivos de Prometheus al usuario Prometheus. Haga todos los archivos ejecutables en la ruta mencionada.

[centos@geekflare ~]$ sudo chmod 755 prometheus-2.18.1.linux-amd64 -R
[centos@geekflare ~]$ sudo chown prometheus:prometheus prometheus-2.18.1.linux-amd64 -R

Es hora de configurar Prometheus como un servicio dentro del systemd. Cree un archivo prometheus.service y ponga las líneas que se mencionan a continuación en el archivo y guárdelo

[centos@geekflare ~]$ sudo gedit /etc/systemd/system/prometheus.service
[Unidad]
Description=Servidor Prometheus
Wants=network-online.target
After=network-online.target

[Servicio]
User=prometheus
Group=prometheus
Type=simple
ExecStart= /home/centos/prometheus-2.18.1.linux-amd64/prometheus \
--config.file= /home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml \
--storage.tsdb.path=/home/centos/prometheus-2.18.1.linux-amd64/ \
--web.console.templates= /home/centos/prometheus-2.

18.

1.linux-amd64/consolas \
--web.console.libraries= /home/centos/prometheus-2.18.1.linux-amd64/console_libraries

[Instalar]
WantedBy=multi-user.target

Paso 3: Inicie Prometheus

Utilizando systemctl, recargue el sistema systemd e inicie el servicio Prometheus. Su estado debería mostrar que el servicio se está ejecutando si ha seguido todos los pasos correctamente

[centos@geekflare prometheus]$ sudo systemctl daemon-reload
[centos@geekflare prometheus]$ sudo systemctl start prometheus.service
[centos@geekflare prometheus]$ sudo systemctl enable prometheus.service
[centos@geekflare prometheus]$ sudo systemctl status prometheus.service -l
● prometheus.service - Servidor Prometheus
Cargado: cargado (/etc/systemd/system/prometheus.service; habilitado; preajuste del proveedor: deshabilitado)
Activo: activo (en ejecución) desde Wed 2020-05-20 14:18:47 EDT; hace 5s
PID principal: 23924 (prometheus)
CGroup: /system.slice/prometheus.service
└─23924 /home/centos/prometheus-2.18.1.linux-amd64/prometheus --config.file=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml --storage.tsdb.path=/home/centos/prometheus-2.18.1.linux-amd64/ --web.console.templates=/home/centos/prometheus-2.18.1.linux-amd64/consoles --web.console.libraries=/home/centos/prometheus-2.18.1.linux-amd64/console_libraries

May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.885Z caller=web.go:523 component=web msg="Empezar a escuchar conexiones" address=0.0.0.0:9090
May 20 14:18:47 geekflare.linuxvmimages.com prometheus[23924<x><x><x><x><x><x><x><x><x>]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.888Z caller=head.go:624 component=tsdb msg="Segmento WAL cargado" segment=0 maxSegment=2
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23</x></x></x></x></x></x></x></x></x><x><x><x><x><x><x><x><x><x>924</x></x></x></x></x></x></x></x></x>]: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:624 component=tsdb msg="Segmento WAL cargado" segment=1 maxSegment=2
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:624 component=tsdb msg="Segmento WAL cargado" segment=2 maxSegment=2
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:627 component=tsdb msg="WAL replay completed" duration=4.498147ms
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:694 fs_type=XFS_SUPER_MAGIC
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:695 msg="TSDB iniciado"
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:799 msg="Cargando archivo de configuración" filename=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml
May 20 14:18:47 geekflare.linuxvmimages.com prometheus<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-20T18:18:47.936Z caller=main.go:827 msg="Finalizada la carga del archivo de configuración" filename=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml
May 20 14:18:47 geekflare.linuxvmimages.

com prometheus

<x><x><x><x><x><x><x><x><x>[23924]</x></x></x></x></x></x></x></x></x>: level

=info

 ts=2020-05-20T18:18:47.936Z caller=main.go:646 msg="El servidor está listo para recibir peticiones web."

Paso 4: Acceda a la interfaz web de Prometheus

Abra el navegador y acceda a la IP del servidor con el puerto 9090 para acceder a la interfaz web de Prometheus

prometheus web ui - geekflare
Vaya a Estado>>Objetivos para ver qué y dónde se está ejecutando actualmente Prometheus

objetivo prometheus - geekflare

Instalación de Grafana

Paso 1: Añadir Grafana Repo

Por defecto, el repositorio de Grafana no está presente en los repositorios de CentOS, por lo que necesita añadirlo. Cree un archivo grafana.repo within /etc/yum.repos.d/ y añada las líneas que se mencionan a continuación

[centos@geekflare ~]$ sudo gedit /etc/yum.repos.d/grafana.repo

[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1

gpgcheck=1


gpgkey=https://packages.grafana.com/gpg.key

sslverify=1

sslcacert=/etc/pki/tls/certs/ca-bundle
.crt

Paso 2: Instalar Grafana

Actualice CentOS e instale el paquete Grafana

[centos@geekflare ~]$ sudo yum update -y

[centos@geekflare ~]$ sudo yum install grafana
Plugins cargados: fastestmirror, langpacks
Cargando velocidades de espejo desde el archivo de host en caché
* base: mirrors.piconets.webwerks.in
* extras: mirrors.piconets.webwerks.in
* updates: mirrors.piconets.webwerks.in
Resolviendo dependencias
-->
 Ejecutando comprobación de transacciones
--->
 El paquete grafana.x86_64 0:7.0.0-1 será instalado
-->
 Finalizada la Resolución de Dependencias

Dependencias Resueltas

======================================================================================================================================================
Paquete Arch Versión Tamaño del Repositorio
======================================================================================================================================================
Instalando:
grafana x86_64 7.0.0-1 grafana 46 M

Resumen de la transacción
======================================================================================================================================================
Instalación de 1 paquete

Tamaño total descargado: 46 M
Tamaño instalado: 141 M
¿Está bien [sí/no]: sí
Descargando paquetes:
No hay metadatos Presto disponibles para grafana
advertencia: /var/cache/yum/x86_64/7/grafana/packages/grafana-7.0.0-2.x86_64.rpm: Firma Header V4 RSA/SHA512, ID de clave 24098cb6: NOKEY MB 00:00:00 ETA
La clave pública para grafana-7.0.0-2.x86_64.rpm no está instalada
grafana-7.0.0-2.x86_64.rpm | 46 MB
00:00:07
Recuperando clave de https://packages.grafana.com/gpg.key
Importando clave GPG 0x24098CB6:
Userid : "Grafana <info@grafana.com>"
Huella digital: 4e40 ddf6 d76e 284a 4a67 80e4 8c8c 34c5 2409 8cb6
From : https://packages.grafana.com/gpg.key
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : grafana-7.0.0-1.x86_64 1/1
### NO se inicia en la instalación, por favor ejecute las siguientes sentencias para configurar grafana para que se inicie automáticamente usando systemd
sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable grafana-server.service

###

 Puede iniciar grafana-server ejecutando
sudo /bin/systemctl start grafana-server.service
POSTTRANS: Ejecutando script
Verificando : grafana-7.0.0-1.x86_64

1/1



Instalado:
grafana.x86_64 0:7.0.0-1

¡Completado!

Paso 3: Iniciar Grafana

Inicie el servidor grafana y compruebe el estado si se está ejecutando o no

[centos@geekflare ~]$ sudo systemctl start grafana-server
[centos@geekflare ~]$ sudo systemctl status grafana-server
● grafana-server.service - Grafana instance
Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; disabled; vendor preset: disabled)
Activo: activo (en ejecución) desde Wed 2020-05-20 07:04:32 EDT; hace 6s
Docs: http://docs.grafana.org
PID principal: 7672 (grafana-server)
Tareas: 9
CGroup: /system.slice/grafana-server.service
└─7672 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini --pidfile=/var/run/grafana/grafana-server.pid --packaging=rpm cfg:defa...

May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Ejecutando migración" logger=migrator...token"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Ejecutando migración" logger=migrador...token"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Ejecutando migración" logger=migrador...tabla"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7</x></x></x></x></x></x></x></x>672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Ejecutando migración" logger=migrator...e_key"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Creado admin por defecto" logger=sqlsto...=admin
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Starting plugin search" logger=plugins
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="Registrando plugin" logger=plugins n...Entrada"
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="External plugins directory created" ...lugins
May 20 07:04:32 geekflare.linuxvmimages.com systemd[1]: Started Grafana instance.
May 20 07:04:32 geekflare.linuxvmimages.com grafana-server<x><x><x><x><x><x><x><x>[7672]</x></x></x></x></x></x></x></x>: t=2020-05-20T07:04:32-0400 lvl=info msg="HTTP Server Listen" logger=http.serv...ocket=

Sugerencia

: Algunas líneas se han elipsado, utilice -l para mostrarlas completas

Paso 4: Acceda a la interfaz web de Grafana

Una vez que el servicio esté en funcionamiento, acceda a la IP del servidor con el puerto 3000 para acceder a la interfaz web de Grafana. Por primera vez, deberá utilizar admin como nombre de usuario y contraseña de molestia; después se le pedirá que establezca su propia contraseña
grafana web ui - geekflare

Este es el aspecto de la Home de Grafana

grafana inicio - geekflare

Instalación del exportador de nodos

exportador_nodo es un paquete oficial que debe ser instalado en los servidores Linux a monitorizar. Expone múltiples métricas de hardware y SO, que serán extraídas por Prometheus y finalmente visualizadas en Grafana

Paso 1: Descargar Exportador de nodos

Utilice wget para descargar el paquete node exporter en su servidor

Consulte la página de versiones para obtener la última versión

[centos@geekflare ~]$ wget https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.1/node_exporter-1.0.0-rc.1.linux-amd64.tar.gz
--2020-05-20 15:56:13--
https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.1/node_exporter-1.0.0-rc.1.linux-amd64.tar.gz
Resolviendo github.com (github.com)... 13.234.176.102
Conectando con github.com (github.com)|13.234.176.102|:443... conectado.
Solicitud HTTP enviada, esperando respuesta... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/9524057/b34b8180-960e-11ea-8df0-39a17445b82f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T195614Z&X-Amz-Expires=300&X-Amz-Signature=7f4d746946569dbe71bba5785fb4947348e5e0de1c2e8516b2390a2df2eda801&X-Amz-SignedHeaders=host&actor_id=0&repo_id=9524057&response-content-disposition=attachment; filename=node_exporter-1.0.0-rc.1.linux-amd64.tar.gz&response-content-type=application/octet-stream <x>[following]</x>
--2020-05-20 15:56:14--
https://github-production-release-asset-2e65be.s3.amazonaws.com/9524057/b34b8180-960e-11ea-8df0-39a17445b82f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A/20200520/us-east-1/s3/aws4_request&X-Amz-Date=20200520T195614Z&X-Amz-Expires=300&X-Amz-Signature=7f4d746946569dbe71bba5785fb4947348e5e0de1c2e8516b2390a2df2eda801&X-Amz-SignedHeaders=host&actor_id=0&repo_id=9524057&response-content-disposition=attachment; filename=node_exporter-1.0.0-rc.1.linux-amd64.tar.gz&response-content-type=application/octet-stream
Resolviendo github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.95.83
Conectando con github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.95.83|:443... conectado.
Solicitud HTTP enviada, esperando respuesta... 200 OK
Longitud: 8734373 (8.3M) [application/octet-stream]
Guardando en: ‘node_exporter-1.0.0-rc.1.linux-amd64.tar.gz’

100%[============================================================================================================>] 8.734.373 755KB/s en 11s

2020-05-20 15:56:26 (769 KB/s) - 'node_exporter-1.0.0-rc.1.linux-amd64.tar.gz' guardado [8734373/8734373]

Extraiga el archivo descargado

[centos@geekflare ~]$ tar -xzf node_exporter-1.0.0-rc.1.linux-amd64.tar.g

z

Paso 2: Configurar el exportador de nodos

Es hora de configurar Node Exporter como un servicio dentro de systemd. Cree un archivo node_exporter. servicio y ponga las líneas que se mencionan a continuación en el archivo y guárdelo

[centos@geekflare ~]$ sudo gedit /etc/systemd/system/node_exporter.service

[Unidad]

Descripción=node_exporter
Wants=network-online.target
After=network-online.target

[Servicio]

User=prometheus
Group=prometheus
Type=simple
ExecStart=/home/centos/node_exporter-1.0.0-rc.1.linux-amd64/node_exporter

[Instalar]

WantedBy=multi-user.target

Paso 3: Inicie el exportador de nodos

[centos@geekflare ~]$ sudo systemctl daemon-reload
[centos@geekflare ~]$ sudo systemctl start node_exporter
[centos@geekflare ~]$ sudo systemctl status node_exporter
● node_exporter.service - node_exporter
 Cargado: cargado (/etc/systemd/system/node_exporter.service; habilitado; preconfiguración del proveedor: deshabilitado)
 Activo: activo (en ejecución) desde Wed 2020-05-27 03:42:54 EDT; hace 2s
 PID principal: 9658 (node_exporter)
 Tareas: 3
 CGroup: /system.slice/node_exporter.service
 └─9658 /home/centos/node_exporter-1.0.0-rc.1.linux-amd64/node_exporter

May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=t...l_zone
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=time
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=timex
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=udp_queues
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=uname
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=vmstat
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=xfs
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=zfs
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:191 msg="Escucha...=:9100
May 27 03:42:54 geekflare.linuxvmimages.com node_exporter<x><x><x><x><x><x><x><x><x>[9658]</x></x></x></x></x></x></x></x></x>:

nivel=info

 ts=2020-05-27T07:42:54.870Z caller=tls_config.go:170 msg="TLS es di...=false

Añadir servidor a Prometheus

Paso 1: Edite prometheus.yml

Necesita añadir un nuevo trabajo en el archivo prometheus.yml. Abra una nueva pestaña en el terminal y edite el archivo como se indica a continuación

[centos@geekflare ~]$ sudo gedit prometheus.yml

- job_name: 'node_exporter'
static_configs:
- targets: ['localhost:9100']

Nota: Arriba, he configurado el localhost en el objetivo ya que me gustaría monitorizar el propio servidor Prometheus. Puede cambiar esto por la IP real del servidor Linux. El puerto 9100 es el puerto por defecto de node_exporter

Paso 2: Detener e iniciar Prometheus

[centos@geekflare]$ sudo systemctl stop prometheus.service
[centos@geekflare]$ sudo systemctl start prometheus.service

Paso 3: Comprobar objetivos

Vaya a https://localhost:9090/targets; encontrará objetivos en ejecución, uno de ellos será el exportador de nodos

objetivos prometheus - geekflare

Integrando Prometheus a Grafana

Ahora que Grafana y Prometheus están instalados, vamos a utilizarlos para monitorizar servidores

  • Vaya a la página de inicio de Grafana y haga clic en el signo de configuración de la izquierda. A continuación, haga clic en "Fuentes de datos".
  • Haga clic en Añadir fuente de datos y seleccione Prometheus.

añadir fuente de datos - geekflare

  • Establezca la URL como la IP del servidor Prometheus con el puerto 9090. En este ejemplo, estoy ejecutando Prometheus y Grafana en el mismo servidor por lo que sería http://localhost:9090
  • Haga clic en Guardar y probar. Obtendrá un mensaje de éxito de que la fuente de datos se ha añadido.

fuente de datos prometheus - geekflare

¡Genial!

Grafana está conectado con éxito a Prometheus. Es hora de crear un dashboard. Para hacerlo fácil, voy a utilizar el dashboard exportador de nodos existente, que está presente en el sitio web oficial de Grafana para monitorizar las métricas del servidor Linux

  • Vaya al panel de inicio de Grafana, haga clic en signo y en Importar.
  • En Importar vía grafana.com, ponga el dashboard id 1860 y haga clic en Cargar.

importación de grafana - geekflare

  • A continuación, seleccione la fuente de datos Prometheus y haga clic en Importar.

grafana import node exporter - geekflare

  • Se importará el dashboard completo del exportador de nodos. Puede ver que todas las métricas como carga del sistema, ram utilizada, CPU ocupada, etc. se están monitorizando en Grafana con éxito.

monitor grafana - geekflare

  • Si se desplaza hacia abajo, podrá ver que Grafana es capaz de visualizar un montón de métricas.

exportador de nodos - geekflare

  • Si desea obtener más información, puede hacer clic en la visualización de la métrica en particular y mirarla en detalle. Aquí, estoy comprobando la visualización Tráfico de red por paquetes de los últimos 30 minutos.

tráfico de red ui - geekflare

Conclusión

Espero que esto le dé una idea de cómo configurar Grafana y Prometheus para las métricas del servidor. Hay más formas de monitorizar servidores: puede probar la monitorización de servidores basada en la nubeo el software ligero autoalojado

Si está interesado en aprender Grafana, le sugiero que eche un vistazo a este curso práctico de Udemy.

  • Avi
    Autor
    Avi es un entusiasta de la tecnología con experiencia en tecnologías de tendencia como DevOps, Cloud Computing, Big Data y muchas más. Le apasiona aprender tecnologías de vanguardia y compartir sus conocimientos con los demás a través de... Seguir leyendo
Gracias a nuestros patrocinadores
Más lecturas sobre Linux
Potencia tu negocio
Algunas de las herramientas y servicios que le ayudarán a hacer crecer su negocio.
  • Invicti utiliza el Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en tan solo unas horas.
    Pruebe Invicti
  • Web scraping, proxy residencial, gestor de proxy, desbloqueador web, rastreador de motores de búsqueda, y todo lo que necesita para recopilar datos web.
    Pruebe Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno que te ayuda a gestionar proyectos, tareas, trabajo, ventas, CRM, operaciones, flujos de trabajo y mucho más.
    Prueba Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra puntos débiles de ciberseguridad en su infraestructura, para evitar costosas violaciones de datos.
    Prueba Intruder