Peeper — система мониторинга программных продуктов Eltex.
Архитектура Peeper состоит из двух частей:
Все ПО Peeper-server предоставляется в виде Docker-образов, размещенных в публичных репозиториях, и файлов compose.yml и .env для развертывания контейнеров.
Peeper нужен, чтобы:
Peeper прост в развертывании и эксплуатации, что крайне важно для системы мониторинга. Также Peeper позволяет:
В архитектуре Peeper предусмотрено, что для получения метрик со стороны Peeper Client не требуется открывать никаких дополнительных портов на стороне сервера с программным продуктом Eltex. Отправка метрик с этого сервера производится методом Push.
Все входящие запросы в Peeper Server идут по HTTPs через Peeper Proxy по 443 порту.
Для успешной установки Peeper Server на всех серверах должен быть предустановлен docker и docker compose |
Для этого выполнить следующие команды:
sudo install -m 0755 -d /etc/apt/keyrings |
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc |
sudo chmod a+r /etc/apt/keyrings/docker.asc |
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null |
sudo apt update && sudo apt upgrade |
| ОС | Ubuntu 22.04 Server или выше |
| CPU | 2 |
| RAM | 4 ГБ |
| Disk | 100 ГБ |
| Предустановленное ПО | Docker, Docker Compose |
Для установки скачайте на сервер для peeper-server архив с файлами: https://cloud.eltex-co.ru/index.php/s/n4RRd4rgx9pgxUO/download?path=%2F&files=peeper-deploy.tar
mkdir peeper-server && cd peeper-server |
wget "https://cloud.eltex-co.ru/index.php/s/n4RRd4rgx9pgxUO/download?path=%2F&files=peeper-deploy.tar" -O peeper-deploy.tar |
Распакуйте архив:
tar -xvf peeper-deploy.tar |
Cкорректируйте переменные в файле .env. Как минимум необходимо скорректировать 1 переменную: PEEPER_HOST. В ней нужно указать IP сервера Peeper, по которому пользователи и администраторы будут открывать WEB Peeper. Так же можно изменить значение логина и пароля по-умолчанию admin/admin.
nano .env |
PEEPER_REGISTRY="hub.eltex-co.ru" # "hub.eltex-co.ru", "nexus.eltex.loc:9007" PEEPER_HOST="10.0.20.55" # Доменное имя или IP адрес Peeper сервера PEEPER_USERNAME="admin" # Имя администратора Grafana (по-умолчанию) PEEPER_RETENTION="100d" # Максимальное время хранения метрик в базе данных DOCKER_SOCKET="/var/run/docker.sock" # Путь к Docker socket для получения метрик Docker MEMORY_LIMIT_BLACKBOX="256m" # Лимит потребляемой оперативной памяти для контейнера peeper-exporter-blackbox |
При установке Peeper Server автоматически производится загрузка наборов метрик и уведомлений для метрик Linux, Docker, Postgres, Haproxy, входящего в состав Peeper Server. |
Команда установки Peeper Server:
sudo ./setup.sh -i |
Графический интерфейс представляет из себя GUI Grafana, доступный по адресу: https://<адрес сервера> (для примера https://10.0.20.55)
Логин/пароль по умолчанию: admin/admin (корректируется в файле .env)
Наборы метрик можно найти в меню Dashboards.
Для получения информации о каждом графике в наборе наведите курсор на иконку i над графиком. Отобразится текстовая подсказка с информацией по данному графику.
Для того, чтобы уведомления в результате срабатывания уведомлений отправлялись в чат Telegram, необходимо в WEB интерфейсе Grafana перейти в раздел "Alerting" → "Contact Points". Там для Contact Point "Telegram" нажимаем "Edit", в поле Chat ID вводим ID чата Telegram, куда должны отправляться уведомления, а в поле Bot API Token нажимаем Reset и вводим token Telegram бота, который должен быть добавлен в чат. Проверить корректность введенных данных и доставку уведомлений в чат можно кнопкой "Test".
Далее сохраняем настройки кнопкой "Save Contact Point".