Upgrade des Festplattensystems des alten Servers mit PCIe-Bus 1.0 — 2.0

Upgrade des Festplattensystems des alten Servers mit PCIe-Bus 1.0 — 2.0Warum das Thema dieses Artikels das Upgrade des Festplattensystems istEs ist klar, dass man in erster Linie normalerweise Folgendes tun sollte:

  1. Den Arbeitsspeicher erhöhen. Das ist so offensichtlich, dass ich es für unnötig halte, dies in dem Hauptartikel zu erwähnen.
  2. Einen zusätzlichen Prozessor oder beide Prozessoren durch die leistungsstärksten Versionen zu ersetzen, die von den Server-Sockeln unterstützt werden.

Für alte Server kann man sowohl den Speicher als auch die Prozessoren normalerweise zu sehr günstigen Preisen finden.

Irgendwann stellt sich jedem Eigentümer eines eigenen Servers die Frage – Upgrade oder neuer Server.

Da der Preis für einen neuen Server mittlerweile Millionen Rubel betragen kann, entscheiden sich viele für ein Upgrade.

Für ein erfolgreiches Upgrade ist es sehr wichtig, Kompromisse einzugehen, sodass wir für einen geringen Preis (im Verhältnis zum Preis eines neuen Servers) einen erheblichen Leistungszuwachs erhalten.

Im Artikel ist eine Liste von Server-SSDs PCI-E 2.0 x8 aufgeführt, die derzeit stark im Preis gefallen sind, zusätzlich sind RAID-Controller mit Unterstützung für SSD-Caching angegeben und ein SATA III SSD im SATA II Interface getestet.

Der offensichtlichste Weg, das Festplattensystem aufzurüsten, ist der Wechsel von HDD zu SSD. Dies gilt sowohl für Laptops als auch für Server. Der Unterschied bei Servern besteht vielleicht nur darin, dass SSDs leicht im RAID zusammengefasst werden können.

Es gibt jedoch einige subtile Punkte, die damit verbunden sind, dass es möglicherweise keine SATA III-Ports auf dem alten Server gibt, und daher müsste man einen entsprechenden Controller ersetzen oder hinzufügen.

Es gibt natürlich auch intermediäre Methoden.

Caching auf SSD.

Insgesamt eignet sich diese Methode gut für Datenbanken, 1C und beliebige zufällige Zugriffe. Die Geschwindigkeit wird tatsächlich erhöht. Für riesige Dateien und Videoüberwachung ist diese Methode jedoch nutzlos.

RAID-Controller LSI (IBM, DELL, CISCO, Fujitsu)

Ab der Serie 92xx hat LSI die Technologie CacheCade 2.0, die es ermöglicht, fast beliebige SATA-SSDs als Cache für das RAID-Array zu nutzen, sowohl für das Lesen als auch für das Schreiben. Sogar Spiegelungen aus caching SSDs zu erstellen.

Mit den gebrandeten Controllern wird es komplizierter. Besonders trifft das auf IBM zu. Die Schlüssel und SSD für CacheCade müssen bei IBM zu horrenden Preisen gekauft werden, weshalb es einfacher ist, den Controller auf LSI zu wechseln und einen Hardware-Schlüssel günstiger zu kaufen. Software-Schlüssel sind erheblich teurer als Hardware.

RAID-Controller Adaptec

Auf den Adaptec-Controllern gibt es die MaxCache-Technologie, die es ebenfalls ermöglicht, SSDs als Cache zu verwenden. Uns interessieren die Versionen der Controller, die mit dem Buchstaben Q enden.

Q-Controller sind in der Lage, fast jede SSD zu verwenden und nicht nur die von Adaptec gelieferten SSDs.

  • Ab der 5xxx-Serie haben alle Controller Unterstützung für Hybrid-RAID. Das Konzept dieser Technologie besteht darin, dass immer von der SSD gelesen wird, wenn eines der gespiegelten Laufwerke eine SSD enthält.
  • 5xxxQ, zum Beispiel 5805ZQ. Diese Controller unterstützen MaxCache 1.0. Nur Lese-Caching.
  • 6xxQ, zum Beispiel 6805Q. MaxCache 2.0. Lese- und Schreib-Caching.
  • 7xxQ, zum Beispiel 7805Q. MaxCache 3.0. Lese- und Schreib-Caching.
  • 8xxQ macht es kaum Sinn, für Upgrade-Zwecke verwendet zu werden, aufgrund der hohen Preise.

Artikel über das Caching auf SSDs auf Habré (Controller und Betriebssysteme).

Softwaretechnologien für Caching auf SSDs

Ich werde diese Technologien nicht erörtern. Praktisch in jedem Betriebssystem werden sie heutzutage unterstützt. Mir ist aufgefallen, dass bei der Verwendung von btrfs die Anfragen zum Lesen automatisch an das Gerät mit der kürzesten Warteschlange weitergeleitet werden — SSD.

SATA III SSD über SATA II-Schnittstelle

Da nicht immer die Möglichkeit und das Geld für einen neuen Controller vorhanden sind, stellt sich die Frage, wie gut SATA III SSDs an der veralteten SATA II-Schnittstelle funktionieren.

Wir führen einen kleinen Test durch. Als Versuchsträger haben wir eine SATA III SSD Intel S3710 mit 400 GB.

Zufälliges Lesen, IOPS
Durchschnittliche Leseverzögerung, mS
Zufälliges Schreiben, IOPS
Durchschnittliche Schreibverzögerung, mS
Linear lesen, MB/s
Linear schreiben, MB/s

SATA II
21241
2
13580
4
282
235

SATA III
68073
0.468
61392
0.52
514
462

Befehle, die zur Geschwindigkeitsmessung verwendet werden

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

Wie zu sehen ist, gibt es einen bemerkenswerten Unterschied sowohl in der linearen Geschwindigkeit als auch bei IOPS und Verzögerungen, daher macht es Sinn, nur die SATA III-Schnittstelle zu verwenden, und wenn diese nicht vorhanden ist, einen Controller zu installieren.

Um der Gerechtigkeit willen möchte ich sagen, dass auf anderen Experimenten Der Unterschied in der Geschwindigkeit des zufälligen Lesens und Schreibens war nicht signifikant. Möglicherweise liegt der große Unterschied in den IOPS zwischen SATA II und SATA III daran, dass ich einen äußerst unglücklichen SATA II-Controller oder einen Treiber mit Bugs verwendet habe.

Es ist jedoch ein Fakt, dass man die Geschwindigkeit von SATA II überprüfen sollte – vielleicht verwenden Sie denselben langsamen Controller. In diesem Fall ist ein Wechsel zu einem SATA III-Controller unerlässlich.

PCIe SSD auf einem PCI-e 2.0 oder 1.0 Bus

Wie bekannt, sind die schnellsten SSDs PCI-e NVMe, die nicht durch die Protokolle SAS oder SATA limitiert sind.

Bei der Installation moderner PCI-e SSDs muss jedoch berücksichtigt werden, dass die meisten nur 4 PCI-e-Linien verwenden, meist PCI-e 3.0 oder 3.1.

Und nun schauen wir uns die Tabelle der Geschwindigkeiten des PCI-e-Busses an.

Durchsatz von PCI Express, GByte/s

Jahr
der Herstellung

Version
PCI Express

Kodierung

Geschwindigkeit
Übertragung

Durchsatz auf x Linien

×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

Wenn Sie ein PCI 3.0 x4 SSD in einen PCI-e 2.0 Bus installieren, funktioniert es mit der gleichen Anzahl an Linien, aber mit einer erheblich geringeren Geschwindigkeit. Es gibt ein Problem, dass die Übertragungsgeschwindigkeiten moderner PCI-e SSDs die Bandbreite des PCI-e 2.0-Busses und erst recht des PCI-e 1.0-Busses überschreiten.

M.2 SSD und PCI-e Adapter

Es gibt einige gute Upgrade-Optionen, wenn wir für 10 Dollar einen Adapter kaufen und ein M.2 SSD in einen Server einbauen, aber auch hier wird die Geschwindigkeit für gute SSDs eingeschränkt (insbesondere bei PCI-e 1.0), und M.2 SSDs sind nicht immer auf Serverlasten vorbereitet: mit hoher Verschleißfestigkeit, Stromschutz und stabilen Geschwindigkeitsleistungen aufgrund der SLC-Cache-Nutzung bei billigen Modellen.

Dieser Ansatz kann also nur für Server mit einem PCI-e 2.0 Bus und einer nicht kritischen Belastung geeignet sein.

PCI-E 2.0 x8 SSD

Das wirtschaftlichste Upgrade ist die Verwendung von PCI-E 2.0 x8 SSDs für Server mit einem PCI-e 1.0 Bus (Durchsatz bis 2 GB/s) und PCI-e 2.0 (bis 4 GB/s).

Solche Server-SSDs können jetzt zu einem sehr günstigen Preis sowohl auf verschiedenen Marktplätzen als auch auf Internetauktionen, einschließlich in Russland, gekauft werden.

Ich habe eine Tabelle solcher moralisch veralteten SSDs erstellt, die Ihren alten Server hervorragend aufpeppen. Am Ende der Tabelle habe ich einige SSDs mit der Schnittstelle PCI-E 3.0 x8 hinzugefügt. Vielleicht haben Sie Glück und finden sie zu einem vernünftigen Preis.

Bezeichnung
TB
PBW
PCI-E
4k Lese-IOPS, K
4k Schreib-IOPS, K
Lesen, MB/s
Schreiben, 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 des Festplattensystems des alten Servers mit PCIe-Bus 1.0 — 2.0Unter diesen SSDs stechen die Fusion ioMemory hervor. Der wissenschaftliche Direktor Fusion wurde Steve Wozniak. Später wurde diese Firma für 1,2 Milliarden Dollar von SanDisk gekauft. Zu ihrer Zeit kosteten sie von 50.000 Dollar pro Stück. Jetzt kann man sie für ein paar Hundert Dollar im Neuzustand mit einer Kapazität von 1 TB und mehr kaufen.

Wenn man sich die Tabelle genau ansieht, erkennt man, dass sie eine ziemlich hohe Anzahl an IOPS beim Schreiben haben, die fast der Anzahl der IOPS beim Lesen entspricht. Angesichts ihres aktuellen Preises denke ich, dass man auf diese SSDs achten sollte.

Allerdings haben sie einige Besonderheiten:

  1. Sie können nicht bootfähig sein.
  2. Es wird ein Treiber zur Verwendung benötigt. Treiber sind für fast alles verfügbar, aber für die neuesten Versionen von Linux müssen sie kompiliert werden.
  3. Die optimale Sektorgröße beträgt 4096 Bytes. (512 wird ebenfalls unterstützt)
  4. Der Treiber kann im schlimmsten Fall ziemlich viel RAM verbrauchen (bei einer Sektorgröße von 512 Bytes).
  5. Die Leistung hängt von der Geschwindigkeit des Prozessors ab, daher sollten Energiespartechnologien besser deaktiviert werden. Das ist sowohl ein Vorteil als auch ein Nachteil, denn mit einem leistungsstarken Prozessor kann das Gerät sogar schneller arbeiten als in den Spezifikationen angegeben.
  6. Benötigt eine gute Kühlung. Für Server sollte das kein Problem sein.
  7. Nicht empfohlen für ESXi, da ESXi Festplatten mit einem Sektor von 512N bevorzugt, was zu einem hohen Speicherverbrauch des Treibers führen kann.
  8. Gebrandete Versionen dieser SSDs werden in der Regel von den Anbietern nicht bis zur letzten Treiberversion von SanDisk (März 2019) unterstützt.

Ich habe Tests von Fusion ioMemory im Vergleich zu einer recht modernen Server-SSD Intel P3700 PCI-E 3.0 x8 durchgeführt (die letztgenannte kostet etwa viermal so viel wie Fusion mit ähnlicher Kapazität). Zudem kann man sehen, wie stark die Geschwindigkeit aufgrund des x4-Busses reduziert wird.

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

Upgrade des Festplattensystems des alten Servers mit PCIe-Bus 1.0 — 2.0
Upgrade des Festplattensystems des alten Servers mit PCIe-Bus 1.0 — 2.0

Ja, die lineare Lesegeschwindigkeit wird eindeutig bei Intel P3700 reduziert. Laut Technischen Daten sollte sie 2800 MB/s betragen, aber wir haben 1469 MB/s. Insgesamt kann man jedoch sagen, dass man mit einem PCI-e 2.0-Bus Server-SSDs PCI-E 3.0 x4 verwenden kann, wenn man sie zu einem vernünftigen Preis bekommen kann.

Das DBMS Tarantool ist ein attraktives, zukunftsträchtiges Produkt zur Erstellung von hochbelasteten Anwendungen.

Das Speichersystem des alten Servers mit PCI-E 1.0 oder 2.0 kann durch den Einsatz von SSDs, die in der Lage sind, 8 PCI-E-Linien zu nutzen, die eine Bandbreite von bis zu 4 GB/s (PCI-E 2.0) oder 2 GB/s (PCI-E 1.0) bieten, leistungsstark gemacht werden. Ökonomisch ist es am vorteilhaftesten, moralisch veraltete PCI-E 2.0 SSDs zu verwenden.

Es gibt auch einfach umsetzbare Kompromisslösungen, die den Kauf des CacheCade-Schlüssels für LSI-Controller oder den Austausch des Adaptec-Controllers gegen eine Q-Version betreffen.

Eine völlig banale Methode ist der Kauf eines (RAID-)Controllers SATA III, um sicherzustellen, dass die SSDs mit voller Geschwindigkeit arbeiten und alles, was die Geschwindigkeit erfordert, darauf ausgelagert wird.

Quelle: habr.com

60GB SSD 8Gb DDR4