Při provádění administračních úloh v prostředích Linuxu je ideální a vhodné mít nástroje a nástroje, které nám umožňují mnohem přesnější kontrolu nad analyzovanými daty, protože tímto způsobem zjednodušíme a uspořádáme náš úkol, což nám umožní získat mnohem více přesné výsledky.
Jedním z těchto nástrojů je iostat a dnes v Solveticu budeme analyzovat, jak jej můžeme využít k získání přímých, jasných a naprosto spolehlivých zpráv o prvcích, které v naší organizaci spravujeme bez ohledu na použitou distribuci, v tomto případě použijeme Server Ubuntu 17.10.
Co je iostatIostat (statistika vstupů / výstupů - statistika vstupů / výstupů) je nástroj, pomocí kterého bude možné získat informace o vstupních a výstupních komponentách systému a poskytne administrátorovi nebo uživateli možnost identifikovat problémy s výkonem jak na lokálním disku a vzdálené disky nebo obecné informace o operačním systému.
Pomocí tohoto příkazu jej lze použít k řízení zátěže vstupního / výstupního zařízení systému sledováním doby, po kterou jsou tato zařízení aktivní, ve vztahu k jejich průměrným přenosovým rychlostem v systému.
Když použijeme iostat, bude možné generovat zprávy, které lze použít ke změně konfigurace systému a vyvážení mnohem efektivnějším způsobem, jak vstupní a / nebo výstupní zatížení mezi fyzickými disky.
První zpráva generovaná příkazem iostat nám poskytuje statistiky o obecném čase od zahájení procesu spouštění systému, takže každá následující zpráva pokrývá čas, který uplynul od předchozí zprávy; Všechny statistiky budou hlášeny při každém spuštění příkazu iostat.
Tato sestava se skládá z řádku záhlaví procesoru, za nímž následuje řada statistik CPU, a pokud máme víceprocesorové systémy, statistiky procesoru se vypočítají v celém systému jako průměry mezi všemi stávajícími procesory a poté z řady záhlaví zařízení následovaných řadou statistik pro každé nakonfigurované zařízení.
1. Nainstalujte iostat na Ubuntu 17.10
Standardně je v této distribuci iostat součástí balíčku Ubuntu sysstat a můžeme jej nainstalovat jednoduše spuštěním následujícího příkazu:
sudo apt install sysstat -y
ZVĚTŠIT
2. Použijte iostat v Ubuntu 17.10
Krok 1
První příkaz, který můžeme spustit, je iostat, který zobrazí informace o využití CPU a statistikách I / O v Ubuntu 17.10:
ZVĚTŠIT
Krok 2
Tam uvidíme detaily jako:
- V prvním řádku verze jádra Linuxu a název hostitele.
- V následujících dvou řádcích uvidíme statistiky CPU, jako je průměrné využití CPU, procento času, kdy byl CPU nečinný a odezva I / O, procento časového limitu virtuálního CPU a procento času, kdy je CPU nečinný v rámci Systém.
- V posledních dvou řádcích budeme moci vidět zprávu o používání zařízení, například počet čtecích a zapisovacích bloků za sekundu a celkový počet čtení bloků a zápisů za sekundu, které byly na uvedeném zařízení provedeny.
Krok 3
Standardně příkaz iostat generuje sestavu s aktuálním datem, a proto pokud chceme zobrazit aktuální čas, bude nutné použít následující příkaz:
iostat -t
ZVĚTŠIT
Krok 4
V tuto chvíli chceme ověřit verzi iostat, stačí provést následující:
iostat -V
ZVĚTŠIT
Krok 5
Stojí za zmínku, že k zobrazení všech možností, které uvedeme později, můžeme použít následující řádek:
iostat -pomoc
ZVĚTŠIT
3. Použijte pokročilý režim iostat v Ubuntu 17.10
V některých případech můžeme využít některé pokročilejší parametry v závislosti na typu požadovaného požadavku, některé z těchto možností jsou následující.
Krok 1
Pokud chceme vidět sestavu zařízení pouze jednou, provedeme následující příkaz:
iostat -d
ZVĚTŠIT
Krok 2
Chcete -li zobrazit zprávu o tomto zařízení nepřetržitě každých 7 sekund, provedeme 4krát za sebou následující řádek:
iostat -d 7 4
ZVĚTŠIT
Krok 3
Pokud chceme vidět statistiky konkrétních zařízení, použijeme následující příkaz:
iostat -p sda
ZVĚTŠIT
Krok 4
Statistiky různých zařízení můžeme zobrazit současně provedením následujícího:
iostat -p sda, sdb, sdcKrok 5
Abychom získali statistiky I / O zařízení v MB / s, provedeme následující příkaz:
iostat -m
ZVĚTŠIT
Krok 6
K získání konkrétních informací o rozšířeném oddílu musíme použít následující příkaz:
iostat -x „oddíl“
ZVĚTŠIT
Krok 7
Chcete -li zobrazit statistiky využití procesoru, bude použit následující příkaz:
iostat -c
ZVĚTŠIT
4. Hlášení Iostatu v Ubuntu 17.10
Nyní vidíme, že každá z možností použití je praktická, ale každý řádek obsahuje určitou hodnotu, kterou na první pohled nebudeme moci příliš dobře pochopit, proto Solvetic vysvětlí, co každá z těchto hodnot znamená abychom ještě lépe porozuměli výsledkům generovaným iostatem, chápeme, že příkaz iostat generuje tři typy sestav, které jsou:
- Zpráva o využití CPU
- Zpráva o využití zařízení
- Sestava síťového systému souborů
Krok 1
Nyní jsou hodnoty následující. V první zprávě generované příkazem iostat máme podrobnosti o využití CPU. U systémů s více procesory jsou hodnoty CPU globální průměry napříč všemi aktivními procesory. Zpráva má následující formát:
% uživateleZobrazuje procento využití procesoru, ke kterému došlo během provádění na úrovni uživatele (aplikace).
% pěknéOdráží procento využití CPU, ke kterému došlo při spuštění na úrovni uživatele s vysokou prioritou.
% SystémZobrazuje procento využití CPU, ke kterému došlo během provádění na úrovni systému (jádra).
% čekáníZobrazuje procento času, během kterého byly CPU nebo CPU nečinné, během nichž měl systém nevyřízený požadavek na vstup / výstup disku.
% ukrástZobrazuje procento času stráveného neúmyslně čekáním na virtuální CPU, zatímco hypervisor obsluhoval jiný virtuální procesor.
% nečinnostiUkazuje procento času, kdy byly CPU nečinné a systém neměl nevyřízený požadavek na vstup / výstup disku.
Krok 2
Druhou zprávou generovanou příkazem iostat je zpráva o využití zařízení v této zprávě o statistikách zařízení poskytuje fyzické zařízení nebo oddíl. Zpráva může v závislosti na použitých indikátorech zobrazit následující pole:
přístrojTento sloupec obsahuje název zařízení (nebo oddílu), pro n -té zařízení se zobrazuje jako hdiskn pro jádra 2.2. Zobrazí se jako devm -n s 2,4 jádry, kde m je hlavní číslo zařízení a n je rozlišovací číslo. U novějších jader se název zařízení zobrazí tak, jak je uvedeno v adresáři / dev.
tpsUdává počet přenosů za sekundu, které vstoupily do zařízení. Přenos je vstupně -výstupní požadavek do zařízení, který lze kombinovat s více logickými požadavky do jednoho vstupně -výstupního požadavku do zařízení. Převod má neurčitou velikost.
Blk_read / sOdkazuje na množství dat načtených ze zařízení vyjádřené v počtu bloků za sekundu. Bloky jsou ekvivalentní sektorům s jádry 2.4 a novějšími, a proto mají velikost 512 bajtů. U starších jader má blok neurčitou velikost.
Blk_wrtn / sUdává množství dat zapsaných do zařízení vyjádřené v několika blocích za sekundu.
Blk_readJe to celkový počet přečtených bloků.
Blk_wrtnJe to celkový počet zapsaných bloků.
kB_read / sUdává množství dat načtených ze zařízení vyjádřené v kilobajtech za sekundu.
kB_wrtn / sUdává množství dat zapsaných do zařízení vyjádřené v kilobajtech za sekundu.
kB_readJe to celkový počet přečtených kilobajtů.
kB_wrtnJe to celkový počet zapsaných kilobajtů.
MB_read / sOdkazuje na množství dat načtených ze zařízení vyjádřené v megabajtech za sekundu.
MB_wrtn / sOdkazuje na množství dat zapsaných ze zařízení vyjádřené v megabajtech za sekundu.
MB_readJe to celkový počet přečtených megabajtů.
MB_wrtnJe to celkový počet zapsaných megabajtů.
rrqm / sToto je počet sloučených požadavků na čtení za sekundu, které byly zařazeny do fronty do zařízení.
wrqm / sToto je počet sloučených požadavků na zápis za sekundu, které byly zařazeny do fronty do zařízení.
r / sJe to počet žádostí o čtení, které byly zařízení vydány za sekundu.
w / sJedná se o počet požadavků na zápis, které byly zařízení vydány za sekundu.
rsec / sJedná se o počet sektorů načtených ze zařízení za sekundu.
wsec / sJedná se o počet zapsaných sektorů zařízení za sekundu.
rkB / sJedná se o počet kilobajtů načtených ze zařízení za sekundu.
wkB / sJedná se o počet kilobajtů zapsaných do zařízení za sekundu.
rMB / sJedná se o počet megabajtů načtených ze zařízení za sekundu.
wMB / sJedná se o počet megabajtů zapsaných do zařízení za sekundu.
avgrq-szJe to průměrná velikost (v sektorech) požadavků, které byly na zařízení vydány.
avgqu-szJe to průměrná doba trvání fronty požadavků, které byly na zařízení vydány.
čekatJe to průměrný čas (v milisekundách), kdy mají být I / O požadavky vydané pro zařízení doručeny do systému.
svctmJe to průměrná doba služby (v milisekundách) pro požadavky I / O, které byly vydány zařízení.
%UžitečnýUdává procento času CPU, během kterého byly do zařízení vydány požadavky na vstup / výstup (využití šířky pásma pro zařízení). K nasycení zařízení dochází, když se tato hodnota blíží 100%.
Krok 3
Třetí zprávou iostat je zpráva Network File System (NFS), která poskytuje statistiky pro každý síťový souborový systém připojený k systému. Zpráva zobrazuje následující pole:
Souborový systémTento sloupec zobrazuje název hostitele serveru NFS, za ním dvojtečku a název adresáře, kde je připojen síťový systém souborů.
rBlk_nor / sUdává počet bloků načtených aplikacemi přes rozhraní volání systému čtení, blok má velikost 512 bytů.
wBlk_nor / sUdává počet bloků zapsaných aplikacemi prostřednictvím rozhraní volání systému pro zápis.
rBlk_dir / sOdkazuje na počet bloků načtených z otevřených souborů s příznakem O_DIRECT.
wBlk_dir / sUdává počet bloků zapsaných do otevřených souborů s příznakem O_DIRECT.
rBlk_svr / sOdkazuje na počet bloků načtených ze serveru klientem NFS prostřednictvím požadavku na čtení NFS.
wBlk_svr / sUdává počet bloků zapsaných na server klientem NFS prostřednictvím požadavku NFS WRITE.
ops / sUdává počet operací, které byly vydány do systému souborů za sekundu.
lana / sUdává počet operací „čtení“, které byly vydány do systému souborů za sekundu.
wops / sOdkazuje na počet operací „zápisu“, které byly vydány do systému souborů za sekundu.
5. Obecné parametry iostat v Ubuntu 17.10
Parametry, které můžeme použít s iostatem, jsou:
-CVygenerujte zprávu o využití CPU.
-dVygenerujte zprávu o využití zařízení.
-hUmožněte zobrazení sestavy NFS podle výběru - je pro člověka čitelnější.
-kMísto bloků za sekundu zobrazuje statistiky v kilobajtech za sekundu. Zobrazená data jsou platná pouze pro jádra 2.4 a novější.
-mGeneruje statistiku v megabajtech za sekundu namísto bloků nebo kilobajtů za sekundu. Zobrazená data jsou platná pouze pro jádra 2.4 a novější.
-nZobrazí sestavu NFS (Network File System). Tato možnost funguje pouze s jádrem 2.6.17 a novějšími verzemi.
-p[{zařízení [,…] | ALL}]: Volba -p zobrazuje statistiky blokových zařízení a všech jejich oddílů, které systém používá. Pokud na příkazový řádek přidáme název zařízení, zobrazí se statistika a všechny její oddíly. Nakonec klíčové slovo ALL naznačuje, že by se statistiky měly zobrazovat pro všechny systémově definované blokové oddíly a zařízení.
-tVytiskne čas každé generované sestavy. Formát časového razítka může záviset na hodnotě proměnné prostředí S_TIME_FORMAT.
-PROTIVytiskněte si použitou verzi iostatu.
-XZobrazit rozšířené statistiky.
-zInstruuje iostat, aby přeskočil výstup jakéhokoli zařízení, pro které během zvoleného vzorkovacího období neprobíhá žádná aktivita.
Jak vidíme, iostat je více než jednoduchý systémový nástroj, musíme z něj vytěžit maximum a spravovat tak své operační systémy mnohem komplexnějším způsobem.