Portál AbcLinuxu, 13. května 2025 21:43
Máme tady server Primergy RX300S2 a v něm RAID5 řadič LSI 320-2E. Zapisovalo se na něj nějakých 50MB/s (XFS). Potom nám vyměnili MB a uživatelé si začali stěžovat na pomalost disku. Není divu, dosáhneme nejvýše 5MB/s. Chybová hlášení žádná. Něco se asi muselo špatně nastavit v rámci výměny MB. Neměl by někdo prosím myšlenku, co by to mohlo být? Uvnitř jsou SCSI disky 300MB a i ten RAID5 se tváří jako SCSI disk.
Dík to bylo vyčerpvaíjcí. Zkusím se podívat po novějším BIOSu, to se mi zdá dobrá stopa. Zkusím to s volbičkou irqpoll a když tak nějak zacvičím s ACPI. Podívám se, jestli je tam nějaký Event log.
Koukal jsem se do BIOSu toho RAIDu. Všechny disky se hlásí bez chyb. RAID tvrdí, že je OK. V logu z bootování mi to píše 6807.12 BogoMIPS . Já nevím co to znamená. Nic mi nebliká a nepiští. V messages žádná chyba.
Stalo se, že začaly nějak postupně odumírat filesystémy, vypadalo to na úplný rozpad. Dělo se to při větším zatížení diskovým provozem. Ale po rebootu byla všechna data na svém místě. V BIOSu RAIDu se dá nastavit kešovaný nebo přímý režim. Když jsem dal přímý, tyhle problémy vymizely. Udělal jsem /var/log jako zvláštní filesystém a zase zapnul kešovaný provoz. Rozpad opět nastal a v logu něco bylo, že se spouští nějaká patrola. RAID si vnitřně zřejmě dělal nějakou kontrolu nebo opravu. To stačilo servisní firmě, aby vyměnili MB. Po výměně nám to po hodině provozu zase padlo. Ale že jsem nevěděl co dál, jenom jsem to rebootoval a od té doby to už pár měsíců běží, kešovaně. Až uživatelé přišli na to, že je to nějak pomalý. Tak jsem se tím začal zabývat. Především jsem to zase přepnul na nekešovaný režim, ale rychlost se nezměnila.
Ten stroj je v záruce. Já vyzkouším co jsi mi poradil, pustím HW testy a budu znovu reklamovat. Každopádně děkuji za řadu pěkných tipů.
Některé adresáře tam byly ale nedalo se v nich udělat ls. V jiných se dalo, ale chyběly tam soubory. Některé soubory byly vidět pomocí ls ale nešly přečíst. Chybová hlášení byla jedině I/O error. SCSI chyby žádné. Filesystémy se postupně dělaly read-only, nakonec i / . Ono to / je taky na tom poli.
Podle mě takhle by se to chovalo, kdyby byl problém mezi raidem a keší. Po vypnutí keše to skutečně začalo fungovat. Ale firmware RAID řadiče je prý aktuální. Vyloudit tuto chybu uměl jenom jeden z uživatelů nějakým specifickým výpočtem. Ostatní výpočtáři neměli problém. Rozhodně nestačilo libovolné větší zatížení.
Nezapomeň že jsme vyměnili Mb i s RAID řadičem, on je integrovaný. to bychom museli mít dvě různé závady.
Stačilo nastavit režim zápisu WRITEBACK, to znamená že pole přijme požadavek na diskovou operaci a potvrdí ho, aniž by čekalo na fyzické provedení zápisu. Je to vlastně riskantní, protože zápis se taky nemusí podařit a zapisující linux už se o tom nedozví. U obyčejního disku bych do toho nešel, ale tohle je diskové pole navíc obdařené baterií. Při poruše disku se to zapíše na ostatní disky a chybující disk bude vyřazen. I při výpadku elektřiny to baterka podrží, než se nadržené operace provedou. Takže to riziko snad není tak velké. Původně bylo WRITETHROUGH, to je ta bezpečná varianta.
Dále jsem nastavil režim čtení na READAHEAD, takže po provedení zadaného čtení si pole do keše připraví ještě následující kousek dat, neboť už tuší, že na ně brzy dojde. Původně tam bylo NORMAL.
Načež se nám pole zrychlilo na osminásobek a běhá zase jako dřív, jako před první výměnou motherboardu. Ono je to celé takhle: RAID řadič je integrovaný na MB. Servisní RAID data jsou v paměti toho řadiče a kopie na discích. Po výměně MB nový řadič servisní data neměl, tak si je vzal z disků. Ale optimalizační parametry na discích nebyly, tak tam nechal defaulty. Nový RAID řadič staré parametry skutečně nemohl znát. To spíš je mohl znát ten servisní technik. který nám MB vyměnil, žeano.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.