В статье рассказано про уставновку Promethes, Node_exporter, Grafana на ОС FreeBSD на момент 16.02.25
Считаем, что все установки и настройки проводим на хосте с IP-адресом 192.168.1.7
1. Установка программ
#cd /usr/ports/net-mgmt/prometheus2 (посмотрите, может уже 3-я версия вышла)
#make install clean
#cd /usr/ports/sysutils/node_exporter
#make install clean
#cd /usr/ports/www/grafana/
#make install clean
Добавляем запуск при загрузке. Для этого в /etc/rc.conf пишем:
prometheus_enable=YES
node_exporter_enable=YES
grafana_enable=YES
В файле /usr/local/etc/prometheus.yml ищем строку "- targets: ["localhost:9090"]" b под ней и вписываем строки:
- job_name: 'node_exporter'
scrape_interval: 5s
static_configs:
- targets: ['localhost:9100']
У вас должно получиться как в правой части скрина. Отступы здесь нельзя делать клавишей Tab, только пробелами и именно так как показано на скрине, иначе при старте prometheus будет падать с ошибкой err="parsing YAML file /usr/local/etc/prometheus.yml: yaml: line 29: found character that cannot start any token".
И запускаем эти сервисы:
service prometheus start
service node_exporter start
service grafana start
Заходим в веб-панель Prometheus: http://192.168.1.7:9090 Исключительно для того, чтобы убедиться, что он работает. Если страница открылась, то всё ок и можно закрыть вкладку.
Заходим в веб-панель Grafana: http://192.168.1.7:3000 (логин/пароль - admin/admin). И сразу же вам предложат поменять пароль по умолчанию.
Переходим ко второй части.
2. Настройка программ
2.1. Добавляем источник данных, для этого в веб-панели Grafana кликаем по ссылке "DATA SOURCES",
затем по "Prometheus"
В строке Connection прописываем адрес и порт сервера как показано на скриншоте ниже:
прокручиваем страницу до страницы Perfomance и выбираем тип и версию "Prometheus", затем нажимаем "Save & Test" и кликаем по "Home"
2.2. Добавляем Панель датчиков, для чего кликаем по ссылке "DASHBOARDS"
Затем по "Import a dashboard".
Может выскочить (а может и нет) табличка с предупреждениями о несохранённых изменениях, там нажимаем "Discard".
В открывшемся окне переходим по ссылке grafana.com/dashboards
В поиске вбиваем FreeBSD и кликаем по Exporter FreeBSD.
и находим ID
Который прописываем в предыдущей вкладке и нажимаем "Load"
В открывшемся окне выбираем источник и нажимаем Import.
На выходе получаем такое.
Работает вроде.
3. Node_exporter на другом сервере
Для того чтобы получать метрики с удалённого сервера с FreeBSD (его IP-адрес будет 192.168.1.5) необходимо поставить node_exporter на удалённый сервер, прописать в файл /etc/rc.conf строки
node_exporter_enable="YES"
node_exporter_listen_address="192.168.1.5:9100"
и запустить сервис командой service node_exporter start
Далее нужно дописать в /usr/local/etc/prometheus.yml хоста 192.168.1.7 строки: - job_name: 'ns02' как показано на рисунке. И да, снова пробелы будут вам портить жизнь. |
![]() |
cd /usr/ports/databases/prometheus-postgres-exporter
В /etc/rc.conf пишем
postgres_exporter_enable="YES"
postgres_exporter_listen_address="192.168.10.2:9187"
cd /usr/ports/net-mgmt/mysqld_exporter
CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'password' WITH MAX_USER_CONNECTIONS 3;
GRANT ALL PRIVILEGES ON *.* TO 'exporter'@'localhost';
FLUSH PRIVILEGES;
exit
В /etc/rc.conf пишем
mysql_enable="YES"
mysqld_exporter_enable="YES"
mysqld_exporter_listen_address="192.168.30.1:9104"
mysqld_exporter_conffile="/usr/local/etc/mysql/mysqld_exporter.cnf"