Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Порівняння попередніх версій Попередня ревізія | Попередня ревізія | ||
switchpoller [2021/03/10 13:28] |
switchpoller [2023/06/19 09:29] borisov |
||
---|---|---|---|
Рядок 1: | Рядок 1: | ||
+ | ====== Опитування світчів за допомогою SNMP ====== | ||
+ | В Ubilling починаючи з релізу 0.4.1 з' | ||
+ | |||
+ | ====== Підтримуване з коробки обладнання ====== | ||
+ | * ZyXEL GS-4012F | ||
+ | * ZyXEL GS-3012F | ||
+ | * ZyXEL ES-2108 | ||
+ | * ZyXEL ES-2108G | ||
+ | * Zyxel GS-2200-24 | ||
+ | * Cisco Catalyst 3500 | ||
+ | * Cisco Catalyst WS-C3548-XL-EN | ||
+ | * Cisco-2940-8TT-S | ||
+ | * Cisco Catalyst 3750G-24TS-S | ||
+ | * Cisco Catalyst 3750-24TS-S | ||
+ | * Cisco Catalyst 3560-24TS-S | ||
+ | * Cisco SF300-24 | ||
+ | * Cisco Catalyst 2960-24TC-L | ||
+ | * Cisco Catalyst C2960-48TC-L | ||
+ | * Foxgate S6248-S4 | ||
+ | * Foxgate S6224-S4 | ||
+ | * Foxgate S6208-S1 | ||
+ | * Foxgate S6424-S2C2 | ||
+ | * Foxgate-S6224-S2 | ||
+ | * Foxgate-S-6008-S1L2 | ||
+ | * D-Link DES-3200-10 | ||
+ | * D-Link DES-3200-18 | ||
+ | * D-Link DES-3200-26 | ||
+ | * D-Link DES-3200-28 | ||
+ | * D-Link DES-3526 | ||
+ | * D-Link DES-1228/ME | ||
+ | * D-Link DGS-1100-6/ | ||
+ | * D-Link DGS-3120-24sc | ||
+ | * D-Link DES-3200-28F | ||
+ | * D-Link DGS-1510-52 | ||
+ | * D-Link DGS-1210-20 | ||
+ | * D-Link DES-2108 | ||
+ | * D-Link DES-3010G | ||
+ | * D-Link DES-3026 | ||
+ | * D-Link DES-3226S | ||
+ | * D-Link DGS-3100-24TG | ||
+ | * D-Link DGS-1500-20 | ||
+ | * D-Link DGS-3000-10TC | ||
+ | * D-Link DGS-3024 | ||
+ | * D-Link DGS-3200-10 | ||
+ | * D-Link DES-3028 | ||
+ | * D-Link DES-1210-26 | ||
+ | * D-Link DES-1210-28 | ||
+ | * D-Link DGS-1210-10 | ||
+ | * D-Link DGS-1210-12TS | ||
+ | * D-Link DGS-3000-28SC | ||
+ | * D-Link DGS-3627G | ||
+ | * HP ProCurve Switch 2626 | ||
+ | * HP ProCurve Switch 2650 | ||
+ | * HP ProCurve Switch 2524 | ||
+ | * HP ProCurve Switch 2824 | ||
+ | * Dell PowerConnect | ||
+ | * Dell EMC Networking N1148T-ON | ||
+ | * Alcatel LS-5224 | ||
+ | * Huawei S2326TP | ||
+ | * Extreme Networks Summit 200-24 | ||
+ | * ZIZITRA | ||
+ | * TP-LINK TL-SG5412F | ||
+ | * TP-LINK TL-SL5428E v2 | ||
+ | * Edge-Core ECS3510-28T | ||
+ | * Huawei s232tp_c05 | ||
+ | * Eltex MES1124MB | ||
+ | * Eltex MES2124MB | ||
+ | * Eltex MES2124F | ||
+ | * Eltex MES3108F | ||
+ | * 3COM-3250 | ||
+ | * Mikrotik-CSS326-24G-2S | ||
+ | |||
+ | |||
+ | І багато-багато інших, про які ми вже задовбалися писати. Давайте ви самі подивитеся що буде працювати з коробки заглянувши в директорію **config/ | ||
+ | |||
+ | |||
+ | |||
+ | ====== Налаштування ====== | ||
+ | |||
+ | У загальному випадку налаштування зводитися до додавання моделі світча з правильним шаблоном SNMP | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | Після чого слід додати пристрій із потрібною моделькою і зазначеним SNMP ком' | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | Якщо все додано правильно - у світча в колонці дії має з' | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Набір параметрів, | ||
+ | |||
+ | {{: | ||
+ | {{: | ||
+ | {{: | ||
+ | |||
+ | |||
+ | Враховуючи, | ||
+ | |||
+ | |||
+ | ====== Формат шаблону для опитування пристрою ====== | ||
+ | Шаблони всіх пристроїв лежать у **/ | ||
+ | |||
+ | <file ini megaswitch9000> | ||
+ | [define] | ||
+ | DEVICE=" | ||
+ | FDB=true | ||
+ | FDB_MODE=default | ||
+ | |||
+ | [PORTSTATE] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportstates | ||
+ | |||
+ | [UPTIME] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_raw | ||
+ | </ | ||
+ | |||
+ | або такий для OLT: | ||
+ | |||
+ | <file ini BDCOM_GP3608> | ||
+ | [define] | ||
+ | DEVICE=" | ||
+ | PON_ONU_PORT_MAX=128 | ||
+ | |||
+ | [signal] | ||
+ | SIGNALMODE=" | ||
+ | SIGINDEX=" | ||
+ | MACINDEX=" | ||
+ | SIGVALUE=" | ||
+ | MACVALUE=" | ||
+ | OFFSET=" | ||
+ | OFFSETMODE=" | ||
+ | DOWNVALUE=" | ||
+ | |||
+ | [misc] | ||
+ | ONUINDEX=" | ||
+ | ONUVALUE=" | ||
+ | FDBINDEX=" | ||
+ | FDBVALUE=" | ||
+ | FDBDEVINDEX=" | ||
+ | FDBDEVVALUE=" | ||
+ | DISTINDEX=" | ||
+ | DISTVALUE=" | ||
+ | INTERFACEINDEX=" | ||
+ | INTERFACEVALUE=" | ||
+ | RTTINDEX=" | ||
+ | |||
+ | [system] | ||
+ | CPULOAD=" | ||
+ | |||
+ | </ | ||
+ | |||
+ | Як бачимо файл складається із секцій.\\ | ||
+ | Секція **[define]** є обов' | ||
+ | Також існують необов' | ||
+ | * **FDB_ALLOW_ONLY_PORTS** - вказує, | ||
+ | * **FDB_IGNORE_PORTS** - вказує порти, MAC-адреси, | ||
+ | Слід зазначити, | ||
+ | | ||
+ | Далі кожна із секцій описує унікальний набір параметрів, | ||
+ | Починаючи з релізу Ubilling 0.8.5 також можна зберігати ваші шаблони в **content/ | ||
+ | \\ | ||
+ | |||
+ | Наразі доступні такі парсери отриманих з OID даних: | ||
+ | |||
+ | * **sp_parse_raw** - дані показуються як є без особливої обробки | ||
+ | * **sp_parse_raw_sanitized** - дані будуть показані як є, просто з викушеним типом. | ||
+ | * **sp_parse_zyportbytes** - лічильники байт/ | ||
+ | * **sp_parse_zyportdesc** - строкові описи портів | ||
+ | * **sp_parse_zyportstates** - стан портів | ||
+ | * **sp_parse_ciscocpu** - навантаження на CPU в % | ||
+ | * **sp_parse_ciscomemory** - кількість зайнятої пам' | ||
+ | * **sp_parse_eltex_acpower** - напруга AC живлення світчів Eltex | ||
+ | * **sp_parse_eltex_dcpower** - напруга DC живлення світчів Eltex | ||
+ | * **sp_parse_eltex_battery** - рівень заряду АКБ світчів Eltex | ||
+ | * **sp_parse_fxportstates** - стан портів для деяких Foxgate 60xx | ||
+ | * **sp_parse_fxportbytes** - лічильники байт/ | ||
+ | * **sp_parse_cable_tester** - парсер кабельного тестера для світчів Dlink | ||
+ | * **sp_parse_time_seconds** - парсер часу із секунд у людино-читабельний вигляд | ||
+ | * **sp_parse_power** - парсер наявності електроенергії (1/0). | ||
+ | * **sp_parse_eping_temp** - парсер температури з Equicom ping3 (так, вона тупо ділитися на 10) | ||
+ | * **sp_parse_eping_temp_gauge** - нормальний такій градусник для Equicom ping3 | ||
+ | * **sp_parse_division_temperature** - універсальний градусник з розподілом значень на DIV і форматом шкали у вигляді UNITS=" | ||
+ | |||
+ | Також доступні наступні режими FDB: | ||
+ | * default | ||
+ | * dlp | ||
+ | * tlp5428ev2 | ||
+ | * tlp2428 | ||
+ | * tlp2210 | ||
+ | * flp | ||
+ | * ciscoebobo | ||
+ | |||
+ | ====== Формат " | ||
+ | Повністю базується на базовому форматі шаблонів, | ||
+ | |||
+ | __Отже, нові параметри секції **[define]**__: | ||
+ | |||
+ | * **POLLMODE** має бути завжди **cumulative**, | ||
+ | * **FDB_MODE** має бути завжди **sw_cumulative**, | ||
+ | * **SFPSTARTPORT**, | ||
+ | * **POESTARTPORT**, | ||
+ | * // | ||
+ | |||
+ | __Далі трохи про " | ||
+ | |||
+ | **PORTIFACE** - у цій секції вказуються OID'и для отримання індексів портів, | ||
+ | <code ini> | ||
+ | [PORTIFACE] | ||
+ | PORTINDEX=" | ||
+ | PORTDESCR=" | ||
+ | PORTALIAS=" | ||
+ | </ | ||
+ | |||
+ | **PORTDESC** - як і випливає з коментаря до цієї секції, | ||
+ | <code ini> | ||
+ | [PORTDESC] | ||
+ | ; just a placeholder | ||
+ | NAME=" | ||
+ | </ | ||
+ | |||
+ | **PORT.1D_FDB**, | ||
+ | <code ini> | ||
+ | [PORT.1D_FDB] | ||
+ | PORTTABLE=" | ||
+ | PORTSTATUS=" | ||
+ | |||
+ | [PORT.1Q_FDB] | ||
+ | PORTTABLE=" | ||
+ | PORTSTATUS=" | ||
+ | </ | ||
+ | |||
+ | А ще ми тепер можемо вказувати в секціях одиниці виміру і величину, | ||
+ | <code ini> | ||
+ | [SFPTXPOWER] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | DIV=1000 | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units | ||
+ | |||
+ | [CPU TEMP] | ||
+ | NAME=" | ||
+ | SECTPOLLMODE=" | ||
+ | OIDS=" | ||
+ | DIV=10 | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units_noport | ||
+ | </ | ||
+ | |||
+ | __Нові парсери__: | ||
+ | * **sp_parse_raw_trim_tab** - те саме, що і sp_parse_raw, | ||
+ | * **sp_parse_division_units** - обробляє параметри **DIV** і **UNITS**, якщо такі є в секції, | ||
+ | * **sp_parse_division_units_noport** - те саме, що і sp_parse_division_units, | ||
+ | * **sp_parse_mikrotik_poe** - як нескладно здогадатися з назви - призначений для шаблонів пристроїв Mikrotik з підтримкою живлення інших пристроїв по PoE. | ||
+ | * **sp_parse_sw_port_idx** - власне - серце кумулятивного опитування, | ||
+ | * **sp_parse_sw_port_descr** - як і попередній парсер - призначений більше для " | ||
+ | |||
+ | |||
+ | То як же в підсумку матиме вигляд кумулятивний шаблон для пристрою? | ||
+ | <code ini> | ||
+ | [define] | ||
+ | DEVICE=Mikrotik-CSS106_RB260GSP_SW_SFP | ||
+ | POLLMODE=cumulative | ||
+ | SFPSTARTPORT=5 | ||
+ | SFPENDPORT=5 | ||
+ | POESTARTPORT=2 | ||
+ | POEENDPORT=5 | ||
+ | FDB=true | ||
+ | FDB_MODE=sw_cumulative | ||
+ | FDB_ALLOW_ONLY_PORTS= | ||
+ | FDB_IGNORE_PORTS= | ||
+ | |||
+ | [PORTIFACE] | ||
+ | PORTINDEX=" | ||
+ | PORTDESCR=" | ||
+ | PORTALIAS=" | ||
+ | |||
+ | [PORT.1D_FDB] | ||
+ | PORTTABLE=" | ||
+ | PORTSTATUS=" | ||
+ | |||
+ | [PORT.1Q_FDB] | ||
+ | PORTTABLE=" | ||
+ | PORTSTATUS=" | ||
+ | |||
+ | [PORTSTATE] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportstates | ||
+ | |||
+ | [PORTDESC] | ||
+ | ; just a placeholder | ||
+ | NAME=" | ||
+ | |||
+ | [PORTTX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [PORTRX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [PORTERRTX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [PORTERRRX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [PORTMULTTX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [PORTMULTRX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [PORTBRODTX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [PORTBRODRX] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_zyportbytes | ||
+ | |||
+ | [SFPWAVELENGTH] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | DIV=100 | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units | ||
+ | |||
+ | [SFPTEMP] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units | ||
+ | |||
+ | [SFPVOLTAGE] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | DIV=1000 | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units | ||
+ | |||
+ | [SFPCURRENT] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units | ||
+ | |||
+ | [POESTATUS] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_mikrotik_poe | ||
+ | |||
+ | [POECURRENT] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units | ||
+ | |||
+ | [POEPOWER] | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | DIV=10 | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units | ||
+ | |||
+ | [UPTIME] | ||
+ | NAME=" | ||
+ | SECTPOLLMODE=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_raw_trim_tab | ||
+ | |||
+ | [SYSTEM VOLTAGE] | ||
+ | NAME=" | ||
+ | SECTPOLLMODE=" | ||
+ | OIDS=" | ||
+ | DIV=10 | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units_noport | ||
+ | |||
+ | [SYSTEM TEMP] | ||
+ | NAME=" | ||
+ | SECTPOLLMODE=" | ||
+ | OIDS=" | ||
+ | DIV=10 | ||
+ | UNITS=" | ||
+ | PARSER=sp_parse_division_units_noport | ||
+ | |||
+ | [SYSTEM VERSION] | ||
+ | NAME=" | ||
+ | SECTPOLLMODE=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_raw_trim_tab | ||
+ | </ | ||
+ | ====== А якщо потрібно робити ще й snmpset? ====== | ||
+ | |||
+ | Починаючи з релізу 0.8.4 з' | ||
+ | |||
+ | <code ini> | ||
+ | SETOIDS=" | ||
+ | </ | ||
+ | |||
+ | Де oid є власне oid-ом, value є значенням, | ||
+ | |||
+ | * i INTEGER | ||
+ | * u INTEGER UNSIGNED | ||
+ | * s STRING | ||
+ | * x HEX STRING | ||
+ | * d DECIMAL STRING | ||
+ | * n NULLOBJ | ||
+ | * o OBJID | ||
+ | * t TIMETICKS | ||
+ | * a IPADDRESS | ||
+ | * b BITS | ||
+ | |||
+ | Слід також зауважити, | ||
+ | <code ini> | ||
+ | [portnames] | ||
+ | SETOIDS=" | ||
+ | </ | ||
+ | Хоча так, ніхто не забороняє бути їй при цьому звичайною інтерактивною секцією і показувати в процесі своєї роботи якісь результати. Наприклад якось так: | ||
+ | |||
+ | <code ini> | ||
+ | [portnames] | ||
+ | SETOIDS=" | ||
+ | NAME=" | ||
+ | OIDS=" | ||
+ | PARSER=sp_parse_raw | ||
+ | </ | ||
+ | У такому разі слід завжди пам' | ||
+ | |||
+ | <code ini> | ||
+ | [define] | ||
+ | PON_ONU_PORT_MAX=128 | ||
+ | </ | ||
+ | Якщо ви використовуєте дві технології ПОН у себе в мережі і вам потрібно перекрити глобальний обов' | ||
+ | ====== Генератор шаблонів ====== | ||
+ | Також камрад [[http:// | ||