NetXMS Support Forum

Russian Support => Идеи и предложения по функциональности NetXMS => Topic started by: zeratyl on August 10, 2015, 10:48:28 AM

Title: Управление сетевыми устройствами
Post by: zeratyl on August 10, 2015, 10:48:28 AM
Добрый день. В NetXMS хорошо организован мониторинг сетевого оборудования, им удобно пользоваться, спасибо. Задумывались разработчики расширить функционал программы добавив функции управления сетевыми устройствами? Например:


И совсем здорово было бы реализовать работу с бекапами конфигураций:

Title: Re: Управление сетевыми устройствами
Post by: Harun on August 10, 2015, 12:38:31 PM
Все выше перечисленное - не функционал системы мониторинга, это функционал системы управления сетью (network management system).
Title: Re: Управление сетевыми устройствами
Post by: Alex Kirhenshtein on August 10, 2015, 01:45:18 PM
Большую часть этого можно сделать через Object Tools и внешние команды (на контейнерах они тоже работают).
Title: Re: Управление сетевыми устройствами
Post by: zeratyl on August 10, 2015, 03:04:54 PM
Сейчас часть задач так и реализована, но для централизованного использования не удобно, без поддержки со стороны системы. Например, в web-интерфейсе, пользовательские Object Tools не работают. Удобного решения для таких задач, пока не нашёл, разве что NOC но это уже network management system, как упоминал Harun, но для небольших компаний эта система громоздка в поддержке.
Title: Re: Управление сетевыми устройствами
Post by: Alex Kirhenshtein on August 10, 2015, 11:36:31 PM
А что именно не работает в вебе? Должно всё работать.
Title: Re: Управление сетевыми устройствами
Post by: zeratyl on August 11, 2015, 12:05:25 PM
В web интерфейсе мешают две проблемы.

1. Например, создаём объект Object tools, для подключения через ssh. В консоли его видно, в web-интерфейсе нет.
2. Если во вкладе overview нажать правой кнопкой на каком-нибудь из параметров, то в консоли появляется меню с возможность выбора действия (копировать и т.п.), а в web-интерфейсе меню появляется лишь на мгновение и закрывается.

Скриншоты приложил.

Версия сервера и веб-интерфейса 1.2.17. Браузеры пробовали разные.
Title: Re: Управление сетевыми устройствами
Post by: Alex Kirhenshtein on August 11, 2015, 12:15:01 PM
1) Да, local command на вебе не работает – ограничение броузера. Server command должен работать и на вебе (для не интерактивных скриптов).
2) Работа с клипбордом в броузере тоже достаточно ограничена, поэтому меню отключено. Сейчас ситуация с поддержкой клипборда потихоньку улучшается (через document.execCommand('copy') (https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand)) – но пока это еще не сделано.
Title: Re: Управление сетевыми устройствами
Post by: 7novds on November 30, 2015, 09:01:06 PM
Как уже написали, многое можно реализовать штатными средствами.
Добавлю как делать backup конфигурации по расписанию.

Я сделал шаблон в котором есть один DCI - скрипт. Этот скрипт банально обращается к устройству по SNMP, выставляет значения переменных ( благо у меня только Cisco, поэтому реализация достаточно проста ).
После этого конфигурация копируется на TFTP сервер, папка которого является копией репозитария SVN.
Далее так же по расписанию проводится коммит в SVN. Это мне дает возможность просмотра изменения конфигураций.
Title: Re: Управление сетевыми устройствами
Post by: hsvt on December 03, 2015, 10:20:39 PM
Quote from: 7novds on November 30, 2015, 09:01:06 PM
Как уже написали, многое можно реализовать штатными средствами.
Добавлю как делать backup конфигурации по расписанию.

Я сделал шаблон в котором есть один DCI - скрипт. Этот скрипт банально обращается к устройству по SNMP, выставляет значения переменных ( благо у меня только Cisco, поэтому реализация достаточно проста ).
После этого конфигурация копируется на TFTP сервер, папка которого является копией репозитария SVN.
Далее так же по расписанию проводится коммит в SVN. Это мне дает возможность просмотра изменения конфигураций.

Можете поделиться примером скрипта?
Title: Re: Управление сетевыми устройствами
Post by: Laguna_x on December 19, 2015, 12:10:18 PM
Quote from: 7novds on November 30, 2015, 09:01:06 PM
Как уже написали, многое можно реализовать штатными средствами.
Добавлю как делать backup конфигурации по расписанию.

Я сделал шаблон в котором есть один DCI - скрипт. Этот скрипт банально обращается к устройству по SNMP, выставляет значения переменных ( благо у меня только Cisco, поэтому реализация достаточно проста ).
После этого конфигурация копируется на TFTP сервер, папка которого является копией репозитария SVN.
Далее так же по расписанию проводится коммит в SVN. Это мне дает возможность просмотра изменения конфигураций.

тоже скрипт непомешал бы
Title: Re: Управление сетевыми устройствами
Post by: hsvt on December 19, 2015, 03:43:02 PM
Да :) Вопрос автоматизация бекапа конфигов по snmp актуален :)
Title: Re: Управление сетевыми устройствами
Post by: 7novds on November 30, 2016, 11:53:50 AM
Пардон, не видел запроса на скрипт...

array SNMP_Versions;
SNMP_Versions = %("1","2c", "3");

sub get_parameter( curr, parameter )
{
   // Получаем локальный для node Сustom Attribute
   result = GetCustomAttribute( curr,  parameter);
   if ( result != null )
      return result;
      
   foreach( p : GetObjectParents( curr ))
   {
      result = get_parameter( p, parameter );
      if ( result != null )
         return result;
   }   
   return null;
}

TFTP_SERVER    = get_parameter( $node, "TFTP_IP_ADDRESS" );
TFTP_FOLDER    = get_parameter( $node, "TFTP_FOLDER_NAME" );
TFTP_FILENAME  = $node->name;

snmpTransport = CreateSNMPTransport ( $node );
if ( snmpTransport == null )
   return -1;
   
// Удаляем таблицу, если она существует
if ( !SNMPSet ( snmpTransport, ".1.3.6.1.4.1.9.9.96.1.1.1.1.14.22", 6, "INTEGER" )) {
   trace( 3, "ccCopyEntryRowStatus set error" );
   return 1;
}

if ( !SNMPSet( snmpTransport, ".1.3.6.1.4.1.9.9.96.1.1.1.1.2.22",  1, "INTEGER" )) {
   trace ( 3, "ccCopyProtocol set error" );
   return 1;
}

if ( !SNMPSet( snmpTransport, ".1.3.6.1.4.1.9.9.96.1.1.1.1.3.22",  3, "INTEGER" )) {
   trace ( 3, "ccCopySourceFileType set error" );
   return 1;
}

if ( !SNMPSet( snmpTransport, ".1.3.6.1.4.1.9.9.96.1.1.1.1.4.22",  1, "INTEGER" )) {
   trace ( 3, "ccCopyDestFileType set error" );
   return 1;
}

if ( !SNMPSet( snmpTransport, ".1.3.6.1.4.1.9.9.96.1.1.1.1.5.22",  TFTP_SERVER, "IPADDR" )) {
   trace ( 3, "ccCopyServerAddress set error" );
   return 1;
}
if ( !SNMPSet( snmpTransport, ".1.3.6.1.4.1.9.9.96.1.1.1.1.6.22", TFTP_FOLDER.TFTP_FILENAME,"STRING")) {
   trace ( 3, "ccCopyFileName set error" );
   return 1;
}
if ( !SNMPSet( snmpTransport, ".1.3.6.1.4.1.9.9.96.1.1.1.1.14.22", 1, "INTEGER")) {
   trace ( 3, "ccCopyEntryRowStatus process start error" );
   return 1;
}

return 0;
   
Title: Re: Управление сетевыми устройствами
Post by: hsvt on December 07, 2016, 08:15:33 PM
Спасибо, в custom attribute передаются параметры?
Title: Re: Управление сетевыми устройствами
Post by: 7novds on January 05, 2017, 11:59:01 AM
Да, какталог на TFTP сервере куда бросить файл