Актуализация на дисковата подсистема на стария сървър от PCIe 1.0 — 2.0

Актуализация на дисковата подсистема на стария сървър от PCIe 1.0 — 2.0Защо темата на тази статия е ъпгрейд на дисковата подсистемаРазбира се, първо трябва, по правило:

  1. Да увеличите оперативната памет. Това е толкова очевиден ход, че дори не сметнах за нужно да пиша за него в основната статия
  2. Да инсталирате допълнителни процесори или да замените и двата процесора с най-мощните версии, поддържани от слотовете на сървъра.

За старите сървъри, паметта и процесорите, обикновено, могат да се намерят на ниски цени.

В определен момент пред всеки собственик на сървър възниква въпросът — ъпгрейд или нов сървър.

Тъй като цената на новия сървър в момента може да стигне милиони рубли, много хора предпочитат да ъпгрейдват.

За успешен ъпгрейд е много важно да се използват компромиси, така че за незначителна цена (в сравнение с цената на нов сървър) да получим значително подобрение в производителността.

В статията е представен списък с PСI-E 2.0 x8 сървърни SSD, които значително поевтиняха, посочени са RAID контролери, поддържащи кеширане на SSD и тестван SATA III SSD на интерфейс SATA II.

Най-очевидният начин за ъпгрейд на дисковата подсистема е преминаването от HDD на SSD. Това важи както за лаптопи, така и за сървъри. При сървърите, може би, разликата е само в това, че SSD могат лесно да бъдат композирани в RAID.

Разбира се, има и тънкости, свързани с това, че на стария сървър може да няма SATA III портове и тогава ще се наложи да замените или инсталирате съответния контролер.

Има, разбира се, и междинни решения.

Кеширане на SSD.

Общо взето, този метод е подходящ за бази данни, 1C, всякакъв произволен достъп. Скоростта наистина се увеличава. За огромни файлове и видеонаблюдение, този метод е безполезен.

RAID контролери LSI (IBM, DELL, CISCO, Fujtsu)

Започвайки от серия 92xx, LSI предлага технологията CacheCade 2.0, която позволява използването на почти всякакви SATA SSD като кеш на RAID масиви. Както за четене, така и за запис. И дори да се създаде огледало от кеширащи SSD.

С брандираните контролери е по-сложно. Особено това важи за IBM. Ключовете и SSD за CacheCade ще трябва да бъдат закупени от IBM на огромни цени, затова е по-лесно да смените контролера на LSI и да закупите по-евтин хардуерен ключ. Софтверните ключове струват значително повече от хардуерните.

RAID контролери Adaptec

На контролерите Adaptec има технология MaxCache, която позволява използването на SSD като кеш. Интересуват ни версиите на контролерите, които завършват с буква Q.

Q-контролерите могат да използват почти всеки SSD, а не само SSD, предоставени от Adaptec.

  • Започвайки от 5xxx, всички контролери поддържат Hybrid raid. Същността на тази технология е, че четенето винаги се осъществява от SSD, когато има огледало, единият от дисковете е SSD.
  • 5xxxQ, например 5805ZQ. Тези контролери поддържат MaxCache 1.0. Само кеширане на четене.
  • 6xxQ, например 6805Q. MaxCache 2.0. Кеширане на четене и писане.
  • 7xxQ, например 7805Q. MaxCache 3.0. Кеширане на четене и писане.
  • 8xxQ почти няма смисъл да се използва за ъпгрейд поради високите цени.

Статия за кеширане на SSD в Хабра (контролери и ОС).

Програмни технологии за кеширане на SSD.

Няма да коментирам тези технологии. Практически всяка ОС в момента ги поддържа. Запомни ми се, че при използване на btrfs, автоматично пренасочва заявките за четене към устройството с най-кратката опашка — SSD.

SATA III SSD на интерфейс SATA II.

Тъй като не винаги е възможно и финансово да се осигури нов контролер, възниква въпросът колко добре работят SATA III SSD на остарелия интерфейс SATA II.

Ще направим малко тест. За опитен модел ще вземем SATA III SSD Intel S3710 с капацитет от 400ГБ.

Случайно четене, IOPS.
Средна латентност на четене, mS.
Случайно писане, IOPS.
Средна латентност на писане, mS.
Линейно четене, MB/s.
Линейно писане, MB/s.

SATA II.
21241
2
13580
4
282
235

SATA III.
68073
0.468
61392
0.52
514
462

Команди, използвани за тестване на скоростта.

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

Както се вижда, разликата в линейната скорост, IOPS, латентности е доста значителна, затова е разумно да се използва само SATA III интерфейс, а ако такъв не съществува, да се постави контролер.

За справедливост ще кажа, че по други експерименти. разликата в скоростта на произволно четене и записване е незначителна. Вероятно такова голямо различие в IOPS между SATA II и SATA III би могло да се дължи на факта, че съм имал някакъв много неуспешен контролер SATA II или драйвер с някакви бъгове.

Въпреки това факт е, че трябва да проверите скоростта на SATA II — вдруги случай може да имате такъв бавен контролер. В такъв случай е задължителен преходът към контролер SATA III.

PCIe SSD на шина PCI-e 2.0 или 1.0

Както е известно, най-бързите SSD — това са PCI-e NVMe, които не са ограничени от протоколите SAS или SATA.

Обаче при инсталирането на съвременни PCI-e SSD трябва да се има предвид, че повечето от тях използват само 4 линии PCI-e, обикновено PCI-e 3.0 или 3.1.

А сега да видим таблицата на скоростите на шината PCI-e.

Пропускна способност на PCI Express, Гбайт/с

Година
на производство

Версия
PCI Express

Кодиране

Скорост
передача

Пропускна способност на x линии

×4
×8
×16

2002
1.0
8b/10b

0.50 Гбайт/с
1.0 Гбайт/с
2.0 Гбайт/с
4.0 Гбайт/с

2007
2.0
8b/10b

1.0 Гбайт/с
2.0 Гбайт/с
4.0 Гбайт/с
8.0 Гбайт/с

2010
3.0
128b/130b

1.97 Гбайт/с
3.94 Гбайт/с
7.88 Гбайт/с
15.8 Гбайт/с

При инсталация на PCI 3.0 х4 SSD в шина PCI-e 2.0, той ще работи на същия брой линии, но на съществено по-ниска скорост. Има проблем, че линейните скорости на съвременните PCI-e SSD надвишават пропускната способност на шината PCI-e 2.0, а още повече на PCI-e 1.0.

M.2 SSD и PCI-e адаптер

Има добри опции за ъпгрейд, когато купуваме адаптер за 10 долара и поставяме M.2 SSD в сървъра, но пак за добри SSD скоростите ще бъдат ограничени (особено на PCI-e 1.0), а и M.2 SSD не винаги са подходящи за сървърни натоварвания: голяма износоустойчивост, защита от захранване и стабилност на скоростните характеристики поради запълването на SLC кеша на евтини модели.

Така че този метод може да е подходящ само за сървър с шина PCI-e 2.0 и ненатоварена работа.

PCI-E 2.0 x8 SSD

Най-икономически логичен ъпгрейд — използването на PCI-E 2.0 x8 SSD за сървъри с шина PCI-e 1.0 (пропускна способност до 2 ГБ/сек) и PCI-e 2.0 (до 4 ГБ/сек).

Подобни SSD за сървъри в момента може напълно евтино да се купят както на различни маркетплейси, така и на интернет аукциони, включително и в Русия.

Съставих таблица на такива морално остарели SSD, които прекрасно ще ускорят вашия стар сървър. Към края на таблицата добавих няколко SSD с интерфейс PCI-E 3.0 x8. Възможно е да имате късмет и да попаднете на разумни цени.

Име
TB
PBW
PCI-E
4k read iops, K
4k write iops, K
read, MB/s
записвайте, MB/с

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

Актуализация на дисковата подсистема на стария сървър от PCIe 1.0 — 2.0Тези SSD-те особено се открояват с Fusion ioMemory. Научният директор Fusion беше Стив Возняк. После тази компания бе закупена от SanDisk за 1,2 милиарда долара. В свое време цените им бяха от $50 000 за брой. В момента могат да бъдат закупени за няколко стотин долара в ново състояние за диск с капацитет от 1TB и повече.

Ако разгледате таблицата, ще видите, че имат доста високо число IOPS за запис, почти равняващо се на IOPS за четене. С оглед на текущата им цена, считам, че си заслужава да се обърне внимание на тези SSD.

Вярно е, че имат няколко особености:

  1. Не могат да бъдат стартиращи
  2. Необходим е драйвер за използване. Има драйвъри практически за всичко, но за последните версии на Linux ще трябва да ги компилирате.
  3. Оптималният размер на сектора е 4096 байта. (512 също се поддържа)
  4. Драйверът при най-лош сценарий може да изисква доста много RAM (при 512-байтов сектор)
  5. Скоростта на работа зависи от скоростта на процесора, затова е по-добре да се изключат технологии за пестене на енергия. Това е както плюс, така и минус, тъй като с мощен процесор устройството може да работи дори по-бързо от спецификациите.
  6. Има нужда от добро охлаждане. За сървърите това не би трябвало да е проблем.
  7. Не се препоръчва за ESXi, тъй като ESXi предпочита дискове със сектор 512N, а това може да доведе до значителен разход на памет от драйвера.
  8. Брандираните версии на тези SSD обикновено не се поддържат от производителите до последния драйвер от SanDisk (март 2019)

Извърших тестове на Fusion ioMemory в сравнение с доста съвременен SSD на Intel P3700 PCI-E 3.0 x8 (последният струва около четири пъти повече от Fusion с подобен капацитет). Можете да видите колко силно се намалява скоростта заради шината x4.

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

Актуализация на дисковата подсистема на стария сървър от PCIe 1.0 — 2.0
Актуализация на дисковата подсистема на стария сървър от PCIe 1.0 — 2.0

Да, линейната скорост на четене определено е ограничена при Intel P3700. По спецификации трябва да бъде 2800 MB/сек, а при нас е 1469 MB/с. Въпреки това може да се каже, че при PCI-e 2.0 могат да се използват сървърни SSD PCI-E 3.0 x4, ако успеете да намерите на разумна цена.

Изводи

Дисковата подсистема на стария сървър с PCI-E 1.0 или 2.0 може да се оптимизира чрез използване на SSD, които могат да използват 8 линии PCI-E, осигуряващи пропускателна способност до 4 ГБ/сек (PCI-E 2.0) или 2 ГБ/сек (PCI-E 1.0). Най-икономично е да се направи това, използвайки морално остарели PCI-E 2.0 SSD.

Също така, има лесни компромисни варианти, свързани с покупката на ключ CacheCade за контролери LSI или подмяната на контролера Adaptec с Q-версия.

И напълно банален начин — просто да закупите (RAID) контролер SATA III, за да SSD-ата работят с пълна скорост и да поемат всичко, което изисква бързина.

Източник: habr.com

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster