Upgrade-ul subsistemului de stocare al unui server vechi de la PCIe 1.0 la 2.0

Upgrade-ul subsistemului de stocare al unui server vechi de la PCIe 1.0 la 2.0De ce subiectul acestui articol este upgrade-ul subsistemului disc.Este clar că, de obicei, trebuie în primul rând:

  1. Să creșteți memoria RAM. Este un pas atât de evident, încât nu am considerat necesar să scriu despre el în articolul principal.
  2. Să adăugați un procesor suplimentar sau să înlocuiți ambii procesoare cu versiuni maxim performante acceptate de socket-urile serverului.

Pentru serverele vechi, atât memoria, cât și procesoarele pot fi, de obicei, găsite la prețuri foarte accesibile.

Într-un anumit moment, orice proprietar de server privat se confruntă cu întrebarea - upgrade sau server nou.

Având în vedere că prețul unui server nou poate ajunge la milioane de ruble, mulți aleg calea upgrade-ului.

Pentru un upgrade de succes, este foarte important să folosiți compromisuri, astfel încât pentru un cost nesemnificativ (în comparație cu prețul unui server nou) să obținem un câștig semnificativ de performanță.

Articolul conține o listă de SSD-uri server cu PCI-E 2.0 x8, care s-au ieftinit considerabil acum, precum și controlere RAID cu suport pentru caching SSD și un SSD SATA III testat pe un interfață SATA II.

Cel mai evident mod de a face upgrade la subsistemul disc este trecerea de la HDD la SSD. Aceasta este valabilă atât pentru laptopuri, cât și pentru servere. În servere, probabil, diferența este doar că SSD-urile pot fi ușor grupate în RAID.

Adevărul este că există aspecte fine legate de faptul că porturile SATA III pe un server vechi s-ar putea să nu existe și atunci va trebui să înlocuiți sau să instalați un controler corespunzător.

Există, desigur, și metode intermediare.

Caching pe SSD.

În general, această metodă este destul de potrivită pentru baze de date, 1C, orice acces aleator. Viteza chiar se accelerează. Pentru fișiere mari, supravegherea video, această abordare este inutilă.

Controlere RAID LSI (IBM, DELL, CISCO, Fujitsu)

Începând cu seria 92xx, LSI are tehnologia CacheCade 2.0, care permite utilizarea aproape oricăror SSD-uri SATA ca cache pentru array-ul RAID. Atât pentru citire, cât și pentru scriere. Și chiar crearea unui mirror din SSD-urile de cache.

Cu controlerele branduite, totul devine mai complicat. În special în cazul IBM. Cheile și SSD-urile pentru CacheCade trebuie cumpărate de la IBM la prețuri exorbitante, așa că este mai simplu să schimbați controlerul cu unul LSI și să cumpărați un cheia hardware mai ieftină. Cheile software costă semnificativ mai mult decât cele hardware.

Controlere RAID Adaptec

Pe controlerele Adaptec există tehnologia MaxCache, care permite, de asemenea, utilizarea SSD-urilor ca memorie cache. Ne interesează versiunile controlerelor care se termină cu litera Q.

Controlerele Q pot folosi aproape orice SSD, nu doar SSD-urile furnizate de Adaptec.

  • Începând cu 5xxx, toate controlerele au suport pentru Hybrid RAID. Esența acestei tehnologii este că se realizează întotdeauna citirea de pe SSD, atunci când există un mirror, unul dintre discuri fiind SSD.
  • 5xxxQ, de exemplu 5805ZQ. Aceste controlere suportă MaxCache 1.0. Doar cache pentru citire.
  • 6xxQ, de exemplu 6805Q. MaxCache 2.0. Cache pentru citire și scriere.
  • 7xxQ, de exemplu 7805Q. MaxCache 3.0. Cache pentru citire și scriere.
  • 8xxQ nu are sens să fie utilizat pentru upgrade datorită prețurilor ridicate.

Articol despre cache-ul pe SSD pe Habr (controlere și OS).

Tehnologii software pentru cache-ul pe SSD

Nu voi aborda aceste tehnologii. Practic, în orice sistem de operare există acum suport pentru ele. Mi-a rămas în memorie că, la utilizarea btrfs, aceasta redirecționează automat cererile de citire către dispozitivul cu cea mai scurtă coadă — SSD.

SATA III SSD pe interfața SATA II

Deoarece nu întotdeauna există posibilitatea și banii pentru un controler nou, apare întrebarea cât de bine funcționează SSD-urile SATA III pe interfața învechită SATA II.

Vom efectua un mic test. Ca subiect de testare, vom folosi un SSD SATA III Intel S3710 de 400GB.

Citire aleatorie, iops
Latenta medie la citire, mS
Scriere aleatorie, iops
Latenta medie la scriere, mS
Citire liniară, MB/s
Scriere liniară, MB/s

SATA II
21241
2
13580
4
282
235

SATA III
68073
0.468
61392
0.52
514
462

Comenzi utilizate pentru testarea vitezei

fio --name LinRead --eta-newline=5s --filename=/dev/sda --rw=read --size=500m --io_size=10g --blocksize=1024k --ioengine=libaio --iodepth=32 --direct=1 --numjobs=1 --runtime=60 --group_reporting 

fio --name LinWrite --eta-newline=5s --filename=/dev/sda --rw=write --size=500m --io_size=10g --blocksize=1024k --ioengine=libaio --fsync=10000 --iodepth=32 --direct=1 --numjobs=1 --runtime=60 --group_reporting

fio --name RandRead --eta-newline=5s --filename=/dev/sda --rw=randread --size=500m --io_size=10g --blocksize=4k --ioengine=libaio --iodepth=32 --direct=1 --numjobs=4 --runtime=60 --group_reporting

fio --name RandWrite --eta-newline=5s --filename=/dev/sda --rw=randwrite --size=500m --io_size=10g --blocksize=4k --ioengine=libaio --iodepth=32 --direct=1 --numjobs=4 --runtime=60 --group_reporting

După cum se poate observa, diferențele în ceea ce privește viteza liniară, IOPS și latențele sunt semnificative, astfel că are sens să folosești doar interfața SATA III, iar dacă aceasta nu este disponibilă, să instalezi un controler.

Pentru corectitudine, trebuie să menționez că în alte experimente diferența de viteză a citirii și scrierii aleatoare a fost nesemnificativă. Este posibil ca o astfel de mare diferență în IOPS între SATA II și SATA III să fi apărut deoarece aveam un controler SATA II foarte slab sau un driver cu câteva erori.

Cu toate acestea, este un fapt că trebuie să verificați viteza SATA II – poate că aveți un controler la fel de lent. În acest caz, trecerea la un controler SATA III este obligatorie.

PCIe SSD pe magistrala PCI-e 2.0 sau 1.0

După cum se știe, cele mai rapide SSD-uri sunt PCI-e NVMe, care nu sunt limitate de protocoalele SAS sau SATA.

Cu toate acestea, atunci când instalați SSD-uri moderne PCI-e trebuie să țineți cont de faptul că majoritatea dintre ele folosesc doar 4 linii PCI-e, de regulă PCI-e 3.0 sau 3.1.

Acum să ne uităm la tabelul vitezelor magistrale PCI-e.

Lățimea de bandă PCI Express, Gbyte/s

An
de lansare

Versiune
PCI Express

Codificare

Viteză
transmisie

Lățimea de bandă pe x linii

×4
×8
×16

2002
1.0
8b/10b

0.50 Gbyte/s
1.0 Gbyte/s
2.0 Gbyte/s
4.0 Gbyte/s

2007
2.0
8b/10b

1.0 Gbyte/s
2.0 Gbyte/s
4.0 Gbyte/s
8.0 Gbyte/s

2010
3.0
128b/130b

1.97 Gbyte/s
3.94 Gbyte/s
7.88 Gbyte/s
15.8 Gbyte/s

Atunci când instalați un SSD PCI 3.0 x4 pe magistrala PCI-e 2.0, el va funcționa cu același număr de linii, dar la o viteză semnificativ mai mică. Există o problemă deoarece vitezele liniare ale SSD-urilor PCI-e moderne depășesc lățimea de bandă a magistralei PCI-e 2.0 și cu atât mai mult a PCI-e 1.0.

M.2 SSD și adaptor PCI-e

Există opțiuni acceptabile de upgrade, cum ar fi achiziționarea unui adaptor cu 10 dolari și montarea unui M.2 SSD în server, dar din nou, pentru SSD-uri de calitate bună viteza va fi afectată (în special pe PCI-e 1.0), iar M.2 SSD-urile nu sunt întotdeauna pregătite pentru sarcinile serverului: durabilitate mare, protecție pe alimentare și stabilitate a caracteristicilor de viteză din cauza umplerii cache-ului SLC pe modelele ieftine.

Astfel, această metodă poate fi potrivită doar pentru un server cu magistrala PCI-e 2.0 și ocupat cu o muncă necritică.

PCI-E 2.0 x8 SSD

Cel mai logic upgrade din punct de vedere economic este utilizarea unui SSD PCI-E 2.0 x8 pentru servere cu magistrala PCI-e 1.0 (lățime de bandă de până la 2 GB/s) și PCI-e 2.0 (până la 4 GB/s).

SSD-uri server care sunt acum la prețuri foarte accesibile pot fi găsite atât pe diferite piețe online, cât și pe site-uri de licitație, inclusiv în Rusia.

Am elaborat un tabel cu astfel de SSD-uri moral învechite, care pot accelera perfect serverul dvs. vechi. La sfârșitul tabelului am adăugat câteva SSD-uri cu interfață PCI-E 3.0 x8. Poate aveți noroc și găsiți ceva la un preț rezonabil.

Denumire
TB
PBW
PCI-E
4k read iops, K
4k write iops, K
citire, MB/s
scriere, MB/s

Fusion-io ioDrive II DUO MLC
2.4
32.5
2.0 x8
480
490
3000
2500

SANDISK FUSION IOMEMORY SX350-1300
1.3
4
2.0 x8
225
345
2800
1300

SANDISK FUSION IOMEMORY PX600-1300
1.3
16
2.0 x8
235
375
2700
1700

SANDISK FUSION IOMEMORY SX350-1600
1.6
5.5
2.0 x8
270
375
2800
1700

SanDisk Fusion ioMemory SX300-3200
3.2
11
2.0 x8
345
385
2700
2200

SanDisk Fusion ioMemory SX350-3200
3.2
11
2.0 x8
345
385
2800
2200

SANDISK FUSION IOMEMORY PX600
2.6
32
2.0 x8
350
385
2700
2200

Huawei ES3000 V2
1,6
8,76
2.0 x8
395
270
1550
1100

Huawei ES3000 V2
3,2
17,52
2.0 x8
770
230
3100
2200

EMC XtremSF
2,2
 
2.0 x8
340
110
2700
1000

HGST Virident FlashMAX II
2,2
33
2.0 x8
350
103
2700
1000

HGST Virident SSD FlashMAX II
4,8
10.1
2.0 x8
269
51
2600
900

HGST Virident FlashMAX III
2,2
7.1
2.0 x8
531
59
2700
1400

Dell Micron P420M
1.4
9.2
2.0 x8
750
95
3300
630

Micron P420M
1.4
9.2
2.0 x8
750
95
3300
630

HGST SN260
1.6
25.10
3.0 x8
1200
200
6170
2200

HGST SN260
3,2
17,52
3.0 x8
1200
200
6170
2200

Intel P3608
3,2
17,5
3.0 x8
850
80
4500
2600

Kingston DCP1000
3,2
2,78
3.0 x8
1000
180
6800
6000

Oracle F320
3.2
29
3.0 x8
750
120
5500
1800

Samsung PM1725
3.2
29
3.0 x8
1000
120
6000
2000

Samsung PM1725a
3.2
29
3.0 x8
1000
180
6200
2600

Samsung PM1725b
3.2
18
3.0 x8
980
180
6200
2600

Upgrade-ul subsistemului de stocare al unui server vechi de la PCIe 1.0 la 2.0Dintre acești SSD-uri, Fusion ioMemory se remarcă. Directorul științific Fusion a fost Steve Wozniak. Apoi, această companie a fost cumpărată de SanDisk cu 1,2 miliarde de dolari. La vremea respectivă, prețul lor era de aproximativ 50.000 dolari pe bucată. Acum, însă, pot fi cumpărate pentru câteva sute de dolari noi cu capacitate de la 1TB și mai mult.

Dacă ne uităm mai atent la tabel, putem observa că au un număr de IOPS la scriere aproape egal cu numărul de IOPS la citire. Având în vedere prețul lor actual, cred că aceste SSD-uri merită atenție.

Adevărul este că au câteva particularități:

  1. Nu pot fi bootabile
  2. Este necesar un driver pentru utilizare. Există drivere practic pentru toate, dar pentru ultimele versiuni de Linux va trebui să le compilezi.
  3. Dimensiunea optimă a sectorului este de 4096 bytes. (512 este, de asemenea, acceptat)
  4. Driverul poate consuma o cantitate considerabilă de RAM în scenarii mai nefavorabile (cu dimensiunea sectorului de 512 bytes)
  5. Viteza de funcționare depinde de viteza procesorului, așa că este mai bine să dezactivezi tehnologiile de economisire a energiei. Acesta este un avantaj și un dezavantaj, deoarece cu un procesor puternic, periphericul poate funcționa chiar mai rapid decât este specificat în specificații
  6. Necesită o bună răcire. Pentru servere, aceasta nu ar trebui să fie o problemă.
  7. Nu este recomandat pentru ESXi, deoarece ESXi preferă discuri cu sector 512N, ceea ce poate duce la un consum mare de memorie de către driver.
  8. Versiunile branduite ale acestor SSD-uri nu sunt de obicei suportate de furnizori până la ultimul driver de la SanDisk (martie 2019)

Am efectuat teste ale Fusion ioMemory în comparație cu un SSD server destul de modern Intel P3700 PCI-E 3.0 x8 (acesta din urmă costând de aproximativ patru ori mai mult decât Fusion de capacitate similară). De asemenea, putem observa cât de mult scade viteza din cauza magistralei x4.

Fusion PX600 1.3TB PCI-E 2.0 x8
Intel P3700 1.6TB PCI-E 3.0 x4

Upgrade-ul subsistemului de stocare al unui server vechi de la PCIe 1.0 la 2.0
Upgrade-ul subsistemului de stocare al unui server vechi de la PCIe 1.0 la 2.0

Da, viteza liniară de citire este clar redusă la Intel P3700. Conform specificațiilor, ar trebui să fie 2800 MB/s, iar cifra noastră este de 1469 MB/s. Totuși, în general, putem spune că pentru magistrala PCI-e 2.0, SSD-urile server PCI-E 3.0 x4 pot fi utilizate, dacă pot fi obținute la preț rezonabil.

Conclusions

Substema de stocare a unui server vechi cu magistrală PCI-E 1.0 sau 2.0 poate fi revigorată prin utilizarea SSD-urilor, care pot utiliza 8 linii PCI-E, oferind o lățime de bandă de până la 4GB/s (PCI-E 2.0) sau 2GB/s (PCI-E 1.0). Cea mai rentabilă soluție este să folosiți SSD-uri PCI-E 2.0, care sunt deja învechite moral.

De asemenea, există variante compromis care sunt simple de implementat, legate de achiziționarea unei licențe CacheCade pentru controlerele LSI sau înlocuirea controlerului Adaptec cu o versiune Q.

Și un mod foarte simplu este să cumpărați un controler RAID SATA III pentru a permite SSD-urilor să funcționeze la viteză maximă și pentru a gestiona tot ceea ce necesită rapiditate.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster