Установка ПО · 9 min read · Oct 09, 2025
Как установить Grafana и Prometheus на Ubuntu 24.04

Grafana — это платформа визуализации данных с открытым исходным кодом и многоплатформенная, разработанная компанией Grafana Labs. Grafana предоставляет интерактивное веб-приложение для визуализации данных, которое включает графики, диаграммы и оповещения. С помощью Grafana вы можете запрашивать, визуализировать, настраивать оповещения и исследовать метрики, логи и трассировки TSDB. Это мощный инструмент, который превращает данные временной базы данных (TSDB) в информативные графики и визуализации.
В Grafana вы можете добавить данные вашей временной базы данных через «Источник данных». Grafana поддерживает множество источников данных, таких как Prometheus, InfluxDB, PostgreSQL, Loki, Jaeger, Graphite, Google Cloud Monitoring, AWS CloudWatch, Azure Monitor и многие другие.
В этом руководстве вы узнаете, как установить Grafana, Prometheus и node_exporter на серверах Ubuntu 24.04. Вы также установите Nginx в качестве обратного прокси для Grafana, интегрируете node_exporter и Prometheus, а затем добавите Prometheus в качестве источника данных на панели управления Grafana.
Предварительные требования
Перед тем как начать, убедитесь, что у вас есть:
- Два или три сервера Ubuntu 24.04.
- Непривилегированный пользователь с правами администратора.
Установка Grafana на Ubuntu
Grafana — это веб-приложение для визуализации данных. Чтобы установить Grafana, вам нужно добавить репозиторий Grafana. В этом примере вы также установите Nginx в качестве обратного прокси для Grafana.
Установка зависимостей и добавление репозитория
В этом разделе вы установите зависимости, включая Nginx, а затем добавите репозиторий Grafana.
Сначала выполните команду ниже, чтобы установить зависимости для Grafana. Наберите Y, чтобы подтвердить установку.
sudo apt install gnupg2 apt-transport-https software-properties-common wget nginx
Теперь добавьте GPG-ключ и репозиторий Grafana с помощью следующей команды.
wget -q -O - https://packages.grafana.com/gpg.key > grafana.key cat grafana.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/grafana.gpg > /dev/nullecho ‘deb [signed-by=/etc/apt/trusted.gpg.d/grafana.gpg] https://packages.grafana.com/oss/deb stable main’ | sudo tee /etc/apt/sources.list.d/grafana.listЗатем обновите и обновите индекс пакетов с помощью команды ниже:
sudo apt update
Установка и настройка Grafana
После добавления репозитория Grafana вы установите пакет Grafana с помощью менеджера пакетов APT. Затем настройте Grafana для работы на localhost с доменом, таким как howtoforge.local.
Чтобы установить Grafana, выполните следующую команду apt. Наберите Y, чтобы продолжить установку.
sudo apt install grafana
После завершения установки перезагрузите менеджер systemd с помощью команды ниже:
sudo systemctl daemon-reloadТеперь вы можете запустить и включить grafana-server с помощью следующей команды systemctl. Затем проверьте, чтобы убедиться, что служба работает.
sudo systemctl enable --now grafana-server
sudo systemctl status grafana-serverВ следующем выводе вы можете увидеть, что grafana-server работает и включен.

С работающим grafana-server вы настроите его для работы на localhost.
Откройте конфигурацию Grafana /etc/grafana/grafana.ini с помощью редактора nano.
sudo nano /etc/grafana/grafana.iniИзмените конфигурацию по умолчанию следующим образом. Убедитесь, что вы изменили параметр domain на ваше локальное доменное имя для Grafana. В этом примере вы будете запускать Grafana в домене howtoforge.local.
[server]
# IP-адрес для привязки, пустой будет привязываться ко всем интерфейсам
http_addr = localhost
# Порт http для использования
http_port = 3000
# Публичное доменное имя, используемое для доступа к grafana из браузера
domain = howtoforge.localКогда закончите, сохраните файл и выйдите из редактора.
Теперь выполните команду ниже, чтобы перезапустить grafana-server и применить ваши изменения. С этим Grafana должно работать на localhost с портом HTTP по умолчанию 3000.
sudo systemctl restart grafana-serverНастройка Nginx в качестве обратного прокси
В этом разделе вы создадите новый блок сервера Nginx в качестве обратного прокси для grafana-server, который работает на localhost с портом 3000.
Создайте новую конфигурацию блока сервера Nginx /etc/nginx/sites-available/grafana.conf с помощью редактора nano.
sudo nano /etc/nginx/sites-available/grafana.confДобавьте следующую конфигурацию, чтобы настроить Nginx в качестве обратного прокси для Grafana. Убедитесь, что вы изменили параметр server_name на ваше доменное имя Grafana.
# это необходимо для проксирования соединений WebSocket Grafana Live.
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
server_name howtoforge.local;
root /usr/share/nginx/html;
index index.html index.htm;
access_log /var/log/nginx/grafana-access.log;
error_log /var/log/nginx/grafana-error.log;
location / {
proxy_set_header Host $http_host;
proxy_pass http://localhost:3000/;
}
# Прокси соединений WebSocket Grafana Live.
location /api/live {
rewrite ^/(.*) /$1 break;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $http_host;
proxy_pass http://localhost:3000/;
}
}
Сохраните файл и выйдите из редактора.
Теперь выполните следующую команду, чтобы активировать блок сервера grafana.conf и проверить синтаксис вашего Nginx. Если у вас правильный синтаксис, вы увидите вывод test is Successful - syntax is OK.
sudo ln -s /etc/nginx/sites-available/grafana.conf /etc/nginx/sites-enabled/
sudo nginx -t
Затем выполните команду systemctl ниже, чтобы перезапустить и проверить статус веб-сервера Nginx.
sudo systemctl restart nginx
sudo systemctl status nginxВы увидите, что веб-сервер Nginx работает:

Теперь посетите ваше доменное имя Grafana, например http://howtoforge.local/. Если ваша установка успешна, вы увидите страницу входа в Grafana.
Войдите с помощью имени пользователя по умолчанию admin и пароля admin.

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

Вы увидите панель управления Grafana, как показано ниже:

Установка и настройка Prometheus
Prometheus — это платформа мониторинга и оповещения. С работающей Grafana вы установите Prometheus на сервер 192.168.5.16.
Установка Prometheus
В этом разделе вы установите Prometheus вручную, загрузив бинарный файл Prometheus на вашу систему. Перед этим вы также создадите нового системного пользователя и prometheus.
Сначала выполните команду ниже, чтобы добавить нового пользователя и группу prometheus.
sudo groupadd --system prometheus
sudo useradd -s /sbin/nologin --system -g prometheus prometheusСоздайте новый каталог данных /var/lib/prometheus и каталоги конфигурации /etc/prometheus.
sudo mkdir -p /var/lib/prometheus
for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; doneЗагрузите последнюю версию Prometheus для Linux с помощью следующей команды.
curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest|grep browser_download_url|grep linux-amd64|cut -d ‘"’ -f 4|wget -qi -После загрузки извлеките бинарный файл Prometheus с помощью команды tar и перейдите в него.
tar xvf prometheus*.tar.gz
cd prometheus*/Переместите бинарные файлы prometheus и promtool в каталог /usr/local/bin. Затем переместите каталоги конфигурации и файл prometheus.yml в каталог /etc/prometheus.
sudo mv prometheus promtool /usr/local/bin/
sudo mv consoles console_libraries prometheus.yml /etc/prometheus/Наконец, выполните команду ниже, чтобы изменить разрешения и владельца каталога конфигурации и данных Prometheus на пользователя 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/Настройка Prometheus
После установки Prometheus вы обеспечите безопасность Prometheus с помощью basic_auth или базовой аутентификации.
Установите пакет apache2-utils с помощью следующей команды apt.
sudo apt install apache2-utils -y
Теперь выполните команду htpasswd ниже, чтобы сгенерировать bcrypt пароль для пользователя admin. Введите ваш пароль и повторите, а затем скопируйте сгенерированный пароль.
htpasswd -nB adminЗатем выполните команду nano ниже, чтобы создать новый файл /etc/prometheus/web.yml.
sudo nano /etc/prometheus/web.ymlДобавьте следующую конфигурацию и убедитесь, что вы изменили bcrypt пароль ниже.
# basic_auth
basic_auth_users:
admin: $2y$05$s8U/BrE5JhSO31XKSbtj8u8cPECULs3emEhlDfCB2GW1UefQ9x00CСохраните и выйдите из файла, когда закончите.
Теперь откройте конфигурацию Prometheus по умолчанию /etc/prometheus/prometheus.yml с помощью nano.
sudo nano /etc/prometheus/prometheus.ymlИзмените значение job_name для prometheus следующим образом и убедитесь, что вы изменили пользователя и пароль basic_auth.
scrape_configs:
# Имя задания добавляется как метка `job=` к любым временным рядам, собранным из этой конфигурации.
- job_name: "prometheus"
# metrics_path по умолчанию равен '/metrics'
# схема по умолчанию равна 'http'.
# добавьте настройки для сертификата и аутентификации
scheme: http
basic_auth:
username: "admin"
password: "password"
static_configs:
# если используется действительный сертификат, установите то же имя хоста в сертификате
- targets: ["localhost:9090"] Сохраните и выйдите из файла.
Наконец, выполните команду ниже, чтобы изменить владельца файлов prometheus.yml и web.yml на пользователя prometheus.
sudo chown prometheus: /etc/prometheus/{prometheus.yml,web.yml}Запуск Prometheus как службы systemd
Создайте новый файл службы systemd /etc/systemd/system/prometheus.service с помощью следующего редактора nano.
sudo nano /etc/systemd/system/prometheus.serviceДобавьте следующие строки в файл. С этим вы будете запускать Prometheus в фоновом режиме как службу systemd и защищать веб-консоль через файл web.yml.
[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.config.file=/etc/prometheus/web.yml \
SyslogIdentifier=prometheus
Restart=always
[Install]
WantedBy=multi-user.targetСохраните файл и выйдите из редактора.
Теперь выполните команду ниже, чтобы перезагрузить менеджер systemd и применить ваши изменения.
sudo systemctl daemon-reload
Затем запустите и включите службу prometheus с помощью команды systemctl ниже и убедитесь, что служба работает.
sudo systemctl enable --now prometheus
sudo systemctl status prometheusВ следующем выводе вы можете увидеть, что служба prometheus работает и включена.

Установка node_exporter
Теперь, когда Grafana и Prometheus работают, вы загрузите и установите node_exporter. node_exporter позволяет вам собирать данные для базового мониторинга системы.
Загрузите бинарный файл node_exporter с помощью команды curl ниже.
curl -s https://api.github.com/repos/prometheus/node_exporter/releases/latest| grep browser_download_url|grep linux-amd64|cut -d ‘"’ -f 4|wget -qi -После загрузки извлеките node_exporter и перейдите в него.
tar -xvf node_exporter*.tar.gz cd node_exporter*/Теперь скопируйте бинарный файл node_exporter в каталог /usr/local/bin.
sudo cp node_exporter /usr/local/binПосле этого выполните следующую команду, чтобы создать новый файл службы systemd /etc/systemd/system/node_exporter.service для node_exporter.
sudo tee /etc/systemd/system/node_exporter.service <
Перезагрузите менеджер systemd с помощью следующей команды:
sudo systemctl daemon-reloadТеперь вы можете запустить и включить службу node_exporter с помощью команды ниже. Затем проверьте статус службы node_exporter.
sudo systemctl enable --now node_exporter sudo systemctl status node_exporterВы увидите, что служба node_exporter работает и начнет собирать и заполнять данные. Служба node_exporter работает на порту по умолчанию 9100.

Интеграция node_exporter с Prometheus
В этом разделе вы интегрируете и добавите node_exporter в Prometheus.
Откройте конфигурацию Prometheus по умолчанию /etc/prometheus/prometheus.yml.
sudo nano /etc/prometheus/prometheus.ymlДобавьте новое job_name с именем node_exporter и укажите цель на target, такую как 192.168.5.16:9100.
- job_name: "node_exporter"
static_configs:
- targets: ["192.168.5.100:9100"]Сохраните и выйдите из файла, когда закончите.
Теперь выполните команду ниже, чтобы перезапустить службу prometheus и применить изменения.
sudo systemctl restart prometheusЗатем получите доступ к серверу Prometheus http://192.168.5.16:9090 через ваш веб-браузер, и вам будет предложено ввести базовую аутентификацию.
Введите ваше имя пользователя и пароль и нажмите Войти.

После входа в панель управления Prometheus введите node_memory_Active_bytes в запрос и нажмите Выполнить. Вы увидите график текущей активной памяти, как показано ниже:

Наконец, нажмите Статус > Цели и убедитесь, что обе цели prometheus и node_exporter активны и работают, как показано ниже:

Интеграция Prometheus с Grafana в качестве источника данных
Теперь, когда Prometheus готов, вы добавите и интегрируете Prometheus в Grafana в качестве источника данных. Затем вы создадите новую систему панели управления для мониторинга.
В панели управления Grafana нажмите Подключения > Источники данных > Добавить источник данных, чтобы добавить новый источник данных в Grafana.

Выберите Prometheus в качестве источника данных.

Введите URL Prometheus, например http://192.168.5.16:9090/, и введите имя пользователя и пароль для вашего сервера Prometheus.

Прокрутите вниз и нажмите Сохранить и протестировать. Если успешно, вы увидите сообщение Успешно выполнен запрос к API Prometheus.

После добавления Prometheus в качестве источника данных вы создадите новую панель управления Grafana для мониторинга системы.
Нажмите на меню Панель управления > Создать панель управления.

Выберите Импортировать панель управления, чтобы импортировать панель управления.

Посетите https://grafana.com/grafana/dashboards/ и найдите подходящую для вас панель управления. В этом примере вы загрузите панель управления Grafana с id 15172.
Нажмите Загрузить, чтобы импортировать панель управления.

Теперь выберите Prometheus в качестве бэкенда и нажмите Импортировать, чтобы подтвердить.

Если все пройдет хорошо, ваша панель управления Grafana должна быть создана. Ниже приведен скриншот панели управления Grafana с мониторингом Prometheus и node_exporter:

Заключение
Поздравляем! Вы завершили установку Grafana, Prometheus и node_exporter на серверах Ubuntu 24.04. Вы запустили Grafana с Nginx в качестве обратного прокси, обеспечили безопасность Prometheus с помощью аутентификации по паролю, интегрировали node_exporter с Prometheus, добавили Prometheus в качестве источника данных в Grafana и импортировали панель управления Grafana.
Get new posts in your inbox
No spam. Unsubscribe anytime.