Wie man die Leistung von Servern testet: Sammlung mehrerer Open-Source-Benchmarks

Wir setzen unsere Reihe von Materialien fort, die dem Testing der Serverleistung gewidmet sind. Heute sprechen wir über eine Reihe bewährter Benchmarks, die nach wie vor unterstützt und aktualisiert werden — NetPerf, HardInfo und ApacheBench.

Wie man die Leistung von Servern testet: Sammlung mehrerer Open-Source-Benchmarks
Foto – Peter Balcerzak mit Sparkler Filters Kontakt aufgenommen

NetPerf

Dies ist ein Werkzeug zur Bewertung der Netzwerkdurchsatzkapazität. Es wurde von Ingenieuren von Hewlett-Packard entwickelt. Das Werkzeug beinhaltet besteht aus zwei ausführbaren Dateien: netserver und netclient. Um den Test durchzuführen, müssen sie auf unterschiedlichen Maschinen gestartet werden. Standardmäßig verwendet netperf Port 12865, kann jedoch mit dem Flag -p ersetzt werden. Das Dienstprogramm arbeitet mit TCP und UDP über BSD Sockets, DLPI, Unix Domain Sockets und IPv6.

Heute ist netperf Teil des Werkzeugsets für Benchmarking Flent. Auch eine beträchtliche Anzahl von IT-Unternehmen nutzt es, zum Beispiel Red Hat. So sieht die Beschreibung des Dienstes netperf in einem der Beispiele zur Bewertung der OpenShift-Leistung aus:

apiVersion: v1
kind: Service
metadata:
  labels:
    app-name: netperf
  name: netperf
  namespace: your_project
spec:
  ports:
  - port: 12865
    protocol: TCP
    targetPort: 12865
  selector:
    app-name: netperf
  sessionAffinity: ClientIP
  type: ClusterIP

Im offiziellen Repository steht, dass netperf unter einer speziellen Lizenz von Hewlett-Packard vertrieben wird. Der Autor des Dienstprogramms — Rick Jones — behauptet jedoch, dass es im besten Sinne von Open Source geregelt ist. Außerdem sei angemerkt, dass in letzter Zeit die Aktualisierungen für netperf relativ selten erschienen sind. Möglicherweise hängt dies mit der Reife des Produkts zusammen.

Netperf hat Analoga — wie zum Beispiel iperf2 und iperf3. Diese ermöglichen ebenfalls das Testen der Netzwerkdurchsatzkapazität. Die Entwicklung von iperf3 begann, nachdem das Repository von iperf2 in einen Rückgang geraten war. Die neue Version wurde von Grund auf neu geschrieben und ist nicht mit der vorherigen Implementierung kompatibel, enthält jedoch Teile ihres Codes. Interessanterweise blühte die Arbeit an iperf2 nach der Veröffentlichung von iperf3 wieder auf. Infolgedessen haben die beiden Werkzeuge eine ähnliche, aber gleichzeitig unterschiedliche Funktionalität. Zum Beispiel ist iperf2 mehrsträngig, während iperf3 an uarch-bench nur einen einzelnen Thread hat.

Hardinfo

Dies ist ein Dienstprogramm zur Sammlung von Informationen über Hardware und Betriebssystem. Es zeigt Daten über die Funktionsweise von Geräten auf: PCI, ISA PnP, USB, IDE, SCSI sowie serielle und parallele Ports an. Aber es kann auch als Benchmark und Überwachungstool verwendet werden.

HardInfo bietet mehrere Tests an. Zum Beispiel bewertet der CPU Blowfish die Leistung des Prozessors mithilfe kryptografischer Algorithmen der blockweisen symmetrischen Verschlüsselung. Es gibt CPU N-Queens — einen Test aus der Kombinatorik. Das System löst das Schachproblem der Platzierung von N Damen auf einem N x N Felder großen Brett. Es platziert die Figuren so, dass keine von ihnen die anderen angreifen kann. Erwähnenswert sind auch FPU FFT — ein Test zur schnellen Berechnung der diskreten Fourier-Transformation und FPU Raytracing — die Berechnung der Raytracing bei der Rendern einer 3D-Szene.

Das Ergebnis der meisten Tests wird in Sekunden angegeben und je geringer dieser Wert ist, desto besser. Alle Berichte werden im HTML- und txt-Format angezeigt.

Ursprünglich wurde das Tool im Rahmen des Projekts BerliOS. Es beinhaltete eine Hosting-Plattform für Anwendungen mit offenem Quellcode (wie SourceForge) und mehrere Datenbanken für Dokumentation und Profile von Open Source Entwicklern. BerliOS wurde 2014 aufgrund unzureichender Finanzierung geschlossen. Heute wird HardInfo von Enthusiasten in einem separaten Repository auf GitHub.

Es sei darauf hingewiesen, dass das System manchmal mit Bugs konfrontiert ist. Es gibt Berichte über eine gelegentlich auftretende Segmentierungsfehler, Probleme mit der Anzeige von USB-Geräten und mehreren andere.

ApacheBench

Ein Werkzeug für Lasttests von HTTP-Servern. ApacheBench (AB) wurde zur Überprüfung von Apache entwickelt, kann jedoch auf jedem anderen Server verwendet werden. Das Tool ist in vielen Linux-Distributionen vorinstalliert.

Wie man die Leistung von Servern testet: Sammlung mehrerer Open-Source-Benchmarks
Foto – Victor Freitas – Unsplash

Das Tool "bombardiert" Server mit einer großen Anzahl von Anfragen. Um es zu starten, muss der folgende Befehl eingegeben werden:

ab -n 100 -c 10 http://www.example.com/

Es werden hundert GET-Anfragen gesendet (gleichzeitig werden maximal zehn davon übertragen) an die Testressource. Das System zeigt die durchschnittliche Bearbeitungszeit der Anfragen, das gesamte Übertragungsvolumen, die Bandbreite und die Anzahl der Fehler an.

Heute hat sich rund um das Tool eine große Community gebildet. Im Internet erscheinen regelmäßig neue Anleitungen wie man ApacheBench einrichtet und verwendet.

Es ist zu beachten, dass es für AB eine Alternative gibt — Apache jMeter, aber mit erweiterten Möglichkeiten. Zum Beispiel ermöglicht es das Generieren von Anfragen von mehreren Computern, während der Prozess von einem von ihnen gesteuert wird. Die Software implementiert auch Mechanismen zur Autorisierung virtueller Nutzer und unterstützt Benutzersitzungen. Dieses Tool wird von vielen IT-Unternehmen verwendet, darunter Cloud-Anbietern, zum Beispiel Qualys.

Wie man die Leistung von Servern testet: Sammlung mehrerer Open-Source-BenchmarksWir bei 1cloud bieten den Service „Privates Cloud“. Das ist die Vermietung von virtueller Infrastruktur mit der Möglichkeit zur schnellen Anpassung des Parks virtuellen Servern.
Wie man die Leistung von Servern testet: Sammlung mehrerer Open-Source-BenchmarksUnsere Cloud basiert auf Hardware von Cisco, Dell, NetApp. Die Geräte stehen in mehreren Rechenzentren: DataSpace (Moskau), SDN/Xelent (Sankt Petersburg), Ahost (Almaty).

Quelle: habr.com

60GB SSD 8Gb DDR4