Ungewöhnlich hohe disk latency bei neuem Rootserver M

  • Hallo,


    ich hätte mal eine Frage bezüglich Festplattenlatenzzeiten. Ich habe mir heute einen Root-Server M zugelegt und beim Einrichten ist mir bereits aufgefallen, dass beim Installieren von Paketen der Download sehr schnell abläuft, aber die Einrichtung der Pakete im Vergleich zu anderen Vservern ungewöhnlich langsam war. Ausgelastet war die CPU in diesen Momenten aber auch nicht.


    Nachdem ich jetzt mal munin installiert habe, hat munin von sich aus bereits eine hohe disk latency bemängelt. In den letzten 2 Stunden lag laut munin die IO Wait time im Mittel bei 1.21 mit einem Spitzenwert von 13.25 (Das sind Werte in Sekunden nicht Millisekunden) Wenn ich mir diesen Wert bei einem anderen KVM Server anschaue, den ich habe, dann liegt der Wert Mittelwert da bei 2.36ms mit einem Spitzenwert von 194ms, auf einem Xen Server liegt sie im Mittel bei 22.91ms mit einem Spitzenwert von 41.58ms. Ich habe eigentlich nur das Wheezy-Image mit ohne alles aufgespielt und danach nichts ungewöhnliches installiert nur Mailserver, Webserver, etc und die CPU ist trotz der ganzen Installationsaktivitäten bei 82% idle, 8% io/wait und 10% system+user


    Mir ist gerade nicht so ganz klar, woran es klemmt, ob es etwas Spezifisches bei meinem Vserver ist oder etwas Generelles. Zumindest ist es schon relativ nervig, wenn man eine kleine 1kb große Datei von einem Verzeichnis der Festplatte in ein anderes kopiert und dabei erstmal 2 Sekunden warten muss, bis die Aktion über die Bühne ist.


    Hat jemand etwas ähnliches erlebt und die Ursache dafür gefunden?


    Danke für ne kurz Antwort
    Oliver

  • Bei mir ist die Lattency auch relativ hoch.
    Ich vermute das auf dem Host andere vServer die Leistung beanspruchen, während du drauf schaust.
    Hast du das zu verschiedenen Zeitpunkten geprüft?
    Mein Lattency Report zeigt immer wieder größere Peaks.
    Aber ansonsten schaut er relativ normal aus.
    Was oft Hilft ist eine Defragmentierung über das vServer Panel.
    (Steht auch irgendwo so im Wiki)

  • Hallo,


    danke fürs Antworten, also ich habe gerade nochmal auf die Verlaufskurve im Munin geschaut und die disk latency ist dauerhaft auf hohem Niveau, wenn auch etwas niedriger als in den ersten 2 Stunden, wo ich viel Installationsarbeit durchgeführt habe. Im Mittel über die letzten 36 Stunden liegt der Wert bei 789ms, das ist also fast eine Sekunde und kann so nicht normal sein. Gerade wenn ich z.B. ein Programm wie den GNU Midnight Commander aufrufe, passiert manchmal 4 Sekunden lang überhaupt nichts, nachdem ich mc eingegeben habe. Er muss halt sowohl für das Programm als auch dann nochmal für die Verzeichnislistings auf die Festplatte zugreifen und solange beides nicht erledigt ist, hängt er im IO Wait und macht gar nix. Wie lange es dauert ist verschieden, aber man sieht im Muninplot das der Wert schon häufig über der 1sec Linie liegt mit einigen Peaks bei 4 und 5 Sekunden.


    Es geht mir aber weniger um Peaks als um den Langzeitmittelwert, dass es mal länger dauert, weil viele parallel auf die Festplatte zugreifen ist unvermeidlich, aber dass es immer so lange dauert, da kann was nicht stimmen. Ich hab mir nochmal die Plots meines anderen KVM Servers angeschaut, und da liegt der Mittelwert über die letzten 30 Tage bei 2.72ms mit einem einzelnen Peak bei 1.69 sonst sind die Peaks bei 100-400ms


    Hast Du Deine Latenzzeiten mal konkret gemessen, speziell was den Mittelwert angeht ?


    Naja ich werde am Montag mal beim Support nachfragen, da ich den Vserer ja erst am Freitag abend aufgesetzt habe, wollte ich so lange mal hier im Forum nachhören, ob das anderen schon mal aufgefallen ist...


    Dass Defragmentieren etwas bringt, glaube ich kaum, die Partition wurde ja erst vor 2 Tagen angelegt...


    Alles Gute
    Oliver

  • Mein erster Server hat im Durchschnitt ca 20ms Latency (alle 4 Messwerte)
    Allerdings hab ich dort in konstanten abständen Immer wieder ausbrechen gegen Mitternacht, Das könnte aber auch meine Backup Routine sein.


    Mein zweiter Server hat im Schnitt so ca 10-15 ms Latency im Monat, wobei die Device IO meist bei ca 0.5 ms liegt.
    Nicht wie beim ersten Server alle im Mittelfeld.

  • Moin

    Gerade wenn ich z.B. ein Programm wie den GNU Midnight Commander aufrufe, passiert manchmal 4 Sekunden lang überhaupt nichts, nachdem ich mc eingegeben habe.


    Check mal deine DNS-/Netzwerkeinstellungen. Der MC zeigt dieses Verhalten gerne, wenn es Probleme mit der Netzanbindung gibt.


    Die Disk-Latency kannst Du z.B. mit folgendem Befehl messen.

    Code
    time ls /usr/bin >/dev/null


    Damit erhältst Du die reine Zeit, die für den Verzeichniszugriff erforderlich ist. Statt /usr/bin kannst Du auch ein anderes Verzeichnis nehmen.


    Mordor

  • An dieser Stelle noch ein kurzes Feedback um das Thema zum Abschluss zu bringen. Der Support hatte das Hostsystem auf dem mein Vserver läuft nach meiner Frage zu den Latenzzeiten am 30.12. abends kurzfristig für ein paar Minuten runtergefahren, um etwas umzukonfigurieren. Daraufhin waren zumindest die Lesezugriffe auf einen Mittelwert von 1ms gesunken, die Schreibzugriffe blieben aber bei einem Mittelwert von 100ms. So konnte man auf jeden Fall aber erst mal sinnvoll arbeiten.


    Heute wurde dann eine weitere Optimierung durchgeführt und seit dem liegt die Verzögerung sowohl für Lese- als auch Schreibzugriffe unter 1ms.


    Das Problem ist somit gelöst

  • Um dieses alte Thema nochmals aufzugreifen.


    Ich habe derzeit einen Root-Server XL v6 worauf ein Windows Server 2016 Preview (auch mit 2012 R2 getestet) läuft mit e1000 Treiber.
    Nun ist mir beim testen aufgefallen, dass der ganze Server an Leistungsschwächen leidet. Das Hauptproblem scheint der Arbeitsspeicher oder die Festplatte zu sein.


    Ein paar Synthetische Benchmarks aus Aida64:
    Disk Average Read Access des Servers: ~11ms --> Sollwert einer SSD ~0,15ms
    Der I/O Durchsatz ist dabei allerdings vollkommen ok.


    Speichertests lassen sich mit Aida64 auf dem Server nicht durchführen, da dass Programm dann eeeeeeeewig arbeitet. Warum weiß ich nicht.


    Auswirkung der Leistungsschwäche auf die Programmleistung:
    Ich habe auf einem anderen Rootserver mit SSD auch einen Windows Server 2012 R2 im produktiv betrieb. Dort läuft alles einwandfrei und schnell. Der Server ist allerdings etwas veraltet und besitzt noch Hardware von vor 4-5 Jahren. Trotzdem läuft er besser als der netcup KVM vServer. Dies kann ich hier mal an einem PHP Benchmark darstellen den ich anhand eines Benchmarkscripts auf dem Rootserver, einem Webhostingpaket von AIXPRO (SSD, NGINX) und dem netcup vServers ausgeführt habe.


    Windows Rootserver: ~6,1 Sekunden Ausführzeit des Skripts
    AIXPRo Webhosting: ~ 9 Sekunden
    netcup Windows: ~16,5 Sekunden


    Die PHP Settings sind bei allen gleich eingestellt um vergleichbar zu sein.


    Wie kann ich nun vorgehen um herauszufinden was diese Probleme verursacht? Windows selbst ist eigentlich einwandfrei konfiguriert.

  • Festplatten erkennen


    "Windows unterstützt VirtIO nicht nativ, daher ist es notwendig, dass eine Treiber CD geladen wird. Diese stellen wir im VCP zur Verfügung."



    Hast Du das schon gemacht bzw beachtet? Netcup Wiki Festplattentreiber [1]

  • Hi,


    danke für die Antwort. Allerdings habe ich Windows bereits installiert. Also der Treiber ist vorhanden. Bei der Installation von Windows wird nach dem Treiber gefragt um das ganze zu installieren.
    Installiert ist nun also alles. Nur die Performance ist mies. Die Frage ist nun woran das liegen könnte? Ich würde auf Festplatte oder Arbeitsspeicher tippen.

  • Prüfe mal im Rescue System den Datendurchsatz, wenn der auch schlecht ist musst Du Dich an den Support wenden.Wenn das nicht der Fall ist, dann musst Du Detektiv spielen und schauen welcher Windows Treiber mit der SSD nicht klar kommt.


    Zu Analyszwecken kannst Du ja mal das Windows Performance Toolkit runterladen.
    Download Windows Assessment and Deployment Kit (Windows ADK) for Windows 8.1 Update from Official Microsoft Download Center


    Das Toolkit hat zwei Komponenten:
    1) Performance Recorder. Lass den mal eine Weile aufen und führe die Skripte aus bzw lass die Sachen mit Peformaceproblemen laufen
    2) Wenn Du fertig bist, lade das File in den Peformanceanalyzer und schau Dir die Prozesse an die viel CPU/Memory/IO beanspruchen.

    Auch immer eine Hilfe bei Windows Treiberproblemen: DriverAgent
    Der Scan ist kostenlos und das Ding zeigt Dir zumindest an welche Treiber auf deiner Windowskiste nicht aktuell sind. Wenn z.B der Chipsatztreiber uralt ist kann das schon mal zu unterirdischer Performance führen. Der Test Linux vs. Windows auf dem selben Server wäre auch mal interessant als Vergleichswert oder um zu schauen
    ob es an Windowstreibern oder deinem KVM-System liegt (Hardware).

  • Ich entschuldige mich schon mal dafür, dass ich diesen alten Thread wieder aus der Versenkung hebe.
    Ich habe sehr ähnliche Probleme wir sie Pumm0r beschreibt, daher würde ich gern wissen, ob er oder ein anderer eine Lösung für sein Problem gefunden hat?


    Vielen Dank
    Martin

  • Hi,


    Ich konnte keine Lösung für die Probleme finden trotz ca. 20 Neuinstallationen.
    Der Support konnte mir auch nicht helfen. Hier war der O-Ton "der Server funktioniert doch einwandfrei".
    Ich habe daraufhin den Anbieter gewechselt und bin nun zufrieden.

  • Hi,


    Ich konnte keine Lösung für die Probleme finden trotz ca. 20 Neuinstallationen.
    Der Support konnte mir auch nicht helfen. Hier war der O-Ton "der Server funktioniert doch einwandfrei".
    Ich habe daraufhin den Anbieter gewechselt und bin nun zufrieden.

    Hmm, ich weiß nicht ob es wirklich so eine Erfolgsversprechende Vorgehensweise war 20 mal das gleiche zu machen und dennoch auf ein anderes Ergebnis zu hoffen.

  • Hmm, ich weiß nicht ob es wirklich so eine Erfolgsversprechende Vorgehensweise war 20 mal das gleiche zu machen und dennoch auf ein anderes Ergebnis zu hoffen.

    Andere Treiber, andere Windows Versionen, andere Konfigurationen. Ich habe über 3 Monate hinweg ALLES getestet.

  • Du hast ja nun eine Lösung. Und auch wenn ich Windows Server bei Netcup nicht selber einsetze, wäre es natürlich von Vorteil gewesen das Problem besser zu verstehen und ggf. eine Lösung zu finden, denn auch Netcup dürfte daran interessiert sein dass das alles wie erwartet funktioniert.

  • Durch viel rumprobieren und Hilfe vom Support war die Lösung für mich die neusten VirtIO Treibe zu installieren. Dabei reichte es nicht aus, die bereitgestellten Treiber von Netcup zu verwenden, sondern nur mit den Treibern von Windows Virtio Drivers - FedoraProject habe ich zufriedenstellende IO Performance auf meinem Windows Server 2012 R2 vServer hinbekommen.
    Ich habe den Ballon Treiber, den Guest-agent, den NetKVM und den viostor Treiber installiert.



    Ich hoffe, anderen hilft das auch weiter.


    Grüße Martin