Varför handlar denna artikel om uppgraderingar av diskens underhÄllssystemDet Àr tydligt att man i första hand vanligtvis behöver:
- Ăka det operativa minnet. Detta Ă€r en sĂ„ uppenbar Ă„tgĂ€rd att jag inte ens tyckte det var nödvĂ€ndigt att skriva om detta i huvudartikeln
- Installera en extra processor eller ersÀtta bÄda processorerna med de mest kraftfulla versionerna som stöds av serverns socketar.
För gamla servrar kan minnen och processorer vanligtvis hittas till mycket lÄga priser.
Vid en viss tidpunkt stĂ€lls varje Ă€gare av en egen server inför frĂ„gan â uppgradera eller köpa en ny server.
Eftersom priset pÄ en ny server nu kan uppgÄ till miljoner rubel, vÀljer mÄnga att uppgradera istÀllet.
För en lyckad uppgradering Àr det mycket viktigt att anvÀnda kompromisser, sÄ att vi för en blygsam kostnad (i förhÄllande till priset pÄ en ny server) fÄr en betydande prestandaökning.
Artikeln innehÄller en lista över server-SSD PCI-E 2.0 x8 som har blivit mycket billigare nu, samt RAID-kontrollers som stöder SSD-caching och testade SATA III SSD pÄ SATA II-grÀnssnittet.
Det mest uppenbara sÀttet att uppgradera diskens underhÄllssystem Àr att gÄ frÄn HDD till SSD. Detta gÀller bÄde bÀrbara datorer och servrar. PÄ servrar Àr den största skillnaden att SSD enkelt kan konfigureras i RAID.
Det finns dock vissa subtila aspekter som relaterar till att SATA III-portar kanske inte finns pÄ en gammal server, och dÄ mÄste man byta ut eller installera en lÀmplig kontroller.
Det finns sjÀlvklart Àven mellanlösningar.
Caching pÄ SSD.
I stort sett passar denna metod bra för databaser, 1C och all typ av random access. Hastigheten ökar verkligen. För stora filer, övervakning via video Àr denna metod vÀrdelös.
RAID-kontrollers LSI (IBM, DELL, CISCO, Fujtsu)
FrÄn serie 92xx har LSI en teknik som kallas CacheCade 2.0, vilket gör att man nÀstan kan anvÀnda vilken SATA SSD som helst som cache för RAID-arrayen. BÄde för lÀsning och skrivning. Man kan till och med skapa ett spegel av cachade SSD.
Med mÀrkeskontrollerare Àr allt mer komplicerat. Detta gÀller sÀrskilt IBM. Nycklar och SSD för CacheCade mÄste köpas av IBM till skyhöga priser, sÄ det Àr enklare att byta kontroller till LSI och köpa en betydligt billigare hÄrdvarunyckel. Mjukvarunycklar Àr avsevÀrt dyrare Àn hÄrdvarunycklar.
RAID-kontrollers Adaptec
Adaptec-kontroller har teknologin MaxCache, som ocksÄ möjliggör anvÀndning av SSD som cache. Vi Àr intresserade av versioner av kontrollerna som slutar med bokstaven Q.
Q-kontroller kan anvÀnda nÀstan vilken SSD som helst, inte bara SSD som tillhandahÄlls av Adaptec.
- FrÄn och med 5xxx har alla kontroller stöd för Hybrid raid. Syftet med denna teknik Àr att lÀsningar alltid görs frÄn SSD nÀr det finns en spegel av en av diskarna i vilket SSD.
- 5xxxQ, t.ex. 5805ZQ. Dessa kontroller stöder MaxCache 1.0. Endast lÀscache.
- 6xxQ, t.ex. 6805Q. MaxCache 2.0. LĂ€s- och skrivcache.
- 7xxQ, t.ex. 7805Q. MaxCache 3.0. LĂ€s- och skrivcache.
- 8xxQ Àr nÀstan meningslöst att anvÀnda för uppgradering pÄ grund av de höga priserna.
Programvaruteknologier för SSD-cache.
Jag kommer inte att belysa dessa teknologier. De stöds praktiskt taget i alla OS nu. Jag minns att vid anvĂ€ndning av btrfs omdirigerar den automatiskt lĂ€sförfrĂ„gningar till enheten med den kortaste kön â SSD.
SATA III SSD pÄ SATA II-grÀnssnitt.
Eftersom det inte alltid finns möjlighet och pengar för en ny kontroller, uppstÄr frÄgan hur bra SATA III SSD fungerar pÄ det förÄldrade SATA II-grÀnssnittet.
Vi kommer att genomföra ett litet test. Som testobjekt har vi en SATA III SSD Intel S3710 pÄ 400 GB.
SlumplÀsning, iops.
Genomsnittlig lÀsfördröjning, mS.
Slumpskrivning, iops.
Genomsnittlig skrivfördröjning, mS.
LinjÀra lÀsningar, MB/s.
LinjÀra skrivningar, MB/s.
SATA II.
21241
2
13580
4
282
235
SATA III.
68073
0.468
61392
0.52
514
462
Kommandon som anvÀnds för att testa hastighet.
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
Som man kan se Àr skillnaden i linjÀr hastighet, IOPS, och fördröjningar mycket betydande, dÀrför Àr det meningsfullt att anvÀnda endast SATA III-grÀnssnittet, och om det inte finns, sÄ uppgradera kontroller.
För rÀttvisans skull vill jag sÀga att enligt Skillnaden i hastighet för slumpmÀssig lÀsning och skrivning var obetydlig. Kanske berodde den stora skillnaden i IOPS mellan SATA II och SATA III pÄ att jag hade en extremt misslyckad SATA II-kontroller eller en drivrutin med buggar.
Men faktum Àr att man bör kontrollera hastigheten pÄ SATA II - kanske har ni ocksÄ en seg kontroller. I sÄ fall Àr det nödvÀndigt att byta till en SATA III-kontroller.
PCIe SSD pÄ PCI-e 2.0 eller 1.0-bussen
Som bekant Àr de snabbaste SSD:erna PCI-e NVMe, som inte Àr begrÀnsade av SAS- eller SATA-protokoll.
Men vid installation av moderna PCI-e SSD:er mÄste man beakta att de flesta anvÀnder endast 4 PCI-e-linjer, vanligtvis PCI-e 3.0 eller 3.1.
Nu ska vi titta pÄ tabellen över hastigheter för PCI-e-bussen.
Bandbredd för PCI Express, GB/s
Ă
r
utgÄva
Version
PCI Express
Kodning
Hastighet
överföring
Bandbredd per x linjer
Ă4
Ă8
Ă16
2002
1.0
8b/10b
0.50 GB/s
1.0 GB/s
2.0 GB/s
4.0 GB/s
2007
2.0
8b/10b
1.0 GB/s
2.0 GB/s
4.0 GB/s
8.0 GB/s
2010
3.0
128b/130b
1.97 GB/s
3.94 GB/s
7.88 GB/s
15.8 GB/s
Vid installation av PCI 3.0 x4 SSD i PCI-e 2.0-bussen kommer det att fungera med samma antal linjer men med avsevÀrt lÀgre hastighet. Problemet Àr att de linjÀra hastigheterna för moderna PCI-e SSD:er överstiger bandbredden hos PCI-e 2.0-bussen, Àn mindre PCI-e 1.0.
M.2 SSD och PCI-e-adapter
Det finns bra uppgraderingsalternativ nÀr vi köper en adapter för 10 dollar och installerar M.2 SSD i servern, men Äterigen kommer hastigheterna att begrÀnsas för bra SSD:er (sÀrskilt pÄ PCI-e 1.0), och M.2 SSD:er Àr inte alltid redo för serverbelastningar: hög slitstyrka, skydd mot strömavbrott och stabilitet i hastighetsprestanda pÄ grund av SLC-cache-fyllnad pÄ billigare modeller.
SÄ denna metod kan endast vara lÀmplig för en server med PCI-e 2.0-buss och som utför icke-kritiska uppgifter.
PCI-E 2.0 x8 SSD
Den mest ekonomiskt logiska uppgraderingen Àr att anvÀnda PCI-E 2.0 x8 SSD för servrar med PCI-e 1.0-buss (bandbredd upp till 2 GB/s) och PCI-e 2.0 (upp till 4 GB/s).
SÄdana server-SSD:er kan nu köpas mycket billigt pÄ olika marknadsplatser och internetauktioner, inklusive i Ryssland.
Jag har gjort en tabell över sÄdana förÄldrade SSD:er som perfekt kan boosta din gamla server. I slutet av tabellen har jag lagt till flera SSD:er med PCI-E 3.0 x8-grÀnssnitt. Kanske har du tur och hittar dem till ett rimligt pris.
Namn
TB
PBW
PCI-E
4k lÀs iops, K
4k skriv iops, K
lÀsa, MB/s
skrvita, MB/s
2.4
32.5
2.0 x8
480
490
3000
2500
1.3
4
2.0 x8
225
345
2800
1300
1.3
16
2.0 x8
235
375
2700
1700
1.6
5.5
2.0 x8
270
375
2800
1700
3.2
11
2.0 x8
345
385
2700
2200
3.2
11
2.0 x8
345
385
2800
2200
2.6
32
2.0 x8
350
385
2700
2200
1,6
8,76
2.0 x8
395
270
1550
1100
3,2
17,52
2.0 x8
770
230
3100
2200
2,2
Â
2.0 x8
340
110
2700
1000
2,2
33
2.0 x8
350
103
2700
1000
4,8
10.1
2.0 x8
269
51
2600
900
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
1.4
9.2
2.0 x8
750
95
3300
630
1.6
25.10
3.0 x8
1200
200
6170
2200
3,2
17,52
3.0 x8
1200
200
6170
2200
3,2
17,5
3.0 x8
850
80
4500
2600
3,2
2,78
3.0 x8
1000
180
6800
6000
3.2
29
3.0 x8
750
120
5500
1800
3.2
29
3.0 x8
1000
120
6000
2000
3.2
29
3.0 x8
1000
180
6200
2600
3.2
18
3.0 x8
980
180
6200
2600
Av dessa SSD stÄr Fusion ioMemory ut. Den vetenskapliga chefen har . Sen köpte SanDisk detta företag för 1,2 miljarder dollar. Vid den tiden kostade de omkring 50 000 dollar styck. Idag kan man köpa dem för nÄgra hundra dollar som nya diskar med kapacitet frÄn 1TB och uppÄt.
Om man ser noga pÄ tabellen, sÄ kan man se att de har ett ganska högt antal IOPS för skrivning som nÀstan Àr lika med antalet IOPS för lÀsning. Med tanke pÄ deras nuvarande pris, tycker jag att man bör uppmÀrksamma dessa SSD.
Det finns dock nÄgra sÀrskilda aspekter:
- De kan inte vara startbara
- Det krÀvs en drivrutin för att anvÀnda dem. Drivrutiner finns praktiskt taget för allt, men för de senaste versionerna av Linux mÄste man kompilera dem.
- Den optimala sektorstorleken Àr 4096 byte. (512 stöds ocksÄ)
- Drivrutinen kan i vÀrsta fall anvÀnda ganska mycket RAM (vid sektorstorlek 512 byte)
- Prestandan beror pÄ processorhastigheten, sÄ energibesparande funktioner Àr bÀttre att stÀnga av. Det Àr bÄde en fördel och en nackdel, eftersom en kraftfull processor gör att enheten kan fungera Àn snabbare Àn vad som anges i specifikationerna.
- Behöver bra kylning. För servrar borde detta inte vara ett problem.
- Rekommenderas inte för ESXi, eftersom ESXi föredrar diskar med sektor 512N, vilket kan leda till hög minnesanvÀndning av drivrutinen.
- VarumÀrkesversioner av dessa SSD stöds vanligtvis inte av leverantörerna upp till den senaste drivrutinen frÄn SanDisk (mars 2019)
Jag har testat Fusion ioMemory i jÀmförelse med en ganska modern server-SSD, Intel P3700 PCI-E 3.0 x8 (den senare kostar cirka fyra gÄnger mer Àn Fusion med liknande kapacitet). Man kan ocksÄ se hur mycket hastigheten sjunker pÄ grund av x4-bussen.
Fusion PX600 1.3TB PCI-E 2.0 x8
Intel P3700 1.6TB PCI-E 3.0 x4


Ja, den linjĂ€ra lĂ€shastigheten Ă€r tydligt begrĂ€nsad hos Intel P3700. Enligt specifikationen ska den vara 2800 MB/s, men vi fĂ„r 1469 MB/s. Ăven om man kan sĂ€ga att man kan anvĂ€nda server-SSD PCI-E 3.0 x4 med PCI-e 2.0-bussen om man kan fĂ„ tag pĂ„ dem till ett rimligt pris.
Slutsatser
Disksystemen pÄ den gamla servern med PCI-E 1.0 eller 2.0 kan optimeras genom att anvÀnda SSD:er som kan utnyttja 8 PCI-E-linjer, vilket ger en överföringshastighet pÄ upp till 4 GB/s (PCI-E 2.0) eller 2 GB/s (PCI-E 1.0). Det Àr mest ekonomiskt att göra detta med moraliskt förÄldrade PCI-E 2.0 SSD:er.
Det finns ocksÄ enkla kompromissalternativ kopplade till att köpa en CacheCade-nyckel för LSI-kontrollrar eller att byta Adaptec-kontrollern mot en Q-version.
Och ett helt vanligt sÀtt Àr att köpa en (RAID)kontroller för SATA III sÄ att SSD:erna kan köras i full hastighet och hantera allt som krÀver hastighet.
KĂ€lla: habr.com
