Для мониторинга параметров операционной системы и работоспособности Offline ELM рекомендуется использовать Peeper.
Peeper состоит из серверной части (Peeper Server) и клиентской части (Peeper Client). Peeper Client запускается на хосте с Offline ELM и подключается к Peeper Server. Можно использовать уже развернутый Peeper Server. На одном хосте должен работать только один экземпляр Peeper Client, даже если осуществляется мониторинг нескольких продуктов компании «ЭЛТЕКС».
![]()
Если Peeper Client еще не установлен или его требуется обновить, для offline-установки скачайте на сервер архив образов Peeper Client peeper-client-offline.tar. После скачивания архива, его необходимо поместить на целевой хост, где запущен Offline ELM.
wget "https://cloud.eltex-co.ru/index.php/s/n4RRd4rgx9pgxUO/download?path=%2F&files=peeper-client-offline.tar" -O peeper-client-offline.tar |
wget "https://cloud.eltex-co.ru/index.php/s/GzJfChMAVhkqINI/download?path=%2F&files=elm-monitoring-data-1.7.tar.gz" -O elm-monitoring-data-1.7.tar.gz |
Если Peeper Client еще не установлен или его требуется обновить, загрузите образы из архива с помощью скрипта install-offline.sh из комплекта Offline ELM. В параметре --env укажите путь к файлу .env действующей установки. Например:
sudo ./install-offline.sh --peeper-client peeper-client-offline.tar --env /home/user/elm-offline-1.7-2/elm-offline-data-1.7-2/.env |
В примере ниже показана загрузка Peeper Client 1.2, фактическая версия зависит от содержимого архива.
$ sudo ./install-offline.sh --peeper-client peeper-client-offline.tar --env /home/user/elm-offline-1.7-2/elm-offline-data-1.7-2/.env INFO: Checking required commands... INFO: Validating arguments... INFO: Checking peeper-client archive is correct... INFO: Checking ENV-file is correct... INFO: Installing peeper-client from 'peeper-client-offline.tar'. INFO: Unpacking peeper-client archive. INFO: Loading peeper-client Docker images. Loaded image: hub.eltex-co.ru/peeper/peeper-agent:1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-exporter-mysql:1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-exporter-postgres:1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-exporter-sql:1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-provisioner:1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-provisioner:ecss10-1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-provisioner:ecss-geo-1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-provisioner:elph-1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-provisioner:evi-1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-provisioner:peeper-1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-provisioner:smartivr-1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-telegraf:1.2 Loaded image: hub.eltex-co.ru/peeper/peeper-vector:1.2 INFO: Loaded peeper-client version '1.2' from the archive. INFO: Installed peeper-client version '1.2' from the archive is the active version. INFO: The active peeper-client version is '1.2' (tag '1.2'). INFO: Set 'APP_VERSION' value '1.2' in file '/home/user/elm-offline-1.7-2/elm-offline-data-1.7-2/.env'. INFO: Peeper-client setup completed successfully. |
Для корректной работы мониторинга Offline ELM требуется Peeper Client версии 1.1 или выше. Уже работающий на хосте Peeper Client, используемый для мониторинга другого продукта компании, можно использовать и для Offline ELM — повторная загрузка образов не требуется. Если на момент установки Offline ELM на хосте уже были загружены образы Peeper Client, скрипт автоматически определяет их версию и записывает соответствующий тег в |
tar -xzf elm-monitoring-data-1.7.tar.gz -O provisioning-single.tar.gz | tar -xzf - -C elm-offline-data-1.7-2/ |
tar -xzf elm-monitoring-data-1.7.tar.gz -O provisioning-reserve.tar.gz | tar -xzf - -C elm-offline-data-1.7-2/ |
На этом подготовка к запуску мониторинга завершена.
В файл .env внесите следующие изменения:
PEEPER_HOST укажите IP-адрес или доменное имя для подключения к Peeper-Server.PEEPER_IP укажите IP-адрес Peeper Server. Заполните ее независимо от того, что указано в PEEPER_HOST: доменное имя или IP-адрес. Если в PEEPER_HOST указан IP-адрес, продублируйте его в PEEPER_IP.EXTERNAL_MODE установите значение true во избежание конфликтов при создании external сети в Docker.PEEPER_TOKEN укажите токен, полученный в пункте 1 раздела "Подготовка к запуску".В переменной DOCKER_GID укажите id группы пользователей docker.
В переменной ELM_INSTANCE_ID укажите id ноды. Если вы запускаете только один сервер, то оставьте значение node1.
ELM_INSTANCE_ID=node1 PEEPER_HOST="peeper-server.loc" # Доменное имя или IP-адрес Peeper-сервера PEEPER_IP="192.168.1.1" # IP сервера Peeper, на которое будет резолвиться доменное имя сервера Peeper EXTERNAL_MODE="true" # false, если на сервере отсутствует external network в docker PEEPER_TOKEN="" # Токен сервисного аккаунта, который создается в peeper-server DOCKER_GID= # id группы пользователей docker |
Запустите мониторинг:
Способ запуска мониторинга зависит от использования Peeper Client другими продуктами на этом хосте |
docker compose -f docker-compose-peeper.yml up -d |
docker rm elm-peeper-provisioner docker compose -f docker-compose-peeper.yml up -d elm-peeper-provisioner |
Ошибка пересечения сетей
В случае возникновения ошибки, указанной ниже, необходимо отредактировать файл .env и указать значение переменной EXTERNAL_MODE="true".
Error response from daemon: error while removing network: network internal has active endpoints |
Загрузка и обновление данных мониторинга может занимать от 1 до 5 минут. |

Запуск и настройка мониторинга окончены. Подробнее о информации на панелях мониторинга и алертах написано в разделе "Описание мониторинга Offline ELM".
В разделе "Подготовка к запуску" в п.5 должен быть распакован архив provisioning-reserve.tar.gz.
В файл .env внесите следующие изменения:
PEEPER_HOST укажите IP-адрес или доменное имя для подключения к Peeper-Server.PEEPER_IP укажите IP-адрес Peeper Server. Заполните ее независимо от того, что указано в PEEPER_HOST: доменное имя или IP-адрес. Если в PEEPER_HOST указан IP-адрес, продублируйте его в PEEPER_IP.EXTERNAL_MODE установите значение true во избежание конфликтов при создании external сети в Docker.PEEPER_TOKEN укажите токен, полученный в пункте 1 раздела "Подготовка к запуску".В переменной DOCKER_GID укажите id группы пользователей docker.
В переменной ELM_INSTANCE_ID укажите id ноды.
ELM_INSTANCE_ID=node1 PEEPER_HOST="peeper-server.loc" # Доменное имя или IP-адрес Peeper-сервера PEEPER_IP="192.168.1.1" # IP сервера Peeper, на которое будет резолвиться доменное имя сервера Peeper EXTERNAL_MODE="true" # false, если на сервере отсутствует external network в docker PEEPER_TOKEN="" # Токен сервисного аккаунта, который создается в peeper-server DOCKER_GID= # id группы пользователей docker |
Запустите мониторинг:
Способ запуска мониторинга зависит от использования Peeper Client другими продуктами на этом хосте |
docker compose -f docker-compose-peeper.yml up -d |
docker rm elm-peeper-provisioner docker compose -f docker-compose-peeper.yml up -d elm-peeper-provisioner |
Ошибка пересечения сетей
В случае возникновения ошибки, указанной ниже, необходимо отредактировать файл .env и указать значение переменной EXTERNAL_MODE="true".
Error response from daemon: error while removing network: network internal has active endpoints |
ELM_INSTANCE_ID.
Загрузка и обновление данных мониторинга может занимать от 1 до 5 минут. |

Запуск и настройка мониторинга окончены. Подробнее о информации на панелях мониторинга и алертах написано в разделе "Описание мониторинга Offline ELM".
Система мониторинга версии 1.7 несовместима с системой мониторинга предыдущих версий. |
docker compose down --remove-orphans |
Обновите Offline ELM до версии 1.7 согласно разделу "Обновление Offline ELM" в инструкции по установке и обслуживанию.
Для offline-установки скачайте на сервер архив образов Peeper Client peeper-client-offline.tar. После скачивания архива, его необходимо поместить на целевой хост, где запущен Offline ELM.
wget "https://cloud.eltex-co.ru/index.php/s/n4RRd4rgx9pgxUO/download?path=%2F&files=peeper-client-offline.tar" -O peeper-client-offline.tar |
В директории комплекта поставки Offline ELM запустите скрипт install-offline.sh, указав путь к архиву с образами Peeper Client и файлу .env действующей установки. Например:
sudo ./install-offline.sh --peeper-client peeper-client-offline.tar --env /home/user/elm-offline-1.7-2/elm-offline-data-1.7-2/.env |
Скрипт загрузит образы, определит активную версию Peeper Client и запишет ее тег в APP_VERSION указанного файла .env. Работающие контейнеры скрипт не перезапускает.
cd /home/user/elm-offline-1.7-2/elm-offline-data-1.7-2 docker compose -f docker-compose-peeper.yml down docker compose -f docker-compose-peeper.yml up -d |
Если Peeper Client изначально запущен из конфигурации другого продукта, не выполняйте команды перезапуска из рабочей директории Offline ELM, иначе будет запущен дополнительный экземпляр Client. Укажите требуемый тег версии в конфигурации другого продукта, затем перезапустите существующий Peeper Client из его рабочей директории.
Скрипт install-offline.sh изменяет APP_VERSION только в файле .env Offline ELM, указанном при его запуске, и не изменяет конфигурацию ранее установленного Peeper Client.
Для остановки системы мониторинга Offline ELM требуется произвести следующие шаги:
1. Перейти в директорию с запущенным Offline ELM (по умолчанию elm-offline-data-1.x).
2. Выполнить команду:
docker compose -f docker-compose-peeper.yml down |
Для каждой панели есть возможность узнать подробнее какую информацию она показывает. Для этого необходимо навести курсор на значок "i"
| Цель мониторинга | Панель | Описание метрики | Алерт | Действие |
|---|---|---|---|---|
Контроль работоспособности Docker-контейнеров | Docker container healthcheck state |
| Наименование:
Условие: Код возврата ненулевой Severity: critical |
|
Контроль доступности USB-токена | ELM USB token Status | elm_server_tokenState_value_events — Состояние доступности USB-токена | Наименование:
Условие: Код возврата ненулевой Severity: critical |
|
| Контроль ошибок доступности USB-токена | ELM Token access errors | elm_server_tokenAccessError_value_events — Ошибки доступности USB-токена | Наименование:
Условие: Severity: critical |
|
Контроль доступности web-интерфейса | Web UI Status | nginx_up | Наименование:
Условие: Код возврата не равен 1 Severity: medium |
|
| Контроль работоспособности базы данных | DB errors and denial of service ELM | elm_server_databaseError_value_events — Ошибка доступа к БД | Наименование:
Условие: Severity: critical |
|
| Цель мониторинга | Панель | Описание метрики | Алерт | Действие |
|---|---|---|---|---|
| Заблаговременно сообщить о необходимости продления лицензии | Licensing states | elm_server_licensingState_value_events — Состояние срока действия лицензии:
| Наименование:
Условие: Код возврата ненулевой Severity: high | Запросить продление лицензии у поставщика оборудования |
| Контроль срока действия лицензии | Licensing expiry dates | elm_server_licensingExpiry_value_events — Дата окончания срока действия лицензии | Алерт не предусмотрен | - |
| Сообщить о необходимости продления сертификата на USB-токене | Certificate state | elm_server_certificateState_value_events — Состояние срока действия сертификата
| Наименование:
Условие: Код возврата ненулевой Severity: critical | Запросить продление сертификата на USB-токене у поставщика оборудования |
| Контроль срока действия сертификата на USB-токене | Certificate expiry date | elm_server_certificateExpiry_value_events — Дата окончания срока действия сертификата | Алерт не предусмотрен | - |
| Цель мониторинга | Панель | Описание метрики | Алерт | Действие |
|---|---|---|---|---|
| Мониторинг запросов лицензии | ELM license request | elm_server_licenseRequest_value_events — Запрос файла лицензии от устройства/ПО | Алерт не предусмотрен |
|
| Мониторинг неудачных запросов лицензии | ELM license request | elm_server_licenseRequestFailed_value_events — Ошибка получения файла персональной лицензии устройством | Наименование:
Условие: Severity: high |
|
| Контроль ошибок аутентификации от лицензируемых продуктов | Authentication errors ELM | elm_server_authFailed_value_events — Ошибка аутентификации от устройства или ПО | Наименование:
Условие: В течение 4 часов каждый час фиксируется больше 3 ошибок Severity: low |
|
| Контроль обращений от неподдерживаемых продуктов в рамках установленной лицензии | Authentication errors ELM | elm_server_unsupportedAuthRequest_value_events — Запрос аутентификации от устройства или ПО, которое не поддерживается лицензией | Наименование:
Условие: В течение 4 часов каждый час фиксируется больше 3 ошибок Severity: low |
|
| Цель мониторинга | Панель | Описание метрики | Алерт | Действие |
|---|---|---|---|---|
| Контроль способности сервера Offline ELM обрабатывать клиентские запросы | DB errors and denial of service ELM | elm_server_serviceDenial_value_events — Отказ в обслуживании (отклонение запросов из-за загруженности сервера) | Наименование:
Условие: Severity: medium |
|
| Мониторинг автоматически созданных блокирующих IP-правил | ELM Block IP addresses | elm_server_blockIp_value_events — Автоматическая блокировка IP-адреса | Наименование:
Условие: Severity: medium |
|
| Мониторинг блокировки доступа по IP | ELM Access denied by IP addresses | elm_server_ipAccessDenied_value_events — Запрет доступа по IP | Наименование:
Условие: Severity: low |
|
| Мониторинг подключений к web-интерфейсу | ELM processed WEB connections |
| Алерт не предусмотрен | - |
| ELM active WEB connections |
| Алерт не предусмотрен | - |