Ressourcenzuteilung mit vSphere Hypervisor

496
louis

Ich baue einen Heimserver auf einem alten PC (Core 2 Duo E6600 als Prozessor, 4 GB RAM, zwei Festplatten, eine für jede VM), und ich habe Probleme mit einer meiner VM. Ich habe derzeit zwei VMs, eine mit Unangle OS und die andere mit Windows Server 2008 R2. Die Untangle-VM läuft einwandfrei, aber der Server 2008 ist sehr langsam. Es wurde kaum etwas außer dem Betriebssystem installiert (ich glaube, ich habe nur ein Antivirenprogramm installiert, das nur bei Bedarf scannt).

Obwohl der PC alt ist, bin ich ziemlich sicher, dass er Server 2008 ziemlich gut ausführen sollte, obwohl Sie mich korrigieren können, wenn ich mich irre. Ich habe über den Prozessor gelesen und festgestellt, dass er tatsächlich 2 physische und 2 logische Prozessoren in jedem physischen hatte (nicht sicher, was genau der Unterschied ist). Ich dachte, es hätte eigentlich vier Prozessoren für meine VMs. Ich habe dann der Untangle VM 1 Prozessor und 1 GB RAM und dem Server 2008 drei Prozessoren und 3 GB RAM zugewiesen. Der Windows Server war praktisch unbrauchbar. Dann erfuhr ich von einem Kollegen, dass der Prozess tatsächlich einfrieren könnte, wenn er zwei verschiedenen physischen Prozessoren zugewiesen wird, da die Daten den Pfad durch die einzelnen physischen Sockets nicht durchqueren könnten (nicht sicher, ob sie richtig sind). Er schlug vor, dass ich nur 2 Prozessoren auf diese VM stecke, damit alle Daten auf demselben physischen Prozessor verarbeitet werden. Dies schien das Problem ein wenig zu beheben, aber ich habe immer noch ein Zeitfragment, bei dem die VM sehr langsam läuft. Es kommt durch Wellen. Ich kann einen Virenscan ausführen, der in den ersten 30 Minuten sehr schnell abläuft, aber dann viel langsamer wird, und wenn er fertig ist, kann ich den Windows Explorer kaum öffnen.

Ich habe auch 4800 MHz für die VM mit Server 2008 reserviert (nicht sicher, ob es tatsächlich zwei volle Prozessoren bedeutet, da sie jeweils mit 2,4 GHz laufen), aber ich kenne diesen Begriff der Ressourcenreservierung nicht allzu gut.

Ich frage mich, ob die VM-Ressourcen korrekt verteilt sind (was ich nicht glaube, aber das ist nur ein Gefühl), oder ob es sich nur um einen alten PC handelt und Probleme beim Ausführen von Windows Server 2008 haben werden.

Bitte verzeihen Sie mir, wenn ich falsche Begriffe oder gemischte Vorstellungen verwende, da ich in dieser Welt der Virtualisierung noch neu bin.

Danke für die Hilfe,

Louis

2
Die Langsamkeit kommt höchstwahrscheinlich von Ihrem Festplattenzugriff. Ein einzelnes Laufwerk kann nicht immer mehrere Betriebssysteme unterstützen. Bei IIRC, kann Unangle eine recht große Plattenzeit verbrauchen, insbesondere wenn das Netz-Caching-Modul eingeschaltet ist. Verwenden Sie den vSphere-Client, um die Ressourcennutzung des Hypervisors zu überwachen. вʀaᴎᴅᴏƞ вєнᴎєƞ vor 9 Jahren 0
Ich habe es nicht gesagt, aber ich verwende eigentlich zwei Festplatten, eine für Untangle und eine für Server 2008. louis vor 9 Jahren 0
Ich nehme an, Sie haben VT-x im BIOS aktiviert? вʀaᴎᴅᴏƞ вєнᴎєƞ vor 9 Jahren 0
Ja, das habe ich auch gemacht, als ich ESX5.5 zum ersten Mal installiert habe louis vor 9 Jahren 0
Versuchen Sie, Ihre CPU-Reservierung auf 3000 MHz zu reduzieren вʀaᴎᴅᴏƞ вєнᴎєƞ vor 9 Jahren 0
Würde es Ihnen etwas ausmachen, mir zu sagen, wie dies helfen würde, nicht dass ich bezweifle, aber ich möchte auch lernen, wie vSphere funktioniert :). louis vor 9 Jahren 0

1 Antwort auf die Frage

0
вʀaᴎᴅᴏƞ вєнᴎєƞ

Wenig zu lang für einen Kommentar, also füge ich ihn als Antwort hinzu.

Ihre CPU ist eine Dual-Core-CPU mit einer Taktrate von 2,4 GHz oder 2400 MHz pro Core. [ 1 ] Das entspricht einer Gesamtverarbeitung von 4800 MHz zu einem bestimmten Zeitpunkt. Normalerweise übernimmt das Betriebssystem die Verwaltung der Ressourcen eines Computers. VMWare ESXi ist ein Bare-Metal-Betriebssystem, auch Hypervisor genannt. Im Grunde bedeutet das nicht viel, weshalb Sie ESXi auf einer 1 GB SD-Karte installieren können, wenn Sie es wirklich wollten. [ 2 ]

Bei der Verwaltung der CPU-Ressourcen gibt es einen sogenannten Scheduler, der bestimmt, wie und wann Prozesse auf der CPU ablaufen. In ESXi ist ein Scheduler in den Kernel integriert. [ 4 ] Alles ist in Ordnung und gut, solange der Scheduler genügend Verarbeitungsmöglichkeiten zur Verfügung stellt, um allen Prozessen die CPU-Zeit zur Verfügung zu stellen, die sie benötigen. Ein Computer kann langsam laufen und reagiert nicht mehr, wenn mehr Arbeit erledigt werden muss als er leicht verarbeiten kann. Wenn dies in ESXi der Fall ist, beginnt der Kernel damit, die physischen CPU-Kerne so zu teilen, dass alle virtuellen Maschinen die Möglichkeit haben, die Anweisungen auszuführen, die sie benötigen. [ 3 ]

Da wir alle wissen, dass Computer auf magische Weise funktionieren, sollte einfach alles funktionieren, oder?

Schauen wir uns das mal so an: Sie haben derzeit zwei VMs und eine CPU-Leistung von 4800 MHz, die alle gemeinsam nutzen können. Hoppla, hätte fast ESXi vergessen ... Das bedeutet, dass auf der Workstation insgesamt drei Dinge laufen. Alle drei Dinge versuchen, einen Teil der insgesamt verfügbaren 4800 MHz zu nutzen. Eine gute Nachricht ist, dass es unter den meisten Umständen genug sein sollte, um herumzugehen, da die meisten Betriebssysteme nicht immer 100% der CPU ausnutzen.

Nun zu den schlechten Nachrichten: Sie haben ESXi angewiesen, die gesamte CPU-Zeit von 4800 MHz an die Windows-Gast-VM zu übergeben, unabhängig von ihrer Verfügbarkeit. Tatsächlich bleibt den beiden anderen nichts anderes übrig. ESXi schneidet dann die physischen CPUs zeitlich ab, damit auch die anderen Dinge laufen können. Dieses Time-Slicing wirkt sich nicht wirklich auf Untangle oder ESXi aus, da sie genau so laufen, wie sie es brauchen, wenn sie laufen müssen. Dies wirkt sich auf die Windows-VM aus, da der ESXi-Scheduler in zahlreichen kurzen Intervallen vorübergehend gestoppt wird, wenn er etwas versucht. Eine kleine Unterbrechung hier oder dort ist nicht erkennbar, aber es passiert immer wieder viele Male pro Sekunde, was möglicherweise erklärt, warum die Windows-VM manchmal so träge ist.

Ihr Kollege hatte mit seiner Diagnose Ihrer Maschine nicht ganz recht, da er nur eine Steckdose und eine CPU hat, obwohl seine empfohlene Auflösung ein Schritt in die richtige Richtung war. Das Herunterzählen der virtuellen CPU von 3 auf 2 half, da Sie Ihre CPU-Ressourcen "übermäßig" bereitgestellt hatten. Grundsätzlich wird Ihre Konfiguration in Bezug auf die CPU-Reservierung auch mit demselben Namen bezeichnet. Um dieses Problem zu beheben, müssen Sie Ihre Reservierung auf etwa 1000 MHz reduzieren und eine CPU-Grenze zwischen 3000 und 3800 MHz einstellen. Dadurch werden möglicherweise nicht alle Ihre Langsamkeitsprobleme gelöst, es sollte jedoch helfen.

Quellen:

[1] http://ark.intel.com/products/27250/Intel-Core2-Duo-Processor-E6600-4M-Cache-2_40-GHz-1066-MHz-FSB [2] http://pubs.vmware.com/vsphere-55/index.jsp#com.vmware.vsphere.install.doc/GUID-DEB8086A-306B-4239-BF76-E354679202FC.html [3] http://pubs.vmware.com/vsphere-55/index.jsp?topic=%2Fcom.vmware.vsphere.resmgmt.doc%2FGUID-DFFA3A31-9EDD-4FD6-B65C-86E18644373E.html [4] http://www.vmware.com/files/pdf/techpaper/VMware-vSphere-CPU-Sched-Perf.pdf 
A + Erklärung ehrlich. Vielen Dank, dass Sie sich die Zeit genommen haben, diese Antwort zu schreiben. Dies hat mir dabei geholfen zu verstehen, wie ESX und die Ressourcenzuteilung funktionieren, und wird mir sicherlich dabei helfen, das Problem mit meinem Server zu lösen. Obwohl ich die Änderungen noch nicht getestet habe, bezeichne ich dies als die Antwort, da sie mir schon viel weitergeholfen hat, als ich wollte. Danke noch einmal! louis vor 9 Jahren 0
@louis Gern geschehen, hoffe das hilft. вʀaᴎᴅᴏƞ вєнᴎєƞ vor 9 Jahren 0