Automatizované měření dostupnosti sítě pingem: Porovnání verzí

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání
Řádek 1: Řádek 1:
Skript pro měření dostupnosti [http://charon.hkfree.org/~vojta/dostupnost.sh dostupnost.sh]
+
Bash-skript pro měření dostupnosti [http://charon.hkfree.org/~vojta/dostupnost.sh dostupnost.sh]
  
 
===Jak to funguje===
 
===Jak to funguje===
Řádek 8: Řádek 8:
 
Den má 1440 minut, máme tedy 1440 záznamuů od pingu. V 150 případech byl packetloss větší než 50 procent. Dostupnost za ten den je 89.58%.
 
Den má 1440 minut, máme tedy 1440 záznamuů od pingu. V 150 případech byl packetloss větší než 50 procent. Dostupnost za ten den je 89.58%.
  
===Výstup ze skriptu===
+
===Použítí===
 +
Stáhnout shript [http://charon.hkfree.org/~vojta/dostupnost.sh dostupnost.sh], uložit ho do /usr/local/bin.
 +
Pak spustit (ip adresa je příklad)
 +
$ dostupnost.sh start 85.132.160.1
 +
 
 +
===Formát dat===
 +
Program si ukládá data do textového souboru, 1 řádek za interval (minutu). Soubor se jmenuje /tmp/ping.<cíl>, např. tedy /tmp/ping.85.132.160.1.
 +
Formát je následující:
 +
cíl        datum    čas      PS PL TX RX rtt:min/avg/max/mdev
 +
 
 +
cíl - IP adresa nebo hostname cíle (stejná jako v názvu souboru)
 +
datum, čas - začátek měřeného intervalu (minuty)
 +
PS - packet size: velikost ICMP paketu v bajtech (výchozí hodnota 64B)
 +
PL - packet loss: % ztracených paketů
 +
TX - počet odeslaných paketů (ICMP echo request)
 +
RX - počet přijatých odpovědí (ICMP echo reply)
 +
rtt - nejkratěí,průměrná,nejdelší doba odezvy, střední odchylka - vše v ms
 +
 
 +
10.107.7.1 20060713-17:39:00 64 0% 30 30 20.135/28.251/76.200/10.475
 +
10.107.7.1 20060713-17:39:00 64 0% 30 30 20.629/36.877/114.071/22.401
 +
10.107.7.1 20060713-17:39:00 64 3% 30 29 18.712/27.488/69.749/10.031
 +
10.107.7.1 20060713-17:39:00 64 0% 30 30 19.474/25.727/36.060/4.352
 +
 
 +
===Výstup===
 
Po několika dnech provozu se můžeme dobrat výsledku
 
Po několika dnech provozu se můžeme dobrat výsledku
 +
$ dostupnost.sh result 10.107.7.1
 
  Report generated on somehost at Thu Jul 13 18:44:07 CEST 2006
 
  Report generated on somehost at Thu Jul 13 18:44:07 CEST 2006
 
  Availability report for 10.107.7.1, interval packetloss limit: 50%
 
  Availability report for 10.107.7.1, interval packetloss limit: 50%

Verze z 13. 7. 2006, 17:55

Bash-skript pro měření dostupnosti dostupnost.sh

Jak to funguje

Nepřetržitě pingá na zadanou IP adresu (nebo hostname), výsledek (packetloss, roundtrip time) zapisuje do textového souboru. U pingu lze nastavit i velikost paketu; výchozí je 64 bajtů (pozor na přetěžování sítě!) Obsahuje jednoduchý algoritmus na vyhodnocení, který pracuje takto: Stanoví se limitní packetloss. Každá minute (60 pingů) se vyhodnotí - má-li packetloss vyšší než limit, považuje se za chybovou, jinak za dobrou. Celková dostupnost za období (den měsíc) se vypočte jako poměr dobrých minut k celkovému počtu.

Příklad

Den má 1440 minut, máme tedy 1440 záznamuů od pingu. V 150 případech byl packetloss větší než 50 procent. Dostupnost za ten den je 89.58%.

Použítí

Stáhnout shript dostupnost.sh, uložit ho do /usr/local/bin. Pak spustit (ip adresa je příklad)

$ dostupnost.sh start 85.132.160.1

Formát dat

Program si ukládá data do textového souboru, 1 řádek za interval (minutu). Soubor se jmenuje /tmp/ping.<cíl>, např. tedy /tmp/ping.85.132.160.1. Formát je následující:

cíl        datum    čas      PS PL TX RX rtt:min/avg/max/mdev

cíl - IP adresa nebo hostname cíle (stejná jako v názvu souboru) datum, čas - začátek měřeného intervalu (minuty) PS - packet size: velikost ICMP paketu v bajtech (výchozí hodnota 64B) PL - packet loss: % ztracených paketů TX - počet odeslaných paketů (ICMP echo request) RX - počet přijatých odpovědí (ICMP echo reply) rtt - nejkratěí,průměrná,nejdelší doba odezvy, střední odchylka - vše v ms

10.107.7.1 20060713-17:39:00 64 0% 30 30 20.135/28.251/76.200/10.475
10.107.7.1 20060713-17:39:00 64 0% 30 30 20.629/36.877/114.071/22.401
10.107.7.1 20060713-17:39:00 64 3% 30 29 18.712/27.488/69.749/10.031
10.107.7.1 20060713-17:39:00 64 0% 30 30 19.474/25.727/36.060/4.352

Výstup

Po několika dnech provozu se můžeme dobrat výsledku

$ dostupnost.sh result 10.107.7.1
Report generated on somehost at Thu Jul 13 18:44:07 CEST 2006
Availability report for 10.107.7.1, interval packetloss limit: 50%
date      avilibility   pktsize number of measurements
20060711        100%    64      8 (0 bad)
20060712        100%    64      14 (0 bad)
20060713        68.6%   64      220 (69 bad)
20060714        0%      64      2 (2 bad)
20060713        91.17%  64      521 (46 bad)
200607          84.7%   64      765