не срабатывает блокировка опроса конфигурации ноды - 5.2.8 ... 6.2.0
-
Есть специфичный коммутатор, у него по SNMP при опросе конфигурации в списке сетевых интерфейсов выдается весь список доступных для использования номеров VLAN, от 1 до 4095. Соответственно при открытии ноды там более 4000 объектов, система подвисает.
Ранее было рабочее решение, как на вложенной картинке - запретить опрос конфигурации и вручную его также не запускать (проект сдан в эксплуатацию, конфиг годам не меняется). При этом после первого опроса удалить все VLAN, оставив только нужные интерфейсы. Тогда при последующих открытия ноды все ок - все VLAN не появляются.Сейчас заметил что это уже не срабатывает, версия 5.2.8. Галочка запрета стоит, удаляешь VLAN, открываешь ноду - они снова все подгружаются. Возможно путь выше не самый оптимальный и есть какое то другое решение ?


-
Можно воспользоваться хук скриптом Hook::CreateInterface, там поставить
if (($1.node.name == "ISW001") and ($1->name ~= "^VLAN.*"))
{
return false; // Block creation
}return true;
Про галочку запрета проверим.
-
А, кстати, в какой момент происходит добавление интерфейсов? Нет такого, что после рестарта этого коммутатора?
-
@filipp-sudanov said in не срабатывает блокировка опроса конфигурации ноды - 5.2.8 ... 6.2.0:
А, кстати, в какой момент происходит добавление интерфейсов? Нет такого, что после рестарта этого коммутатора?
нет. они всегда включены, порядок действий получения ошибки
- Исходное состояние: коммутатор добавлен опросом, галочка не стоит.
- В списке узлов нажать треугольник у ноды, раскрыть ноду.
- Удалить лишние VLAN.
- нажать треугольник у ноды свернуть ноду.
- поставить галочку запрета опроса.
- выйти в любое другое меню или другой экран.
- вернуться в список узлов, нажать треугольник, нода раскроется и все VLAN снова добавятся - ошибка.
-
@filipp-sudanov said in не срабатывает блокировка опроса конфигурации ноды - 5.2.8 ... 6.2.0:
Можно воспользоваться хук скриптом Hook::CreateInterface, там поставить
if (($1.node.name == "ISW001") and ($1->name ~= "^VLAN.*"))
{
return false; // Block creation
}return true;
Про галочку запрета проверим.
Но операция опроса и добавления интерфейсов все равно будет происходить при раскрытии ноды ? просто это будет быстро происходить (сейчас заметная очень задержка при раскрытии) и VLAN не будут добавлятся, но опрос останется. Если так - то это не совсем подходящее решение.
-
Configuration poll не происходит при раскрытии ноды - он происходит по своему расписанию, по умолчанию раз в час. Здесь больше похоже на какую-то проблему клиента из-за того, что интерфейсов слишком много, вероятно он на самом деле их не стирает.
Проверьте, плс вот таким скриптом с любого другого объекта:
n = FindObject("ISW001"); // или по ID ноды: FindObject(12345);
println(n.name);
println(n.interfaces.size);скрипт напечатает имя ноды и количество интерфейсов под ней. Затем попробоваться удалить интерфейсы и еще раз запустить скрипт.
-
-
-
-
-
После такого завершения с ошибкой посмотрите в /var/log/netxmsd - если там видно что сервер рестартовал, то он вероятно крешится. Тогда нужно посмотреть, создался ли core файл (crash dump). Если ubuntu, то они обычно создаются в /var/crash
-
@filipp-sudanov said in не срабатывает блокировка опроса конфигурации ноды - 5.2.8 ... 6.2.0:
После такого завершения с ошибкой посмотрите в /var/log/netxmsd - если там видно что сервер рестартовал, то он вероятно крешится. Тогда нужно посмотреть, создался ли core файл (crash dump). Если ubuntu, то они обычно создаются в /var/crash
в /var/log/netxmsd новых записей нет, при этом дамп в /var/crash появляется. Что с ним сделать ?

-
- установить пакеты netxms-dbg и gdb
- распаковать креш дамп:
apport-unpack /var/crash/YOUR_CRASH_FILE TARGET_DIRECTORY - перейти в эту директорию
cd TARGET_DIRECTORY - запустить gdb
gdb /usr/bin/netxmsd CoreDump - в gdb дать команду
bt
и покажите вывод
-
-
Сделал исправление в сервере, должно исправить падение. Войдет в следующий релиз.
-
@victor said in не срабатывает блокировка опроса конфигурации ноды - 5.2.8 ... 6.2.0:
Сделал исправление в сервере, должно исправить падение. Войдет в следующий релиз.
не срабатывает, все равно опрашивает и заново добавляет все VLAN при открытии, версия 6.2.0
из плюсов: при удалении всех VLAN одной операцией теперь ошибок не возникает, сервер не останавливается. -
Самое простое решение - добавить в Hook::CreateInterface:
if (($1.name == "ISW001") and ($1->name ~= "^VLAN.*")) { return false; // не создавать VLAN-интерфейсы } return true; -
@alk said in не срабатывает блокировка опроса конфигурации ноды - 5.2.8 ... 6.2.0:
Самое простое решение - добавить в Hook::CreateInterface:
что то тоже не срабатывает - при ручном запуске опроса конфигурации в логе нет сообщений о блокировке(?) создания интерфейса. Компилятор ошибок на синтаксис не выдает.
Полагаю должно быть так ?
if (($node.name == "ISW001" or $node.name == "ISW002" or $node.name == "ISW003") and ($1.name ~= "^VLAN.*")) { return false; // не создавать VLAN-интерфейсы } return true; -
Да, так правильно. Ну или можно чуть более лаконично:
if (($node.name in ["ISW001", "ISW002", "ISW003"]) and ($1.name ~= "^VLAN.*")) { return false; // не создавать VLAN-интерфейсы } return true; -
@filipp-sudanov said in не срабатывает блокировка опроса конфигурации ноды - 5.2.8 ... 6.2.0:
Да, так правильно. Ну или можно чуть более лаконично:
if (($node.name in ["ISW001", "ISW002", "ISW003"]) and ($1.name ~= "^VLAN.*")) { return false; // не создавать VLAN-интерфейсы } return true;на одном их трех коммутаторов не срабатывает, и странным образом - добавляются все равно интерфейсы, но не все как ранее - а только последние некоторые, к примеру с 3385 по 3418 как на картинке.

Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login




