Table of Contents | ||
---|---|---|
|
Сборщик PON информации.
Собирает информацию о PON устройствах.
Рисует графики сигнала.
Работает через cron.
Code Block | ||
---|---|---|
| ||
/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"] [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,
FILL_SWITCH_PORT_FROM_CID=1,
PON_FILL_SWITCH_PORT_FROM_CID=1
SERIAL_SCAN=1,
SNMP_SERIAL_SCAN_ALL=1.
Дополнительные параметры:
RELOAD=1 | Перезагрузить данные для OLT. Вытираются старые записи и сбор статистики начинается с начала. Когда не заданы NAS_IDS, удаляются все ONU, в том числе не привязанные ни к какому порту на OLT'е, или привязанные к удалённым OLT'ам Внимание: при использовании этого параметра описания ONU, хранимые в биллинге удалятся При добавлении или удалении новых плат в OLT обязательно делайте RELOAD, чтобы система подтянула новые платы. |
---|---|
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 | Автоматически перезаписывает значение порта и сервера доступа у пользователей. |
VLANS=1 | Работает с VLAN / Server VLAN абонента. VLAN сверяется с полем VLAN на ONU, Server VLAN - с полем Server VLAN в оборудовании. Используется совместно с CPE_FILL, FORCE_FILL или CPE_CHECK. CPE_FILL=1 VLANS=1 - заполняет VLAN / Server VLAN, если он отсутствует. Не перезаписывает, если уже есть заполненное значение. FORCE_FILL=1 VLANS=1 - всегда перезаписывает VLAN / Server VLAN. CPE_CHECK=1 VLANS=1 - проверяет, правильно ли прописаны VLAN / Server VLAN у абонента, выводит различия на консоль, если есть. Не делает никаких изменений. |
FILL_CPE_FROM_NAS_AND_PORT=1 | Заполняет CPE_MAC у пользователей по заполненным серверу доступа и порту (только если у пользователя CPE_MAC не заполнен). Полезно, когда сервер доступа и порт заполнялись вручную, а нужно заполнить CPE_MAC и перейти на автозаполнение с помощью CPE_FILL=1 и FORCE_FILL=1. |
FILL_SWITCH_PORT_FROM_CID | Заполняет PORT пользователю (если не заполнено) из онлайн CID |
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. |
TRANSACTION=1 | Вносить все данные одной транзакцией (ускоряет работу) |
ALERT=1 | Отправка уведомления через модуль Events если уровень ONU сигнала слабый или плохой. |
CLEAN_DELETED=1 | Очистка удаленных ONU из базы данных |
PON_FILL_SWITCH_PORT_FROM_CID=1 | Заполняет NAS и PORT пользователю (если не заполнено) из equipment_mac_log. При опции PON_FORCE_FILL=1 принудельно обновит NAS и PORT в интернет пользователях. DEBUG=1 - покажет информацию по добавленным данным. DEBUG=3 добавит в запрос Mysql дебаг |
При добавлении новых ONU на E-mail администратора приходит сообщение.
Если не работают графики на странице ONU, возможно, Pon Grabber выполняется слишком долго, и не укладывается в интервал. Тогда нужно увеличить интервал, так, чтобы Pon Grabber успевал выполниться и/или запускать его в многопоточном режиме опцией multi=1. Из-за особенностей работы RRDTool, возможно, нужно будет подождать несколько интервалов, прежде чем графики начнут рисоваться.
При добавлении новой платы на OLT она не начинает опрашиваться автоматически. Нужно вручную запустить PON Grabber с параметром RELOAD=1, чтобы появились ветки с новой платы.
Anchor | ||||
---|---|---|---|---|
|
Параметры CPE_FILL, FORCE_FILL, CPE_CHECK: обработка ситуации, когда в БД две или более ONU с одинаковым MAC-адресом
Если среди ONU с одинаковым MAC-адресом есть ровно одна онлайн ONU, она будет назначена абоненту. Иначе никаких изменений произведено не будет.
Пример, когда может возникнуть такая ситуация: перенесли ONU/ветку на другой OLT. Может случиться, что на старом OLT ONU останется со статусом оффлайн, а на новом OLT та же ONU появиться со статусом онлайн. Получается, что в БД как бы две ONU с одинаковым MAC-адресом.
Параметр SERIAL_SCAN
Поиск дублирующихся серийников на разных OLT, и оповещение администратора о проблеме.
Пример:
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/billd equipment_pon SERIAL_SCAN=1 |
Пример оповещения:
Параметр SNMP_SERIAL_SCAN_ALL
Поиск дублирующихся серийников на всех OLT, и оповещение администратора о проблеме.
Пример:
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/billd equipment_pon SNMP_SERIAL_SCAN_ALL=1 |
Тестовая проверка работы
Code Block | ||
---|---|---|
| ||
/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 минут:
Code Block | ||
---|---|---|
| ||
*/5 * * * * root /usr/abills/libexec/billd equipment_pon |
Если запускать нужно каждые 10 минут:
Code Block | ||
---|---|---|
| ||
*/10 * * * * root /usr/abills/libexec/billd equipment_pon STEP=600 |
При большом количестве onu и не очень быстрой дисковой системе можно уменьшать приоритет выполнения граббера:
Code Block |
---|
# nice -n 19 ionice -c2 -n7 /usr/abills/libexec/billd equipment_pon STEP=86400 >/dev/null 2>&1 |
Если и это не помогло, либо вам не нравятся однотипные логи регистрации и удаления онушек, то рекомендуем использовать опцию игнора логов:
Code Block | ||
---|---|---|
| ||
$conf{EQUIPMENT_PON_ONU_SKIP_LOG} = 1; |