Upgrade diskového subsystému starého serveru z PCIe 1.0 na 2.0

Upgrade diskového subsystému starého serveru z PCIe 1.0 na 2.0Proč bylo vybráno téma tohoto článku — upgrade diskového subsystémuJe jasné, že v první řadě je třeba obvykle:

  1. Zvýšit operační paměť. To je natolik zřejmý krok, že jsem to ani nepovažoval za nutné zmiňovat v hlavním článku
  2. Nainstalovat další procesor(y) nebo nahradit oba procesory maximálně výkonnými verzemi podporovanými paticemi serveru.

Pro staré servery lze paměť a procesory obvykle nalézt za hubičku.

V určitém okamžiku se před každým majitelem vlastního serveru objeví otázka — upgrade nebo nový server.

Jelikož cena nového serveru může nyní přesáhnout miliony korun, mnoho lidí volí cestu upgradu.

Pro úspěšný upgrade je velmi důležité využívat kompromisy, abychom za zanedbatelnou cenu (v porovnání s cenou nového serveru) získali značný nárůst výkonnosti.

V článku je uveden seznam serverových SSD PCI-E 2.0 x8, které nyní výrazně zlevnily, a jsou uvedeny RAID kontroléry s podporou SSD caching a testovaný SATA III SSD na rozhraní SATA II.

Nejzřejmější způsob upgradu diskového subsystému je přechod z HDD na SSD. To platí jak pro notebooky, tak pro servery. Na serverech je snad jen rozdíl v tom, že SSD lze snadno sestavit do RAID.

Samozřejmě existují i nuance spojené s tím, že na starém serveru nemusí být porty SATA III a v takovém případě bude nutné vyměnit nebo nainstalovat odpovídající kontrolér.

Existují samozřejmě také mezistupňové metody.

Caching na SSD.

Tento způsob je celkově docela vhodný pro databáze, 1C, jakýkoli náhodný přístup. Rychlost se skutečně zvyšuje. Pro obrovské soubory, videodohled je tento způsob bezcenný.

RAID kontroléry LSI (IBM, DELL, CISCO, Fujtsu)

Od série 92xx má LSI technologii CacheCade 2.0, která umožňuje použití téměř jakýchkoli SATA SSD jako cache RAID pole. Jak pro čtení, tak pro zápis. A dokonce i vytváření zrcadla z cache SSD.

S brandovanými řadiči je to složitější. Toto platí zejména pro IBM. Klíče a SSD pro CacheCade je třeba zakoupit od IBM za nesmyslné ceny, proto je snazší vyměnit řadič za LSI a koupit hardwarový klíč za nižší cenu. Softwarové klíče jsou mnohem dražší než hardwarové.

RAID řadiče Adaptec

Na řadičích Adaptec je technologie MaxCache, která také umožňuje používat SSD jako cache. Zajímáme se o verze řadičů, které končí písmenem Q.

Q-řadiče dokážou použít téměř jakýkoli SSD, nejen SSD dodávané firmou Adaptec.

  • Od 5xxx mají všechny řadiče podporu Hybrid RAID. Podstatou této technologie je, že se vždy čte z SSD, když existuje zrcadlo jednoho z disků, ve kterém je SSD.
  • 5xxxQ, například 5805ZQ. Tyto řadiče podporují MaxCache 1.0. Pouze čtení z cache.
  • 6xxQ, například 6805Q. MaxCache 2.0. Čtení a zápis do cache.
  • 7xxQ, například 7805Q. MaxCache 3.0. Čtení a zápis do cache.
  • 8xxQ pro upgradaci téměř nemá smysl kvůli vysokým cenám.

Článek o ukládání do cache na SSD na Habr (řadiče a OS).

Programové technologie ukládání do cache na SSD

Těmito technologiemi se nebudu zabývat. Prakticky v jakémkoli OS jsou nyní podporovány. Zapamatoval jsem si, že při použití btrfs automaticky přesměrovává požadavky na čtení na zařízení s nejkratší frontou — SSD.

SSD SATA III na rozhraní SATA II

Protože ne vždy máme možnost nebo peníze na nový řadič, vyvstává otázka, jak dobře fungují SSD SATA III na zastaralém rozhraní SATA II.

Provedeme malý test. Jako pokusného králíka máme SSD SATA III Intel S3710 o kapacitě 400 GB.

Náhodné čtení, IOPS
Průměrná latence čtení, ms
Náhodný zápis, IOPS
Průměrná latence zápisu, ms
Lineární čtení, MB/s
Lineární zápis, MB/s

SATA II
21241
2
13580
4
282
235

SATA III
68073
0.468
61392
0.52
514
462

Příkazy používané pro testování rychlosti

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

Jak je vidět, rozdíl v liniové rychlosti, IOPS a latencích je značný, proto má smysl používat pouze rozhraní SATA III, a pokud to není možné, nainstalovat řadič.

Spravedlivě musím říci, že co další pokusy rozdíl ve rychlosti náhodného čtení a zápisu byl nevýznamný. Možná, že tak velký rozdíl v IOPS mezi SATA II a SATA III vznikl, protože jsem měl nějaký extrémně slabý řadič SATA II nebo ovladač s nějakými chybami.

Nicméně pravda je taková, že je třeba zkontrolovat rychlost SATA II — co když máte stejně pomalý řadič. V takovém případě je přechod na řadič SATA III nezbytný.

PCIe SSD na sběrnici PCI-e 2.0 nebo 1.0

Jak je známo, nejrychlejší SSD jsou PCI-e NVMe, které nejsou omezovány protokoly SAS nebo SATA.

Při instalaci moderních PCI-e SSD je však třeba brát v úvahu fakt, že většina z nich využívá pouze 4 linky PCI-e, obvykle PCI-e 3.0 nebo 3.1.

A nyní se podívejme na tabulku rychlostí sběrnice PCI-e.

Propustnost PCI Express, GB/s

Rok
výrobce

Verze
PCI Express

Kódování

Rychlost
předávání

Propustnost na x linek

×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

Při instalaci PCI 3.0 x4 SSD na sběrnici PCI-e 2.0 bude fungovat na stejném počtu linek, ale při podstatně nižší rychlosti. Problém je v tom, že liniové rychlosti moderních PCI-e SSD překračují propustnost sběrnice PCI-e 2.0 a tím spíše PCI-e 1.0.

M.2 SSD a PCI-e adaptér

Existují slušné možnosti upgradu, kdy si za 10 dolarů koupíme adaptér a umístíme M.2 SSD do serveru, ale opět pro dobré SSD dojde k omezení rychlostí (zejména na PCI-e 1.0), a M.2 SSD ne vždy splňují požadavky pro serverové zatížení: vysoká odolnost, ochrana proti výpadkům napájení a stabilita rychlostních parametrů kvůli zaplnění SLC cache u levných modelů.

Tento způsob může být vhodný pouze pro servery s sběrnicí PCI-e 2.0 a nezatížené nekritickými úkoly.

PCI-E 2.0 x8 SSD

Nejrozumnější ekonomický upgrade — použití PCI-E 2.0 x8 SSD pro servery se sběrnicí PCI-e 1.0 (propustnost až 2 GB/s) a PCI-e 2.0 (až 4 GB/s).

Takové serverové SSD lze nyní pořídit relativně levně jak na různých tržištích, tak na internetových aukcích, včetně Ruska.

Sestavil jsem tabulku z morálně zastaralých SSD, které skvěle zrychlí váš starý server. Na konec tabulky jsem přidal několik SSD s rozhraním PCI-E 3.0 x8. Třeba budete mít štěstí a koupíte je za rozumnou cenu.

Název
TB
PBW
PCI-E
4k čtení iops, K
4k zápis iops, K
čtení, MB/s
zápis, 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 diskového subsystému starého serveru z PCIe 1.0 na 2.0Mezi těmito SSD vyčnívají Fusion ioMemory. Vědeckým ředitelem Fusion byl Steve Wozniak. Poté tuto společnost koupila SanDisk za 1,2 miliardy dolarů. V minulosti stály od 50 000 dolarů za kus. Dnes je však možné je koupit za několik stovek dolarů v novém stavu s kapacitou od 1TB a více.

Pokud se podíváte na tabulku, je zřejmé, že mají poměrně vysoký počet IOPS při zápisu, který je téměř stejný s počtem IOPS při čtení. Vzhledem k jejich aktuální ceně, si myslím, že na tyto SSD byste měli dávat pozor.

Mají však několik specifikací:

  1. Nemohou být spouštěcí.
  2. Je potřeba ovladač pro jejich použití. Ovladače jsou prakticky pro všechno, ale u nejnovějších verzí Linuxu je budete muset zkompilovat.
  3. Optimální velikost sektoru je 4096 bajtů. (Podporují se také 512 bajty)
  4. Ovladač může v nejhorším scénáři spotřebovat poměrně hodně RAM (při velikosti sektoru 512 bajtů)
  5. Výkon závisí na rychlosti procesoru, takže je lepší vypnout technologie úspory energie. To je výhoda i nevýhoda, protože s výkonným procesorem může zařízení pracovat rychleji, než je uvedeno v technických specifikacích.
  6. Vyžaduje dobré chlazení. Pro servery by to nemělo být problém.
  7. Není doporučeno pro ESXi, protože ESXi preferuje disky se sektorem 512N, což může vést k vysoké spotřebě paměti ovladačem.
  8. Branded verze těchto SSD obvykle nejsou podporovány dodavateli do úrovně posledního ovladače od SanDisk (březen 2019).

Provedl jsem testy Fusion ioMemory v porovnání s poměrně moderním serverovým SSD Intel P3700 PCI-E 3.0 x8 (poslední stojí čtyřikrát více než Fusion podobné kapacity). Můžete také vidět, jak moc je rychlost omezena kvůli sběrnici x4.

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

Upgrade diskového subsystému starého serveru z PCIe 1.0 na 2.0
Upgrade diskového subsystému starého serveru z PCIe 1.0 na 2.0

Ano, sekvenční rychlost čtení je u Intel P3700 jednoznačně omezena. Podle specifikací by měla být 2800 MB/s, ale máme pouze 1469 MB/s. Celkově lze říci, že při sběrnici PCI-e 2.0 lze použít serverové SSD PCI-E 3.0 x4, pokud je lze získat za rozumnou cenu.

Závěry

Diskový subsystém starého serveru se sběrnicí PCI-E 1.0 nebo 2.0 lze vylepšit použitím SSD, která dokážou využívat 8 linek PCI-E, což poskytuje propustnost až 4GB/s (PCI-E 2.0) nebo 2GB/s (PCI-E 1.0). Nejvíce ekonomicky výhodné je to udělat pomocí morálně zastaralých PCI-E 2.0 SSD.

Také existují jednoduché kompromisní možnosti spojené s nákupem klíče CacheCade pro kontroléry LSI nebo výměnou kontroléru Adaptec za Q-verzi.

A naprosto banální způsob je koupit (raid)kontrolér SATA III, aby SSD fungovaly na plné rychlosti a splnily veškeré požadavky na výkon.

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster