Tempo der SSD-Root-Server

  • Also ich bin mit meinem Root-Server M SSD v6 ganz zufrieden.

    CentOS 7 / nginx / php-fpm / postfix / rspamd / clamav / dovecot / nextcloud running on RS 1000 SSDx4 G8 / VPS 500 G8 / VPS 2000 G8 Plus

  • nyx Das ist pures Colocation VMs miete ich mir keine mehr (unflexibel), nur Webhosting und Mail wegen verfügbarkeit (<hoher Betriebssystem verschleiss).


    • 2 x 8 x 2.90GHz
    • 192GB DDR-3 ECC
    • 2GB SD (für OS) RAID 1
    • 475GB NVMe ZFS Mirrored
    • 675GB SAS 15K ZFS RAIDZ1
    • 3724GB SATA ZFS Mirrored
    • 120GB SSD ZFS Cache SAS, SATA



    Reicht zum Spass haben mit zwei Kollegen...

  • Ich weiß zwar nicht, wie aussagekräftig diese Benchmarks mit hdparm sind, aber ich finde den Vergleich interessant, rate aber zur Vorsicht, was die Vergleichbarkeit und Anwendbarkeit angeht.


    Root-Server M SSD v6

    Code
    1. hdparm -tT /dev/sda1
    2. /dev/sda1:
    3. Timing cached reads: 16926 MB in 2.00 seconds = 8471.61 MB/sec
    4. Timing buffered disk reads: 104 MB in 3.14 seconds = 33.15 MB/sec


    Ich verwende den SCSI-Treiber, weil dieser "empfohlen" wird. Vorher hatte ich aus Angewohnheit den virtio-Treiber genommen. Allerdings ist das hier ein Profi-Betrieb. Auch für SCSI gibt es sehr effiziente Virtualisierung, glaube ich gelesen zu haben. Kann mal jemand von Netcup was dazu sagen? Es kann ja sein, dass vielleicht SCSI weniger wegen der besseren Performance, sondern eher wegen dem höheren Support-Aufwand bei virtio empfohlen wird.


    Mein System "fühlt" sich auch langsamer an, als zum Anfang meiner Nutzung. Ich habe auf dem Server aber keine Anwendungen, die besonders auf hohe IO bei den Platten angewiesen sind. Das normale Linux Festplatten-Caching im Ram (immerhin 6 GB) reicht bei mir, glaube ich, aus. 33MB/s hört sich vielleicht wenig an, dabei darf man aber nicht vergessen, dass das eine SSD ist. Solange ich keine große Dateien übertragen möchte, hat jedes Bit, egal wo es auf der Platte liegt, die gleiche Geschwindigkeit. Wenn ich aber große Dateien übertrage, zum Beispiel wenn ich Updates mache, dann merke ich das. Deshalb habe ich ja oben geschrieben, dass die Performance merklich zurückgegangen ist.

    • 475GB NVMe ZFS Mirrored


    Welchen Datendurchsatz erreichst du mit dem Befehl "dd if=/dev/zero bs=1M count=10000 of=output oflag=direct" auf dieser Plattenvariante? Denn diese Variante NVMe soll ja auch schon im Software-RAID-Verbund extrem schnell schreiben können.

  • Vor ein paar Monaten war ich so genervt von der Performance meines Netcup Servers (vermutl. Generation 6), dass ich mal ein paar Tests gemacht habe, um die Performance genauer zu untersuchen. Dabei ist mir aufgefallen, dass in einigen Bereichen die "SSD" sehr schnell (2.500 MB/s) war und in anderen sterbens langsam (~10 MB/s) (hdparm liest nur den Anfang des Block Devices). Um herauszufinden was es damit auf sich hat, habe ich das Block Device in 512MB Blöcken ausgelesen und die Geschwindigkeit in einem Diagramm visualisiert:

    Screenshot_20170607_000845.png


    Dabei sieht man sehr schön wie es einige Blöcke gibt die eine sehr gute Performance haben und viele mit einer schlechten. Nach mehreren Durchläufen mit verschiedenen Block-Größen kam raus, dass die Blöcke sich im Laufe der Zeit auch verschieben, wodurch mir klar wurde, dass es eine Art Hardware Cache (auch bei --direct) wohl gibt, der häufig genutzte Blöcke schnell liefert. Daraufhin habe ich noch einmal eine zweite Version geschrieben die dieses Cache-Verhalten weiter getestet hat. Parallel bin ich auch mit dem Netcup Support in Kontakt gewesen und mein Server wurde einmal auf einen neuen Node verschoben, was aber keine Besserung brachte.


    Am Ende hat das Defragmentieren (im SCP) etwas geholfen. Von Netcup bin ich eher enttäuscht was das Thema angeht, aber hatte irgendwann auch weder Zeit noch Lust mich damit weiter auseinanderzusetzen. Insgesamt habe ich aber keinen anderen Rechner der eine so lahme mittlere IO Performance hat wie mein Netcup Server. Sowas als "SSD Performance" zu vermarkten ist dann schon grenzwertig.


    Falls Ihr eure Server auch einmal testen wollt, die beiden Skripte habe ich einmal angehängt. Bitte erst lesen und grob verstehen was die machen, bevor Ihr euch irgendwas kaputt macht (und .txt Dateinamensendungen entfernen).

  • Habe RS 1000 G7 SE mit 320GB SAT und bin zufrieden.


    Code
    1. sudo hdparm -tT --direct /dev/sda2
    2. /dev/sda2:
    3. Timing O_DIRECT cached reads: 4978 MB in 2.00 seconds = 2490.16 MB/sec
    4. Timing O_DIRECT disk reads: 3900 MB in 1.32 seconds = 2962.81 MB/sec

    Weiß nicht ob man das hdparm viel glauben schenken darf.