Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Vysoký IO wait zastavuje Debian

adlow
adlow
14. 1. 2010 1:57

Vysoký IO wait zastavuje Debian

Nálepky: Debian, disk

Ahoj,

obcas mi zatuhne Debian (Linux server 2.6.26–2-openvz-686), top hlasi 100% wait a iotop 99% na nasledujicich procesech(nejak se stridaji): pdflush, kjournald, kmirrord.

Na serveru mi bezi jen par virtualu se sambou, mysql a apache.

Pameti mam hodne.

Nevite, kde je problem?

Dik.

Ash
Ash (neregistrovaný) ---.openvpn.cesnet.cz
14. 1. 2010 4:54 Nový

Re: Vysoke IO wait pdflush, kjournald, kmirrord

celé vlákno

K tomu pdflush by mohlo něco napovědět

cat /proc/sys/vm/­dirty_ratio
cat /proc/sys/vm/­dirty_backgrou­nd_ratio
cat /proc/sys/vm/­dirty_bytes

adlow aura:43
14. 1. 2010 11:23 Nový

Re: Vysoke IO wait pdflush, kjournald, kmirrord

celé vlákno

cat /proc/sys/vm/­dirty_ratio
10
cat /proc/sys/vm/­dirty_backgrou­nd_ratio
5
/proc/sys/vm/­dirty_bytes neexistuje

cat /proc/sys/vm/­dirty_expire_cen­tisecs
3000
cat /proc/sys/vm/­dirty_writebac­k_centisecs
500

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.35.broadband11.iol.cz
28. 2. 2010 14:57 Nový

Re: Vysoke IO wait pdflush, kjournald, kmirrord

celé vlákno

zkuste nastavit

dirty_ratio = 70
dirty_backgrou­nd_ratio = 1
dirty_expire_cen­tices = 300

šílené hodnoty?

Je blbost držet dirty data v paměti, je lepší je co nejrychleji odlifrovat na disk. pdflush se spousti v pozadi.
Proc dirty_ratio na 70? Pokud aplikace prekroci tuhle hodnotu, tak se v systemu zastavi VESKERE I/O dokud se data nezapisi. Proto je lepsi dirty stranky zapisovat v pozadi.

Jeste to chce si pohrat s page-cluster (nevim, proc by nemohl byt 0). A swappiness, pokud máte vysoké I/O a hodně paměti, pak je dobré mít swappiness na 100%. Radši odswapovat spící procesy, než obětovat file cache.

x
x (neregistrovaný) 131.207.242.---
14. 1. 2010 7:58 Nový

Re: Vysoke IO wait pdflush, kjournald, kmirrord

celé vlákno

Pane boze ty to vidis… :-D Proc virtualizujes neco co ti muze bezet na tom jednom fyzickem HW a pripravujes se o zdroje systemu?

Virtualization is a toy sold as an enterprise solution. The argument
goes like this: you need a domain controller and sequel server so you
need 2 machines. So instead of paying for 2 machines you virtualize
them!!!!! OMGZOMG!!!!11111ONe

What Mr. dingle berry insultant forgets to point out is that both tasks
will run like ass in a virtualized environment AND can be easily
combined on the same box. Usually lost in the same conversation is
that you need both machines to be up at the same time too to be useful.

I have seen people virtualize a file server and domain controller on a
single machine. Which is awesome because now you get free >30% loss of
IO performance. You know it keeps bandwidth use lower and latency
higher. Exactly what lusers like.

Virtualization is great to develop kernel code and get an idea if it'd
work before moving on to real hardware (and fixing real bugs on real
hardware because virtualization failed to run right).

I like to play with old OS' as well so its neat for that but usually
doesn't work. This really is in the toy section though.

kyytaM
kyytaM (neregistrovaný) ---.dynamic.nextra.sk
14. 1. 2010 10:00 Nový

Re: Vysoke IO wait pdflush, kjournald, kmirrord

celé vlákno

jane, na DC, ktory ma load monzo 0.01 su kupim jeden poriadny hw, na druhy DC, ktory bude mat load este nizsi si kupim dalsi hw atd. A jebat aplikacie na DC, pokial mozno este TS server je naozaj TO SPRAVNE RIESENE. :D what a jerk

adlow aura:43
14. 1. 2010 11:44 Nový

Re: Vysoke IO wait pdflush, kjournald, kmirrord

celé vlákno

Nekde jsem cetl, ze virtualizace na urovni jadra system moc nezatezuje (jednotky procent).
Navic to vsechno opravdu bezi na jednom hw.

Ten HW (Intel® Core™2 Duo CPU E7300 @ 2.66GHz) s 4GB pameti by snad mel zvladnout 2× apache, 2× mysql a sambu, ne?

Virtualizace je dobra nejen pro kernel developery ale pro developry obecne. Jednoduse si nastavis testovaci prostredi bez ovlivneni jinych prostredi.

LWQ
LWQ (neregistrovaný) ---.eurotel.cz
14. 1. 2010 10:00 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Virtualizace je cesta budoucnosti nebo skoncime jako ve filmu WALL-E – vsude kolem plno bordelu v podobe absolutne zbytecny kusu HW, serveru.

Ve virtualizaci je budoucnost a je dobre, ze zacina uz dnes (TECKA!).

adlow aura:43
14. 1. 2010 11:48 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Jasne, navic dnes maloktere PC je pouzivano z vice nez 30%.

adlow aura:43
14. 1. 2010 11:57 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Jeste bych mozna moh dodat, ze pouzivam LVM, ale zadny zrcadleny nebo prokladany oddil a zadny logicky disk nejde pres vice fyzickych.
Ale zda se, ze lvm to nezpomaluje:

# hdparm -Tt /dev/sdd
/dev/sdd:
Timing cached reads: 3888 MB in 2.00 seconds = 1945.30 MB/sec
Timing buffered disk reads: 292 MB in 3.02 seconds = 96.80 MB/sec

# hdparm -Tt /dev/data/video
/dev/data/video:
Timing cached reads: 3890 MB in 2.00 seconds = 1945.92 MB/sec
Timing buffered disk reads: 288 MB in 3.00 seconds = 95.99 MB/sec

Ivan
Ivan (neregistrovaný) 165.72.200.---
14. 1. 2010 17:59 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Pouzivas Vmware? Vmware a LVM se moc nekamaradi(chyba je prej v LVM). Zkus vyhodit LVM anebo zkus googlit na forech Vmware. Kdysi jsem tam nasel nejaky rady, ale uz si nepamatuju jaky.

adlow aura:43
14. 1. 2010 18:51 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Jo, ted sem si vsim v dmesg nasledujici hlasky:
INFO: task kjournald:2100 blocked for more than 120 seconds.

Jindra
Jindra (neregistrovaný) ---.eurotel.cz
26. 1. 2010 13:44 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Mám podobný problém.
Opravdu nikdo neví co s tím?

Jindra
Jindra (neregistrovaný) ---.13.24.78.awnet.cz
26. 2. 2010 22:59 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Nojo, asi nic :-(

aaa
aaa (neregistrovaný) 93.23.67.---
27. 2. 2010 9:23 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

vyzera to na kernel bug…

http://www.google.com/search?q=INFO%3A+task+kjournald%3A.*+blocked+for+mo­re+than+.*+se­conds.&ie=utf-8&oe=utf-8&aq=t&rls=or­g.mozilla:en-GB:official&cli­ent=firefox-a

aaa
aaa (neregistrovaný) 93.23.67.---
27. 2. 2010 9:24 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

hlupy root..!

link

wakatana
1. 3. 2010 7:54 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Ahojte vsetci, v linuxe sa nejaku tu dobu pohybujem no z vasej diskusie absolutne nechapem o com je rec :)
Chcel by som sa preto opytat kde sa da dopatrat k tymto informaciam ohladom vykonu linux ? Je to premna velka neznama a nenasiel som nejake ucelenejsie vysvetlenie. Zaujima ma hlavne zvysovanie vykonu a k tomu asi bude potreba znalosti /proc a podobne. Rovnako by ma zaujimalo ako je to v linuxe vlastne s pamatou, CPU, cachovanim roznymi bufframi a pod. Napr raz som hladal proces ktory vlastne zerie najvac syst. prostriedkov a dopatral som sa k tomu ze linux nema prikaz ktory to vylistuje (ps, top, vraj ukazuju vytazenie procesom ale aj v zavislosti na kniziciach ktore mozu byt zdielane, takze to neodraza skutocnost)
Prosim Vas poradte kde najst nejake blizsie info ohladom „hlbsieho“ fungovania spravy procesov, IO, cachovania a vykonu (z adminovho hladiska, teda dufam ze k tom unebude potreba C), pripadne by som bol aj za serial tu na roote :) nakolko nikde na nete som tuto temu nevidel pekne vysvetlenu.

Dakujem

Tomas Matejicek aura:53
6. 3. 2010 8:15 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Ono to asi do jednoducheho howto shrnout nejde. Clovek musi vedet, jak pracuje to, jak pracuje tamto, a dat si to nejak dohromady, vykon masiny je vzdy zavisly na hodne promennych…

Napriklad tady ten puvodni post, vubec nevim jak bych mu poradil, a to se povazuju za experta na toto tema :)

Vysoke IOwait znamena, ze chce system pracovat s diskem vic, nez disk zvlada, a proto se na ten disk ceka. Ja osobne treba swap partisnu nikde nemam a jsem odpurce swapu obecne, protoze swap je to nejhorsi co se muze stat – system zacne ukladat na disk, to ho zpomali, nahromadi se nevyrizene pozadavky (apache, atd) a je treba vic pameti, tudiz dalsi swapovani, a dalsi zasek.

Pokud je vysoke IOwait i bez swap partisny, tak s tim diskem asi pracuje neco jineho. Treba apache se snazi neco posilat a je toho tolik ze nestiha cist?

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.seznam.cz
8. 3. 2010 12:03 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Dobře napsaný swap nezpomaluje. TO je pouze doména linuxu, tam je swap příšerný a jádro o jádra se to nemění.

Už vůbec je blbost tvrdit, že ukládání na disk zpomaluje. Ukládání na disk lze vyřizovat asynchronně, tety není třeba na ukládání čekat. Jediný co může zdržovat je kombinace požadavků ulož následovaný požadavkem přečti. Ano, pak se musí čekat na dokončení uložení. A o tom to je. O tom, aby swapování bylo napsáno chytře, tak aby se těmto situacím systém pokuď možno vyhnul, což fakt není doménou linuxu.

faha
faha (neregistrovaný) ---.cust.sloane.cz
8. 3. 2010 12:39 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Zdravim, muzete ten „priserne“ napsany swap nejak dolozit? Hrabu se posledni dobou v kernelu sice coby janitor, ale tohle me zajima, slysim to prvne. Diky

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.seznam.cz
8. 3. 2010 12:57 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Samozřejmě. Třeba mi odpovíte na otázku, proč se stránky aplikací neduplikují do swapu už od prvopočátku, a ne až když „dojde paměť“?

faha
faha (neregistrovaný) ---.cust.sloane.cz
8. 3. 2010 16:41 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Mno to nevim a otazka je jestli by se tak vubec melo dit a pouziva se to nekde jinde mimo Linux?!?

Napr. na redukci I/O lze pouze compcache (compressed in-memory swap device), coz se snazi udrzet data co nejdele ve fyzicke pameti i za cenu komprimace na ukor CPU, myslim(ale mozna take ne), ze neco podobneho pouziva i IBM na svych systemech.
http://code.google.com/p/compcache/

Jak si predstavujete tu duplikaci? Dojde pamet, jadro vyhodi z pameti data s tim,ze stejne ma duplikat ve swapu a kdyz na ne prijde rec tak je natahne zpet a pripadne zahodi jinou cast od ktere ma opet diplukat ve swapu?

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.seznam.cz
8. 3. 2010 17:01 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

V zásadě, tedy víceméně tak jak to dělají Windowsy. Od určité úrovně zaplnění, což je dejme tomu kolem 50% začínají ve chvílích, kdy nemá řadič co na práci duplikovat dirty stránky do swapu (to jak si pořád někteří linuxoví uživatelé stěžují, že windowsy swapují, i když nemusí). Tenhle proces má nízkou prioritu, pokud tedy na to nikdo nečeká. Tedy požadavky na čtení se vyřizují přednostně. Taky je tam nějaká logika, kterých stránek se to týká. Ty co se často mění, tak ty asi ne. Ono se statisticky potvrzuje, že 20% kódu provádí 80% času programu, takže bych si troufnul tvrdit, že podobně to bude u využitelnosti paměti.

Výhodou je, že operační systém může prakticky kdykoliv vyřídit požadavek přidělení dalších paměťových stránek bez odkladu. Zejména u procesů generující paměťové špičky, tedy zaalokují větší kus paměti, něco v něm zapíší, pak to přečtou a zahodí. Typicky třeba překladače.

Vracení paměti už není tak tragické. Buď prostě zůstane volná a časem se doplní podle potřeby jak budou procesy generovat výpadky stránek, nebo se nějakým statistickým způsobem vyhodnotí, které stránky se na pozadí zase dotáhnou zpět, případně se paměť zatím použije pro cache.

Druhým bodem je nerozlišování mezi pamětí aplikací a cache. Cache jsou namapovaný úseky různých souborů. Paměť aplikací jsou namapovaný úseky swapfile. Aplikace, která hodně čte z disku je v případě malé cache v nevýhodě, stejně tak, pokud se pro cache využívá zbývající paměť a ta je třeba skoro zaplněná. Pokud na linuxu použiju swappiness=100, mohu s tím nasimulovat odswapování paměti kvůli cache, ale chybí mi ta duplikace, operační prostě nemá k dispozici volné stránky, které by mohl přidělit pro cache. Kdyby si aplikace natáhla data do své paměti a pracovala v ní, získa větší working set, než bude-li spoléhat jen na cache. OS by měl lépe poznat, kdy je čas odswapovat stránky aplikací pro větší cache

Ani tohle není bez problémů. Windows XP měli ještě problém v prioritě. Takový AVG na pozadí pokud scanoval disk byl schopen způsobit oswapování všech aplikací pro větší cache. Ale Windows 7 už tohle mají ošetřené lépe a nestává se to.

faha
faha (neregistrovaný) ---.cust.sloane.cz
8. 3. 2010 17:12 Nový

Re: Vysoký IO wait zastavuje Debian

celé vlákno

Pokud je VM pod velkym loadem dojde k jevu, kteremu se rika „SystemThrashing“, coz prakticky znamena ze vykon(propustnost) je degradovan natolik,ze procesy vetsinu sveho casu cekaji na disk.

Lze se tomu i brani napr. implementaci „swap token mechanism“, precetl jsem si o tom neco ale uz je dele.

http://www.cse.ohio-state.edu/hpcs/WWW/HTML/publications/abs05-1.html
http://www.cse.ohio-state.edu/hpcs/WWW/HTML/publications/papers/TR-05-1.pdf

Dalsi z moznosti, kterou pouziva napr. BSD je limitovani soubeznych procesu uspavanim a tim snizovani loadu na VM.

Je zajimave, ze se prakticky se stejnym problemem potikaji napr. i DB systemy a nektere implementuji neco podobneho po svem a nespolejaji tolik na jadro. (myslim, ze treba postgres, ale to bych kecal).

Školení Google+ pro firmy

DW - Školení PPC
  • Jak využít Google+ pro firemní komunikaci a marketing.
  • Čím se liší Google+ od Twitteru a Facebooku z pohledu firemního využití.
  • Jak využít Google+ v souladu s pravidly užívání.
  • Založení Google+ Page (Stránky) krok po kroku, včetně praktických tipů.

Detailní informace o školení Google+ »