Usm cabletest: различия между версиями
Admin (обсуждение | вклад) Нет описания правки |
Admin (обсуждение | вклад) Нет описания правки |
||
Строка 39: | Строка 39: | ||
== Основные функции == | == Основные функции == | ||
* периодическое получение информации о длине кабелей, включённых в медные порты коммутаторов либо об отсутствии там кабеля вовсе | |||
* фиксация полученных результатов | |||
* контроль фактов изменения длин кабелей и вывод соответствующих уведомлений | |||
Метод получения данных - '''telnet''' или '''SNMP''' (в зависимости от модели коммутатора). | |||
За один запуск модуль подключается к одному устройству и пытается выполнить для него опрос. | |||
== Установка и настройка модуля == | |||
# Выделите отдельный каталог. Абсолютно произвольный. Лучше его не размещать в каталоге, доступном через web. Взаимодействие с ERP "UserSide" осуществляется средствами API по http/s-протоколу. Таким образом модуль полностью автономен и может работать на любом отдельном компьютере в любой подсети. Также создайте отдельный каталог для логов модуля. Не забудьте указать для него права на запись. | |||
# Перенесите туда файлы из архива модуля. Пример файла конфигурации "usm_cabletest.conf-example" переименуйте в "usm_cabletest.conf". В нём выполните настройку параметров. Перечень возможных параметров указан ниже. | |||
# Проверьте наличие дополнительных perl-пакетов, которые требуются для запуска модуля. Их список приведён выше. Если у вас они не установлены - модуль выдаст ошибку при запуске и perl-пакет необходимо будет установить ''(с помощью CPAN или PPM)''. | |||
# В разделе "[[Настройка - Модули]]" включите работу с модулем usm_peleng | |||
# В карточках [[Карточка коммутатора|коммутаторов]] следует включить работу с модулем usm_peleng | |||
# Запустите модуль руками | |||
perl usm_peleng.pl | |||
Он должен запуститься и отработать без ошибок. | |||
7. Впишите запуск модуля в системный cron, согласно рекомендациям ниже | |||
'''Уточнения:''' | |||
# При добавлении нового коммутатора в систему, у него автоматически включается параметр - опрашивать устройство модулем usm_peleng | |||
# При запуске модуль обрабатывает только одно устройство. Следовательно в системный cron следует записать вызов необходимого количества копий модуля ''(из расчёта количества коммутаторов в системе и желаемой частоты опроса)''. | |||
При указании количества копий модуля следует исходить из следующего: в ERP "UserSide" по-умолчанию время активности в сети составляет 15 минут ''(т.е. это время, через которое абонент/дом/узел будет считаться неактивным)''. Следовательно, в течении 15 минут модули должны успевать обрабатывать все устройства. Модуль при запуске обрабатывает одно устройство. Следовательно за 15 минут модуль успеет обработать 15 устройств. Если устройств больше - то необходимо использовать вторую копию модуля, третью и т.д. Копий модуля можно запускать любое количество. Для того чтобы одновременный запуск большого количества копий модуля не приводил к увеличенной нагрузке на базу данных и процессор ''(ведь при запуске будут выполняться одни и те же однотипные задачи)'' предназначен параметр "$delay". Указав в нём цифру произвольное задержки например в "20" - можно добиться что модули будут запускаться с 1 по 20 секунду в произвольном порядке и нагрузка распределится. | |||
Также при большом количестве оборудования - нет смысла запускать опрос оборудования каждые 15 минут. Для распределения нагрузки можно настроить так работу, чтобы опрос каждого устройства происходил один раз в 1-4 часа. Этого в принципе достаточно. | |||
Пример из cron запуска пяти копий модуля: | |||
* * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null | |||
* * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null | |||
* * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null | |||
* * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null | |||
* * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null | |||
В карточке устройства, на котором включен модуль usm_peleng можно по соответствующей ссылке посмотреть историю опроса этого устройства модулем и общую таблицу опроса устройств. | |||
== Параметры == | |||
Настройка модуля осуществляется в файле '''usm_peleng.conf''' | |||
$usUrl - URL к ERP "UserSide" | |||
$usApiKey - [[API]]-ключ к ERP "UserSide" | |||
$logsPath - Путь к каталогу для логов модуля | |||
$isSilence - Флаг - скрывать уведомления в консоль при работе модуля | |||
$delay - Произвольная временная задержка от 0 до n-секунд после запуска модуля. Позволяет уменьшить нагрузку на сервер при одновременном использовании большого количества модулей | |||
$citiesList - Перечень идентификаторов населенных пунктов ''(через запятую)'' IP-адреса которых опрашивать. 0 - объекты без адреса | |||
$isArpPolling - Флаг - опрашивать ли ARP-таблицу с устройства | |||
Модуль usm_peleng можно запускать с параметрами ''(указать конкретное устройство, которое необходимо опросить)'' | |||
Пример: | |||
perl usm_peleng s 998 | |||
опросит коммутатор с ID 998 | |||
== Если информация не снимается/модуль не работает == | |||
1. Необходимо разграничить и понять - не работает модуль или не снимается информация. В карточке оборудования - следует проверить лог запусков модуля usm_peleng по устройству. | |||
2. Следует убедиться, что верны community доступа, пароли и само устройство физически подключено и работает. | |||
3. В самой ERP "UserSide" откройте карточку коммутатора и перейдите по ссылке "FDB-таблица" | |||
4. Для теста - следует запустить модуля конкретно для определенного коммутатора. Например: | |||
perl usm_peleng.pl s 998 | |||
запустит модуль для коммутатора ID: 998 | |||
Проверяем нет ли ошибок в выводе информации. | |||
В файлах логов анализируем полученную информацию. |
Версия от 21:00, 2 января 2017
USM_CABLETEST - это модуль для периодического опроса кабельным тестером длин кабелей для известных моделей коммутаторов, фиксация результатов и вывод уведомлений об изменении значений
Язык модуля: Perl
Текущая версия: см. на странице: Модули
Статус модуля: Платный
Необходимые модули Perl:
Time::Local Socket FindBin URI URI::Escape LWP::UserAgent JSON Data::Dumper Net::Telnet() Net::SNMP
Общую информацию для всех модулей см. на странице: Модули
Поддерживаемые модели устройств
D-Link DES-3010G D-Link DES-3026 D-Link DES-3028 D-Link DES-3028G D-Link DES-3200-26 D-Link DES-3200-26/C1 D-Link DES-3200-28 D-Link DES-3200-28/C1 D-Link DES-3200-28F D-Link DES-3200-52 D-Link DES-3200-52/C1 D-Link DES-3526 D-Link DES-3528
Основные функции
- периодическое получение информации о длине кабелей, включённых в медные порты коммутаторов либо об отсутствии там кабеля вовсе
- фиксация полученных результатов
- контроль фактов изменения длин кабелей и вывод соответствующих уведомлений
Метод получения данных - telnet или SNMP (в зависимости от модели коммутатора).
За один запуск модуль подключается к одному устройству и пытается выполнить для него опрос.
Установка и настройка модуля
- Выделите отдельный каталог. Абсолютно произвольный. Лучше его не размещать в каталоге, доступном через web. Взаимодействие с ERP "UserSide" осуществляется средствами API по http/s-протоколу. Таким образом модуль полностью автономен и может работать на любом отдельном компьютере в любой подсети. Также создайте отдельный каталог для логов модуля. Не забудьте указать для него права на запись.
- Перенесите туда файлы из архива модуля. Пример файла конфигурации "usm_cabletest.conf-example" переименуйте в "usm_cabletest.conf". В нём выполните настройку параметров. Перечень возможных параметров указан ниже.
- Проверьте наличие дополнительных perl-пакетов, которые требуются для запуска модуля. Их список приведён выше. Если у вас они не установлены - модуль выдаст ошибку при запуске и perl-пакет необходимо будет установить (с помощью CPAN или PPM).
- В разделе "Настройка - Модули" включите работу с модулем usm_peleng
- В карточках коммутаторов следует включить работу с модулем usm_peleng
- Запустите модуль руками
perl usm_peleng.pl
Он должен запуститься и отработать без ошибок.
7. Впишите запуск модуля в системный cron, согласно рекомендациям ниже
Уточнения:
- При добавлении нового коммутатора в систему, у него автоматически включается параметр - опрашивать устройство модулем usm_peleng
- При запуске модуль обрабатывает только одно устройство. Следовательно в системный cron следует записать вызов необходимого количества копий модуля (из расчёта количества коммутаторов в системе и желаемой частоты опроса).
При указании количества копий модуля следует исходить из следующего: в ERP "UserSide" по-умолчанию время активности в сети составляет 15 минут (т.е. это время, через которое абонент/дом/узел будет считаться неактивным). Следовательно, в течении 15 минут модули должны успевать обрабатывать все устройства. Модуль при запуске обрабатывает одно устройство. Следовательно за 15 минут модуль успеет обработать 15 устройств. Если устройств больше - то необходимо использовать вторую копию модуля, третью и т.д. Копий модуля можно запускать любое количество. Для того чтобы одновременный запуск большого количества копий модуля не приводил к увеличенной нагрузке на базу данных и процессор (ведь при запуске будут выполняться одни и те же однотипные задачи) предназначен параметр "$delay". Указав в нём цифру произвольное задержки например в "20" - можно добиться что модули будут запускаться с 1 по 20 секунду в произвольном порядке и нагрузка распределится.
Также при большом количестве оборудования - нет смысла запускать опрос оборудования каждые 15 минут. Для распределения нагрузки можно настроить так работу, чтобы опрос каждого устройства происходил один раз в 1-4 часа. Этого в принципе достаточно.
Пример из cron запуска пяти копий модуля:
* * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null * * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null * * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null * * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null * * * * * perl /home/usm_peleng/usm_peleng.pl &> /dev/null
В карточке устройства, на котором включен модуль usm_peleng можно по соответствующей ссылке посмотреть историю опроса этого устройства модулем и общую таблицу опроса устройств.
Параметры
Настройка модуля осуществляется в файле usm_peleng.conf
$usUrl - URL к ERP "UserSide" $usApiKey - API-ключ к ERP "UserSide" $logsPath - Путь к каталогу для логов модуля $isSilence - Флаг - скрывать уведомления в консоль при работе модуля $delay - Произвольная временная задержка от 0 до n-секунд после запуска модуля. Позволяет уменьшить нагрузку на сервер при одновременном использовании большого количества модулей $citiesList - Перечень идентификаторов населенных пунктов (через запятую) IP-адреса которых опрашивать. 0 - объекты без адреса $isArpPolling - Флаг - опрашивать ли ARP-таблицу с устройства
Модуль usm_peleng можно запускать с параметрами (указать конкретное устройство, которое необходимо опросить)
Пример:
perl usm_peleng s 998
опросит коммутатор с ID 998
Если информация не снимается/модуль не работает
1. Необходимо разграничить и понять - не работает модуль или не снимается информация. В карточке оборудования - следует проверить лог запусков модуля usm_peleng по устройству.
2. Следует убедиться, что верны community доступа, пароли и само устройство физически подключено и работает.
3. В самой ERP "UserSide" откройте карточку коммутатора и перейдите по ссылке "FDB-таблица"
4. Для теста - следует запустить модуля конкретно для определенного коммутатора. Например:
perl usm_peleng.pl s 998
запустит модуль для коммутатора ID: 998
Проверяем нет ли ошибок в выводе информации.
В файлах логов анализируем полученную информацию.