Данная сборка запускает стэк контейнеров grafana - prometheus - node-exporter для мониторинга состояния хоста (текущего компьютера)
Windows при работе с docker-контейнерами выделяет 50% памяти! Поэтому либо выдать docker все ресурсы хоста, либо иметь ввиду при наблюдении.
Документация: Настройка дополнительных параметров в WSL
Если вы используете WSL:
- в
Docker-desktopперейдите в Настройки (Settings) -> Ресурсы (Resources) -> Расширенные (Advanced) и выставить ресурсы как требуется
Если вы используете WSL2:
- создайте или откройте в блокноте файл настроек
.wslconfig( в powershell/cmd запуститеnotepad "$env:USERPROFILE\.wslconfig") - внесите изменения:
[wsl2]
memory=14GB # Для систем с 16GB
processors=6 # В соответствие с количеством ваших CPU
swap=2GB # SWAP-файл
localhostForwarding=true
- перезапустите WSL командой
wsl --shutdown
Что необходимо для запуска сборки:
- Установленный docker. Для системы Windows установленный Docker-desktop (с включенным движком WSL).
Для включения движка WSL зайдите в Настройки (Settings) -> Общее (General) -> Включите движок WSL2 (Use the WSL 2 based engine)
Порядок действий:
- Склонируйте проект с помощью HTTPS или SSH:
# HTTPS
git clone https://github.com/Blackmind79/grafana-local-stack.git
# SSH
git clone git@github.com:Blackmind79/grafana-local-stack.git
- В файле
.envрекомендую изменить имя администратора Grafana по-умолчаниюGF_SECURITY_ADMIN_USER. - Если вы работаете за обратным прокси, поставте точку входа в параметре
GF_SERVER_ROOT_URL. Протокол оставьтеhttp, так как иначе будет требовать установленный в grafana сертификат. - Для тестирования все контейнеры пробрасывают порты на хост. Если требуется только смотреть данные из
grafana, то раскомментируйте блокиexposeи закомментируйте блокиportsв сервисахprometheusиnode-exporter. - В файле
.gitignoreзамените строку!.envна.env, чтобы ваши секретные параметры не утекли в репозиторий. Данный параметр оставлен как пример.
Запустите стэк командой в терминале (powershell) из клонированной папки
docker compose up -d
Данные для входа в grafana по-умолчанию (изменить User на вашего пользователя, если вы сменили GF_SECURITY_ADMIN_USER)
User: admin
Password: admin
После входа пароль требуется изменить.
Далее, перейдите в панели (Dashboards). Вы увидите уже настроенную панель Node Exporter Full, которая уже ссылается на ваш настроенный Prometheus.
Если у вас Datasource = Default, то выберите источник Prometheus. P.S. В данной сборке не стоит настройка всей инфраструктуры как код, поэтому внесены только основные параметры (можно преднастроить
grafana.iniи остальные файлы сборщиков, таких как Grafana Alloy и т.д.)
Будет создано три контейнера:
- grafana
- prometheus
- node-exporter
Контейнер grafana запустится, только если не будет проблем с запуском prometheus и node-exporter
Также будет создана сеть docker с именем grafana. Стек будет изолирован от других контейнеров системы.
Так как используется WSL для Windows, то нет необходимости устанавливать windows-exporter