Prometheus je vynikající open-source monitorovací systém, který nám umožňuje shromažďovat metriky z našich aplikací a ukládat je do databáze, zejména databáze založené na časových řadách. Největší výhodou Prometheus je dotazovací jazyk, který poskytuje pro zpracování dat. Má webové rozhraní, které umožňuje snadné sledování z libovolného zařízení s připojením k internetu a také podporuje upozornění prostřednictvím e-mailu a SMS zpráv v případě, že metriky překročí nastavenou hranici.
Zde v LinuxAPT, jako součást našich služeb správy serveru, pravidelně pomáháme našim zákazníkům provádět související dotazy týkající se instalace softwaru.
V této souvislosti se podíváme na to, jak nainstalovat Prometheus na Ubuntu 20.04 LTS.
Kroky k instalaci Promethea na Ubuntu 20.04 LTS Focal Fossa?
1. Proveďte aktualizaci systému
Nejprve se ujistěte, že všechny vaše systémové balíčky jsou aktuální spuštěním následujících příkazů apt v terminálu:
$ sudo apt update
$ sudo apt upgrade
2. Nainstalujte webový server Nginx
Nginx je k dispozici ve výchozích úložištích Ubuntu. Chcete-li jej nainstalovat, spusťte následující příkaz:
$ sudo apt install nginx
Po dokončení instalace spusťte příkazy, aby se Nginx automaticky spustil při spuštění serveru:
$ sudo systemctl stop nginx.service
$ sudo systemctl start nginx.service
$ sudo systemctl enable nginx.service
3. Vytvořte uživatele Prometheus
Musíme vytvořit uživatele a skupinu s názvem prometheus a také adresář s názvem Prometheus:
$ sudo useradd -s /sbin/nologin --system -g prometheus prometheussudo mkdir /var/lib/prometheus
for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; done
4. Nainstalujte Prometheus do systému
Stáhněte si nejnovější stabilní verzi Promethea pomocí příkazu wget:
$ 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
Po dokončení extrakce souboru přesuňte binární soubory prometheus a promtool pod extrahovanou archivní složku Prometheus do/usr/local/bindirectory:
$ sudo mv prometheus promtool /usr/local/bin/
5. Nakonfigurujte Prometheus
Vytvoříme konfigurační soubor s názvem prometheus.yml v adresáři /etc/prometheus:
$ sudo mv prometheus.yml /etc/prometheus/prometheus.yml
$ sudo mv consoles/ console_libraries/ /etc/prometheus/
$ sudo nano /etc/prometheus/prometheus.yml
Obsah prometheus.yml je následující:
moje globální konfigurace
globální:
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
Pravidla načtěte jednou a pravidelně je vyhodnocujte podle globálního 'intervalu hodnocení'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
Konfigurace scrape obsahující přesně jeden koncový bod pro scrape:
Tady je to samotný Prometheus.
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']
6. Vytvořte službu Prometheus Systemd
Nyní vytvoříme soubor pro službu systemd:
$ sudo nano /etc/systemd/system/prometheus.service
Přidejte následující soubor:
[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
Poté změňte vlastnictví těchto adresářů na Prometheus user and group:
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/
Jakmile skončíte s výše uvedenými konfiguracemi, znovu načtěte systemd pomocí následujícího příkazu:
$ sudo systemctl daemon-relaod
$ sudo systemctl start prometheus
$ sudo systemctl enable prometheus
7. Nakonfigurujte bránu firewall
Mezitím se musíte ujistit, že je váš firewall nakonfigurován tak, aby umožňoval provoz na portech HTTP (80), HTTPS (443) a 9090. Nginx se registruje jako služba s ufw:
$ sudo ufw allow in "Nginx Full"
$ sudo ufw allow 9090/tcp
8. Přístup k webovému rozhraní Prometheus
Prometheus bude ve výchozím nastavení dostupný na portu HTTP 9090.
Otevřete svůj oblíbený prohlížeč a přejděte na http://your-domain.com:9090 nebo http://server-ip-addreess:9090 a proveďte požadované kroky k dokončení instalace.