Weathermap — визуализация сети в виде карты с линками между устройствами, цветом показывающая утилизацию каналов в реальном времени.
# LibreNMS включает плагин Weathermap
# Включаем в Settings → Plugins → Weathermap → Enable
# Создаём карту через Web Editor:
# https://nms.logiservice.ru/weathermap/editor
# Пример конфигурации карты (автоматически генерируется редактором):
# /opt/librenms/data/librenms/plugins/Weathermap/configs/russia-warehouses.conf
WIDTH 1200
HEIGHT 800
HTMLOUTPUTFILE russia-overview.html
IMAGEOUTPUTFILE russia-overview.png
TITLE LogiService - Network Overview
KEYPOS DEFAULT 10 700
KEYSTYLE DEFAULT horizontal 400 50
SCALE DEFAULT 0 0 192 192 192 # Серый - нет данных
SCALE DEFAULT 0 1 200 255 200 # Зелёный - свободно
SCALE DEFAULT 1 30 128 255 128
SCALE DEFAULT 30 60 255 255 0 # Жёлтый - средняя нагрузка
SCALE DEFAULT 60 85 255 165 0 # Оранжевый
SCALE DEFAULT 85 100 255 0 0 # Красный - перегруз
# Узлы (склады)
NODE moscow-wh1
LABEL Moscow WH1
POSITION 400 200
ICON /opt/librenms/html/images/icons/warehouse.png
NODE moscow-wh2
LABEL Moscow WH2
POSITION 500 250
NODE spb-wh
LABEL SPb WH
POSITION 350 100
NODE kazan-wh
LABEL Kazan WH
POSITION 700 200
# Линки между узлами (VPN-туннели)
LINK moscow-wh1-to-spb
NODES moscow-wh1 spb-wh
TARGET /opt/librenms/rrd/rt-msk-01/port-GigabitEthernet0_0_1.rrd
WIDTH 4
BANDWIDTH 100M
В результате IT-директор «ЛогиСервис» видит на одном экране состояние всех 8 складов — зелёные линки означают нормальную нагрузку, красные — перегруз, серые — обрыв.
«ЛогиСервис» использует WMS-систему для управления складскими операциями. Мы интегрировали LibreNMS с WMS через REST API — теперь WMS-дашборд показывает статус сетевой инфраструктуры склада прямо в интерфейсе оператора:
# Пример запроса к LibreNMS API
# Получаем статус всех устройств на складе в Казани
curl -s -H 'X-Auth-Token: your-api-token' \
'https://nms.logiservice.ru/api/v0/devices?type=network&location=Kazan' \
| python3 -m json.tool
# Ответ:
# {
# "status": "ok",
# "devices": [
# {"hostname": "sw-kzn-01", "status": 1, "uptime": 2847291},
# {"hostname": "sw-kzn-02", "status": 1, "uptime": 2847105},
# {"hostname": "ap-kzn-01", "status": 1, "uptime": 1284729},
# ...
# ]
# }
# Получаем трафик на порту (для отображения загрузки канала)
curl -s -H 'X-Auth-Token: your-api-token' \
'https://nms.logiservice.ru/api/v0/devices/sw-kzn-01/ports/GigabitEthernet0_1/port_bits' \
| python3 -m json.tool
# Скрипт для WMS-интеграции (Python)
import requests
class LibreNMSClient:
def __init__(self, url, token):
self.url = url
self.headers = {'X-Auth-Token': token}
def get_warehouse_status(self, location):
resp = requests.get(
f'{self.url}/api/v0/devices',
headers=self.headers,
params={'location': location}
)
devices = resp.json()['devices']
total = len(devices)
up = sum(1 for d in devices if d['status'] == 1)
return {'total': total, 'up': up, 'down': total - up}
# WMS отображает: "Казань: 18/18 устройств online" (зелёный)
# или: "Казань: 16/18 устройств online (2 DOWN!)" (красный)
Эта интеграция позволяет операторам WMS видеть проблемы с сетью до того, как они повлияют на складские операции — например, если Wi-Fi точка доступа в зоне приёмки товара упала, оператор может перенаправить кладовщиков с ТСД в зону с работающим Wi-Fi, не дожидаясь звонка с жалобой.