Vier Performance-Tipps für eine bessere CPU-Zuweisungen an virtuelle Maschinen

Die Zuweisung von CPU-Ressourcen an virtuelle Maschinen wirkt sich direkt auf die Performance aus. Diese vier Tipps helfen bei der Optimierung.

Wenn wir über das Thema Ressourcen-Zuweisung und virtuelle Maschinen sprechen, scheint man sich in erster Linie auf Flaschenhälse bezüglich Storage und I/O zu konzentrieren. Allerdings ist die Zuordnung von Prozessoren genauso wichtig, um stabile Performance zu garantieren. In diesem Beitrag behandeln wir die Best Practices in Sachen CPU-Zuordnung.

Halten Sie sich an die empfohlenen Mindestanforderungen der Applikationen

Wenn Sie virtuelle CPUs zuweisen, sollten Sie unbedingt die benötigten Anforderungen von Betriebssystem und Applikationen, die auf der virtuellen Maschine laufen, kennen und auch einhalten. Die Standardkonfigurationen der VM kümmern sich oft nicht um diese Anforderungen, selbst wenn Applikation und Hypervisor vom gleichen Anbieter stammen.

Nehmen Sie zum Beispiel Sharepoint 2013. Viele SharePoint-2013-Konfigurationen setzen vier CPU-Kerne voraus. SharePoint ist eine Multithread-Applikation und deswegen speziell dafür geschaffen, mehrere CPU-Kerne auszunutzen. Beim Hyper-V-Provisioning erhalten neu erstellte virtuelle Maschinen nur einen einzigen virtuellen Prozessor, solange der Administrator dies nicht ausdrücklich anders definiert. SharePoint läuft natürlich auch auf einem einzigen Prozessor oder Single-Core-System. Dann allerdings mit entsprechend schlechter Performance.

Achten Sie auch auf das empfohlene Verhältnis von VMs pro CPU

Eine weitere Empfehlung lautet, auf das empfohlene Verhältnis von virtuellen Maschinen pro Prozessor zu achten. Dabei sollten Sie allerdings im Hinterkopf behalten, dass dieses Verhältnis lediglich als grobe Richtlinie gelten kann. Da sich die von den virtuellen Maschinen generierten Workloads in einer produktiven Umgebung von Test-Szenarien oft deutlich unterscheiden, kann es hier keine immer gültigen Empfehlungen geben.

Zudem gibt es einen weiteren Grund, dieses Verhältnis eher als Richtwert denn als absoluten Grenzwert zu verstehen ist: Es ist ganz einfach nicht leicht einzuschätzen, welche Ziele der Hypervisor-Anbieter mit seiner Vorgabe verfolgt. So könnte zum Beispiel die Entwicklungsabteilung des Herstellers die Vorgabe gesetzt haben. Möglicherweise basiert die Empfehlung auf einer Konfiguration, die nach Meinung der Hypervisor-Entwickler die beste Performance und die effizienteste Hardware-Nutzung liefert. Allerdings könnte auch einfach die Marketing-Abteilung des Anbieters hinter der Empfehlung stecken, die zumindest auf dem Papier eine höhere Konsolidierungs-Quote als die Konkurrenz erreichen will. Anders gesagt könnte das empfohlene Verhältnis an VMs pro CPU ein Best Practice sein, oder einfach nur eine Konfiguration, die nur unter sehr idealen Bedingungen stabil läuft.

Ein weiterer wichtiger Aspekt beim Verhältnis von VM pro virtueller CPU ist auch die große Abhängigkeit von verschiedenen Workloads. Einige Hypervisor-Anbieter beispielsweise geben ein Verhältnis für VDI-Umgebungen, aber ein gänzlich anderes für virtuelle Server an.

Behalten Sie auf alle Fälle im Hinterkopf, dass das empfohlene Verhältnis aus VMs pro CPU nicht über den benötigten Mindestanforderungen einer Applikation steht. Die Ansprüche von vier CPU-Kernen für SharePoint ändern sich nicht, nur weil diese Applikation nun in einer virtuellen Maschine gehostet ist. Ob in einer physischen oder virtuellen Umgebung betrieben, SharePoint hat immer die gleichen Hardware-Anforderungen.

Dieses Prinzip gilt auch für virtuelle Maschinen, die rechenintensive Applikationen hosten. Haben Sie so eine VM im Einsatz, dann sollten Sie für diese VM lieber ein 1:1-Verhältnis zwischen physischen und virtuellen CPU-Kernen einhalten.

Beschäftigen Sie sich mit der Hersteller-Definition des virtuellen Prozessors

Das Konzept eines virtuellen Prozessors scheint einfach zu sein, aber die darunterliegende Architektur kann durchaus für Verwirrung sorgen. Bei Hyper-V zum Beispiel gibt es keine direkte Beziehung zwischen den virtuellen und den physischen Prozessoren. Virtuelle Prozessoren sind mit logischen Prozessoren verbunden, die dann wiederum auf physischer Hardware basieren.

Auf vielen Webseiten ist zu lesen, dass zwischen physischen und logischen Prozessor-Kernen ein 1:1-Verhältnis existiert. Anders ausgedrückt repräsentiert jeder logische Prozessor einen physischen Kern. Diese Erklärung stimmt auch in den meisten Fällen, aber eben nicht immer.

Wenn Hyperthreading aktiviert ist, dann kann Hyper-V einen Thread als logischen Prozessor behandeln. Somit könnten aus einem Prozessor mit sechs Kernen 12 logische Prozessoren entstehen. Das ist ein wichtiger Aspekt, weil die Anzahl der logischen Prozessoren eine direkte Auswirkung auf das Verhältnis aus VM pro virtuellem Prozessor hat.

Lassen Sie auch dem Hypervisor noch ein paar CPU-Ressourcen

Wenn Sie den virtuellen Maschinen CPU-Ressourcen zuweisen, dann sollten Sie tunlichst auch den Hypervisor nicht vergessen. Andernfalls drohen auch hier Performance-Einbußen.

Letztlich gibt es keine magische Formel, mit der Sie immer die beste Prozessor-Zuweisung für virtuelle Maschinen erreichen können. Immerhin liefert jeder Hypervisor-Anbieter seine eigenen Empfehlungen und Best Practices. Allerdings sind diese Vorschläge für die meisten produktiven Umgebungen nicht wirklich brauchbar. Im Hinterkopf sollten Sie diese Best Practices allerdings schon behalten, da Sie anhand dieser immerhin eine grundlegende Einschätzung der Server-Performance erhalten. Während Sie sich schließlich an das Feintuning machen, können Sie diese Performance-Werte mit ihren Ergebnissen vergleichen und sich so an die ideale Zuweisung herantasten.

Folgen Sie SearchDataCenter.de auch auf Facebook, Twitter und Google+!

Erfahren Sie mehr über Server- und Desktop-Virtualisierung