Заощадьте 15% на всіх хостингових послугах

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код: Skills Почати
Рубрики
Linux Адміністрація

Як встановити Grafana на Ubuntu: повний посібник з налаштування та конфігурації

Grafana — одна з найпотужніших платформ з відкритим вихідним кодом для візуалізації даних та моніторингу інфраструктури. Незалежно від того, чи ви відстежуєте продуктивність сервера, метрики додатків або бізнес-KPI, гнучкі панелі інструментів Grafana та широка підтримка джерел даних роблять її незамінним інструментом для будь-якого системного адміністратора або інженера DevOps.

Цей комплексний посібник проведе вас через кожен крок встановлення Grafana на Ubuntu — від початкової підготовки системи до налаштування джерел даних, створення вашої першої панелі інструментів, налаштування сповіщень та захисту вашого розгортання.

> Передумови: Запущений сервер Ubuntu (рекомендується 20.04 або 22.04 LTS), привілеї sudo та стабільне з’єднання з Інтернетом. Якщо вам потрібен надійний сервер для розміщення вашого екземпляра Grafana, розгляньте VPS Hosting від AlexHost — оптимізований для критичних за продуктивністю робіт моніторингу.

Крок 1: Оновлення системних пакетів

Перед встановленням будь-якого нового програмного забезпечення критично важливо синхронізувати індекс пакетів та застосувати всі доступні оновлення. Це забезпечує сумісність та зменшує ризик конфліктів залежностей.

sudo apt update && sudo apt upgrade -y

Дозвольте процесу завершитися перед тим, як продовжити. На щойно підготованому сервері це може зайняти кілька хвилин.

Крок 2: Встановлення Grafana через офіційний репозиторій APT

Grafana підтримує офіційний репозиторій APT для систем на базі Debian, включаючи Ubuntu. Використання офіційного репозиторію гарантує, що у вас завжди буде доступ до найновіших стабільних версій та патчів безпеки.

Крок 2a: Встановлення необхідних залежностей

Спочатку встановіть пакет software-properties-common, який надає утиліту add-apt-repository:

sudo apt install -y software-properties-common apt-transport-https wget gnupg2

Крок 2b: Імпорт ключа підпису GPG Grafana

Додавання ключа GPG дозволяє вашій системі перевірити автентичність пакетів, завантажених з репозиторію Grafana:

wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -

Крок 2c: Додавання офіційного репозиторію APT Grafana

sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"

Крок 2d: Оновлення списку пакетів та встановлення Grafana

sudo apt update
sudo apt install grafana -y

Після завершення встановлення перевірте встановлену версію:

grafana-server -v

Крок 3: Запуск та включення служби Grafana

Після встановлення запустіть демон сервера Grafana та налаштуйте його для автоматичного запуску при завантаженні системи:

sudo systemctl start grafana-server
sudo systemctl enable grafana-server

Перевірте, що служба працює правильно:

sudo systemctl status grafana-server

Ви повинні побачити результат, подібний до наступного, що підтверджує, що служба активна (запущена):

● grafana-server.service - Grafana instance
     Loaded: loaded (/lib/systemd/system/grafana-server.service; enabled)
     Active: active (running) since ...

Якщо служба не запускається, перевірте журнали на наявність помилок:

sudo journalctl -u grafana-server -f

Крок 4: Доступ до веб-інтерфейсу Grafana

За замовчуванням Grafana прослуховує порт 3000. Відкрийте веб-браузер і перейдіть на:

http://your_server_ip:3000

Замініть your_server_ip на фактичну IP-адресу або ім’я хосту вашого сервера.

Облікові дані входу за замовчуванням

ПолеЗначення
Ім’я користувачаadmin
Парольadmin

При першому вході Grafana негайно запропонує вам встановити новий безпечний пароль. Не пропускайте цей крок — залишення облікових даних за замовчуванням є значним ризиком безпеки.

> Примітка про брандмауер: Якщо ви використовуєте UFW або інший брандмауер, відкрийте порт 3000, щоб дозволити доступ браузера:

> “`bash

> sudo ufw allow 3000/tcp

> sudo ufw reload

> “`

Крок 5: Налаштування джерел даних

Grafana — це шар візуалізації, який не зберігає метрики самостійно. Натомість він підключається до зовнішніх джерел даних, таких як Prometheus, InfluxDB, Elasticsearch, MySQL, PostgreSQL та багато інших. Налаштування джерела даних — це важливий перший крок перед тим, як ви зможете створити будь-яку панель.

Крок 5a: Перейдіть до джерел даних

  1. На лівій бічній панелі натисніть значок шестерні (⚙), щоб відкрити меню Конфігурація.
  2. Виберіть Джерела даних.

Крок 5b: Додайте нове джерело даних

  1. Натисніть Додати джерело даних.
  2. Переглядайте список і виберіть потрібний тип джерела даних (наприклад, Prometheus, InfluxDB, MySQL).

Крок 5c: Введіть деталі підключення

Заповніть параметри підключення для обраного джерела даних. Наприклад, якщо ви підключаєтесь до екземпляра Prometheus, який працює локально:

  • URL: http://localhost:9090
  • Доступ: Server (default)
  • Інтервал скрейпінгу: 15s (відповідає вашій конфігурації скрейпінгу Prometheus)

Для віддаленого екземпляра InfluxDB ви повинні надати URL хосту, назву бази даних та облікові дані для автентифікації.

Крок 5d: Збережіть і протестуйте підключення

Натисніть Зберегти та протестувати. Grafana спробує підключитися до джерела даних і відобразить повідомлення про успіх або помилку. Зелене підтвердження «Джерело даних працює» означає, що ви готові до створення панелей.

Крок 6: Створіть свою першу інформаційну панель Grafana

З підключеним джерелом даних ви тепер можете створювати інформаційні панелі для візуалізації ваших метрик у реальному часі.

Крок 6a: Створіть нову інформаційну панель

  1. На лівій бічній панелі натисніть значок + (плюс).
  2. Виберіть Dashboard.
  3. Натисніть Add new panel.

Крок 6b: Налаштуйте панель

Відкривається редактор панелі, який дає вам повний контроль над тим, які дані відображаються та як вони візуалізуються.

  • Data Source: Виберіть джерело даних, яке ви налаштували на кроці 5.
  • Query: Напишіть запит метрики. Для Prometheus використовуйте PromQL. Наприклад, для візуалізації використання CPU:
  100 - (avg by(instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)
  • Visualization Type: Виберіть з Time series, Gauge, Bar chart, Table, Stat, Heatmap та інших — залежно від характеру ваших даних.
  • Panel Title: Дайте вашій панелі описову назву (наприклад, "CPU Usage — Last 1 Hour").

Крок 6c: Налаштуйте та збережіть

Використовуйте параметри правої панелі для налаштування порогів, колірних схем, міток осей та легенд. Коли ви задоволені:

  1. Натисніть Apply, щоб додати панель до вашої інформаційної панелі.
  2. Повторіть процес, щоб додати кілька панелей — кожна відстежує іншу метрику.
  3. Натисніть значок Save dashboard (дискета) у верхньому правому куті, дайте вашій інформаційній панелі назву та натисніть Save.

> Pro Tip: Офіційна бібліотека інформаційних панелей Grafana пропонує сотні попередньо створених, розроблених спільнотою інформаційних панелей для популярних стеків, таких як Node Exporter, Kubernetes, MySQL та NGINX. Ви можете імпортувати їх безпосередньо, використовуючи ID інформаційної панелі.

Крок 7: Налаштування сповіщень

Вбудований механізм сповіщень Grafana дозволяє визначити правила на основі порогів та отримувати сповіщення, коли метрики перевищують критичні рівні — інформуючи вас до того, як невеликі проблеми стануть серйозними збоями.

Крок 7a: Створення правила сповіщення

  1. Відкрийте панель, яку ви хочете моніторити, та натисніть Редагувати.
  2. Перейдіть на вкладку Сповіщення в редакторі панелі.
  3. Натисніть Створити сповіщення.

Крок 7b: Визначення умов сповіщення

Налаштуйте умови, які запускають сповіщення. Наприклад:

  • Умова: WHEN avg() OF query(A, 5m, now) IS ABOVE 90
  • Це запускає сповіщення, коли середнє значення вашої метрики перевищує 90 протягом останніх 5 хвилин.

Встановіть поля Оцінювати кожні та Протягом, щоб контролювати, як часто правило оцінюється та як довго умова повинна зберігатися перед активацією.

Крок 7c: Налаштування каналів сповіщень

  1. Перейдіть до Сповіщення → Канали сповіщень на лівій бічній панелі.
  2. Натисніть Додати канал та виберіть бажаний метод:
  • Email — потребує налаштування SMTP в grafana.ini
  • Slack — потребує URL вебхука Slack
  • PagerDuty, OpsGenie, Webhook та інші

Призначте канал сповіщення вашому правилу сповіщення, щоб потрібні люди були сповіщені, коли пороги перевищені.

Крок 8: Захистіть Grafana за допомогою HTTPS та контролю доступу

Запуск Grafana у виробничому середовищі без належного посилення безпеки є серйозним ризиком. Дотримуйтесь цих найкращих практик для захисту вашої інфраструктури моніторингу.

8a: Увімкніть HTTPS з SSL-сертифікатом

Шифрування трафіку до вашого екземпляра Grafana є важливим, особливо якщо він доступний через публічний інтернет. Вам потрібен дійсний SSL-сертифікат — AlexHost пропонує доступні SSL-сертифікати, які легко розгорнути.

Коли у вас є сертифікат і приватний ключ, відредагуйте файл конфігурації Grafana:

sudo nano /etc/grafana/grafana.ini

Знайдіть розділ [server] та оновіть такі параметри:

[server]
protocol = https
http_port = 3000
cert_file = /etc/grafana/ssl/grafana.crt
cert_key = /etc/grafana/ssl/grafana.key

Збережіть файл і перезавантажте Grafana:

sudo systemctl restart grafana-server

Grafana тепер буде доступна через HTTPS на порту 3000.

> Рекомендована альтернатива: Розмістіть Grafana за зворотним проксі (наприклад, Nginx або Apache) та завершіть SSL на рівні проксі. Це більш гнучкий та широко прийнятий підхід у виробничих середовищах.

8b: Обмежте доступ адміністратора та керуйте користувачами

  1. Перейдіть до Server Admin → Users в інтерфейсі Grafana.
  2. Перегляньте та налаштуйте ролі користувачів:
  • Admin — повний доступ
  • Editor — може створювати та редагувати панелі
  • Viewer — доступ лише для читання
  1. Вимкніть або видаліть невикористовувані облікові записи.
  2. Розгляньте можливість увімкнення LDAP або OAuth (Google, GitHub, GitLab) для централізованої автентифікації.

8c: Додаткові рекомендації щодо посилення безпеки

  • Вимкніть анонімний доступ у grafana.ini:
  [auth.anonymous]
  enabled = false
  • Змініть порт HTTP за замовчуванням, якщо Grafana доступна публічно.
  • Обмежте вихідні з’єднання з сервера Grafana за допомогою правил брандмауера.
  • Увімкніть журнал аудиту для відстеження активності користувачів.

Крок 9: Керування та оновлення Grafana

Утримання Grafana в актуальному стані критично важливо для безпеки та доступу до нових функцій. Оскільки ви встановили Grafana з офіційного репозиторію APT, оновлення є простими.

Оновлення Grafana

sudo apt update
sudo apt upgrade grafana -y

Загальні команди керування сервісом

ДіяКоманда
Запустити Grafanasudo systemctl start grafana-server
Зупинити Grafanasudo systemctl stop grafana-server
Перезапустити Grafanasudo systemctl restart grafana-server
Перезавантажити конфігsudo systemctl reload grafana-server
Перевірити статусsudo systemctl status grafana-server
Переглянути журналиsudo journalctl -u grafana-server -f

Резервна копія даних Grafana

Grafana зберігає свою конфігурацію, панелі та дані користувачів у базі даних SQLite за замовчуванням, розташованій за адресою:

/var/lib/grafana/grafana.db

Регулярно створюйте резервні копії цього файлу, особливо перед виконанням оновлень:

sudo cp /var/lib/grafana/grafana.db /var/lib/grafana/grafana.db.backup-$(date +%F)

Для більших розгортань розглядайте можливість переміщення на спеціалізований MySQL або PostgreSQL бекенд для підвищення надійності та простішого керування резервними копіями.

Усунення поширених проблем

ПроблемаЙмовірна причинаРішення
Неможливо отримати доступ до порту 3000Брандмауер блокує портЗапустіть sudo ufw allow 3000/tcp
Служба не запускаєтьсяПомилка конфігурації або конфлікт портівПеревірте journalctl -u grafana-server
"Помилка підключення до джерела даних"Неправильна URL-адреса або правила брандмауераПеревірте URL-адресу джерела даних та доступ до мережі
Вхід не працює після зміни пароляКеш браузераОчистіть кеш або використовуйте режим інкогніто
Grafana працює повільноНедостатньо ресурсів сервераОновіться до вищого плану VPS Hosting

Вибір правильного хостингу для вашого Grafana Stack

Продуктивність вашого розгортання Grafana залежить від базової інфраструктури. Ось короткий посібник з вибору правильного рівня хостингу:

  • Малі команди / особисті проекти: Спільний веб-хостинг може працювати для легких налаштувань, хоча VPS зазвичай рекомендується для Grafana.
  • Стеки моніторингу виробництва: План VPS Hosting надає вам виділені ресурси, root-доступ та гнучкість для запуску Grafana разом з Prometheus, InfluxDB або іншими компонентами.
  • Масивне введення даних / спостереження на основі ML: Розглядайте GPU Hosting для робочих навантажень, які включають обробку даних у великому масштабі або виявлення аномалій на основі AI.
  • Розгортання корпоративного рівня: Виділені сервери забезпечують максимальну продуктивність, ізоляцію та безпеку для критичної інфраструктури моніторингу.

Висновок

Встановлення та налаштування Grafana на Ubuntu — це простий процес, який розкриває потужну, реальну видимість ваших систем та додатків. Дотримуючись цього посібника, ви дізналися, як:

  • Встановити Grafana з офіційного репозиторію на Ubuntu
  • Запустити, увімкнути та перевірити сервіс Grafana
  • Підключити джерела даних, такі як Prometheus, InfluxDB та MySQL
  • Створювати інтерактивні панелі з користувацькими панелями та візуалізаціями
  • Налаштувати сповіщення на основі порогів з багатоканальними сповіщеннями
  • Захистити вашу екземпляр Grafana за допомогою HTTPS та контролю доступу на основі ролей
  • Обслуговувати та оновлювати Grafana за допомогою стандартних команд APT

Незалежно від того, чи ви моніторите один VPS або складну багатовузлову інфраструктуру, Grafana забезпечує основу спостережливості, яка вам потрібна, щоб залишатися попереду проблем з продуктивністю та приймати рішення на основі даних. Поєднайте її з надійним хостингом від AlexHost, і у вас буде все необхідне для створення світового класу стеку моніторингу.