Puncte:0

Iowait ridicat cu RAID0. CPU 100%. Datele statice nu sunt stocate în cache în RAM

drapel us

Vă cer ajutorul. Eu însumi nu mai văd calea de ieșire.

Am un server
1x Xeon E-2236
32 RAM
4 discuri de 10 TB (WDC WD101KRYZ-01) - colectate în RAID-0.
Discurile sunt rapide. Fiecare individual oferă 250 MB/s de citire/scriere. Matricea RAID-0 produce 900 MB/s - ceea ce este suficient pentru a pompa un canal de 7 gigabit. Testul efectuat cu hdparm -t /dev/md0

Serverul este conceput pentru a distribui fișiere video mari - este un server video de streaming.

Când activez traficul către acest server, totul merge bine pentru o vreme, dar în timp, iowait crește la maximum. HDD-urile gestionează doar 40 de solicitări pe secundă - ceea ce este foarte mic. iowait este un proces de lucru ocupat (nginx).

1. De ce? ce fac greșit?

Am încercat să activez aio pentru multithreading în nginx, a ajutat, dar nu esențial.

Am crescut readadhead = 8192, blockdev --setra 65536 - nici un rezultat.

2. De ce nu încearcă nucleul să memoreze în cache datele statice în RAM la sarcina maximă a CPU?

Am verificat discurile. Nu există sectoare proaste. HDD-uri - grozav.

3. De ce arată atop o sarcină mare pe un singur disc? (vezi captura de ecran)
4. Nu ar trebui RAID-0 să fie paralel cu încărcarea pe toate discurile?

Vă cer ajutorul. Mulțumesc!

Michael Hampton avatar
drapel cz
Rugina rotativă are IOPS scăzut, ceea ce este mult mai important decât viteza de citire secvențială. Te-ai fi descurcat mult mai bine cu zece discuri de 4TB. Și a cheltuit mai puțini bani.
Grey Hill avatar
drapel us
Am un al doilea exact același server, cu aceleași discuri. Funcționează perfect. Singura diferență este în RAID. RAID-10 pe vechiul server. Pe un nou server RAID-0. RAID-0 ar trebui să fie mai rapid decât 10 - nu?
djdomi avatar
drapel za
Hdparm nu este niciodată o sursă de încredere pentru benchmark. Și cuvintele lui Michael sunt adevărate. Stocarea de învârtire este foarte scăzută pentru iops
djdomi avatar
drapel za
Apropo, puteți folosi memoria cache pentru a obține o performanță mai bună
Grey Hill avatar
drapel us
Djdomi, Te rog, spune-mi în ce mod propui să faci asta?
Paul avatar
drapel cn
RAID 10 este aceeași cantitate de discuri? Aceeași cantitate de discuri în RAID 10 și 0 va oferi aceeași rată de citire (4x). Mă întreb dacă adăugarea unui SSD și schimbarea acestuia ar crește efectiv IOPS-ul?
Puncte:0
drapel ca

4 discuri de 10 TB (WDC WD101KRYZ-01) - colectate în RAID-0

În primul rând, permiteți-mi să vă avertizez împotriva RAID0 dacă nu ești foarte sigur că pierderea tuturor datelor în fața unui disc prost este bine. Pentru a spune adevărul, numai date scratchpad, temporare sau foarte ușor de reconstruit ar trebui să fie puse vreodată pe o matrice RAID0.

Serverul este conceput pentru a distribui fișiere video mari - este un server de streaming video

Când se citesc secvențial fișiere mari, unde „mare” înseamnă într-adevăr „mai mare decât memoria cache-ului RAM”, stocarea în cache este ineficientă: fiind imposibil să memorezi în cache toate datele fișierelor din RAM, fiecare nouă recitire a aceluiași fișier va duce la eliminarea datelor din memoria cache anterior. , eliminând efectiv propriul cache în mod continuu.

HDD-urile gestionează doar 40 de solicitări pe secundă - ceea ce este foarte mic

Din păcate, HDD-urile mecanice sunt foarte lente pentru IO-uri mici, aleatorii: un HDD sănătos de 7200 RPM oferă în medie ~70 IOPS atunci când este testat izolat, probabil ceva mai puțin atunci când este pus într-o matrice RAID.

Acestea fiind spuse, un serviciu de streaming ar trebui nu bate discurile cu IO-uri mici, aleatorii. Puteți furniza rezultatul următoarelor comenzi în timpul unui caz atât de mare de așteptare?

  • lsblk
  • dstat -d -n -f
  • iotop -a
  • iostat -x -k 1
Puncte:-2
drapel us

Există o singură soluție!

Dacă aveți nevoie de viteză bună a discului, RAID 0 și 5 nici nu ar trebui luate în considerare. Testat personal)) Da pe RAID 0 și 5 vei avea mult spațiu liber, dar viteza va fi foarte mică. La încărcare mare, serverul dvs. va cere ajutor.

Am instalat un software RAID 10 și problemele mele au dispărut.

Dezavantajul RAID 10 este că este scump. Dar dacă ai noroc vei găsi un hoster cu un preț bun pentru servere.

Noroc tuturor!

P.S.Întrebarea este închisă!

Nikita Kipriyanov avatar
drapel za
**Acest lucru este cu siguranță greșit**. RAID0 este exact pentru pierderea datelor la viteză liniară foarte mare, datorită paralelizării și lipsei de redundanță. Starea optimă RAID5 și RAID6 ar trebui să afișeze viteze de citire destul de mari, doar puțin mai puțin decât RAID0, deoarece fac aceeași paralelizare.Problema dvs. este în altă parte, nu doar la nivelul RAID, testele dvs. sunt probabil defecte. Vă rog, nu-i îndrumați greșit pe alții.
OnkelJ avatar
drapel in
Sunt de acord cu @NikitaKipriyanov aici - RAID0 este mai rapid. Trebuie să fie ceva în neregulă cu software-ul și/sau hardware-ul pentru ca RAID10 să fie mai rapid. Cel mai probabil software/configurație, deoarece obțineți o viteză corectă cu RAID10.
vidarlo avatar
drapel ar
Pentru o citire numai, cum ar fi distribuția video, 10 poate foarte bine să fie mai rapid, deoarece *aceleași date* pot fi citite de pe două discuri în paralel.
Nikita Kipriyanov avatar
drapel za
@vidario cum este posibil? Prefer să cred că RAID10 va arăta exact aceeași performanță ca RAID0 pentru același număr de axe. Nici mai mult, nici mai puțin, pentru că nu există niciun motiv să fie mai mult, nici un motiv să fie mai puțin. Și, puțin mai bine decât RAID5, deoarece un bloc de date mai puțin în fiecare bandă decât RAID0. Și puțin mai bine decât RAID6, deoarece are două blocuri de date mai puține în fiecare bandă de același număr de axe.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.