Wähle einen Artikel
Performancetests mittels Unixbench auf vServer/VPS durchführen
Performancetests mittels Unixbench auf vServer/VPS durchführen

0. Überblick

  • Verwendetes System: Debian 10 64 bit
  • Testserver: vServer XXL 2.0
  • Genutzter User: Ich nehme alles als „root“ vor
  • Zeitdauer: je nach Tests kann diese variieren
  • Schwierigkeit: Einfach. Nur Code kopieren 😉

1. Benchmarks durchführen

1.1 Einleitung

In dieser Anleitung zeige ich euch, wie ihr die Performance eures Systems testen könnt. Dies kann notwendig sein um beispielsweise verschiedene Server zu vergleichen oder einfach einen Überblick zu bekommen. Im Folgenden werde ich folgende Programme vorstellen:

byte-unixbench

Geekbench 5

1.2 byte-unixbench

Im ersten Schritt müssen wir einige Vorbereitungen treffen. Dazu gebt ihr folgenden Code ein:

apt-get update 

apt-get install gcc libgl1-mesa-dev libxext-dev perl perl-modules make unzip 

Nun können wir uns Unixbench downloaden. Gebt dazu folgendes ein:

cd /tmp 

wget https://github.com/kdlucas/byte-unixbench/archive/master.zip 

Jetzt müssen wir die Datei noch entpacken. Dies geht mit folgendem Befehl:

unzip master.zip 

Nun wechseln wir in das entpackte Verzeichnis:

cd byte-unixbench-master/UnixBench/ 

Mit folgendem Befehl könnt ihr das Programm nun starten

./Run 

Der Test hat auf meinem Server ca. 30 Minuten gedauert. So sieht mein Ergebnis aus:

1.3 Geekbench 5

Geekbench könnt ihr ganz einfach installieren. Gebt dazu folgendes ein:

cd /tmp 

wget -qO- http://cdn.geekbench.com/Geekbench-5.4.2-Linux.tar.gz | tar -xz 

cd Geekbench-5.4.2-Linux && ./geekbench5 

Nun startet direkt der Test. Bei mir hat dieser Test nur wenige Minuten gedauert. So war mein Ergebnis:

2. Benchmarks im Vergleich

Die Webseite webhosterwissen.de führt Benchmarks von verschiedenen Anbietern durch. Hier zeige ich euch, wie ihr diesen Benchmark ebenfalls durchführen könnt, damit ihr euren Server mit den Angeboten dort vergleichen könnt.

Hier könnt ihr den genauen Ablauf der Benchmarks sehen.

Zuerst installieren wir uns das Programm sysbench. Dazu gebt ihr folgendes ein:

curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.deb.sh | sudo bash 

sudo apt -y install sysbench 

Nun können wir die verschiedenen Benchmarks durchführen.

2.1 CPU-Benchmark

Gebt nun folgenden Befehl ein:

sysbench --num-threads=1 --test=cpu --cpu-max-prime=20000 run 

Bei mir sieht das Ergebnis so aus:

Dieser CPU Test sucht alle Primzahlen zwischen 1 und 20.000. Dazu werden 312.238 Rechenoperationen benötigt. Dies bedeutet, dass mein Server folgende Rechenoperationen pro Sekunde durchführen kann: 321.238 Operationen / 10 Sekunden = 32.132,8 Operationen pro Sekunde.

2.2 RAM-Benchmark:

Dazu gebt ihr folgendes ein:

sysbench --num-threads=1 --test=memory --memory-block-size=1M --memory-total-size=100G run 

Dies ist mein Ergebnis:

2.3 Festplatten Benchmarks

Hier gibt es nun zwei Arten. Einmal das squentielle Lesen / Schreiben und das zufällige Lesen / schreiben. Beim Sequentiellen werden die Daten geschrieben / gelesen, welcher „hintereinander“ stehen. Hier ist die Festplatte am schnellsten. Beim Zufälligen werden Dateien gelsen, welche an verschieden Stellen auf der Festplatte stehen. Hier ist die Festplatte langsamer.

2.3.1 Sequenzielles Schreiben

Gebt dazu folgendes ein:

dd if=/dev/zero of=./test.file bs=1M count=10000 oflag=direct 

Mein Ergebnis:

2.3.2 Sequentielles Lesen

Dies könnt ihr mit folgendem Befehl testen

dd if=./test.file of=/dev/null bs=1M count=10000 

2.4 Zufälliges Lesen und Schreiben

Dazu gebt ihr folgenden Befehl ein:

sysbench --test=fileio --file-total-size=10G --file-num=1024 prepare 

Nun werden 1024 Dateien mit je 10 MB erstellt. Nach einiger Zeit sollte es so bei euch aussehen:

Nun müssen wir gegeben falls noch das Limit der maximal geöffneten Dateien anpassen. Dazu gebt ihr folgendes ein:

ulimit -a 

Hier sehen wir, dass wir maximal 1024 Dateien öffnen können. Dieses Limit erhöhen wir für unseren Test. Gebt dazu folgendes ein:

ulimit -n 100000 

Nun könnt ihr den Benchmark mit folgendem Befehl starten:

sysbench --num-threads=1 --test=fileio --file-total-size=10G --file-num=1024 --file-test-mode=rndrw --max-time=300 --max-requests=0 --file-extra-flags=direct --file-fsync-freq=1 run 

Mein Ergebnis sieht so aus:

2.5 Testdateien löschen

Nun solltet ihr noch die Testdateien auf eurer Festplatte löschen, da diese viel Speicherplatz belegen. Die Testdatei für das sequenzielle Lesen / Schreiben löscht ihr mit folgendem Befehl

rm test.file 

Die restlichen Testdateien löscht ihr mit folgendem Befehl:

sysbench --test=fileio --file-total-size=10G --file-num=1024 cleanup 

2.6 Testergebnis meines Servers

*Wenn man nun alle Ergebnisse zusammenfasst, erhält man folgende Werte für meinen vServer: *

CPU-Time: 10.0023 s (32.132,8 Operationen pro Sekunde)

RAM: 13437.70 MB/Sec (13,12 GB/s)

Sequenzielles Schreiben: 59.5 MB/s

Sequenzielles Lesen: 78.8 MB/s

Zufälliges Schreiben: 0.91 MB/s

Zufälliges Lesen: 1.36 MB/s

Nächster Artikel
Pixelfed auf VPS/vServer installieren
Weitere passende Themen