ADMIN-Tipp: I/O von VMs optimieren

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Mit ein paar kleinen Tricks lässt sich die Performance virtueller Maschinen recht einfach verbessern.

Wie es aussieht, laufen in Zukunft immer mehr Systeme nur noch als virtuelle Maschinen auf einem Server oder in der Cloud. Damit sie bei der Performance mit echter Hardware konkurrieren können, gibt es einige Dinge zu berücksichtigen. Bei der Linux-Virtualisierungstechnologie KVM setzt man dafür am besten die Virtio-Treiber ein, die für den Einsatz in virtuellen Maschinen optimiert sind. Auch beim Datenspeicher gibt es einige Optionen: Schneller als Image-Dateien, die auf der Festplatte des Host-Systems gespeichert sind, funktioniert beispielsweise der direkte Zugriff auf ein LVM Volume.

Läuft in der VM eine Linux-Distribution, gibt es noch einen Trick, das I/O-System zu beschleunigen: Man setzt den I/O-Scheduler der VM auf die Option "noop", die den Scheduler quasi leerlaufen lässt. Dies ist anzuraten, weil der Scheduler des Host-Systems ja seinerseits bereits die Lese-und-Schreibaufträge verwaltet. Täte die VM das auch noch, führte dies nur zu unnötigem Overhead.

Zur Laufzeit lässt sich dies in der VM mit "echo noop > /sys/block/DEVICE/queue/scheduler" erreichen. Dauerhaft wird die Einstellung mit "elevator=noop" in der Zeile mit "GRUB_CMDLINE_LINUX" der Datei "/etc/default/grub" auf dem Gast-System eingestellt.

09.04.2013

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Loadtests ohne Server

Für Loadtests der eigenen Server bietet sich die Cloud an, denn kurz getaktet lassen sich dort viele Rechnerinstanzen starten, die das eigene Budget nur wenig belasten. Noch flexibler, günstiger und besser skalierbar sind Tests mit einer Serverless-Infrastruktur wie AWS Lambda. Wir führen vor, wie Sie dort mit Serverless Artillery eigene Loadtests starten. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018