meta data for this page
Uninterruptible Power Supply
UPS, czyli zasilacz awaryjny, którego zadaniem jest utrzymanie zasilania sprzętu komputerowego w przypadku krótkotrwałego zaniku lub nieprawidłowych parametrów zasilania sieciowego.
Komunikacja z UPS'em
Centralny UPS znajduje się w serwerowni. Można zarządzać nim za pomocą odpowiedniego oprogramowania komunikującego się protokołem SNMP (Simple Network Management Protocol). Przydatny może się okazać się skrypt check_snmp_ups.sh pobrany z tej strony.
apt-get install snmp # Przykłady użycia skryptu: ./check_snmp_ups.sh -H 10.46.1.2 -C public -t charge ./check_snmp_ups.sh -H 10.46.1.2 -C public -t power # Więcej dowiesz się wołając: ./check_snmp_ups.sh -h
Ów skrypt korzysta z kodów UPS MIB do komunikacji po protokole SNMP za pomocą poleceń /usr/bin/snmpget i /usr/bin/snmpwalk (jest swego rodzaju skrótem). Bezpośrednie zapytanie może wyglądać następująco:
/usr/bin/snmpget -t 30 -r 2 -v 1 -c public -Ovq 10.46.1.2 1.3.6.1.2.1.33.1.4.4.1.4.0
Najbardziej przydatne kody to (w zapytaniu trzeba dodawać zero na końcu):
upsBatteryStatus = '1.3.6.1.2.1.33.1.2.1' upsSecondsOnBattery = '1.3.6.1.2.1.33.1.2.2' upsEstimatedMinutesRemaining = '1.3.6.1.2.1.33.1.2.3' upsEstimatedChargeRemaining = '1.3.6.1.2.1.33.1.2.4' upsBatteryVoltage = '1.3.6.1.2.1.33.1.2.5' upsBatteryCurrent = '1.3.6.1.2.1.33.1.2.6' upsBatteryTemperature = '1.3.6.1.2.1.33.1.2.7' def get_command(oid, ip='10.46.1.2'): return '/usr/bin/snmpget -t 2 -r 2 -v 1 -c public -Ovq {} {}.0'.format(ip, oid)
Rozwiązywanie problemów
Jeżeli występuje problem z połączeniem (np. timeout), sprawdź czy działa ping i czy otwarty jest domyślny port dla SNMP 161.
ping 192.128.1.10 nmap -p 161 192.128.1.10