Ntop
(→httperf) |
(→vmstat (virtual memory statistics)) |
||
5. sor: | 5. sor: | ||
''' |
''' |
||
− | A vmstat egy olyan UNIX és UNIX jellegű (Linux, FreeBSD, Solaris) operációs rendszerben lévő rendszermonitorozó program, a virtuális memória használatáról tud különféle statisztikákat, kimutatásokat készíteni. Megmutatja, mennyi virtuális memóriánk van összesen, ebből mennyi szabad, illetve összefoglalja a lapkezeléssel kapcsolatos eseményeket. A legfontosabb azonban az, hogy segítségével a be- és kilapozásokat már megtörténésük pillanatában érzékelni tudjuk, azaz közel valós időben felügyelhetjük vele rendszerünk aktivitását. Ez pedig elképesztően hasznos képesség. |
+ | A vmstat egy olyan UNIX és UNIX jellegű (Linux, FreeBSD, Solaris) operációs rendszerben lévő rendszermonitorozó program, a virtuális memória használatáról tud különféle statisztikákat, kimutatásokat készíteni. Megmutatja, mennyi virtuális memóriánk van összesen, ebből mennyi szabad, illetve összefoglalja a lapkezeléssel kapcsolatos eseményeket. A legfontosabb azonban az, hogy segítségével a be- és kilapozásokat már megtörténésük pillanatában érzékelni tudjuk, azaz közel valós időben felügyelhetjük vele rendszerünk aktivitását. Ez pedig egy nagyon hasznos képesség. |
''Szintaktika:'' |
''Szintaktika:'' |
A lap 2010. november 7., 02:23-kori változata
Tartalomjegyzék |
1 vmstat (virtual memory statistics)
A vmstat egy olyan UNIX és UNIX jellegű (Linux, FreeBSD, Solaris) operációs rendszerben lévő rendszermonitorozó program, a virtuális memória használatáról tud különféle statisztikákat, kimutatásokat készíteni. Megmutatja, mennyi virtuális memóriánk van összesen, ebből mennyi szabad, illetve összefoglalja a lapkezeléssel kapcsolatos eseményeket. A legfontosabb azonban az, hogy segítségével a be- és kilapozásokat már megtörténésük pillanatában érzékelni tudjuk, azaz közel valós időben felügyelhetjük vele rendszerünk aktivitását. Ez pedig egy nagyon hasznos képesség.
Szintaktika:
vmstat [-a] [-n] [delay [ count]] vmstat [-f] [-s] [-m] vmstat [-S unit] vmstat [-d] vmstat [-p disk partition] vmstat [-V]
Kapcsolók:
-V verzió információ -a megjeleníti az aktív és inaktív memóriát (2.5.41 kernel kell hozzá vagy jobb), -n a headereket csak egyszer jeleníti meg nem nyomtatja ki a képernyőre periodikusan, -s több fontos számláló és memória statisztikák megjelenítése (ez a megjelenítés nem ismétlődik) például: total memory, used memory, system CPU ticks stb., -m rendszermag memóriahasználatáról (/proc/slabinfo) információ megjelenítése -S unit k, K, m, M kapcsolók után következhet kimenetek értéke: 1024, 1000000, vagy 1048576 byte, -d diszkünk vagy diszkjeink statisztikáját jeleníti meg pl. partíciók száma, mérete, -p disk partition a partíciót nevét beírva információt kaphatunk a partícióról. delay [ count]] delay segítségével beállíthatjuk, hogy hány másodpercenként kérjünk frissítést a kijelzésre, a count pedig a frissítések számát adja meg (ha nem adunk meg count értéket, akkor a default count érték végtelen).
Procs r: futási időre váró processek száma b: (a nem megszakítható) alvó processek száma
Memory swpd: A felhasznált virtuális memória free: A rendelkezésre álló memória. buff: A pufferek által használt memória. cache: cache-ként használt memória. inact: inaktív memória.(-a kapcsoló használatakor jelenik meg) active: aktív memória. (-a kapcsoló használatakor jelenik meg)
Swap si: A lemeztől becserélt memória /s so: A lemeznek kiutalt memória (/s).
IO bi: Az eszköztől fogadott blokkolások száma (blocks/s). bo: Az eszközöknek küldött blokkolások száma (blocks/s).
System in: megszakítás kérések száma egy másodperc alatt. cs: context váltások száma másodpercenként
CPU- A teljes CPU idő %-ban kifejezve: us: a nem kernel kódra fordított idő, sy: a kernel kódra fordított idő, id: rendelkezésre álló idő (beleértve az I/O-várás idejét), wa: az I/O-várás ideje
2 Netstat
A netstat egy parancssori, hálózati program arra, hogy megnézzük a hálózati konfigurációt és annak aktivitását. Képes mind a kimenő, mind a bejövő hálózati forgalom, a routing táblák és a hálózati interfészek statisztikájának megjelenítésére.
Kapcsolók (csak a fontosabbak):
-nr routing táblák kiíratása, –n kapcsolóval íratja ki a címeket, ponttal elválasztott formátumban, hoszt- és hálózati nevek helyett. -i a felkonfigurált hálózati interfészekről jelenít meg információt -g IPv4 és IPv6 multicast csoporttagságról jelenít meg információt, -s Minden egyes protokollról (IP, TCP, SNMP stb.)készít egy összefoglalót -M a maszkolt kapcsolatok kilistázása(Ip maszkolás például), -l a „hallgatózó” szerver socketek kilistázása,
-ta, Ezek a kapcsolók megmutatják az aktív TCP,UDP,RAW vagy Unix socket kapcsolatokat. Ha „a”-t írunk utána akkor a kapcsolatra -ua, váró socketeket is megjeleníti. -wa, -xa
3 IPTraf
Az IPTraf egy nyílt forráskódú szoftver, amellyel monitorozható az IP hálózat és a jónéhány fontos protokoll a számítógépünkön. Ez egy tisztán szoftveres analizátor így csak a kernel által definiált interfészek figyelésére képes. Szűröket állíthatunk be, hogy csak az általunk kiválasztott protokollt figyelje a program.
Alkalmazható az alábbi protokollokra:
• User Datagram Protocol (UDP) • Internet Control Message Protocol (ICMP) • Open Shortest-Path First (OSPF) • Interior Gateway Routing Protocol (IGRP) • Interior Gateway Protocol (IGP) • Internet Group Management Protocol (IGMP) • General Routing Encapsulation (GRE) • Address Resolution Protocol (ARP) • Reverse Address Resolution Protocol (RARP)
Támogatott hálózati interfészek: lo, ethn, fddin, trn, pppn, slin, ipppn, isdnn, plipn, ipsecn, sbnin, dvbn, sm200, sm300, wlann, wvlann, hdlcnpvc.
Telepítése, elindítása:
1. Letölthető az alábbi helyről:
ftp://iptraf.seul.org/pub/iptraf/
2. Bontsuk ki (terminál ablakban):
tar zxvf iptraf-x.y.z.tar.gz
3. Lépjünk a / könyvtárba, majd./Setup (csak rootként engedi)
4. A telepítés végén, a programunk megtalálható a /usr/local/bin könyvtárban
5. A terminál ablakba csak írjuk be, hogy iptraf Ekkor egy "grafikus" kezelőfelületet kapunk, de használhatjuk terminálból is a következő kapcsolók segítségével:
-i iface A iface helyére a figyelni kívánt interfész nevét írjuk pl. eth0. Így azonnal elindul az eth0 interfész figyelése. -g az interfészek alap statisztikáját írja ki. -d iface a kiválasztott interfészről közöl adatokat pl. bejövő, kimenő IP csomagok száma, bejövő/kimenő TCP/UDP szegmensek -s iface a kiválasztott interfész TCP/UDP forgalmának monitorozása. -z iface csomagméret szerint csoportosítja a forgalmat. -l iface LAN állomás monitorozása (ha minden LAN interfészt monitorozni szeretnénk, akkor –l all) -t timeout hány percig fusson a mérés, ha ezt nem állítjuk be a menüs mérés során az első gomb nyomásig mér, -B a terminál ablakot a háttérbe küldi, így közbe nyugodtan folyhat a munka, míg ő mér. Ez a beállítás csak a -i, -g, -d, -s, -z, -l paraméterekkel együtt érvényes, –h segítség a programhoz.
4 ntop
Az ntop egy libcap alapú hálózat monitorozó, amelynek segítségével figyeli tudjuk a hálózat aktuális használtságát. Megjeleníti azokat a hoszt neveket, akik éppen használják a hálózatot és megnézhetjük az egyes hosztok által generált, ill. fogadott forgalmat (cél és forrás szerint: ki kivel kommunikál?). A program által elkapott csomagok megjelenítésére egy web böngészőre is szükségünk van a webes admin felület miatt. Az elkapott forgalomból statisztika szerkeszthető, a tartós forgalomról készült statisztika mentésére is képes. Számos protokollt támogat (IPv4/IPv6, IPX, AppleTalk, Netbios, OSI, DLC stb.) ezekre külön szűrni is lehet. Működik Linux, FreeBSD, Solaris, MAC és Windows (kivéve Vista) alatt is.
Telepítése: sudo apt-get install ntop –y
Indítása, újraindítása, megállítása:
sudo /etc/init.d/ntop start sudo /etc/init.d/ntop restart sudo /etc/init.d/ntop stop
Jelszó beállítási lehetőség:
sudo ntop --set-admin-password
Továbbá képes naplófájlok készítésére. Ezek az Apache naplófájljához hasonlítanak:
192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] - "GET / HTTP/1.1" 200 1489 4 192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /index_top.html HTTP/1.1" 200 1854 4 192.168.4.127 - - [04/Nov/2010:10:11:20 -0500]] "GET /index_inner.html HTTP/1.1" 200 1441 7 192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /index_left.html HTTP/1.1" 200 1356 4 192.168.4.127 - - [04/Nov/2010:10:11:20 -0500]] - "GET /home_.html HTTP/1.1" 200 154/617 9 192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /home.html HTTP/1.1" 200 1100/3195 10 192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /About.html HTTP/1.1" 200 2010 10
A böngészőbe írjuk be, hogy:
http://localhost:3000
5 httperf
A httperf segítségével mérhetjük a webszerverünk teljesítményét. Képes a HTTP/1.0 és HTTP/1.1 protokoll megértésére, és képes változatos terhelés generálásra. Futása közben számos teljesítmény jellemzőt rögzít majd a teszt végén az összegzést adja a kijelzőre. A legegyszerűbb művelete, hogy fix számú HTTP GET kéréssel bombázza a szervert, majd megméri hány válasz jön a szervertől rá és milyen rátával érkeznek ezek a válaszok. A mérés végeztével egy összesítő statisztikát jelenít meg a terminál ablakban. MEGJEGYZÉS: ha helyes eredményeket akarunk kapni, akkor lehetőleg egy httperf processt futassunk a kliens gépen és csak néhány háttérben futó process legyen, mind a szerver mind a kliens gépen.
Telepítés: töltsük le a legújabb verziót: http://sourceforge.net/projects/httperf/
A legegyszerűbb eset:
httperf −−hog −−server www
Ezzel a paranccsal létrehozunk egy kapcsolatot a hoszt és a kliens között, majd a kérésre adott választ figyeljük. A válasz beérkezése után lezárjuk a kapcsolatot. A www helyére kell beírni a vizsgált szerver hosztnevét vagy az IP címét. A kapott eredményekről a program egy statisztikát készít a mérés végeztével. A −−hog kapcsolóval annyi TCP portot használunk, amennyire szükség van, ha nem használjuk a program csak az 1024-5000 terjedő portok közül választ, ám ezek sok kapcsolat esetén hamar elfogyhatnak (ha például 4000 kapcsolódási kísérletet szeretnénk elindítani és mindegyiket külön portról akkor kifogynánk a rendelkezésre álló portokból).
Bővítések: Természetesen számos egyéb paraméter finom hangolható. Tekintsük meg a leglényegesebbeket:
−−add−header=S
Az S sztringet additív headerként tekinti, ami hozzáfűzhető a kérés fejrészéhez. Így több kérést is lehet küldeni egy fejrészben pl.: −−add−header "Referer: foo\nAuth: secret\n". Ebben az esetben minden kéréshez két fejrészt ad: „Referer” és „Auth”.
−−no−host−hdr A kliens HTTP kérése nem tartalmaz Hoszt fejrészt.
−−http−version=S Az S sztringgel adhatjuk meg a HTTP protokoll verzióját. Alapállapotban 1.1-es verziót használ.
−−close−with−reset A httperf egy RESET küldéssel zárja le a TCP kapcsolatokat, a szokásos TCP hand shake-es kapcsolat lezárás helyett.
−−max−connections=N Sessiönönként N darab kapcsolat lehet maximum.
−−method=S Ezzel állíthatjuk, hogy a HTTP kérésben milyen metódus legyen.Alapértelmezetten a GET-et használja. A következő metódusok elfogadottak(GET, HEAD, PUT és POST).
−−num−conns=N Maximum N darab kapcsolatot hozható létre a szerverrel.
−−period=[D]T1[,T2]
A kapcsolatok és sessiönök generálása közötti idő intervallum állítására szolgál. A D paraméter a kapcsolat/ sessiön kérés érkezések eloszlása. Ha a D betű helyére „d”-t írunk akkor az determinisztikus kérés generálást jelent, „e”- exponenciális, „u”-t akkor egyenletes eloszlás T1 és T2 időintervallum között.
−−port=N
A Web szerver ezen a porton hallgatja a HTTP kéréseket. Alapértelmezetten a 80-as portot figyeli. Ha csak a kliens gépen használjuk a httperf-et akkor ez a beállítás lényegtelen.
−−print−reply[=[header|body]] és −−print−request[=[header|body]]
A kérés és a válasz fejrészének, vagy testének kinyomtatása a standard outputra.
−−rate=X Fix rátával (X) készüljenek az igények és sessiönök.
−−recv−buffer=N A HTTP válaszokra szánt maximális puffer méret. Alapértelmezetten ez 16KB.
−−send−buffer=N A HTTP kérésekre szánt maximális puffer méret. Alapértelmezetten ez 4KB.
−−server=S A Szerver (amit le szeretnénk tesztelni) hosztneve vagy IP címe. Ezt mindig kötelező megadni.
−−server−name=S A kérés során a HTTP fejrész „Host” mezejébe ezt a szerver nevet írja a httperf.
−−session−cookie Süti menedzselés engedélyezése.
−−ssl A httperf és a szerver közti kommunikáció SSL protokoll által biztosított.
−−ssl−ciphers=L
Ha használnunk SSL protokollt, akkor az L paraméter helyére beírhatjuk a httperf által használt kulcsokat kettősponttal elválasztva egymástól. Ha szerver nem fogadja el ezeket a kulcsokat akkor a kapcsolat meghiúsul és a program kilép azonnal.
−−ssl−no−reuse Ha az SSL kapcsolat létrejött a kliens fogadja a szerver által küldött sessiön azonosítót (session id).
−−timeout=X X másodpercig ideig vár a szerver válaszára a httperf.
--wsess 1,2,3
Ezzel az opcióval több paramétert is finomhangolhatunk:1. a kapcsolatok száma, 2. kérések száma kapcsolatonként,3. a két küldési börszt közti várakozási idő.
−−version A httperf verzióját írja ki.