Cómo instalar la herramienta de monitorización del sistema Prometheus en Ubuntu 20.04
En este tutorial, aprenderemos a instalar Prometheus en Ubuntu 20.04. Para quienes no estén familiarizados con Prometheus, se trata de una herramienta de monitorización del sistema que proporciona una visión general de todas las métricas de tu sistema e información de rendimiento para que puedas identificar cualquier problema o cuello de botella. Puede resultarte útil si quieres hacer un seguimiento de recursos como el uso de la CPU, la utilización de la memoria, el tiempo de espera IO de la red, etc. Dispone de una interfaz web que permite una fácil monitorización desde cualquier dispositivo con conexión a Internet y también admite alertas por correo electrónico y mensajes SMS en caso de que las métricas superen un umbral configurado.
Requisitos previos
- Un servidor que ejecute Ubuntu 20.04 LTS con al menos 2 GB de RAM y 1 vCPU.
- Iniciar sesión como root o como usuario no root con privilegios sudo.
Instalar Nginx
Siempre debes actualizar tu repositorio ejecutando este comando:
sudo apt update
Esto te preguntará, la respuesta por defecto es y y Enter. No aconsejamos pulsar n cuando se te pregunte, ya que puede causar problemas con los paquetes o programas que se instalen posteriormente.
Ahora tu sistema actualiza los repositorios mediante un proceso intermedio y, una vez completado este paso, puedes proceder a instalar nginx utilizando el comando que se indica a continuación:
sudo apt install nginx
El servicio Nginx está ahora en ejecución y responderá a las peticiones. Puedes comprobarlo ejecutando el siguiente comando:
sudo systemctl status nginx
Si ves una salida similar a la siguiente, entonces Nginx se está ejecutando:
Si tu servicio Nginx no se está ejecutando, puedes iniciarlo introduciendo el siguiente comando:
sudo systemctl start nginx
¡Ya está! nginx se está ejecutando en tu servidor
Crear usuario del sistema Prometheus
El servidor Prometheus necesita una cuenta de usuario de servicio para funcionar. Puedes crear el usuario con el siguiente comando. Sustituye «node_exporter» por el nombre de tu propia aplicación prometheus-server.
sudo useradd --no-create-home --shell /bin/false prome sudo useradd --no-create-home --shell /bin/false node_exporter
Crear directorios de Prometheus
A continuación, necesitas crear algunos directorios. En ellos se almacenarán los archivos de configuración y otros datos. Estos directorios se crearán en el directorio que hayas seleccionado previamente para Prometheus. En este ejemplo, utilizaremos /ect/prometheus y /var/lib/prometheus como directorio base:
sudo mkdir /etc/prometheus sudo mkdir /var/lib/prometheus
Descarga e instalación de Prometheus
Podemos descargar Prometheus para Linux simplemente utilizando wget. Navegamos hasta la versión más reciente de descargas en su sitio web y la cogemos desde allí.
wget https://github.com/prometheus/prometheus/releases/download/v2.28.1/prometheus-2.28.1.linux-amd64.tar.gz
Una vez descargado el binario, extráelo utilizando el comando tar:
tar -xvf prometheus-2.28.1.linux-amd64.tar.gz
De la carpeta extraída, copia los binarios prometheus y promtool al directorio /usr/local/bin:
sudo cp prometheus-2.28.1.linux-amd64/prometheus /usr/local/bin/ sudo cp prometheus-2.28.1.linux-amd64/promtool /usr/local/bin/
Después de copiarlos, cambia la propiedad de los archivos a prometheus introduciendo los comandos que se indican a continuación:
sudo chown prome:prome /usr/local/bin/prometheus sudo chown prome:prome /usr/local/bin/promtool
A continuación, copia los siguientes directorios en tu directorio de configuración de Prometheus /etc/prometheus: «console_libraries» y «prometheus». ¡Es importante que no olvides este paso!
sudo cp -r prometheus-2.28.1.linux-amd64/consoles /etc/prometheus sudo cp -r prometheus-2.28.1.linux-amd64/console_libraries /etc/prometheus
Utiliza los siguientes comandos para cambiar la propiedad de los archivos:
sudo chown -R prome:prome /etc/prometheus/consoles sudo chown -R prome:prome /etc/prometheus/console_libraries
Crear el archivo de configuración de Prometheus
Prometheus necesita un archivo de configuración para funcionar. El prometheous.yml es la forma más habitual de configurarlo en uso. En esta sección, crearemos los archivos de configuración llamados prometheus.yml en el directorio /etc/prometheus creado anteriormente.
sudo nano /etc/prometheus/prometheus.yml
A continuación, copia y pega las siguientes líneas en tu terminal:
global: scrape_interval: 15s scrape_configs: - job_name: 'prometheus' scrape_interval: 5s static_configs: - targets: ['localhost:9090']
Cuando hayas terminado pulsa Ctrl+x luego y luego enter para guardar el archivo.
La configuración por defecto tiene un único trabajo llamado Prometheus que raspa los datos de series temporales expuestos por el servidor. El trabajo sólo contiene un objetivo, localhost en el puerto 9090 y está configurado estáticamente.
Ahora necesitamos crear un archivo para el servicio systemd. Ejecuta el siguiente comando:
sudo nano /etc/systemd/system/prometheus.service
Copia y pega el siguiente contenido en el archivo:
[Unit] Description=Prometheus Wants=network-online.target After=network-online.target [Service] User=prome Group=prome Type=simple ExecStart=/usr/local/bin/prometheus \ --config.file /etc/prometheus/prometheus.yml \ --storage.tsdb.path /var/lib/prometheus/ \ --web.console.templates=/etc/prometheus/consoles \ --web.console.libraries=/etc/prometheus/console_libraries [Install]
El archivo de servicio indica a systemd que ejecute Prometheus como usuario prometheus, con una configuración en el directorio /etc/prometheus y datos almacenados en /var/libdirectory.
Cuando hayas terminado pulsa Ctrl+x, luego y y después intro para guardar el archivo.
Para utilizar el servicio recién creado, recarga systemd ejecutando el siguiente comando:
sudo systemctl daemon-reload
Ahora puedes iniciar Prometheus utilizando el siguiente comando:
sudo systemctl enable prometheus
Puedes comprobar el estado del servicio utilizando el comando siguiente:
sudo systemctl status prometheus
prometheus.service - Prometheus Loaded: loaded (/etc/systemd/system/prometheus.service; disabled; vendor preset: enabled) Active: active (running) since Thu 2021-07-15 22:31:10 UTC; 3s ago Process: 3949 ExecStart=/usr/local/bin/prometheus --config.file /etc/prometheus> Main PID: 3949 (prometheus) Tasks: 7 Memory: 13.8M CPU: 470ms CGroup: /system.slice/prometheus.service
El monitor de estado de Prometheus te indica el nivel actual de actividad del servicio. También puedes ver qué proceso está ejecutando actualmente y cuánta memoria utiliza en cada momento.
Probar Prometheus
Prometheus proporciona una interfaz web básica con la que los usuarios pueden ver estadísticas sobre sí mismos y sobre otros programas que tengan instalados, para determinar si hay algún problema en ellos.
Para acceder al servicio Prometheus, primero tienes que abrir el puerto 9090 en tu cortafuegos. Puedes hacerlo escribiendo
ufw allow 9090/tcp
Ahora abre un navegador web y navega hasta la siguiente dirección:
http://ip-address:9090
Sustituye el término «dirección-ip» por la dirección IP real de tu servidor. También puedes utilizar localhost o 127.0.0.1 para acceder localmente a Prometheus en tu sistema y comprobar si funciona correctamente.
La aplicación Prometheus ya está activa y lista para recibir peticiones web:
Conclusión
Esperamos que el tutorial te haya resultado útil y estés deseando probar tu propia instalación. Éste es sólo uno de los muchos tutoriales de nuestro sitio web, así que si hay algo más que quieras saber sobre la monitorización o Prometheus, ¡háznoslo saber en un comentario más abajo!