23.06.2025

Установка Prometheus на Ubuntu 20.04

Что такое Prometheus?

Prometheus – это проект с открытым кодом, отвечающий за мониторинг и оповещение. Проект был выпущен в 2015 году.

У Прометея есть ряд особенностей:

Установка Prometheus

Для установки Prometheus, вам требуется обновить все пакеты на вашей системе,  что бы обновить их, используйте команды ниже.

sudo apt update
sudo apt upgrade


Установка веб-сервера Nginx

Nginx у нас доступен в открытых ресурсах Ubuntu. Установка начинается со следующих команд:

apt install nginx

Если у вас выскакивает данная ошибка:

Следует прописать данные команды:

rm /etc/nginx/sites-enabled/default

service nginx restart

и продолжайте идти по пунктам.

После всех манипуляций, прописываем последние команды из этого пункта, чтобы у нас веб-сервер(nginx) автоматически запускался когда мы включаем сервер.

systemctl enable nginx.service

Создание пользователя в Prometheus

Сначала мы начнем с создания группы. После создадим пользователя и добавим его в группу. Так же потребуется создать каталог.

Создаем группу для пользователя:

groupadd prometheus

Далее создаем самого пользователя:

useradd -s /sbin/nologin --system -g prometheus prometheus

Создаем каталог:

mkdir /var/lib/prometheus

for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; done

Теперь устанавливаем сам Prometheus на Ubuntu

Перед дальнейшей настройкой рекомендую проверить, установлен ли у вас CURL, если не установлен то прописываем следующую команду и идем дальше:

apt install curl

Загружаем последнюю версию Prometheus при помощи 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

Перейдите в получившуюся директорию.

Например:

cd /tmp/prometheus/prometheus-2.46.0.linux-amd64

После переносим файлы Prometheus и Promtool из папки Prometheus в каталог «/usr/local/bin».

mv prometheus promtool /usr/local/bin/

Настройка Prometheus

В первую очередь нужно создать файл конфигурации под именем «Prometheus.yml» в этом каталоге «/etc/prometheus».

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

Просматриваем содержимое prometheus.yml и если там есть данные то идем дальше.

Создание службы Prometheus Systemd

Для легкости создадим файлы для службы systemd:

nano /etc/systemd/system/prometheus.service

Добавьте данный текст в этот файл:

[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

Итог после этих команд:

И в завершении, меняем владельца этих каталогов на раннее созданного пользователя и группу 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
chown -R prometheus:prometheus /var/lib/prometheus/

Как только вы все прописали и проверили, перезагружаем systemd:

systemctl daemon-reload
systemctl enable prometheus

Настройка брандмауэра

Теперь нам предстоит убедиться, что брандмауэр настроен верно и разрешает трафик по портам HTTPS(443), HTTP(80) и 9090.

Веб-сервер Nginx представляет себя как сервис ufw:

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

Доступ к веб-интерфейсу Prometheus

По стандарту Prometheus у нас доступен на HTTP-порту 9090. Чтобы проверить это, открываем наш браузер, и в адресной строке прописываем либо ip-адрес хоста, на который мы ставили Prometheus или домен. И если все настроили верно, то у вас откроется вкладка дашбоарда Prometheus.
http://your-domain.com:9090 (пример http://domen1:9090)
http://server-ip-addreess:9090 (пример http://38.123.34.54:9090)

Вывод

Благодаря данной публикации вы с легкостью установите систему мониторинга Prometheus на сервер с операционной системой Ubuntu 20.04