Yes, this patch fixes the database upgrade crash.
Thanks!
grimnir
Posts
-
"Segmentation fault" with nxdbmgr on upgrade from 1.2.13 to 1.2.16 -
"Segmentation fault" with nxdbmgr on upgrade from 1.2.13 to 1.2.16Exactly the same issue under FreeBSD (FreeBSD 9.3-RELEASE, mysql-server 5.5.39).
Indeed, FreeBSD port of NetXMS is broken now: it does not install shared libraries files required for both netxmsd and nxagent (i.e., libnxsqlite.so.1.0.0,libnxdb.so.1.0.0 and so on) .
-
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
Я добавлю дополнительный дебаг и выложу новые исходники. Пока-что посмортите правильно ли VLAN'ы собрались с этого коммутатора.
По "Show VLANs" выдаёт ошибку:
Cannot get VLAN list from node: No context available outside of the request processing.
No context available outside of the request processing. -
Получение таблицы MAC-адресов с Cisco@glebofff said in Получение таблицы MAC-адресов с Cisco:
А вывод Poll->Topology при этом какой?
Хм, любопытно - говорит, что всё хорошо (тот же коммутатор, к которому я подключен; WS-C2960G-48TC-L, IOS 15.0(1)SE1):
[14.03.2013 06:33:36] **** Poll request sent to server ****
[14.03.2013 06:33:37] Poll request accepted
[14.03.2013 06:33:37] Starting topology poll for node STC-102
[14.03.2013 06:33:37] VLAN list successfully retrieved from node
[14.03.2013 06:33:41] Switch forwarding database retrieved
[14.03.2013 06:33:41] Updating peer information on interfaces
[14.03.2013 06:33:41] Link layer topology retrieved (1 connections found)
[14.03.2013 06:33:41] Finished topology poll for node STC-102
[14.03.2013 06:33:41] Local interface Gi0/48 (Uplink) linked to remote interface TC-112-5:Gi0/47 (Downlink to 406)
[14.03.2013 06:33:41] Link layer topology processed
[14.03.2013 06:33:41] **** Poll completed successfully **** -
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
FDB таблица из Object Tools - это конкретный SNMP OID. Здесь ничего не изменилось. Но есть FDB, которую знает сам сервер (она используется для построения топологии 2-го уровня) - там должна быть полная информация. Попробуйте функцию "Find switch port" для хостов в разных VLAN-ах - она должна работать корректно.
Й в следующем релизе заменю FDB из Object Tools на показ той таблицы, которую знает сервер.Не нашёл в меню "Find switch port", но, судя по всему, FDB с каталистов он не получает-таки: моя рабочая станция подключена напрямую в catalyst 2960, но ни через "Find IP address", ни через "Find MAC address" я себя не нахожу. Может, можно какой debug включить?
-
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
nxdbmgr reindex сам по себе один большой баг. Он был сделан очень давно для решения каких-то специфических проблем, и сейчас вроде как не нужен. Я пересмотрю этот код и решу что с ним делать. Пока лучше не использовать.
ОК, понял, спасибо за преупреждение

На данный момент сервер стартует без ошибок:
root@netxms:/var/log # nxdbmgr check
NetXMS Database Manager Version 1.2.7-m2Checking database (excluding collected data):
* Checking zone objects... [PASSED]
* Checking node objects... [PASSED]
* Checking interface objects... [PASSED]
* Checking network service objects... [PASSED]
* Checking cluster objects... [PASSED]
* Checking template to node mapping... [PASSED]
* Checking object properties... [PASSED]
* Checking event processing policy... [PASSED]
Database doesn't contain any errors
Database check completed
root@netxms:/var/log # /usr/local/etc/rc.d/netxmsd start
Starting netxmsd.
NetXMS Database Manager Version 1.2.7-m2Checking database (excluding collected data):
* Checking zone objects... [PASSED]
* Checking node objects... [PASSED]
* Checking interface objects... [PASSED]
* Checking network service objects... [PASSED]
* Checking cluster objects... [PASSED]
* Checking template to node mapping... [PASSED]
* Checking object properties... [PASSED]
* Checking event processing policy... [PASSED]
Database doesn't contain any errors
Database check completedВ логе тоже всё хорошо:
Mar 12 11:19:09 netxms nxagentd[47829]: NetXMS Agent started
Mar 12 11:19:46 netxms netxmsd[47818]: Listening for SNMP traps on UDP socket 0.0.0.0:162
Mar 12 11:19:46 netxms netxmsd[47818]: NetXMS Server started
Mar 12 11:19:46 netxms netxmsd[47818]: Listening for client connections on TCP socket 0.0.0.0:4701
Mar 12 11:19:46 netxms netxmsd[47818]: Listening for mobile device connections on TCP socket 0.0.0.0:4747
Mar 12 12:00:24 netxms netxmsd[48001]: Platform subagent "/usr/local/lib/libnsm_freebsd.so" successfully loaded
Mar 12 12:00:24 netxms netxmsd[48001]: Database driver "/usr/local/lib/libnxddr_mysql.so" loaded and initialized successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "BAYSTACK" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "CATALYST-2900XL" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "CATALYST-GENERIC" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "CISCO-ESW" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "DELL-PWC" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "DLINK" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "ERS8000" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "NETSCREEN" loaded successfully
Mar 12 12:00:24 netxms netxmsd[48001]: Network device driver "PROCURVE" loaded successfully
Mar 12 12:01:12 netxms netxmsd[48001]: Listening for SNMP traps on UDP socket 0.0.0.0:162
Mar 12 12:01:13 netxms netxmsd[48001]: NetXMS Server started
Mar 12 12:01:13 netxms netxmsd[48001]: Listening for mobile device connections on TCP socket 0.0.0.0:4747
Mar 12 12:01:13 netxms netxmsd[48001]: Listening for client connections on TCP socket 0.0.0.0:4701Но, при этом, FDB с каталистов всё равно не получается...
Пытаюсь сделать Tools->Info->Switch forwarding database, ничего не выводится. То же самое для Baystack 470 успешно отображает таблицу МАСов. -
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
Похожая ситуация описана здесь: http://bugs.mysql.com/bug.php?id=42041. В конце есть описание изменений в настройках MySQL, которые вроде как помогли:
Нет, там что-то хитрее, nxdbmgr reindex вот что выдаёт:
NetXMS Database Manager Version 1.2.7-m2
Reindexing table raw_dci_values by (item_id)...
SQL query failed (Duplicate key name 'idx_raw_dci_values_item_id'):
ESC[33;1mCREATE INDEX idx_raw_dci_values_item_id ON raw_dci_values(item_id)ESC[0m
Reindexing table event_log by (event_timestamp)...
SQL query failed (Duplicate key name 'idx_event_log_event_timestamp'):
ESC[33;1mCREATE INDEX idx_event_log_event_timestamp ON event_log(event_timestamp)ESC[0m
Reindexing table thresholds by (item_id)...
SQL query failed (Duplicate key name 'idx_thresholds_item_id'):
ESC[33;1mCREATE INDEX idx_thresholds_item_id ON thresholds(item_id)ESC[0m
Reindexing table thresholds by (sequence_number)...
SQL query failed (Duplicate key name 'idx_thresholds_sequence'):
ESC[33;1mCREATE INDEX idx_thresholds_sequence ON thresholds(sequence_number)ESC[0m
Reindexing table alarm_notes by (alarm_id)...
SQL query failed (Duplicate key name 'idx_alarm_notes_alarm_id'):
ESC[33;1mCREATE INDEX idx_alarm_notes_alarm_id ON alarm_notes(alarm_id)ESC[0m
Reindexing table syslog by (msg_timestamp)...
SQL query failed (Duplicate key name 'idx_syslog_msg_timestamp'):
ESC[33;1mCREATE INDEX idx_syslog_msg_timestamp ON syslog(msg_timestamp)ESC[0m
Reindexing table snmp_trap_log by (trap_timestamp)...
SQL query failed (Duplicate key name 'idx_snmp_trap_log_trap_timestamp'):
ESC[33;1mCREATE INDEX idx_snmp_trap_log_trap_timestamp ON snmp_trap_log(trap_timestamp)ESC[0m
Reindexing table address_lists by (list_type)...
SQL query failed (Duplicate key name 'idx_address_lists_list_type'):
ESC[33;1mCREATE INDEX idx_address_lists_list_type ON address_lists(list_type)ESC[0m
Reindexing table idata_100
SQL query failed (You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM idata_100' at line 1):
ESC[33;1mDROP INDEX idata_100 FROM idata_100ESC[0m
SQL query failed (You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM idata_100' at line 1):
ESC[33;1mDROP INDEX idata_100 FROM idata_100ESC[0m
SQL query failed (Duplicate key name 'idx_idata_100_id_timestamp'):
ESC[33;1mCREATE INDEX idx_idata_100_id_timestamp ON idata_100(item_id,idata_timestamp)ESC[0m
Reindexing table idata_106ну и т.д.
-
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
Выложил: https://www.netxms.org/download/rc/netxms-1.2.7-m2.tar.gz. Эта версия потребует апгрейд базы, так что надо будет делать копию на случай если потребуется вернутся обратно на 1.2.6.
Что-то с апгрейдом БД не заладилось:
12 11:03:47 netxms netxmsd[32102]: SQL query failed (Query = "UPDATE raw_dci_values SET raw_value=?,transformed_value=?,last_poll_time=? WHERE item_id=?"): Prepared statement needs to be re-prepared
Mar 12 11:03:47 netxms netxmsd[32102]: SQL query failed (Query = "SELECT id FROM interfaces WHERE id=?"): Prepared statement needs to be re-prepared
Mar 12 11:03:47 netxms netxmsd[32102]: SQL query failed (Query = "INSERT INTO interfaces (ip_addr,ip_netmask,node_id,if_type,if_index,mac_addr,flags,required_polls,bridge_port,phy_slot,phy_port,peer_node_id,
peer_if_id,description,admin_state,oper_state,dot1x_pae_state,dot1x_backend_state,id) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"): Duplicate entry '5290' for key 'PRIMARY' -
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
Я вроде как сделал, но тестировать мне не начем особо, так что было бы очень здорово. Я могу сделать сборку текущих исходников или билд для Windows, смотря что надо.
У меня платформа - FreeBSD, я портирую каждую новую версию из исходников под неё. Так что если есть tarball с исходниками, как обычно Вы в релизах выкладываете, то не вопрос - прямо сегодня могу протестировать.
-
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
В 1.2.7 добавлю поддержку FDB по VLAN'ам.
О, огромное спасибо! Это будет просто здорово... Если могу помочь с тестированием (есть c2960, c3650, c3750, c6509) - то с удовольствием.
-
Получение таблицы MAC-адресов с CiscoСпасибо за детальный "разбор полётов"!
-
Алиасы на интерфейсах и алармыЯсно, спасибо за пояснения.
-
Алиасы на интерфейсах и алармыСпасибо!
Только тогда сталкиваюсь с ещё одной проблемой - при попытке вручную создать интерфейс на ноде получаю странную ошибку:
Cannot create interface object "fxp0": No context available outside of the request service lifecycle.
No context available outside of the request service lifecycle.Кстати, похожая ошибка выскакивает при попытке создать любой template (т.е., просто Create template и ввод имени template):
Cannot create template object "APC UPS": No context available outside of the request service lifecycle.
No context available outside of the request service lifecycle. -
Алиасы на интерфейсах и алармыДобрый день!
Такая ситуация возникла - у части хостов интерфейсы имеют более одного IP-адреса:
# ifconfig
fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=b<RXCSUM,TXCSUM,VLAN_MTU>
inet 10.20.1.50 netmask 0xffffff00 broadcast 10.20.1.255
inet 10.20.1.5 netmask 0xffffffff broadcast 10.20.1.5
inet 10.20.1.9 netmask 0xffffffff broadcast 10.20.1.9
inet 10.20.1.8 netmask 0xffffffff broadcast 10.20.1.8ну или для цисок
ip address x.x.x.x y.y.y.y
ip address a.a.a.a b.b.b.b secondaryтак вот, похоже, сервер такую ситуацию "не понимает", и постоянно сыпет уведомлениями вида
"Normal: sys ( 10.20.1.50 ) - Interface "unknown" changed state to UP (IP Addr: 10.20.1.50/255.255.255.0, IfIndex: 1)"
"Normal: sys ( 10.20.1.5 ) - Interface "unknown" changed state to UP (IP Addr: 10.20.1.5/255.255.255.0, IfIndex: 1)"
"Normal: sys ( 10.20.1.50 ) - Interface "unknown" changed state to UP (IP Addr: 10.20.1.50/255.255.255.0, IfIndex: 1)"
"Normal: sys ( 10.20.1.5 ) - Interface "unknown" changed state to UP (IP Addr: 10.20.1.5/255.255.255.0, IfIndex: 1)"Как бы ему объяснить, что 10.20.1.5 и 10.20.1.50 - это одна и та же нода?
-
Получение таблицы MAC-адресов с Cisco@victor said in Получение таблицы MAC-адресов с Cisco:
GENERIC - это драйвер, который есть всегда. Его код встроен в libnxsrv: src/server/libnxsrv/ndd.cpp. Он используется как базовый класс для всех драйверов и как драйвер по умолчанию.
Посмотрел, подумал, но пожалуй ndd.cpp я не возьмусь переписывать нахрапом...
P.S. не по теме, но ещё с одной проблемой столкнулся сегодня: попытался добавить в список устройств коммутатор из состава blade-системы Fujitsu (Fujitsu PY CB Eth Switch 1Gb 36/8+2, Runtime Code 4.12, OS - VxWorks 6.5), отключил использование nxagent, указал SNMP-community. При попытке сделать configuration poll устройство пропало из списка, и на консоли непрерывно стали возникать сообщения "Access denied", хотя сервер доступ по SNMP к устройству получил (sysID определил). Драйвер при этом выбрал GENERIC. Пришлось базу фиксить с помощью nxdbmgr и вычищать все объекты, связанные с этим коммутатором...
-
Получение таблицы MAC-адресов с CiscoСейчас сервер выбирает CATALYST-GENERIC, насколько я понимаю, это src/server/drivers/catalyst.
Не очень понял про generic-драйвер "вообще" (я новичок в NetXMS, простите), это в каком файле посмотреть можно?
-
Получение таблицы MAC-адресов с CiscoХотя, могу попробовать написать драйвер.
Правда, я почитал код - имеющиеся драйверы однотипны, и, насколько я понимаю, необходимость получать таблицу МАС-адресов "поVLANно" приведёт к необхдимости переписки и кода, отвественного за взаимодействие с драйвером? -
Распределение нод по подсетям@zeratyl said in Распределение нод по подсетям:
В дереве Objects - All Services - Create container...
Что-то нет такого - "All services"...
На вкладке "Objects" у меня в консоли вот что:- Entire network
- Infrasructure services
- Templates
- Policies
- Network maps
- Dashboards
- Reports
- Business services
-
Распределение нод по подсетям@victor said in Распределение нод по подсетям:
Ноды надо добавлять в контейнер. Правый клик на контейнере - потом "Create node".
А как создать контейнер? Если я пытаюсь создать зону в разделе "Entire network", то получаю ошибку "Incompatible operation".
Да - у меня включен режим autodiscovery, если это важно. -
Получение таблицы MAC-адресов с CiscoПонятно...
Если что-то потестировать нужно будет - буду рад оказаться полезен.
Самостоятельно я вряд ли смогу драйвер написать, увы.