Weboldal keresés

Rendszertevékenységi jelentések készítése és kézbesítése Linux eszközkészletekkel – 3. rész


Rendszermérnökként gyakran kell olyan jelentéseket készítenie, amelyek bemutatják rendszere erőforrásainak kihasználását, hogy megbizonyosodjon a következőkről: 1) azok optimális kihasználása, 2) a szűk keresztmetszetek elkerülése és 3) a skálázhatóság biztosítása, többek között.

A jól ismert natív Linux-eszközökön kívül, amelyeket a lemez-, memória- és CPU-használat ellenőrzésére használnak – hogy csak néhány példát említsünk, a Red Hat Enterprise Linux 7 két további eszközkészletet is kínál a jelentésekhez gyűjthető adatok bővítésére: sysstat és dstat.

Ebben a cikkben mindkettőt leírjuk, de először kezdjük a klasszikus eszközök használatának áttekintésével.

Natív Linux-eszközök

A df segítségével jelentést tehet a lemezterületről és a fájlrendszer inode-használatáról. Mindkettőt figyelnie kell, mert a helyhiány miatt nem tud további fájlokat menteni (és akár a rendszer összeomlását is okozhatja), ahogyan az inode-ok elfogyása azt jelenti, hogy nem tud további fájlokat összekapcsolni a megfelelő adatokkal. struktúrákat, így ugyanazt a hatást produkálja: ezeket a fájlokat nem tudja majd lemezre menteni.


df -h 		[Display output in human-readable form]
df -h --total         [Produce a grand total]


df -i 		[Show inode count by filesystem]
df -i --total 	[Produce a grand total]

A du segítségével megbecsülheti a fájlterület-használatot fájl, könyvtár vagy fájlrendszer szerint.

Például nézzük meg, mennyi helyet foglal el a /home könyvtár, amely a felhasználó összes személyes fájlját tartalmazza. Az első parancs a teljes /home könyvtár által jelenleg használt teljes területet adja vissza, míg a második egy alkönyvtárra bontott listát is megjelenít:


du -sch /home
du -sch /home/*

Ne hagyd ki:

  1. 12 „df” parancspélda a Linux lemezterület használatának ellenőrzésére
  2. 10 „du” parancs példa a fájlok/könyvtárak lemezhasználatának megkeresésére

Egy másik segédprogram, amely nem hiányozhat az eszközkészletből, a vmstat. Gyors pillantással megtekintheti a folyamatokról, a CPU- és memóriahasználatról, a lemeztevékenységről és egyebekről szóló információkat.

Ha argumentumok nélkül fut, a vmstat az utolsó újraindítás óta számított átlagokat adja vissza. Bár a parancsnak ezt a formáját időnként használhatja, hasznosabb lesz, ha egymás után vesz egy bizonyos mennyiségű rendszerhasználati mintát, a minták meghatározott időbeli elválasztásával.

Például,


vmstat 5 10

5 másodpercenként 10 mintát küld vissza:

Amint a fenti képen látható, a vmstat kimenete oszlopokra van osztva: procs (folyamatok), memória, csere, >io, rendszer és cpu. Az egyes mezők jelentése a FIELD DESCRIPTION szakaszokban található a vmstat kézikönyvoldalán.

Hol jöhet jól a vmstat? Vizsgáljuk meg a rendszer viselkedését a yum frissítés előtt és közben:


vmstat -a 1 5

Kérjük, vegye figyelembe, hogy a lemezen lévő fájlok módosításával növekszik az aktív memória mennyisége, valamint a lemezre írt blokkok száma (bo) és a CPU-idő. a felhasználói folyamatoknak szentelve (mi).

Vagy egy nagy fájl közvetlenül a lemezre mentése során (a dsync okozta):


vmstat -a 1 5
dd if=/dev/zero of=dummy.out bs=1M count=1000 oflag=dsync

Ebben az esetben azt láthatjuk, hogy a (bo) lemezre még több blokk íródik, ami várható volt, de a CPU várakozási idejének növekedése is. A feladatok feldolgozása előtt végrehajtandó I/O műveletek (wa).

Ne hagyd ki: Vmstat – Linux teljesítményfigyelés

Egyéb Linux-eszközök

Amint a fejezet bevezetőjében említettük, vannak más eszközök is, amelyek segítségével ellenőrizheti a rendszer állapotát és kihasználtságát (ezeket nem csak a Red Hat biztosítja, hanem a hivatalosan támogatott egyéb nagyobb disztribúciók is. adattárak).

A sysstat csomag a következő segédprogramokat tartalmazza:

  1. sar (rendszertevékenység-információk gyűjtése, jelentése vagy mentése).
  2. sadf (a sar által gyűjtött adatok megjelenítése többféle formátumban).
  3. mpstat (feldolgozókkal kapcsolatos statisztikák jelentése).
  4. iostat (az eszközök és partíciók CPU-statisztikáinak és I/O-statisztikáinak jelentése).
  5. pidstat (statisztikai jelentés a Linux-feladatokhoz).
  6. nfsiostat (bemeneti/kimeneti statisztikák az NFS-hez).
  7. cifsiostat (CIFS statisztikák jelentése) és
  8. sa1 (bináris adatok gyűjtése és tárolása a rendszertevékenység napi adatfájljában.
  9. sa2 (írjon napi jelentést a /var/log/sa könyvtárba) eszközök.

míg a dstat néhány extra funkciót ad az eszközök által biztosított funkciókhoz, valamint több számlálót és rugalmasságot. Az egyes eszközök átfogó leírását megtalálhatja a yum info sysstat vagy a yum info dstat futtatásával, vagy a telepítés után az egyes kézikönyvoldalak ellenőrzésével.

Mindkét csomag telepítéséhez:


yum update && yum install sysstat dstat

A sysstat fő konfigurációs fájlja az /etc/sysconfig/sysstat. Ebben a fájlban a következő paramétereket találja:


How long to keep log files (in days).
If value is greater than 28, then log files are kept in
multiple directories, one for each month.
HISTORY=28
Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=31
Parameters for the system activity data collector (see sadc manual page)
which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
Compression program to use.
ZIP="bzip2"

Ha a sysstat telepítve van, a rendszer két cron-feladatot ad hozzá és engedélyezi az /etc/cron.d/sysstat mappában. Az első feladat 10 percenként futtatja a rendszertevékenység-számláló eszközt, és a jelentéseket a /var/log/sa/saXX helyen tárolja, ahol az XX a a hónap napja.

Így a /var/log/sa/sa05 tartalmazza az összes rendszertevékenység-jelentést a hónap 5. napjától. Ez azt feltételezi, hogy a fenti konfigurációs fájl HISTORY változójának alapértelmezett értékét használjuk:


*/10 * * * * root /usr/lib64/sa/sa1 1 1

A második feladat minden nap 23:53-kor készít egy összefoglalót a folyamatkönyvelésről, és /var/log/sa/sarXX fájlokban tárolja, ahol a XX. jelentése ugyanaz, mint az előző példában:


53 23 * * * root /usr/lib64/sa/sa2 -A

Előfordulhat például, hogy a rendszerstatisztikát a hónap hatodikának 9:30 és 17:30 között .csv formátumban szeretné megjeleníteni. > fájl, amely könnyen megtekinthető a LibreOffice Calc vagy a Microsoft Excel segítségével (ez a megközelítés lehetővé teszi diagramok vagy grafikonok létrehozását is):


sadf -s 09:30:00 -e 17:30:00 -dh /var/log/sa/sa06 -- | sed 's/;/,/g' > system_stats20150806.csv

Alternatív megoldásként használhatja a -j jelzőt a -d helyett a fenti sadf parancsban a rendszerstatisztikák JSON formátumban történő kiadásához. formátumban, ami akkor lehet hasznos, ha például egy webalkalmazásban kell felhasználnia az adatokat.

Végül nézzük meg, mit kínál a dstat. Kérjük, vegye figyelembe, hogy ha argumentumok nélkül fut, a dstat alapértelmezés szerint a -cdngy elemet feltételezi (a CPU, lemez, hálózat, memórialapok és rendszerstatisztikák rövidítése), és hozzáad egyet. sor másodpercenként (a végrehajtás bármikor megszakítható a Ctrl + C billentyűkombinációval):


dstat

A statisztikák .csv fájlba történő kiadásához használja a –output jelzőt, majd egy fájlnevet. Nézzük meg, hogyan néz ki ez a LibreOffice Calc:

Nyomatékosan azt tanácsolom, hogy az olvasás megkönnyítése érdekében nézze meg a dstat kézikönyvoldalát és a sysstat kézikönyvoldalát PDF formátumban. Számos egyéb lehetőséget is talál, amelyek segítenek egyéni és részletes rendszertevékenység-jelentések létrehozásában.

Ne hagyja ki: Sysstat – Linux használati tevékenység figyelő eszköz

Összegzés

Ebben az útmutatóban elmagyaráztuk, hogyan használhatjuk mind a natív Linux-eszközöket, mind az RHEL 7 által biztosított speciális segédprogramokat a rendszerhasználatról szóló jelentések készítéséhez. Egyik vagy másik ponton a legjobb barátokként fogsz ezekre a jelentésekre hagyatkozni.

Valószínűleg más eszközöket is használt, amelyekkel ebben az oktatóanyagban nem foglalkoztunk. Ha igen, nyugodtan ossza meg őket a közösség többi tagjával, valamint bármilyen egyéb javaslatot/kérdést/megjegyzést is – az alábbi űrlap segítségével.

Várom válaszukat.