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

+7 (953) 284-42-23

Настоящий документ содержит руководство по эксплуатации программного продукта vNMS — Virtual Network Management System. Документ предназначен для администраторов и операторов, осуществляющих повседневное управление, мониторинг и обслуживание программного обеспечения.

Эксплуатация включает совокупность процессов и процедур, направленных на обеспечение непрерывного и корректного функционирования vNMS. В документе рассматриваются вопросы запуска и останова программы, мониторинга состояния, управления конфигурацией, сбора диагностической информации, а также типовые операции.

Целевая аудитория

Администраторы, осуществляющие управление экземплярами vNMS

Операторы, выполняющие мониторинг и контроль работоспособности

Инженеры, участвующие в настройке и оптимизации параметров работы

Специалисты технической поддержки

Необходимая квалификация

Уверенное владение командной строкой (Linux bash, Windows PowerShell)

Понимание основ сетевых технологий и протоколов (HTTP, REST API)

Навыки анализа текстовых файлов журналов

Программа поставляется в собранном виде в составе исполняемого файла или может быть запущена непосредственно из исходного кода.

Запуск из исходного кода:

bash
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
./build/vnms --help

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

Выполняет миграции схемы базы данных при необходимости

Инициализирует встроенное хранилище (SQLite)

Загружает конфигурационные параметры из переменных окружения

Выводит сообщение о готовности с информацией о режиме работы

Штатная остановка:

Нажмите Ctrl+C (SIGINT) в окне терминала. Программа выполняет:

Завершение обработки текущих операций

Закрытие соединения с базой данных

Завершение процесса

Принудительная остановка (только в крайнем случае):

bash
kill -TERM <PID> # Linux
taskkill /PID <PID> # Windows

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

Управление осуществляется через интерфейс командной строки (CLI).

Базовый формат команд:

bash
vnms <команда> <подкоманда> [параметры]

Глобальные ключи:

Ключ

Назначение

--db=<файл>

база данных (по умолчанию vnms.db, либо переменная VNMS_DB)

--log-level=error|warn|info|debug

подробность лога

--log-json

лог машиночитаемыми строками JSON

--log-file=<файл>

дублировать лог в файл

--help, --version

справка и версия

Проверка общего статуса системы:

bash
vnms status

Проверка состояния сетевых элементов:

bash
vnms ne list
vnms ne show <имя_узла>

Проверка активных аварий:

bash
vnms alarm list --active
vnms alarm stats

Проверка загруженных измерений:

bash
vnms pm summary
vnms pm counters --like="pm*"

Управление сетевыми элементами:

bash

vnms ne add --name=RBS010 --type=RadioNode --ip=10.10.0.10 --site=Bishkek
vnms ne sync RBS010 --status=SYNCHRONIZED
vnms ne supervise RBS010 --on&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># </em><em>включить</em><em> </em><em>надзор</em>
vnms ne events RBS010&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># журнал событий узла</em>
vnms ne check --silent-minutes=30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># </em><em>молчащие</em><em> </em><em>узлы</em><em> -&gt; </em><em>аварии</em>

Управление конфигурацией (дерево управляемых объектов):

bash

vnms cmedit get "ManagedElement=RBS010,*EUtranCellFDD=*" --attrs=administrativeState,earfcndl
vnms cmedit set "ManagedElement=RBS010,*EUtranCellFDD=*" administrativeState=LOCKED
vnms cmedit create "ManagedElement=RBS010,Transport=1,EthernetPort=2" --ne=RBS010 --attrs=speed=10000
vnms cmedit tree --ne=RBS010
vnms cmedit describe EUtranCellFDD
vnms cmedit delete "ManagedElement=RBS010,Transport=1,EthernetPort=2"

Управление авариями:

bash

vnms alarm list --severity=CRITICAL --unacked
vnms alarm show 12
vnms alarm ack 12 --by=ivanov
vnms alarm clear 12 --by=ivanov
vnms alarm raise --ne=RBS010 --problem="Door Open" --severity=WARNING --type=ENVIRONMENTAL
vnms alarm purge --before=2026-01-01

Управление загрузкой измерений:

bash

vnms pm collect --dir=InputData&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># </em><em>каталог</em>
vnms pm collect --file=A20240821.0645-0700_B_12.xml.gz
vnms pm collect --dir=InputData --recursive&nbsp;&nbsp;&nbsp; <em># </em><em>с</em><em> </em><em>подкаталогами</em>
vnms pm collect --dir=InputData --dry-run&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># разобрать, ничего не записывая</em>
vnms pm collect --dir=InputData --force&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># перечитать уже загруженные файлы</em>

Управление KPI:

bash

vnms kpi list
vnms kpi show RRC_Setup_Success_Rate
vnms kpi add --name=Cell_Load --formula="pct(sum(pmPrbUsedDlDtch), sum(pmPrbAvailDl))" \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; --unit=% --direction=high_bad --warn=70 --crit=90 --category=utilization
vnms kpi calc --level=rop --scope=ne&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># </em><em>срез</em><em> </em><em>по</em><em> </em><em>узлам</em>
vnms kpi calc --level=hour --scope=mo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># </em><em>по</em><em> </em><em>сотам</em><em>, </em><em>с</em><em> </em><em>часовой</em><em> </em><em>свёрткой</em>
vnms kpi results --kpi="RRC*" --limit=10
vnms kpi verify --formula="ratio(sum(a), sum(b))"&nbsp;&nbsp; <em># </em><em>проверить</em><em> </em><em>формулу</em><em> </em><em>без</em><em> </em><em>расчёта</em>
vnms kpi check&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <em># проверить последние срезы всех KPI</em>

Управление отчётами:

bash

vnms report kpi --format=csv --kpi="RRC*" --from=2026-08-01
vnms report counters --like="pm*" --format=txt
vnms report alarms --state=ALL --since=2026-08-01

Программа использует следующие способы конфигурации:

Переменные окружения

Параметры командной строки

Файл базы данных

Основные параметры:

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

Параметры командной строки:

--db=<файл> — база данных

--log-level=error|warn|info|debug — подробность лога

--log-json — лог машиночитаемыми строками JSON

--log-file=<файл> — дублировать лог в файл

bash
VNMS_DB=/opt/vnms/data/vnms.db

Для изменения параметров конфигурации требуется перезапуск программы.

Постоянное изменение:

Остановите программу (Ctrl+C или через системный сигнал)

Измените необходимые переменные окружения

Запустите программу заново

Программа ведёт журнал с выводом на консоль (stderr). Формат строки журнала:

text
YYYY-MM-DD HH:MM:SS.mmm [LEVEL] [ИСТОЧНИК] Сообщение

Пример строки журнала:

text
2026-04-07 16:40:05.691 [INFO ] [PM_LOADER] Starting collection from directory InputData

Уровни журнала: error, warn, info, debug.

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

Получение общего статуса:

bash

vnms status

Вывод сводки:

text

── Управление сетью ──
Сетевых элементов&nbsp; 3
Объектов MO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 21
Активных аварий&nbsp;&nbsp;&nbsp; 11 (critical 1, major 3, minor 7)
 
── Анализ производительности ──
ROP-файлов загружено&nbsp;&nbsp;&nbsp;&nbsp; 18
Строк счётчиков&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 15656
Уникальных счётчиков&nbsp;&nbsp;&nbsp;&nbsp; 371
Определений KPI&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10
 
── Связь подсистем ──
Аварий, поднятых по порогам KPI: 10
Аварий, поднятых надзором за узлами: 0

Получение информации о сетевых элементах:

bash

vnms ne list

Получение списка активных аварий:

bash

vnms alarm list --active
vnms alarm stats

Получение информации о загруженных измерениях:

bash

vnms pm summary
vnms pm rops --ne=RBS001

Процессор и память (Linux):

bash
top -p $(pgrep -f vnms)

При возникновении инцидента соберите следующие данные:

Версия программы (из vnms --version)

Вывод команд:

bash

vnms status
vnms ne list --all
vnms alarm list --active
vnms pm summary
vnms kpi list

Информация об окружении (Linux):

bash
uname -a
cat /etc/os-release

Проверка работоспособности:

bash

vnms status
vnms ne check --silent-minutes=30
vnms alarm list --active

Проверка загрузки измерений:

bash

vnms pm summary
vnms pm rops --limit=5

Проверка статуса активаций (при наличии заданий на сбор):

bash

vnms pm job list

Анализ ключевых метрик (количество активаций, успехов, сбоев):

bash

vnms report alarms --state=ALL --since=-7d
vnms kpi results --limit=20
vnms pm counters --top=10

Проверка состояния зарегистрированных сетевых элементов:

bash

vnms ne list --all
vnms cmedit tree --ne=*

Анализ производительности (среднее количество операций, пиковые нагрузки):

Экспорт отчётов за период:

bash

vnms report kpi --format=csv --from=2026-08-01 --to=2026-09-01
vnms report alarms --format=csv --since=2026-08-01

Резервное копирование базы данных:

bash
cp vnms.db vnms.db.$(date +%Y%m%d)

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

Программа не отвечает на команды:

Проверьте, запущен ли процесс:

bash
ps aux | grep vnms # Linux
Get-Process vnms # Windows

Проверьте состояние базы данных:

bash
sqlite3 vnms.db "SELECT * FROM schema_version"

Принудительно остановите и запустите заново.

Загрузка измерений завершилась со сбоем (FAILED):

Проверьте логи загрузки:

bash
vnms pm rops --status=FAILED

Проверьте наличие алармов:

bash
vnms alarm list --active

При необходимости выполните повтор:

bash
vnms pm collect --dir=InputData --force

KPI показал нарушения порогов:

Проверьте результаты KPI:

bash
vnms kpi results --kpi="*" --limit=10
vnms kpi check --no-alarm

Проверьте связанные аварии:

bash
vnms alarm list --source=KPI

При необходимости скорректируйте пороги KPI:

bash

vnms kpi add --name=Cell_Load --formula="pct(sum(pmPrbUsedDlDtch), sum(pmPrbAvailDl))" \
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; --unit=% --direction=high_bad --warn=80 --crit=95 --category=utilization

Блокировка сетевого элемента (maintenance mode):

Блокировка сетевого элемента в конфигурации:

bash

vnms cmedit set "ManagedElement=RBS010,*EUtranCellFDD=*" administrativeState=LOCKED

Разблокировка:

bash

vnms cmedit set "ManagedElement=RBS010,*EUtranCellFDD=*" administrativeState=UNLOCKED

Проверка доступности базы данных:

bash

sqlite3 vnms.db "SELECT 1"

Программа может интегрироваться с внешними системами мониторинга через:

Анализ журнала (syslog):

bash
tail -f /var/log/vnms.log | while read line; do
if echo "$line" | grep -q "ERROR|CRITICAL"; then

fi
done

Экспорт отчётов для внешних систем:

bash

vnms report kpi --format=csv --from=2026-08-01 &gt; report.csv
vnms report alarms --format=csv --since=2026-08-01 &gt; alarms.csv

Команда

Назначение

vnms status

Сводка по всей системе

vnms ne list

Список сетевых элементов

vnms ne show <имя>

Детальная информация об узле

vnms ne add --name=<имя> --type=<тип>

Добавление узла

vnms ne sync <имя> --status=<статус>

Синхронизация узла

vnms ne supervise <имя> --on

Включение надзора

vnms ne check --silent-minutes=30

Проверка молчащих узлов

vnms cmedit get <шаблон>

Получение атрибутов MO

vnms cmedit set <шаблон> <атрибут>=<значение>

Установка атрибута MO

vnms cmedit tree --ne=<имя>

Дерево MO узла

vnms cmedit describe <класс>

Описание класса MO

vnms alarm list

Список аварий

vnms alarm show <id>

Детали аварии

vnms alarm ack <id> --by=<имя>

Подтверждение аварии

vnms alarm clear <id> --by=<имя>

Снятие аварии

vnms alarm stats

Статистика аварий

vnms pm collect --dir=<каталог>

Загрузка ROP-файлов

vnms pm summary

Сводка по измерениям

vnms pm counters --like=<шаблон>

Список счётчиков

vnms pm aggregate --level=hour

Агрегация счётчиков

vnms pm purge --before=<дата>

Очистка старых данных

vnms kpi list

Список определений KPI

vnms kpi add --name=<имя> --formula=<формула>

Добавление KPI

vnms kpi calc --level=rop --scope=ne

Расчёт KPI

vnms kpi check

Проверка порогов KPI

vnms kpi results --kpi=<шаблон>

Результаты KPI

vnms report kpi --format=csv

Отчёт по KPI

vnms report alarms --format=csv

Отчёт по авариям

Быстрый скрипт для bash:

bash

vnms status

vnms alarm list --active

vnms ne list

vnms pm summary

vnms kpi list

vnms kpi check

vnms report alarms --format=txt

vnms report kpi --format=csv

Файл/директория

Назначение

vnms

Исполняемый файл

src/

Исходный код программы

src/core/

Ядро: логгер, утилиты, база данных, схема

src/nms/

Управление сетью: топология, CM, FM

src/eniq/

Анализ производительности: парсер PM, KPI, отчёты

src/cli/

Интерфейс командной строки

external/

Сторонние библиотеки (SQLite, pugixml, zlib)

tests/

Набор тестов

docs/

Документация

scripts/

Скрипты сборки и демонстрации

vnms.db

Файл базы данных (по умолчанию)

Отдел продаж

+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