ЭрикссонСофт

+7 (953) 284-42-23

Настоящий документ содержит руководство по установке программного продукта vNMS (Virtual Network Management System), предоставленного для экспертной оценки. Продукт объединяет две функциональные области управления сетью: управление сетью (инвентарь, дерево управляемых объектов, аварии, надзор за узлами) и анализ производительности (загрузка файлов измерений, хранение счётчиков, агрегация, KPI и отчёты).

Основные функциональные возможности:

Управление сетью:

Ведение инвентаря сетевых элементов с поддержкой дерева управляемых объектов

Редактирование конфигурации объектов через FDN-адресацию с поддержкой шаблонов

Управление авариями с корреляцией, подтверждением и архивом

Надзор за узлами с автоматическим созданием аварий при отсутствии данных

Журнал событий сетевых элементов

Управление синхронизацией и состоянием узлов

Анализ производительности:

Загрузка ROP-файлов измерений в формате 3GPP TS 32.435

Хранение счётчиков с поддержкой разреженных индексов и векторных значений

Агрегация данных по уровням (ROP, час, день)

Расчёт KPI по формулам с поддержкой шаблонов счётчиков

Проверка порогов KPI с автоматическим созданием аварий

Формирование отчётов в форматах CSV и TXT

Связь между подсистемами:

Автоматическое создание аварий при превышении порогов KPI

Привязка измерений к узлам из инвентаря

Надзор за узлами на основе поступления данных измерений

Программное обеспечение распространяется в исходных кодах и собирается с использованием CMake. Актуальная версия исходного кода хранится в системе контроля версий Git.

Программное обеспечение является кроссплатформенным и может быть установлено на различные операционные системы семейства UNIX и Windows. Сборка выполняется с использованием CMake без дополнительных зависимостей — SQLite, pugixml и zlib входят в состав исходного кода.

Минимальные требования (для тестовых и ознакомительных целей):

Процессор: 2 ядра x86-64

Оперативная память: 4 ГБ

Дисковое пространство: 500 МБ

Рекомендуемые требования (для лабораторных сред):

Процессор: 4-8 ядер x86-64

Оперативная память: 8-16 ГБ

Дисковое пространство: 10 ГБ (для хранения логов, базы данных и файлов измерений)

Сетевой интерфейс: 1 Гбит/с и более

Серверные ОС:

Ubuntu Server 20.04 LTS / 22.04 LTS и более поздние

Debian 11 / 12

Rocky Linux 8 / 9

Десктопные ОС (для разработки и тестирования):

Ubuntu Desktop 20.04 / 22.04 и более поздние

Windows 10/11 (с использованием WSL2 или нативной сборки)

Для сборки из исходного кода необходимы:

Компилятор с поддержкой C++17 (GCC 9+, Clang 10+, MSVC 2019+)

Система сборки CMake версии 3.10 или новее

Git (для получения исходного кода)

Ninja (рекомендуется) или Make

Все остальные зависимости (SQLite, pugixml, zlib) входят в состав исходного кода и собираются вместе с проектом.

Для работы с базой данных SQLite дополнительной настройки не требуется. Для обеспечения стабильной работы при высоких нагрузках рекомендуется настроить параметры системы.

Параметры сетевого стека (Linux):

net.core.rmem_max = 134217728

net.core.wmem_max = 134217728

net.ipv4.tcp_rmem = 4096 87380 134217728

net.ipv4.tcp_wmem = 4096 65536 134217728

net.core.netdev_max_backlog = 5000

Перед началом сборки необходимо установить требуемые пакеты.

Linux (Ubuntu/Debian):

sudo apt update
sudo apt install -y git cmake build-essential ninja-build

Linux (Rocky Linux):

sudo dnf install -y git cmake gcc-c++ make ninja-build

Windows (MSVC):

Установите Visual Studio 2019 или новее с компонентом "Разработка классических приложений на C++". Для сборки с Ninja рекомендуется установить его через пакетный менеджер или использовать встроенный генератор Visual Studio.

Исходный код доступен в системе контроля версий Git. Адрес репозитория необходимо уточнить у ответственного за распространение программного обеспечения.

После получения адреса репозитория выполните клонирование:

git clone <адрес_репозитория>
cd vnms

Linux / macOS / MinGW:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

Windows (MSVC с генератором Ninja):

cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build

Windows (MSVC с генератором Visual Studio):

cmake -S . -B build -A x64
cmake --build build --config Release

Для проверки корректности сборки запустите тесты:

ctest --test-dir build --output-on-failure

Все тесты должны успешно выполняться. Для запуска программы выполните:

Linux / macOS:

./build/vnms --help

Windows:

.\build\Release\vnms.exe --help
или
.\build\vnms.exe --help (в зависимости от генератора)

Программа должна вывести справку по использованию.

После сборки исполняемый файл находится в директории build/. Для установки в системную директорию выполните:

sudo cmake --install build --prefix /usr/local

После установки программа будет доступна как команда vnms.

Для использования без установки можно запускать исполняемый файл непосредственно из директории build/.

Если при установке был выбран нестандартный каталог, добавьте его в переменную окружения PATH. Для этого отредактируйте файл ~/.bashrc или ~/.profile, добавив строку:

export PATH=$PATH:/путь/к/каталогу/с/программой

После редактирования примените изменения:

source ~/.bashrc

Для Windows добавьте каталог с vnms.exe в переменную окружения PATH через системные настройки.

Убедитесь, что программа доступна для запуска из любой директории:

vnms --version
vnms status

При первом запуске база данных vnms.db создаётся автоматически. Схема базы обновляется при каждом запуске — миграции применяются по номерам, уже применённые пропускаются.

Для запуска программы в контейнерной среде используется Dockerfile, расположенный в корневой директории с исходным кодом.

Выполните сборку образа, указав тег:

docker build -t vnms:latest .

Для запуска контейнера выполните:

docker run -v $(pwd)/data:/app/data vnms:latest status

Для интерактивной работы:

docker run -it -v $(pwd)/data:/app/data vnms:latest /bin/bash

Параметр -v монтирует локальную директорию для хранения базы данных и файлов измерений.

Для просмотра логов контейнера используйте:

docker logs <container_id>

Для остановки контейнера:

docker stop <container_id>

Для удаления контейнера:

docker rm <container_id>

Программа поддерживает следующие переменные окружения:

VNMS_DB — путь к файлу базы данных SQLite (по умолчанию vnms.db)

VNMS_LOG_LEVEL — уровень логирования (error, warn, info, debug)

VNMS_LOG_JSON — вывод лога в формате JSON

VNMS_LOG_FILE — файл для дублирования лога

Программа поддерживает следующие глобальные параметры командной строки:

--db=<файл> — путь к файлу базы данных SQLite (по умолчанию vnms.db)

--log-level=error|warn|info|debug — уровень логирования

--log-json — вывод лога в формате JSON

--log-file=<файл> — дублирование лога в указанный файл

--help — вывод справки по программе

--version — вывод версии программы

Каждая подкоманда имеет собственные параметры. Для получения справки по конкретной команде используйте:

vnms help <команда>

Например:

vnms help ne
vnms help pm
vnms help kpi

Полный каталог конфигурационных параметров в машиночитаемом виде доступен в файле параметров исходного кода. Подробное описание параметров приведено в документации.

Отдел продаж

+7 (953) 284-42-23

+7 (953) 284-47-36

sales@ericssonsoftware.ru

Мы в соц.сетях

Информация

Адрес

242504
Брянская область
Карачевский район, Вишневка
Молодёжная улица, 33

Информация

Отдел продаж

+7 (953) 284-42-23

sales@ericssonsoftware.ru

Адрес

242504
Брянская область,
Карачевский район,
Вишневка, Молодёжная улица, 33