Supported devices: NETIO 4All, PowerPDU 4C, PowerDIN 4Pz, PowerBOX 4Kx, PowerPDU 8QS
Aplikační poznámka AN41 demonstruje použití SNMP dohledového systému a ukazuje jak řešit problematiku sledování napájení nejen v IT aplikacích.
Zadání dohledu a vyhodnocování naměřených hodnot
Pro demonstraci v AN41 jsme připravili NETIO PowerPDU 4C, do jednotlivých výstupů jsou zapojeny spotřebiče:
- Output1 - Lednice
- Output2 - Varná konvice
- Output3 - Kávovar
- Output4 - Mikrovlnka
Cíle AN41
- Měřit a zobrazovat do grafů odběr všech zásuvek.
- Při zapnutí varné konvice zaslat emailem upozornění.
- Pokud necháme otevřené dveře lednice poslat emailem upozornění.
- Pokud přestane fungovat lednice poslat emailem upozornění.
PowerPDU 4C je připojené do LAN
- IP adresa: 192.168.101.31
- SNMP: povoleno čtení se SNMP community: netioVkuchynce7523
- z našeho PC a dohledového serveru se systémem Zabbix je možný přístup pomocí SNMP na NETIO zásuvku
Jak funguje SNMP
SNMP je protokol pro vzdálený dohled a ovládání zařízení. Na NETIO chytrých zásuvkách lze pomocí SNMP číst hodnoty OID objektů (stav zásuvky (0/1), proud [mA] který přes ni teče, okamžitou hodnotu počítadla [Wh]).
Přes SNMP lze pomocí funkce zápisu hodnoty ovládat výstup (zapnout, vypnout, přepnout, krátce zapnout a krátce vypnout). Doporučujeme ale používat pro zápis zabezpečenou verzi SNMP v3.
Hodnoty jsou identifikovány OID číslem a organizovány v hierarchickém stromu.
Pro označení jedné proměnné lze používat buď číselné označení nebo textové jméno.
SNMP OID
V AN41 budeme používat pouze OID v číselné podobě. Použití textových označení je přehlednější, ale vyžaduje importovat MIB NETIO do dohledového software. Ne všechny SW podporují MIB tabulku.
V hierarchickém stromu hodnot OID je pro NETIO přidělen prefix/„cesta“ .1.3.6.1.4.1.47952.
Podrobný popis SNMP na Netiích i s ukázkami a návodem k instalaci utilit je popsán v AN11 SNMP dohled a řízení napájecích výstupů 110/230V z CMD (command line) pro Windows a Linux
Proměnné dostupné v NETIO po SNMP
V následující tabulce jsou uvedena OID vhodná pro AN41:
OID |
Jmenné označení OID |
Typ |
Popis/Poznámka |
1.3.6.1.4.1.47952.1.1.1.2.x |
NetioOutputName |
STRING |
Jméno zásuvky/výstupu x (nastavené přes WEB rozhraní) |
1.3.6.1.4.1.47952.1.1.1.3.x |
NetioOutputState |
INTEGER |
Stav zásuvky x (0= vypnuto, 1=zapnuto) |
1.3.6.1.4.1.47952.1.1.1.25.x |
netioOutputLoad |
INTEGER |
Odebíraná zátěž ze zásuvky x [W] |
1.3.6.1.4.1.47952.1.1.1.26.x |
netioOutputEnergy |
INTEGER |
Odebraná energie ze zásuvky x [Wh] Čas odkdy je měřen začátek odběru je uložen v OID netioOutputEnergyStart |
1.3.6.1.4.1.47952.1.1.1.27.x |
netioOutputEnergyStart |
DateAndTime |
Počáteční čas pro “netioOutputEnergy”. UTC *1 [DateAndTime] |
1.3.6.1.4.1.47952.1.1.1.28.x |
netioOutputCurrent |
INTEGER |
Odebíraný proud ze zásuvky x [mA] |
1.3.6.1.4.1.47952.1.1.1.29.x |
netioOutputCurrentPowerFactor |
INTEGER |
Účiník (power factor) odběru ze zásuvky x [cos Fi * 1000] Pokud je cos(Fi)=0,534 je výstup 534 |
Místo znaku x v OID doplníme číslo výstupu (zásuvky), to znamená 1 až 4 pro NETIO 4 nebo PowerPDU 4C, číslo 1 pro PowerCable REST 101x).
Hodnoty jednotlivých OID jsou interně aktualizovány každé 2 sekundy (NETIO 4, NETIO 4ALL a PowerPDU 4C). Častější odečet hodnot pomocí SNMP nemá význam a jen zbytečně zatěžuje NETIO i dohledový systém. Tento čas je také nutno brát do úvahy pro přesnost a možnosti měření okamžité zátěže a proudu – zátěž, jejíž spotřeba se mění častěji než cca jednou za 5 sekund nelze přesně a spolehlivě měřit.
Měřit Wh nebo A / W ?
Pro dohled energie lze používat dva typy hodnot:
1) Stav počítadla [Wh] - měříme energii přenesenou přes zásuvku (netioOutputEnergy [Wh])
- přesné určení celkové spotřeby ve Wh
- o výpočet přenesené energie se stará NETIO
- menší požadavky na dohledový systém (lze měřit i jednou za den a měření bude stále přesné)
- méně přehledné a pochopitelné hodnoty v grafech – je tam buď celková spotřeba která trvale stoupá, nebo častěji nárůst celkové spotřeby za jednotku času – například Wh/s.
- Přesnost měření závisí na interní přesnosti měření NETIO chytrých zásuvek a není zkreslena dohledem a odečtem.
- Odečítaná hodnota je ve Wh, což vytváří omezení pro měření a vyhodnocování krátkodobých a menších zátěží. Hodnota je typu Integer a ve Wh – například při zátěži 50 W se zvýší hodnota proměnné o 1 za 72 vteřin.
2) Okamžitou proudovou spotřebu [A] - ((netioOutputCurrent [mA] nebo netioOutputLoad [W])) a celkovou energii zhruba spočítá dohledový software
- Pro dohled kapacity jističe je lepší měření okamžité hodnoty (netioOutputCurrent [mA] nebo netioOutputLoad [W])
- Pro uživatele může být snazší pochopení některých grafů proudu a výsledků
- Při měření je potřeba odečítat hodnoty alespoň 2x častěji než je jejich změna. Klasický dohledový software odečítá jednou za 5 minut což je postačující jen pro některé případy.
- Pokud je zátěž krátkodobá nebo často kolísá, tak potřebujeme odečítat hodnotu častěji než je její změna. Například pokud odběr trvá 30s (zde uvaření vody ve varné konvici) a budeme odečítat jednou za 5 minut (výchozí nastavení většiny dohledových systémů) tak je velice pravděpodobné, že tento odběr ani nezaznamenáme.
Pro většinu úloh doporučujeme kombinovat měření obou typů hodnoty.
Obecná přesnost měření chytrých zásuvek NETIO je obecně pod 1% pro Power PDU a PowerCable REST 101x, pod 2% pro Netio 4.
Nastavení SNMP v PowerPDU 4C
Na NETIO zásuvce zapneme přístup pomocí SNMP. Pro čtení (dohled) nám stačí SNMP v1:
Záložka M2M Api protocols -> SNMP
- Enable SNMP: X
- Port: 161 (výchozí hodnota)
- SNMP version: 1,2c
- Community: SNMP-community - tento řetězec je „heslo“ a budeme ho zadávat do software který bude číst pomocí SNMP hodnoty z NETIO. V tomto AN budeme používat „netioVkuchynce7523“.
- Uložíme změny – Save Changes
Poznámka: Pokud chceme i zapisovat/ovládat zásuvky je potřeba používat SNMP v3.
Čtení přes SNMP z příkazové řádky pomocí utilit z balíku Net-SNMP
Tento způsob čtení se nám hodí pro kontrolu funkce, nebo pro jednoduché použití ve vlastních skriptovacích jazycích.
Uvedené příklady jsou pro Net-SNMP a Linux. Příklady pro windows jsou uvedeny v AN 11 SNMP dohled a řízení napájecích výstupů 110/230V z CMD (command line) pro Windows a Linux
Syntaxe (SNMP v1:
snmpget -v 1 -c <SNMP-community> <IP> <OID>
$ snmpget -v 1 -c netioVkuchynce7523 192.168.101.31 .1.3.6.1.4.1.47952.1.1.1.28.1
iso.3.6.1.4.1.47952.1.1.1.28.1 = INTEGER: 17
Kde hodnota 17 znamená, že ze zásuvky 1 je odebírán proud 17 mA.
snmpget -v 1 -c netioVkuchynce7523 192.168.101.31 .1.3.6.1.4.1.47952.1.1.1.26.1
iso.3.6.1.4.1.47952.1.1.1.26.3 = INTEGER: 25132
Hodnota 25132 znamená, že ze zásuvky 3 bylo odebráno 25132 Wh (od kdy lze zjistit z OID 27.3).
Pokud použijeme SNMP v3:
$ snmpget -v 3 -a SHA -A onlinedemo -l authPriv -u onlinedemo -x AES -X onlinedemo netio-4c.netio-products.com iso.3.6.1.4.1.47952.1.1.1.28.1
iso.3.6.1.4.1.47952.1.1.1.28.1 = INTEGER: 2577
Analýza zadání a možností NETIO
Měřit a zobrazovat do grafů odběr všech zásuvek
Budeme dohledovat a v grafech zobrazovat tyto OID:
- Output1-Load .1.3.6.1.4.1.47952.1.1.1.25.1
- Output1-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.1
- Output1-Current .1.3.6.1.4.1.47952.1.1.1.28.1
- Output2-Load .1.3.6.1.4.1.47952.1.1.1.25.2
- Output2-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.2
- Output2-Current .1.3.6.1.4.1.47952.1.1.1.28.2
- Output3-Load .1.3.6.1.4.1.47952.1.1.1.25.3
- Output3-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.3
- Output3-Current .1.3.6.1.4.1.47952.1.1.1.28.3
- Output4-Load .1.3.6.1.4.1.47952.1.1.1.25.4
- Output4-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.4
- Output4-Current .1.3.6.1.4.1.47952.1.1.1.28.4
Při zapnutí varné konvice zaslat emailem upozornění
Varná konvice je v zásuvce Output2 a dle měření z předchozího bodu má příkon cca 2000 W. Uvaření minimálního množství studené vody trvá 93 vteřin.
Vygenerujeme událost při překročení odběru 1500 W ze zásuvky 2 – Output2-Load – OID .1.3.6.1.4.1.47952.1.1.1.25.2.
Víme že měření budeme dělat v Zabbixu, kde je výchozí perioda odečtu 30 vteřin, což je postačující. Přihřátí teplé vody – kratší intervaly neřešíme.
Poznámka:
Obdobnou úlohu lze řešit odesláním emailu z Lua skriptu, který běží přímo v NETIO zásuvkách – viz AN03 Vypnutí zásuvky při proudu nad limit a poslání emailu
Lednice
Zadání na lednici je:
- Pokud necháme otevřené dveře lednice poslat emailem upozornění.
- Pokud přestane fungovat lednice poslat emailem upozornění.
Obě zadání budeme hlídat pomocí spotřebované energie. Lednice je ve výstupu Output1, budeme tedy číst a hlídat Output1-OutputEnergy - .1.3.6.1.4.1.47952.1.1.1.26.1.
Analýzou chování lednice (z grafů které jsme získali v předchozích krocích) jsme zjistili, že:
Při běhu kompresoru je spotřeba 53 W.
Při zavřených dveřích běží průměrně 26 minut za hodinu.
Celkem to je tedy odebraných cca 23 Wh za hodinu.
Nerozeznáme otevřené dveře od naplnění lednice teplými potravinami.
Interval po který budeme počítat spotřebovanou energii volíme 3 hodiny. Zadání na dohledový systém bude tedy:
Budeme detekovat spotřebu v intervalu posledních 3 hodin:
- Příliš malá spotřeba (výpadek lednice): < 20 Wh
- Normální běh se zavřenými dveřmi: 69Wh
- Příliš velká spotřeba (otevřené dveře) > 120 Wh
- Trvalý běh kompresoru (maximální spotřeba): 159 Wh
Poznámka: Odběr lednice (kolik času běží kompresor) silně závisí na jakou teplotu je nastavena i na teplotě venkovního prostředí.
Poznámka 2: Měření a dohled odběru lednice můžeme vytvořit i z Load (aktuálnímu odběru ve W). Výhodou bude přehlednější a pochopitelnější zadávání a výpočet hodnot. Nevýhodou by bylo snížení intervalu/přesnosti měření z 2 na 30 sekund, což by ale pro tento případ také stačilo.
Zabbix SNMP dohled
Postup nastavení dohledu uživatelských OID je podrobně popsán v dokumentaci Zabbixu:
https://www.zabbix.com/documentation/current/manual/config/items/itemtypes/snmp
Přidáme Hosta
Configuration -> Hosts -> Create host
-
záložka Host
- "Host name": netio-kuchynka
- "Groups": jakákoliv skupina Zabbixu
- "Agent Interfaces": Remove
- "SNMP interfaces": IP: 192.168.101.31
-
záložka Templates (volitelně přidáme dohled pomocí ICMP piongů že netio žije):
-
Link new Templates: "Template Module ICMP Ping"
- Add
- Update
-
Link new Templates: "Template Module ICMP Ping"
Zabbix items
Vytvoříme Items – položky které jsou pravidělně dotazovány a ukládány do databáze – jedné Items bude odpovídat jedno dohledované OID (jedna veličina na jedné zásuvce)
-
záložka Items
- Create Item
-
záložka Item
- Name: netio-kuchynka-SNMP-Output1-OutputEnergy
- Type: SNMPv1 agent
- Key: netio-kuchynka-SNMP-Output1-OutputEnergy
- SNMP OID: .1.3.6.1.4.1.47952.1.1.1.26.1
- SNMP community: netioVkuchynce7523
- Type of information: Numeric (float) (hodnota je celkový součet od zapnutí)
- History storage period: 365d
-
záložka Preprocessing
-
Preprocessing steps:
- Add
- "Change per second"
- Add
-
Preprocessing steps:
A zopakujeme vytvoření items pro další 3 zásuvky ze změněným OID a to vše pro Current, Load a OutputEnergy:
- Otevřeme Item přidanou v předchozím kroku a v ní zvolíme "Clone".
-
V klonované Item pak změníme:
- Name: netio-kuchynka-SNMP-Output2-OutputEnergy
- Key: netio-kuchynka-SNMP-Output2-OutputEnergy
- SNMP OID: .1.3.6.1.4.1.47952.1.1.1.26.2
- Add
Výsledné Items budou:
- netio-kuchynka-SNMP-Output1-Current .1.3.6.1.4.1.47952.1.1.1.28.1
- netio-kuchynka-SNMP-Output1-Load .1.3.6.1.4.1.47952.1.1.1.25.1
- netio-kuchynka-SNMP-Output1-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.1
- netio-kuchynka-SNMP-Output2-Current .1.3.6.1.4.1.47952.1.1.1.28.2
- netio-kuchynka-SNMP-Output2-Load .1.3.6.1.4.1.47952.1.1.1.25.2
- netio-kuchynka-SNMP-Output2-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.2
- netio-kuchynka-SNMP-Output3-Current .1.3.6.1.4.1.47952.1.1.1.28.3
- netio-kuchynka-SNMP-Output3-Load .1.3.6.1.4.1.47952.1.1.1.25.3
- netio-kuchynka-SNMP-Output3-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.3
- netio-kuchynka-SNMP-Output4-Current .1.3.6.1.4.1.47952.1.1.1.28.4
- netio-kuchynka-SNMP-Output4-Load .1.3.6.1.4.1.47952.1.1.1.25.4
- netio-kuchynka-SNMP-Output4-OutputEnergy .1.3.6.1.4.1.47952.1.1.1.26.4
Proměnnou outputEnergy budeme ukládat jako přírůstek oproti předchozí hodnotě – grafy nebudou růst, ale budou ukazovat odebrané Wh za sekundu (Zabbix zobrazuje všechny hodnoty a grafy za sekundu).
Zabbix Grafy
Configuration -> Hosts -> netio-kuchynka, záložka Graphs
-
"Create graph"
- Name: netio-kuchynka-OutputEnergy
- Height: 300
- Y axis MIN value: Fixed, 0
-
Items: Add:
- netio-kuchynka-SNMP-Output1-OutputEnergy
- netio-kuchynka-SNMP-Output2-OutputEnergy
- netio-kuchynka-SNMP-Output3-OutputEnergy
- netio-kuchynka-SNMP-Output4-OutputEnergy
- Graf si můžeme okamžitě zobrazit v "Preview".
- Add
Vytvoření grafu zopakujeme pro Current a Load.
Zabbix Screen (obrazovka) s grafy dostupnými pro uživatele
Monitoring -> Screens
-
Create screen
- Name: netio-kuchynka-SNMP
- Columns: 1
- Rows: 3
- Add
-
V seznamu vytvořených Screens se „Name“ netio-kuchynka-SNMP, klikneme na „Actions“: Constructor
-
Klikneme na „Change“
-
Graph: Vybereme požadovaný graf - „Select“,
- Group: Zabbix group ve které jsme vytvořili host netio-kuchynka
- Host: netio-kuchynka
- netio-kuchynka-SNMP-Current
- Add
-
Graph: Vybereme požadovaný graf - „Select“,
-
Obdobným způsobem přidáme zbylé 2 grafy pro:
- netio-kuchynka-SNMP-Load
- netio-kuchynka-SNMP-OutputEnergy
-
Klikneme na „Change“
Zobrazení Screen s grafy je možno přes Monitoring-> Sreens -> „netio-kuchynka-SNMP“.
Kde grafy Current jsou v mA a Load ve Wattech. Perioda vzorkování je 30s (výchozí hodnota zabbixu). Zřetelně je vidět cca 2 kW odběr varné konvice na Output2. Při změně rozlišení času jsou hodnoty přepočítány a zobrazeny na průměry za daný čas, takže například při zobrazení za poslední 3 měsíce bude průměrná spotřeba varné konvice jen cca 100 W.
Graf OutputEnergy je ve Wh/s, což odpovídá způsobu měření – měří se celková spotřeba od začátku měření (typicky restart NETIO). Výhodou je perioda vzorkování na maximu které podporuje zařízení (u NETIO 4x jsou to 2 sekundy) a meření i po dobu kdy nefunguje dohledový server nebo konektivita na NETIO.
Zabbix „Triggers“ - generování událostí na základě změřených dat
Zabbix dohled odešle mail při každém spuštění varné konvice.
Varná konvice je zapojena do Output2 a má spotřebu cca 2kW. Vytvoříme trigger který vytvoří problém se závažností Informational pokud Load na Output2 překročí 1500 W.
Postup je:
- Configuration -> Hosts
- řádek netio-kuchynka, Triggers
-
„Create Trigger“
- Name: „Trigger netio-kuchynka-SNMP-Output2-Load - Varna konvice zapnuta“
- Severity: Information
- Expression: {netio-kuchynka:netio-kuchynka-SNMP-Output2-Load.last()}>1500
- Add
Otestujeme zapnutím varné konvice.
Zabbix odešle mail pokud zapomeneme zavřít dveře lednice
Detekce je podle spotřeby – pokud spotřeba za poslední 3 hodiny překročí 120 Wh.
Použijeme funkci avg – průměrná hodnota za interval. Zabbix udává ve výpočtech a grafech jednotky v sekundách.
Hodnotu proti které porovnáváme průměrnou spotřebu získáme jako 120Wh / 3 hodiny / 3600 sekund (hodiny na sekundy) = 0,01111.
Postup je:
- Configuration -> Hosts
- řádek netio-kuchynka, Triggers
-
„Create Trigger“
- Name: „Trigger netio-kuchynka-SNMP-Output1-OutputEnergy - Lednice ma prilis velkou spotrebu“
- Severity: Average
- Expression: {netio-kuchynka:netio-kuchynka-SNMP-Output1-OutputEnergy.avg(3h)}>0.01111
- Add
Otestujeme výrazným snížením požadované teploty v lednici (bude několik hodin dochlazovat) nebo otevřením dveří lednice.
Zabbix odešle mail pokud lednice bude mít příliš malou spotřebu
Detekce je podle spotřeby – pokud je spotřeba za poslední 3 hodiny menší než 20 Wh.
Použijeme funkci avg – průměrná hodnota za interval.
Hodnotu proti které porovnáváme průměrnou spotřebu získáme jako 20 Wh / 3 hodiny / 3600 sekund (W hodiny na W sekundy) = 0,00185.
Postup je:
- Configuration -> Hosts
- řádek netio-kuchynka, Triggers
-
„Create Trigger“
- Name: „Trigger netio-kuchynka-SNMP-Output1-OutputEnergy - Lednice ma prilis malou spotrebu“
- Severity: Average
- Expression: {netio-kuchynka:netio-kuchynka-SNMP-Output1-OutputEnergy.avg(3h)}>0.00185
- Add
Otestujeme výrazným zvýšením požadované teploty v ledinici (několik hodin nebude vůbec chladit než teplota stoupne na novou vyšší požadovanou teplotu) nebo odpojením lednice.
Vytvořené triggery je možno vidět a ověřit i v grafech:
Nagios SNMP dohled
Nejběžnější způsob využití SNMP je pomocí pluginu (skriptu) check_snmp.
Z příkazové řádky můžeme výsledek měření získat pomocí (zde příklad pro Output1 Load):
/usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.25.1
SNMP OK - 0 | iso.3.6.1.4.1.47952.1.1.1.25.2=0
Výsledek spuštění skriptu vrátil, že hodnota OID je 0 (nulový odběr na zásuvce 2 v době měření). Nagios očekává od volání pluginu/skriptu návratovou hodnotu že je stav OK, Warning nebo Critical. Většinou potřebujeme provést porovnání hodnoty z OID proti námi požadované hodnotě. Porovnávání provádí skript check_snmp který můžeme volat s argumenty:
-w <Warning range>
-c <Critical range>
a do range zadáme rozsah hodnot, kdy není alert generován. Pozor - Použití rozsahů ve volání pluginu check_snmp má obrácenou logiku než v nagiosu a než bychom očekávali - (podrobněji viz. https://wiki.xdroop.com/space/nagios/check_snmp).
Poznámka: Skript se v nagiosu vždy jmenuje check_snmp, nicméně v různých distribucích a systémech se může lišit cesta. Cesta /usr/lib/nagios/plugins/check_snmp je platná pro Ubuntu 18, na Vašem operačním systému se může lišit - podívejte se kam se instalují soubory z balíčku monitoring-plugins-standard.
Poznámka : Nagios plugin check_netio nedoporučujeme používat pro NETIO 4 a novější, neboť využívá přístup na NETIO pomocí kshell a je vyvinut a testován jen pro starší NETIA 230.
Pro výše uvedené zadání měření není použití Nagiosu příliš vhodné, neboť má ve výchozí instalaci poměrně omezené možnosti a ve výchozí instalaci nepodporuje grafy.
Výhodou Nagiosu je jeho jednoduchost a rozšiřitelnost pomocí skriptů. Ve výchozí instalaci je snadno realizovatelný dohled překročení hodnoty jednotlivých čítačů. Pro nagios tedy uděláme jednodušší zadání:
- Spotřeba na Output2 je větší než 2000 W. Omezení Nagiosu kdy je měření jedné hodnoty jen jen jednou za 5 minut (takže se měření musí “trefit” s během konvice) budeme v tomto ukázkovém případě ignorovat a varnou konvici spustíme 3x za sebou.
- Detekovat zda je Kávovar odpojen nebo nefunkční. Kávovar má trvalý příkon 15mA. Měření pomocí odběru/W není použitelné neboť díky zaokrouhlování trvale udává 0 W. Budeme tedy měřit odběr v mA.
Test měření z CLI:
- Když konvice nevaří:
root@piskoviste:~# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.25.2
SNMP OK - 0 | iso.3.6.1.4.1.47952.1.1.1.25.2=0
- Když konvice vaří:
root@piskoviste:~# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.25.2
SNMP OK - 2202 | iso.3.6.1.4.1.47952.1.1.1.25.2=2202
- Kávovar je zapojený a má klidový odběr:
root@piskoviste:~# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.28.3
SNMP OK - 15 | iso.3.6.1.4.1.47952.1.1.1.28.3=15
- Kávovar běží:
/usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.28.3
SNMP OK - 5259 | iso.3.6.1.4.1.47952.1.1.1.28.3=5259
- Kávovar je vypojený nebo vadný:
root@piskoviste:~# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.28.3
SNMP OK - 0 | iso.3.6.1.4.1.47952.1.1.1.28.3=0
Navrhneme rozsahy detekce událostí a otestujeme:
- Varná konvice běží a generuje critical událost
/usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.25.2 -w :10 -c :2000
SNMP CRITICAL - *2165* | iso.3.6.1.4.1.47952.1.1.1.25.2=2165;:10;:2000
- Varná konvice neběží a stav je OK:
root@piskoviste:~# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.25.2 -w :10 -c :2000
SNMP OK - 0 | iso.3.6.1.4.1.47952.1.1.1.25.2=0;:10;:2000
- Kávovar má spotřebu větší než 10mA a stav je OK:
root@piskoviste:~# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.28.3 -w 10: -c 5:
SNMP OK - 14 | iso.3.6.1.4.1.47952.1.1.1.28.3=14;10:;5:
- Kávovar je vypojen a stav je critical:
root@piskoviste:~# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.28.3 -w 10: -c 5:
SNMP CRITICAL - *0* | iso.3.6.1.4.1.47952.1.1.1.28.3=0;10:;5:
Konfiguraci odpovídající výše naměřeným datům umístíme do souboru
/etc/nagios3/conf.d/netio.cfg
Obsah souboru:
define command{
command_name check_snmp
command_line $USER1$/check_snmp -H $HOSTADDRESS$ -C netioVkuchynce7523 -o $ARG1$ -w $ARG2$ -c $ARG3$
}
define host{
use generic-host
host_name netio
alias netio
address 192.168.101.31
}
define service{
use generic-service
host_name netio
service_description NetioOutput1Load
check_command check_snmp!.1.3.6.1.4.1.47952.1.1.1.25.2!:10!:2000
# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.25.2 -w :10 -c :2000
# warning above 10W
# critical above 2000W
}
define service{
use generic-service
host_name netio
service_description NetioOutput3Current
check_command check_snmp!.1.3.6.1.4.1.47952.1.1.1.28.3!10:!5:
# /usr/lib/nagios/plugins/check_snmp -H 192.168.101.31 -C netioVkuchynce7523 -o .1.3.6.1.4.1.47952.1.1.1.28.3 -w 10: -c 5:
# warning below 10mA
# critical below 5mA
}
Restartujeme nagios:
service nagios3 restart
Na webovém rozhraní by měly přibýt 2 služby které budou hlídat výše navržené rozsahy hodnot:
Poznámka: Více informací o Nagiosu
FAQ
1) Nefunguje SNMP rozhraní v NETIO chytrých zásuvkách
SNMP je třeba povolit, detaily najdete v manuálu k zařízení. Podrobnější popis SNMP a NETIO zásuvek najdete v AN11 SNMP dohled a řízení napájecích výstupů 110/230V z CMD (command line) pro Windows a Linux.
2) Nefungují triggery v Zabbixu
Hodnoty při kterých spouštějí triggery zde uvedené jsou platné pouze pro náš konkrétní případ. Pro Vaše měření a Váš případ si musíte navrhnout způsob vyhodnocování, který bude vhodný a spočítat odpovídající hodnoty.
Doporučujeme otestovat zda jsou Vaše výrazy validní v “Expression constructoru” - tlačítko test. Doporučujeme v grafech zkontrolovat podle hodnot odpovídajícího grafu, zda jsou hodnoty triggerů v rámci naměřených dat.
3) Jak restartovat zásuvku v reakci na události generované událostí/triggerem v Zabbixu
Typicky jde o případ, kdy dohled zjistí nefunkčnost zařízení a chceme krátce vypnout zásuvku.
Na Zabbix serveru vytvoříme Action, do které zadáme na serveru spouštěný příkaz který provede vzdálené krátké vypnutí (Short Off neboli Restart) požadované zásuvky. Použít můžeme jako volání pomocí URL API (viz AN19 - URL API (http GET) ovládání NETIO elektrických zásuvek) nebo pomocí SNMP v3.
Tato Aplikační poznámka může být použita v:
|
NETIO 4AllNETIO 4All je PDU modul čtyř elektrických zásuvek 230V/8A s měřením spotřeby na každé zásuvce, který lze připojit do počítačové sítě pomocí LAN a WiFi. Každou ze čtyř zásuvek lze individuálně vypnout/zapnout přes web nebo pomocí různých M2M API protokolů. Na každé zásuvce lze měřit její spotřebu elektřiny (A, W, kWh). Chytré zásuvky NETIO 4All jsou určeny pro aplikace vzdáleného měření a ovládání elektrických zásuvek. |
|
NETIO PowerPDU 4CNETIO PowerPDU 4C je malé PDU (Power Distribution Unit) na 110/230V. Každý ze čtyř výstupů IEC-320 C13 lze ovládat samostatně (On / Off / Reset / přepni). Na každém výstupu jsou měřeny elektrické veličiny (A, W, kWh, TPF, V, Hz) s vysokou přesností. Zařízení obsahuje dva LAN porty pro připojení do sítě (vestavěný Ethernet switch). Každý výstup napájení podporuje ZCS (Zero Current Switching), to znamená šetrné ovládání připojených zařízení. |