topic:zbx_grafana_2025

Установка Grafana и подключение к Zabbix в 2025 году

Предыдущая версия статьи, но с уже не актуальными версиями Grafana, Zabbix и плагина Grafana-Zabbix.

Установка Grafana

Напрямую из России скачать пакеты графаны нельзя, поэтому ко всем командам добавляем ssh socks прокси до ВМ в одной из светлоликих стран.

Ставим необходимые пакеты.

# apt-get install -y apt-transport-https software-properties-common wget curl

Скачиваем и импортируем графановский gpg-ключ. Нужна прокси.

# curl -x socks5h://127.0.0.1:17551 -fsSL https://apt.grafana.com/gpg.key  | gpg --dearmor -o /etc/apt/keyrings/grafana.gpg

Добавляем репозиторий графаны.

# echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" |  tee -a /etc/apt/sources.list.d/grafana.list

Ставим графану. Нужна прокси.

# apt -o Acquire::http::proxy=socks5h://127.0.0.1:17551 update
# apt -o Acquire::http::proxy=socks5h://127.0.0.1:17551 install grafana

Проверяем, что графана запустилась и включаем автозагрузку.

# systemctl status grafana-server 
# systemctl enable grafana-server 

В файрволле разрешаем на вход tcp/3000 и пробуем зайти по http://server-with-gragana-ip:3000, admin/admin.

Если все хорошо, то переводим графану на https.

Генерируем самоподписанный сертификат и правим права.

# mkdir /etc/grafana/ssl

# openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/grafana/ssl/grafana-self-signed-cert.key -out /etc/grafana/ssl/grafana-self-signed-cert.crt

# chown -R root:grafana /etc/grafana/ssl
# chmod 640 /etc/grafana/ssl/grafana-self-signed-cert.key

Правим настройки в /etc/grafana/grafana.ini.

[server]
# Protocol (http, https, h2, socket)
;protocol = http
protocol = https
...
# https certs & key file
;cert_file =
;cert_key =
cert_file = /etc/grafana/ssl/grafana-self-signed-cert.crt
cert_key = /etc/grafana/ssl/grafana-self-signed-cert.key

Перезапускаем графану и ещё раз пробуем зайти, но уже по https://server-with-gragana-ip:3000.


Установка плагина Grafana-Zabbix

Плагин ставим из grafana-cli командой:

# grafana-cli plugins install alexanderzobnin-zabbix-app

Процесс установки.

root@4-zbx1:~# grafana-cli plugins install alexanderzobnin-zabbix-app
INFO [07-21|23:09:29] Starting Grafana                         logger=settings version=12.0.2+security-01 commit=76ea754dbb0bfb3e157981ec73ba4ef1efae4207 branch=HEAD compiled=2025-07-21T23:09:29+03:00
INFO [07-21|23:09:29] Config loaded from                       logger=settings file=/usr/share/grafana/conf/defaults.ini
INFO [07-21|23:09:29] Config loaded from                       logger=settings file=/etc/grafana/grafana.ini
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.data=/var/lib/grafana"
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.logs=/var/log/grafana"
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.plugins=/var/lib/grafana/plugins"
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.provisioning=/etc/grafana/provisioning"
INFO [07-21|23:09:29] Target                                   logger=settings target=[all]
INFO [07-21|23:09:29] Path Home                                logger=settings path=/usr/share/grafana
INFO [07-21|23:09:29] Path Data                                logger=settings path=/var/lib/grafana
INFO [07-21|23:09:29] Path Logs                                logger=settings path=/var/log/grafana
INFO [07-21|23:09:29] Path Plugins                             logger=settings path=/var/lib/grafana/plugins
INFO [07-21|23:09:29] Path Provisioning                        logger=settings path=/etc/grafana/provisioning
INFO [07-21|23:09:29] App mode production                      logger=settings
INFO [07-21|23:09:29] Starting Grafana                         logger=settings version=12.0.2+security-01 commit=76ea754dbb0bfb3e157981ec73ba4ef1efae4207 branch=HEAD compiled=2025-07-21T23:09:29+03:00
INFO [07-21|23:09:29] Config loaded from                       logger=settings file=/usr/share/grafana/conf/defaults.ini
INFO [07-21|23:09:29] Config loaded from                       logger=settings file=/etc/grafana/grafana.ini
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.data=/var/lib/grafana"
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.logs=/var/log/grafana"
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.plugins=/var/lib/grafana/plugins"
INFO [07-21|23:09:29] Config overridden from command line      logger=settings arg="default.paths.provisioning=/etc/grafana/provisioning"
INFO [07-21|23:09:29] Target                                   logger=settings target=[all]
INFO [07-21|23:09:29] Path Home                                logger=settings path=/usr/share/grafana
INFO [07-21|23:09:29] Path Data                                logger=settings path=/var/lib/grafana
INFO [07-21|23:09:29] Path Logs                                logger=settings path=/var/log/grafana
INFO [07-21|23:09:29] Path Plugins                             logger=settings path=/var/lib/grafana/plugins
INFO [07-21|23:09:29] Path Provisioning                        logger=settings path=/etc/grafana/provisioning
INFO [07-21|23:09:29] App mode production                      logger=settings
✔ Downloaded and extracted alexanderzobnin-zabbix-app v5.2.0 zip successfully to /var/lib/grafana/plugins/alexanderzobnin-zabbix-app

Please restart Grafana after installing or removing plugins. Refer to Grafana documentation for instructions if necessary.

Перезапускаем Grafana.

# systemctl restart grafana-server

Настройка плагина Grafana-Zabbix

Заходим в графану по адресу https://server-with-gragana-ip:3000.
Идем в меню AdministrationPlugins and dataPluginsInstalledZabbix и включаем только что установленный плагин (в открывщемся окне жмем на кнопку “Enable”).

Дальше идем в меню ConnectionsData sources и жмем кнопку Add data source.

В списке источников данных находим Zabbix, добавляем и настраиваем.

Настройки:

  • Name - задаем имя источника и говорим, что это источник по умолчанию.
  • Url - адрес для доступ к zabbix api.
    https://127.0.0.1/zabbix/api_jsonrpc.php
    В моем случаем zabbix и grafana работают на одном сервере и доступ открыть по https.
  • Authentication - оставляем “No Authentication”.
  • TLS settings - отмечаем “Skip TLS certificate validation”, сертификат будет самоподписанный.
  • Zabbix Connection - оставляем “User and Password”
  • Username/Password - используем отдельного пользователя которому в Zabbix, для определенной группы хостов, выставлены права только на чтение.
  • Enable Trends - включаем поддержку трендов, полезно при запросе данных за болльшое количество дней.
    Значения After, Range оставляем дефолтными.
  • Direct DB Connection и Others - оставляем выключенными.

Заведем в Zabbix нового пользователя “grafana”.
Идем в меню UsersUsers и нажимаем “Create user”.
Во вкладке “User” в поле “Username” вбиваем “grafana” и указываем пароль в соответствующих полях, остальное можно оставить по дефолту.
Во вкладке “Permissions” в поле “Role” выбираем “User role” и жмем кнопку “Add”.

Заведем в Zabbix новую группу пользователей “Grafana_group” и дадим права на чтение только для определенных групп хостов. Идем в меню UsersUser groups и нажимаем “Create user group”.
Во вкладке “User group” в поле “Group name” вбиваем “Grafana_group” и в поле “Users” указываем ранее созданного пользователя “grafana”.
Во вкладке “Host permissions” жмем кномпу “Add” и выбираем группу хостов к которым мы хотим дать доступ только на чтение серверу Grafana.
После выбора групп жмем ссылку “Add” и кнопку “Add” или “Update”.

После добавления в zabbix группы и пользователя, графана в меню ConnectionsData sourcesZabbix надо нажать кнопку “Save & test”.
Так же “Save & test” надо нажимать каждый раз, после изменения прав в zabbix группе “Grafana_group”.

Всё, можно пробовать настраивать дашборды и графики.


Полезные сслыки

topic/zbx_grafana_2025.txt · Last modified: by k

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki