Сборщик PON информации.
Собирает информацию о PON устройствах.
Рисует графики сигнала.
Работает через cron.
/usr/abills/libexec/billd equipment_pon [ [NAS_IDS='1;2;5;7'] [STEP=600] [RELOAD=1] [SKIP_RRD=1] [multi=1 [THREADS=30]] [TIMEOUT=60] [QUERY_OIDS="ONU_DESC;ONU_IN_BYTE;ONU_OUT_BYTE"] [DONT_USE_TRANSACTION=1] ] | [CPE_CHECK=1] | [ [CPE_FILL=1]|[FORCE_FILL=1]|[FILL_CPE_FROM_NAS_AND_PORT=1] [NAS_IDS='1;2;5;7'] ] | [SERIAL_SCAN=1] | [SNMP_SERIAL_SCAN_ALL=1] [DEBUG=1]
По умолчанию выполняется сбор информации про PON устройства. Если указан какой-то из параметров: CPE_CHECK=1, CPE_FILL=1, FORCE_FILL=1, FILL_CPE_FROM_NAS_AND_PORT=1, SERIAL_SCAN=1, SNMP_SERIAL_SCAN_ALL=1, вместо этого выполняется соответствующее действие.
Дополнительные параметры:
RELOAD=1 | Перезагрузить данные для OLT. Вытираются старые записи и сбор статистики начинается с начала. Когда не заданы NAS_IDS, удаляются все ONU, в том числе не привязанные ни к какому порту на OLT'е, или привязанные к удалённым OLT'ам |
---|---|
DEBUG=1 | Режим отладки |
NAS_IDS= | Список NAS-ов. По умолчанию он работает со всеми активными OLT NAS_IDS='1;2;5;7' |
SKIP_RRD=1 | Не рисовать графики RRD |
STEP=600 | Если запуск плагина производится раз в 10 мин (Default 300). Если неправильно указать период запуска (например, указать 10 минут, а запускать раз в час), графики на странице ONU могут не работать. |
CPE_CHECK=1 | Автоматическая проверка значений порт и сервер доступа, для пользователей у которых прописан CPE_MAC существующей ОНУ. |
CPE_FILL=1 | Автоматическое заполнение значений порт и сервер доступа, для пользователей у которых прописан CPE_MAC существующей ОНУ. (Только если у пользователя эти поля не заполнены). Игнорирует ОНУ, которые не привязаны к серверу доступа. |
FORCE_FILL=1 | Автоматически перезаписывает значение порта и сервера доступа у пользователей. |
FILL_CPE_FROM_NAS_AND_PORT=1 | Заполняет CPE_MAC у пользователей по заполненным серверу доступа и порту (только если у пользователя CPE_MAC не заполнен). Полезно, когда сервер доступа и порт заполнялись вручную, а нужно заполнить CPE_MAC и перейти на автозаполнение с помощью CPE_FILL=1 и FORCE_FILL=1. |
TIMEOUT=60 | Timeout опроса по SNMP в секундах. Нужно изменять, когда OLT долго отвечает по SNMP и не укладывается в стандартный timeout. По умолчанию 5. |
multi=1 | Запускать в многопоточном режиме, каждый NAS в отдельном потоке. Значительно уменьшает время выполнения, если NAS-ов много. |
THREADS=30 | Максимальное количество потоков для многопоточного режима (multi=1). По умолчанию 10. |
QUERY_OIDS= "ONU_DESC;ONU_IN_BYTE;ONU_OUT_BYTE" | Опрашивать только указанные OID'ы. Помогает ускорить опрос OLT'а, если он на какие-то OID'ы отвечает очень долго (например, OLT_RX_POWER и ONU_RX_POWER на Huawei) - их можно не опрашивать. OID'ы разделяются знаком ";". Обязательные OID'ы (ONU_MAC_SERIAL, ONU_STATUS) будут опрашиваться всегда, независимо от значения этого параметра. Если указано значение "only_required", будут опрашиваться только обязательные OID'ы. Параметр работает только для BDCOM, Huawei, ZTE. Список возможных OID'ов: ONU_MAC_SERIAL, ONU_STATUS, ONU_TX_POWER, ONU_RX_POWER, OLT_RX_POWER, ONU_DESC, ONU_IN_BYTE, ONU_OUT_BYTE, TEMPERATURE, SRV_PROFILE, LINE_PROFILE, VLAN. |
DONT_USE_TRANSACTION=1 | Начиная с Abills 0.90 по умолчанию все запросы в БД от PON Grabber'а производятся внутри одной транзакции, это значительно ускоряет работу с БД. Используя этот параметр, можно вернуть старое поведение. |
При добавлении новых ONU на E-mail администратора приходит сообщение.
Если не работают графики на странице ONU, возможно, Pon Grabber выполняется слишком долго, и не укладывается в интервал. Тогда нужно увеличить интервал, так, чтобы Pon Grabber успевал выполниться и/или запускать его в многопоточном режиме опцией multi=1. Из-за особенностей работы RRDTool, возможно, нужно будет подождать несколько интервалов, прежде чем графики начнут рисоваться.
Параметр SERIAL_SCAN
Поиск дублирующихся серийников на разных OLT, и оповещение администратора о проблеме.
Пример:
/usr/abills/libexec/billd equipment_pon SERIAL_SCAN=1
Пример оповещения:
Параметр SNMP_SERIAL_SCAN_ALL
Поиск дублирующихся серийников на всех OLT, и оповещение администратора о проблеме.
Пример:
/usr/abills/libexec/billd equipment_pon SNMP_SERIAL_SCAN_ALL=1
Тестовая проверка работы
/usr/abills/libexec/billd equipment_pon DEBUG=1 Debug mode 1 NAS_TYPE : ELTEX, MODEL_NAME: OLT LTE-8X, NAS_IP: 192.168.12.4, NAS_ID: 17, ONU: 3 GT: 0.02133
Граббер отработал и занес в базу 3 ONU (ONU: 3)
Если pon grabber работает корректно, то в разделе информации об ONU появляются данные:
Пример для crontab
Запуск утилиты каждые 5 минут:
*/5 * * * * root /usr/abills/libexec/billd equipment_pon
Если запускать нужно каждые 10 минут:
*/10 * * * * root /usr/abills/libexec/billd equipment_pon STEP=600
При большом количестве onu и не очень быстрой дисковой системе можно уменьшать приоритет выполнения граббера:
# nice -n 19 ionice -c2 -n7 /usr/abills/libexec/billd equipment_pon STEP=86400 >/dev/null 2>&1