Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!

WTS Performance-Probs nach Virtualisierung auf VMWare Server

Hilfe bei Problemen mit der Installation oder Benutzung des VMware GSX Server und VMware Server 1.

Moderatoren: Dayworker, irix

Member
Beiträge: 4
Registriert: 27.11.2006, 13:47

WTS Performance-Probs nach Virtualisierung auf VMWare Server

Beitragvon m.masuhr » 27.11.2006, 13:57

Dieses Wochenende haben wir unseren Windows Terminal Server virtualisiert.

Nun haben wir massive Geschwindigkeits-Probleme beim Start von verschiedenen Programme. Nach dem ersten Start sind diese Programme dann aber wiederrum völlig normal schließ- und auch wieder startbar (wir gehen hier von einem Performance-Flaschenhals beim Cache aus).
Weiterhin betrifft dies hauptsächlich Programme, welche einen erhöhten Dateizugriff beim Start haben (z.B. Adobe durch die Plugins, Excel durch AddIns, etc.). Daraus folgern wir, dass wir bei unserer virtuellen Maschine ein Problem beim Dateizugriffen haben.

Hier haben wir die "Accleration"-Funktion von VMWare Server im Auge. Hat jemand nähere Informationen darüber, wie diese Beschleunigung funktioniert bzw. wo diese ansetzt und sich einklingt?

Hat sonst jemand eine Idee, wie man diesem Problem auf die Schliche kommen kann?

Achso, Hardware ist folgende:

2x 2,8GHz DualCore Xeon
8GB DDR2-RAM
300GB Ultra160 SCSI Controller/Platten im RAID 1

Member
Beiträge: 383
Registriert: 03.10.2005, 03:29

Beitragvon al!ve » 27.11.2006, 14:07

Wie viele Benutzer arbeiten denn auf der Maschine? Ich frage aus persönlichem Interesse, zur Problemlösung trägt das sicher nicht bei.

Hier könnte/sollte helfen, wenn statt eines RAID1 ein RAID10 verwendet wird.
Zusätzlich oder alternativ könnte man die VM direkt auf einer Partition laufen lassen, anstatt ihr ein vmdk-File als virtuelle Festplatte zu geben. Das sollte den Durchsatz spürbar steigern.

Member
Beiträge: 4
Registriert: 27.11.2006, 13:47

Beitragvon m.masuhr » 27.11.2006, 14:17

Also im Moment ca. 20 User, das Problem ist aber nicht Userabhängig, es taucht auch schon auf, wenn sich nur ein User anmeldet.

RAID-Wechsel ist eine nette Idee, aber leider ohne finanziellen und partitionierungstechnischen Aufwand nicht machbar.
Weiterhin ist auch das Einbinden eine physikalischen Partition an sich eine gute Idee, die virutellen HDD-Devices sind allerdings utopisch angelegt (3x 200GB), so dass wir nicht so einfach portieren könnten. Wir gehen irgendwie immernoch davon aus, dass nur irgendwie irgendwo etwas falsch eingestellt ist und sich dies einfach beheben lässt.

Experte
Beiträge: 1188
Registriert: 08.11.2005, 13:08
Wohnort: bei Berlin

Beitragvon e-e-e » 27.11.2006, 15:11

Hallo,
tritt das Problem auch direkt nach dem Start der VM auf, oder nach mehrstündiger Ruhe?

Gruß Ronny

Member
Beiträge: 383
Registriert: 03.10.2005, 03:29

Beitragvon al!ve » 27.11.2006, 15:13

Viel kann ich Ihnen dazu nicht sagen, einen WTS habe ich selbst noch nicht produktiv virtualisiert. Steht aber für das kommende Jahr auf dem Plan, deshalb mein Interesse. Wobei ich mit anfangs vier und nach abgeschlossener Testphase sieben Personen fahren werde und deshalb noch mit dem Gedanken spiele, vorerst zu versuchen, mit einem einzelnen Dual-Core aus zu kommen.

Dass solch große Partitionen nicht "mal eben zum Testen" verschoben werden können verstehe ich. Allerdings sehe ich da fast keinen anderen Weg.
Das Problem liegt in der Tatsache, dass jeder Plattenzugriff im Gastsystem erst durch VMware auf einen Dateizugriff im Hostsystem umgebogen werden muss, sodass alles, was solche Angelegenheiten für gewöhnlich beschleunigt (DMA, zum Beispiel) nur bedingt greifen kann, und die Festplatte ist nun mal abgesehen von Wechselmedien der langsamste Speicher, der im PC verbaut ist.

Wie sind die virtuellen Platten denn angelegt? Aus "sind allerdings utopisch angelegt" schließe ich, dass die vmdk-Files auch im leeren Zustand die volle Größe haben, ein dynamisches Nachallokieren des Speichers also nicht das Problem sein kann.

Sofern noch nicht geschehen würde ich zunächst innerhalb des Gastes defragmentieren. Wenn das geschehen ist den Gast abschalten und den Host defragmentieren.
Das Windows-Werkzeug hierfür wird immer wieder als nur bedingt sinnvoll beschrieben. Power-Quest soll ein deutlich leistungsfähigeres Tool haben. Wirklich tiefgehend habe ich mich damit zwar noch nicht befasst, aber es gibt mit Sicherheit auch noch einige andere Defragmentierer, die dem Windows-Programm deutlich überlegen sind.

Ob das viel bringt kann ich nicht sagen. Ab und an hört man, dass sich dadurch die Performance deutlich steigern lässt.

Member
Beiträge: 4
Registriert: 27.11.2006, 13:47

Beitragvon m.masuhr » 27.11.2006, 15:46

Also die vmdks sind nicht komplett allokiert (hat aber auf allen anderen Servern keine Probleme gemacht). Ich kann mir aber trotzdem nicht vorstellen, wie ich das so einfach umbasteln kann.

Defragmentieren sollte nicht nötig sein, da die vmdks ja erst vorgestern erstellt worden.

Member
Beiträge: 383
Registriert: 03.10.2005, 03:29

Beitragvon al!ve » 27.11.2006, 15:59

:) Denkst du. Schau dir mal ein frisch installiertes Windows an, das sieht teilweise echt grausam aus. Auch wenn ich den Performancegewinn nicht garantieren kann, fragmentiert ist ein System nach der Installation trotzdem genügend.

Member
Beiträge: 4
Registriert: 27.11.2006, 18:25

Beitragvon b.wettstein » 27.11.2006, 19:14

Hallo,

noch ein paar Nachtragungen + Fragen zum System von meiner Seite (M.Masuhr und ich arbeiten hier am gleichen Projekt):

HOST:
Dell PowerEdge 1850
Windows 2000 Advanced Server (SP4, uptodate)
Client:
Windows 2000 Server (SP4, uptodate)

Der virtuelle WTS läuft z.Zt. als einziger Gast unter dem HOST (weitere sind nur theoretisch in Planung, praktisch soll dies erstmal so bleiben).

Das ganze ist per Gigabit-Ethernet an einen zweiten Windows-Host angebunden, auf dem dann ganz andere virtualisierte Server (wie z.B. ADS, SQL, Fileserver, Groupware, diverse Linuxserver, etc). problemlos und hochperformant laufen. Der zweite Host hat neben einer moderneren Grundlage (PowerEdge 1950) ein wesentlich schnelleres Plattensubsystem (SAS/Dell) - z.B. für die DB's und ein DMSArchiv.

Wir sind davon ausgegangen, daß es sinnvoller ist, den WTS auf o.g. System zu schieben, da: 1.) auf dem ADS/DB-Host sonst nicht mehr genügen Kapazität für's RAM bleibt, wenn man dem Terminalserver die unter VMWare Server größtmögliche Verfügbarkeit an Arbeitsspeicher spendieren will) und 2.) das Plattensubsystem sich ja eigentlich nur für lokal installierte Anwendungen, Betriebssystem und Auslagerungsdateien interessieren dürfte, der Rest sollte per Netzwerkzugriff und Abfragen per Netzwerk via Gigabit-Ethernet ablaufen, sowie 3.) größere DB-Auslastungen durch Reorganisationen oder Belastungen aus der Groupware- oder DMS-Landschaft sich nicht auf den Applikationsserver "Terminalserver" auswirken sollen.

Offenbar spielt das Problem also nur bedingt eine Rolle im Plattensubsystem oder kann hier zumindest (noch) meiner Meinung nach noch nicht eindeutig als einzige Problemursache eingekreist werden, es ist vielmehr eine von vielen weiteren Möglichkeiten. Speziell z.B. habe ich die Prozessprioritätsverteilung und CPU-Auslastung im Zusammenhang mit VMWare Server + "Windows Terminal Server" grundsätzlich in Verdacht...

In jedem Fall ist die Prozessor-Auslastung innerhalb des Gastes (max. RAM zugeordnet, 2 virtuelle CPUs) ab 3-4 User bereits bei nahe 100%, wenn irgendwelche (!) Zugriffe (also sowohl lokal im Plattensubsystem, als auch im Netzwerk) erfolgen. Wir haben uns hier bei o.g. Host-System + DB-Anbindung im Vergleich zum "physikalischen" Ursprung der Maschine (einem ca. 3 Jahre alten Fujitsu-Primergy mit 2xHT-CPUs mit je < 2 Ghz und 4 GB RAM) eigentlich wesentlich mehr erwartet (soweit man einen Terminalserver hier ganz naiv mit den üblichen virtualisierten Windows-Servern vergleichen kann). VMWareTools & Co. sind natürlich installiert.Übliche "WTS-Verdächtige" (z.B. CTFMON, mehrfach Prozesse, amoklaufende Virenscanner, etc.) entschärft.

Folgende "Tipps" werden wir (nach intensiver Webrecherche) morgen (bei nächster Gelegenheit zum Neustart der VM ;-) ) testen:

- COM-Ports rausnehmen (sind aus historischen Gründen und weil evt. hier noch was angesteuert werden sollte was nun aber eher niedrigere Priorität hat tatsächlich noch drin - soll im Zusammenhang mit Terminalserver und Metaframes jedoch auch tatsächlich ein Problem sein, also raus damit)

- workload="TerminalServices" (ja, einen solchen VMX-Parameter gibt es, ist auch ergooglebar, allerdings konnten wir keinerlei Hinweise entdecken, ob dieser Parameter auch unter GSX/Virtualserver oder nur unter ESX greift auch scheint der Paramter nicht ganz offiziell dokumentiert, jedoch sonst auch gang und gäbe zu sein, soweit bekannt.sowohl webrecherche, als auch der Name des Parameters klingen jedoch bereits vielversprechend... ;-) ).

- Defragmentierung der VMDKs (werden wir morgen nacht machen, dürfte angesichts der Größe auch die ganze Nacht benötigen).

Falls jmd. Hinweise/Anmerkungen/Erfahrungen zu den o.g. Tipps hat, sind wir dafür natürlich jederzeit aufgeschlossen und vorab dankbar! :-) Ansonsten werden wir dann weiteres berichten, sobald bekannt.

Folgende Fragen habe ich noch: ist etwas - wie von m.masuhr bereits angefragt - irgendwo in der VMWare-KB oder sonst im Web über den acceleration-Mechanismus der VM bekannt. Wir haben den - rein subjektiven - Eindruck, daß diese Anwendungen, die Ressourcen ziehen in der Priorität innerhalb des Gastes bevorzugt (ein Indiz hierfür sind tlw utopische gute Benchmark-Werte für HD Tach u.ä. innerhalb des Gastes während dieser gleichzeitig für die Anwender lahm wirkt / Anwendungen nur träge und verzögert und unter hoher CPU-Last bereitstellt), was auf einem Serversystem (z.B. SQL-DB's o.ä.) ja noch klappen kann, spätestens aber beim Windows-Terminalserver gerade kontraproduktiv sein sollte...oder ist hier der Workload-Parameter der entscheidende Schlüssel hierfür und setzt dieser gerade da an?

Vielen Dank im Voraus für jeglichen Beitrag hierzu...

MfG B. Wettstein

Experte
Beiträge: 1188
Registriert: 08.11.2005, 13:08
Wohnort: bei Berlin

Beitragvon e-e-e » 27.11.2006, 19:39

Hallo,

ich habe heute schon einmal kurz gefragt, ob die Probleme direkt beim Start der VM oder erst nach einiger Zeit, z.B. ohne Anfragen, auftreten. Ich hatte ähnliche Erscheinungen, dies hing aber mit dem swap-Verhalten des Hosts und Gasts zusammen. Nach Aufrüstung des Systems und Abschaltung der Swap-Dateien und -Partitionen und der Einstellung "Fit all VM memory into reserved host RAM" war alles im grünen Bereich. (http://vmware-forum.de/viewtopic.php?t=6773&highlight=&sid=4ecbed715456a3be49f8f6fd2fd83df7)

Gruß Ronny

Member
Beiträge: 383
Registriert: 03.10.2005, 03:29

Beitragvon al!ve » 27.11.2006, 21:24

Hallo Herr Wettstein.

Auch wenn das mal ganz ab vom Thema und ein fragender Schuss ins Blaue ist:
Haben wir uns schon mal ganz grundsätzlich über die Terminalserver-Virtualisierung im DATEV-Forum unterhalten? Ich erinnere mich jedenfalls dort an einen B. Wettstein mit Interesse an der Thematik.

Mfg,
Stephan Schuler.

Member
Beiträge: 4
Registriert: 27.11.2006, 18:25

Beitragvon b.wettstein » 28.11.2006, 12:15

Hallo,

al!ve hat geschrieben:Auch wenn das mal ganz ab vom Thema und ein fragender Schuss ins Blaue ist:
Haben wir uns schon mal ganz grundsätzlich über die Terminalserver-Virtualisierung im DATEV-Forum unterhalten? Ich erinnere mich jedenfalls dort an einen B. Wettstein mit Interesse an der Thematik.


Genauso ist es! :-)

<offtopic>
Zum USB-Dongle: unter GSX wird es sicherlich problematisch sein/nicht klappen, unter dem neueren VMWare Server dagegen konnten wir den Dongle erfolgreich zu einem virutellen LiMa durchreichen, wenn man folgendes beachtet: auf dem HOST den Dongle anstecken, keinerlei Treiber installieren, Meldungen bestätigen, das der Treiber für die unbekannte Hardware nicht installiert werden soll, "Alladin USB" an die VM durchreichen, anschließend im Gast ganz normal den LiMa installieren aktivieren. Falls Sie einen Lima umziehen statt neu zu installieren (siehe DANUS) rechnen Sie bitte mit einer anschließend ungültigen Lizenzbasis, weil der LiMa hier offenbar einen Hardwarewechsel erkennt "Master-SWM wurde abgezogen" nach einem Neustart des laufenden LiMas erkennt. Das lässt sich dann aber mit dem Nukotool bzw Nukotool2 zusammen mit dem DATEV-Support klären (es wird eine PIN zum entsperren durchgegeben). Fertig ;-) Im DATEV-Umfeld möchte ich das erst aber nach Rücksprache mit unserem KVM veröffentlichen...
</offtopic>

Wie Sie sehen haben wir aber nun ganz andere Probleme, als zunächst erwartet, leider klappt es mit dem Terminalserver an sich (noch) nicht besonders.... haben Sie hier schon Erfahrungen mit einem (produktiven) virtualisierten Terminalserver (unter Volllast) gemacht?

MfG B. Wettstein

Member
Beiträge: 4
Registriert: 27.11.2006, 18:25

Beitragvon b.wettstein » 28.11.2006, 12:20

Hallo,

e-e-e hat geschrieben:ich habe heute schon einmal kurz gefragt, ob die Probleme direkt beim Start der VM oder erst nach einiger Zeit, z.B. ohne Anfragen, auftreten.

danke für den Beitrag. Das Problem besteht permanent, wird verschärft durch eine Vergrößerung der Anzahl von Usern, die auf dem TS arbeiten (z.B. 5-10 statt 1-5) und entschärft sich (natürlich ;-) ) sobald nur noch 1-2 User auf dem TS arbeiten.

Der TS läuft bereits "ohne Swapping" mit "fit to ram" auf dem Host wobei wir ggfs. nochmal die Swappingeinstellungen innerhalb des Gastes überprüfen sollten...

Gibt es hierzu evt. Richtlinien/Hinweise, wie das Swapping eines TS-Windows-Gastes (!) anzupassen wäre, damit dieser speziell unter VM besser läuft (wurde immerhin mal per "VMWare Converter" gezogen und virtualisiert, sind also nicht unbedingt die gleichen Verhältnisse wie in der physikalischen ursprünglichen Umwelt)? Oder gilt hier einfach das für Windows-(TS)-Server übliche (also ohne spezielle Rücksicht auf VMWare)?

Gruß, B. Wettstein.

Member
Beiträge: 4
Registriert: 27.11.2006, 18:25

Beitragvon b.wettstein » 28.11.2006, 14:38

Hallo,

hier mal der aktuelle Stand:

workload="Terminalserver" wurde hinterlegt, com-Port wurde entfernt.

Weiterhin haben wir testweise auch die Prozesspriorität durch die vmx-Einträge "priority." auf "high" eingestellt.

Wirkung: = 0 - gleiche Problematik wie vorher.

Kann denn niemand was zu den o.g. vmx-Parametern sagen und ob und wie die sich normalerweise auswirken sollen, und ob diese auf GSX Server, bzw. VMWare Server überhaupt was bringen?

Hat noch jmd. irgendeinen Vorschlag / irgendwas, was wie ausprobieren könnten? Vielen Dank im Voraus.

Gruß, B. Wettstein.

Benutzeravatar
UNSTERBLICH(R.I.P.)
Beiträge: 14759
Registriert: 09.08.2003, 05:41
Wohnort: sauerland
Kontaktdaten:

Beitragvon continuum » 28.11.2006, 14:40

Kann man vielleicht mal die vmx einer Problem-maschine und die configf.ini sehen - vielleicht ist da ja noch was drin was bremst ...

Ulli

Member
Beiträge: 4
Registriert: 27.11.2006, 13:47

Beitragvon m.masuhr » 28.11.2006, 15:10

Die gibts dann von mir:

config.ini:
datastore.name = "local"

datastore.localpath = "C:\Virtual Machines\"

prefvmx.useRecommendedLockedMemSize = "FALSE"
prefvmx.minVmMemPct = "100"
defaultVMPath = "E:\VMWareDB"
priority.grabbed = "high"
priority.ungrabbed = "normal"

prefvmx.allVMMemoryLimit = "6000"
mainMem.partialLazySave = "FALSE"
mainMem.partialLazyRestore = "FALSE"


.vmx:
workload = "TerminalServices"
config.version = "8"
virtualHW.version = "4"
scsi0.present = "TRUE"
memsize = "3600"
scsi0:0.present = "TRUE"
scsi0:0.fileName = "wts_ka.vmdk"
ide1:0.present = "TRUE"
ide1:0.fileName = "X:"
ide1:0.deviceType = "cdrom-raw"
floppy0.present = "TRUE"
Ethernet0.present = "TRUE"
displayName = "WTS_KA"
guestOS = "win2000serv"
priority.grabbed = "high"
priority.ungrabbed = "high"

ide1:0.autodetect = "FALSE"
workingDir = "."
snapshot.disabled = "TRUE"

scsi0:0.redo = ""
ethernet0.addressType = "generated"
uuid.location = "56 4d 2a 86 f5 72 df 98-77 81 9c 4e 70 2e 22 24"
uuid.bios = "56 4d 08 df a4 ca 97 e8-4c 3d 4a b7 d6 a1 cd ed"
usb.present = "FALSE"
ethernet0.generatedAddress = "00:0c:29:a1:cd:ed"
ethernet0.generatedAddressOffset = "0"

numvcpus = "2"
ide1:0.startConnected = "FALSE"

floppy0.startConnected = "FALSE"
floppy0.fileName = "A:"
sound.present = "FALSE"
sound.fileName = "-1"
sound.autodetect = "TRUE"
serial0.present = "FALSE"
serial0.fileName = "COM1"
autostop = "softpoweroff"

sound.virtualDev = "es1371"

scsi0:0.mode = "independent-persistent"

tools.syncTime = "FALSE"

Member
Beiträge: 69
Registriert: 15.01.2007, 16:04

Beitragvon Kran01 » 19.01.2007, 12:34

Hallo,

wir haben 2 TS unter VMWare Server zu laufen. Dabei haben wir ganz interessante Erfahrungen gemacht:

2 Prozessoren: Bei einer Maschine bringt es Leistungsteigerung, bei der anderen verschlechtert sich die Leistung. Auf den Servern laufen unterschiedliche Datenbanksysteme.

Speicher: Mehr als 1280 MB RAM verlangsamt die Maschinen, weniger als 768 MB ebenfalls.

Daher haben wir den einen TS mit 2 CPU und 1280 MB RAM und den anderen mit 1 CPU und 1280 MB RAM zu laufen. Da Leute über VPN und DSL sich einwählen, ist die Geschwindigkeit so ausreichend, dass die Maschinen schneller sind als die Datenleitung.

Je TS arbeiten ca. 10 Leute.

Anfangs haben wir es mit 2 GB RAM je TS versucht und da kam genau die hier beschriebene Erscheinung der Vollauslastung.

Member
Beiträge: 31
Registriert: 05.12.2006, 15:06

Beitragvon orga|kp » 24.01.2007, 16:49

@problem: mal gecheckt ob das netzwerk ok ist? ich habe ein ähniches problem gehabt mit einer citrix umgebung wo das default user profil zu groß war. maybe würde hier ein wenig verkleinerung der profile helfen.


Zurück zu „VMserver 1 und GSX“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste