Cómo instalar Prometheus en Ubuntu 20.04 LTS

En este tutorial, le mostraremos cómo instalar Prometheus en Ubuntu 20.04 LTS. Para aquellos de ustedes que no lo sabían, Prometheus es un excelente sistema de monitoreo de código abierto que nos permite recopilar métricas de nuestras aplicaciones y almacenarlas en una base de datos, especialmente una base de datos basada en series temporales. La mayor ventaja de Prometheus es el lenguaje de consulta que proporciona para el procesamiento de datos.

Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y se supone que está ejecutando en la cuenta raíz, si no, es posible que deba agregar ‘ sudo ‘ a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso de Prometheus en Ubuntu 20.04 Focal Fossa. Puede seguir las mismas instrucciones para Ubuntu 18.04, 16.04 y cualquier otra distribución basada en Debian como Linux Mint.

requisitos previos

  • Un servidor que ejecuta uno de los siguientes sistemas operativos: Ubuntu 20.04, 18.04 y cualquier otra distribución basada en Debian como Linux Mint o Elementary OS.
  • Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas.
  • UN non-root sudo user o acceder a la root user . Recomendamos actuar como un non-root sudo user sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.

Instale Prometheus en Ubuntu 20.04 LTS Focal Fossa

Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando lo siguiente apt Comandos en la terminal.

                      sudo apt update
sudo apt upgrade
                    

Paso 2. Instalación del servidor web Nginx.

Nginx está disponible en los repositorios predeterminados de Ubuntu. Para instalarlo ejecuta el siguiente comando:

                      sudo apt install nginx
                    

Una vez que se complete la instalación, ejecute los comandos para permitir que Nginx se inicie automáticamente cuando se inicie su servidor:

                      sudo systemctl stop nginx.service
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
                    

Paso 3. Crear usuarios de Prometheus.

Tenemos que crear el usuario y grupo llamado Prometheus y también el directorio llamado Prometheus:

                      sudo useradd -s /sbin/nologin --system -g prometheus prometheus
sudo mkdir /var/lib/prometheus
for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; done
                    

Paso 4. Instalación de Prometheus en Ubuntu 20.04.

Ahora descargamos la última versión estable de Prometheus usando el wget dominio:

                      mkdir -p /tmp/prometheus && cd /tmp/prometheus
curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi -
tar xvf prometheus*.tar.gz
                    

Una vez que se completó la extracción del archivo, mueva los archivos binarios de Prometheus y promtool debajo de la carpeta de archivo de Prometheus extraída a /usr/local/bin directorio:

                      sudo mv prometheus promtool /usr/local/bin/
                    

Paso 5. Configure Prometheus.

Crearemos el archivo de configuración llamado prometheus.yml en el /etc/prometheus directorio:

                      sudo mv prometheus.yml /etc/prometheus/prometheus.yml
sudo mv consoles/ console_libraries/ /etc/prometheus/
sudo nano /etc/prometheus/prometheus.yml
                    

El contenido de prometheus.yml es como sigue:

                      my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
Alertmanager configuration
alerting:
alertmanagers:
static_configs: targets:
# - alertmanager:9093
Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
A scrape configuration containing exactly one endpoint to scrape:
Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label job= to any timeseries scraped from this config.
job_name: 'prometheus'
metrics_path defaults to '/metrics'
scheme defaults to 'http'.
static_configs:
targets: ['localhost:9090']
                    

Para verificar la versión de Prometheus instalada, ejecute el comando:

                      prometheus --version
                    

Paso 6. Cree un servicio Prometheus Systemd.

Ahora, vamos a crear un archivo para el systemd Servicio:

                      sudo nano /etc/systemd/system/prometheus.service
                    

Agregue el siguiente archivo:

                      [Unit]
Description=Prometheus
Documentation=https://prometheus.io/docs/introduction/overview/
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=prometheus
Group=prometheus
ExecReload=/bin/kill -HUP $MAINPID
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 
  --web.listen-address=0.0.0.0:9090 
  --web.external-url=

SyslogIdentifier=prometheus
Restart=always

[Install]
WantedBy=multi-user.target
                    

Luego, cambie la propiedad de estos directorios al usuario y grupo de Prometheus:

                      for i in rules rules.d files_sd; do sudo chown -R prometheus:prometheus /etc/prometheus/${i}; done
for i in rules rules.d files_sd; do sudo chmod -R 775 /etc/prometheus/${i}; done
sudo chown -R prometheus:prometheus /var/lib/prometheus/
                    

Una vez que haya terminado con las configuraciones anteriores, vuelva a cargar systemd usando el siguiente comando:

                      sudo systemctl daemon-relaod
sudo systemctl start prometheus
sudo systemctl enable prometheus
                    

Paso 7. Configure el cortafuegos.

Mientras tanto, debe asegurarse de que su firewall esté configurado para permitir el tráfico en los puertos HTTP (80), HTTPS (443) y 9090. Nginx se registra como un servicio con ufw :

                      sudo ufw allow in "Nginx Full"
sudo ufw allow 9090/tcp
                    

Paso 8. Acceso a la interfaz web de Prometheus.

Prometheus estará disponible en el puerto HTTP 9090 de forma predeterminada. Abra su navegador favorito y vaya a https://your-domain.com:9090 o https://server-ip-addreess:9090 y complete los pasos necesarios para finalizar la instalación.

¡Felicidades! Ha instalado correctamente Prometheus. Gracias por usar este tutorial para instalar el monitoreo de código abierto de Prometheus en su Ubuntu 20.04 LTS (Focal Fossa). Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial de Prometeo .

Related Posts