Общая информация


Peeper — система мониторинга программных продуктов Eltex.

Архитектура Peeper состоит из двух частей:

Все ПО Peeper-server предоставляется в виде Docker-образов, размещенных в публичных репозиториях, и файлов compose.yml и .env для развертывания контейнеров.

Зачем необходим Peeper

Peeper нужен, чтобы:

Функции и свойства Peeper

Peeper прост в развертывании и эксплуатации, что крайне важно для системы мониторинга. Также Peeper позволяет:

Архитектура Peeper

В архитектуре Peeper предусмотрено, что для получения метрик со стороны Peeper Client не требуется открывать никаких дополнительных портов на стороне сервера с программным продуктом Eltex. Отправка метрик с этого сервера производится методом Push.

Все входящие запросы в Peeper Server идут по HTTPs через Peeper Proxy по 443 порту.

Установка Peeper-server

Для успешной установки Peeper Server на всех серверах должен быть предустановлен docker и docker compose

Установка docker

Для этого выполнить следующие команды:

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

Peeper Server

Требования к серверу

ОСUbuntu 22.04 Server или выше
CPU2
RAM4 ГБ
Disk100 ГБ
Предустановленное ПО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_VERSION="0.7" # Версия системы мониторинга Peeper

PEEPER_HOST="10.0.20.55" # Доменное имя или IP адрес Peeper сервера
PEEPER_PORT="443" # Сетевой порт Peeper сервера

PEEPER_USERNAME="admin" # Имя администратора Grafana (по-умолчанию)
PEEPER_PASSWORD="admin" # Пароль администратора Grafana (по-умолчанию)

PEEPER_RETENTION="100d" # Максимальное время хранения метрик в базе данных

DOCKER_SOCKET="/var/run/docker.sock" # Путь к Docker socket для получения метрик Docker
TIMEZONE="Asia/Novosibirsk" # Список часовых поясов: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

MEMORY_LIMIT_BLACKBOX="256m" # Лимит потребляемой оперативной памяти для контейнера peeper-exporter-blackbox
MEMORY_LIMIT_GRAFANA="640m" # Лимит потребляемой оперативной памяти для контейнера peeper-grafana
MEMORY_LIMIT_METRICS="2048m" # Лимит потребляемой оперативной памяти для контейнера peeper-metrics
MEMORY_LIMIT_PROXY="256m" # Лимит потребляемой оперативной памяти для контейнера peeper-proxy
MEMORY_LIMIT_TELEGRAF="256m" # Лимит потребляемой оперативной памяти для контейнера peeper-telegraf
MEMORY_LIMIT_VMBACKUP="256m" # Лимит потребляемой оперативной памяти для контейнера peeper-vmbackup-toolbox

При установке 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

Для того, чтобы уведомления в результате срабатывания уведомлений отправлялись в чат Telegram, необходимо в WEB интерфейсе Grafana перейти в раздел "Alerting" → "Contact Points". Там для Contact Point "Telegram" нажимаем "Edit",  в поле Chat ID вводим ID чата Telegram, куда должны отправляться уведомления, а в поле Bot API Token нажимаем Reset и вводим token Telegram бота, который должен быть добавлен в чат. Проверить корректность введенных данных и доставку уведомлений в чат можно кнопкой "Test".
 Далее сохраняем настройки кнопкой "Save Contact Point".


Включение метрик на ECSS10

Развертывание ecss-peeper-client