askando
Goto Top

Virtualisierte Terminalserver perfomance (VMWare)

Hallo,

ich habe insgesamt 3 Terminalservern mit je ca 40 usern. (2016)
Ein befreundeter Admin sagte mir letztens,.... das er aus Performance Gründen seine Terminalserver auf ca. 10 User lemitiert, weil er somit die Verteilung der virtuellen Maschinen auf die verschiedenen Hosts (Zuweisung von cores und sockets je vm pro host) besser steuern kann. Somit werden die einzelnen Sitzungen seiner Windows Server 2016 Terminalserver extrem performant.
Ich habe 4 ESX Hosts mit je 32 logischen Prozessoren. (SSD Raid)
Ein Terminalserver hat z.B. 4 cores pro Socket und 3 Sockets zugewiesen. Also 12 logische Einheiten.
D.h. nach meinem Verständnis: Dem TS auf dem Host gehören drei komplette cpu's.
Somit schlägt man keine Brücken zwischen Cores die auf unterschiedlichen CPU's liegen und man hat damit keine "lags, spikes" was auch immer face-smile

Ich arbeite seit nun 5 Jahren mit VMWare jeden Tag, aber bin genau in dieser Frage bisher noch nicht wirklich schlau geworden.
Ist das wirklich so wie oben wie beschrieben, das man aufpassen muss das man keine unglückliche Konstellation in der Verteilung hat, weil sonst "Brücken" geschlagen werden?

Einer meiner Terminalserver hat manchmal leichte Performance Probleme. Speziell in Outlook hakt das System für millisekunden, aber es ist spürbar bei der Arbeit.
Gucke ich in den Taskmanager oder aber im Leistungsdiagramm vom Vcenter langweilt sich die Kiste zu Tode. (Es gibt also weder Performance Probleme am Host noch in der VM an sich - trotzdem hakt das System)
Jetzt Frage ich mich wie ich am Besten an die Sache rangehe.

Bringt es mir etwas die Anzahl der Terminalserver zu erhöhen und somit die Anwender auf verschiedene TS verteile, weile ich somit jedem einzelnen TS besser einstellen kann? (auf welchem Datastore er liegt, welche cores er nutzt usw.)

Ich kann mir nur erklären das es zwar kein Problem gibt mit zu wenig Ressourcen, sondern mit Zugriffszeiten per se. Liegt auf einem Datastore ein Exchange + Terminalserver + Printserver kann es bei gleichzeitigen Zugriffen auf das RAID, den Speicher oder aber auf einzelne cores zu Verzögerungen in der Bereitstellung kommen.

Wie würdet ihr an die Sache rangehen?

Bin über jede gute Hilfe dankbar!

Content-ID: 368009

Url: https://administrator.de/contentid/368009

Ausgedruckt am: 22.11.2024 um 01:11 Uhr

Dr.EVIL
Dr.EVIL 14.03.2018 um 14:42:47 Uhr
Goto Top
Bei der Idee die User auf mehrer TS aufzuteilen bin ich bei Dir...
Da ich davon ausgehe, das deine Hardware keine "Bottlenecks" aufweist (es "klemmt" gerne mal beim Storage...) vermute ich das die Grafik der Server nicht durch GPUs "verstärkt" werden. Speziell beim Scrollen von Listen, wie z.B. Outlook, oder Adobe PDF Viewer, hakt es dann mal gerne.

Hast Du es schon mal bspw. mit einer NVIDIA Quadro P2000 oder P4000 versucht?
it-frosch
it-frosch 14.03.2018 aktualisiert um 15:02:45 Uhr
Goto Top
Hallo askando,

Speziell in Outlook hakt das System für millisekunden, aber es ist spürbar bei der Arbeit.
Welche Version setzt ihr ein und wo steht der Exchangeserver?

Bei uns steht der Exchange auf der anderen Seites des Teiches und damit ist unser Outlook
auch manchmal etwas "unperformant". face-wink

Wenn ansonsten alle Anwendungen performant laufen, wird dir eine Umkonfiguration nichts bringen.

Sollten alle Anwendungen lahmen ohne das du eine hoche RAM oder CPU Auslastung hast, dann könnte auch die IO Leistung des Storage
eine Schwachstelle sein. Sollte da zutreffen, dann könnte man hier eine Speichergruppe mit IO stärkeren Platten einrichten oder die
Zugriffe optimieren.

PS: wir haben so um die 18 User auf jedem Citrix Server und arbeiten dort mit Office 2013.

grüße vom it-frosch
emeriks
emeriks 14.03.2018 um 15:41:58 Uhr
Goto Top
Ist das wirklich so wie oben wie beschrieben, das man aufpassen muss das man keine unglückliche Konstellation in der Verteilung hat, weil sonst "Brücken" geschlagen werden?
Siehe hier: https://blogs.vmware.com/performance/2017/03/virtual-machine-vcpu-and-vn ...

Ein Terminalserver hat z.B. 4 cores pro Socket und 3 Sockets zugewiesen. Also 12 logische Einheiten.
Es kommt darauf an, wieviel VM auf einem Blech laufen und wie wahrscheinlich die Überbuchung der Cores eintreten kann. Wenn Du Dich dabei im Grenzbereich bewegst, dann gilt pauschal: Je weniger vCPU pro VM desto besser. Respektive der Minimalanforderung je VM.

Bringt es mir etwas die Anzahl der Terminalserver zu erhöhen
Grundsätzlich ist es Best Practice "in die Breite" zu skalieren (mehr VM) statt "in die Tiefe" (mehr CPU + RAM pro VM). Respektive der Möglichkeiten, wie z.B. Lizenzen usw.

Liegt auf einem Datastore ein Exchange + Terminalserver + Printserver kann es bei gleichzeitigen Zugriffen auf das RAID, den Speicher oder aber auf einzelne cores zu Verzögerungen in der Bereitstellung kommen.
Das ist unabhängig von dem o.g. zu betrachten. Ein Storage kann nur eine gewisse max. Menge an IOpS bearbeiten. Wenn Du auch nur eine VM hast, welche da etwas mehr Stress macht, dann leiden darunter zwangsläufig alle anderen VM, welche denselben phy. Storage benutzen.

E.
askando
askando 14.03.2018 um 15:43:45 Uhr
Goto Top
Zitat von @Dr.EVIL:

Da ich davon ausgehe, das deine Hardware keine "Bottlenecks" aufweist (es "klemmt" gerne mal beim Storage...) vermute ich das die Grafik der Server nicht durch GPUs "verstärkt" werden. Speziell beim Scrollen von Listen, wie z.B. Outlook, oder Adobe PDF Viewer, hakt es dann mal gerne.

Hast Du es schon mal bspw. mit einer NVIDIA Quadro P2000 oder P4000 versucht?

Nein haben wir noch nicht. Das GPU Rendering erfolgt bei uns ausschließlich emuliert über die cpu.
Ich habe schon mal von solchen Grafikkarten gehört allerdings sollten die rund 5000€ kosten und die performance von Terminalservern nahezu identisch mit CAD fähigen Desktops machen. (Diese waren aber rein für Hyper-V bzw. VMWare Hosts konzipiert und hatten auch keinen Video Ausgang mehr)

Wenn ich das auf dem ersten Blick richtig verstehe ist die p2000/p4000 Reihe eine clusterfähige Grafikartenreihe (mit multi HDMI ports) die für den virtualisierten hosts das GPU Rendering übernehmen kann?
askando
askando 14.03.2018 aktualisiert um 16:00:02 Uhr
Goto Top
Zitat von @it-frosch:

Hallo askando,

Welche Version setzt ihr ein und wo steht der Exchangeserver?

Die beiden Exchange Server (2013) stehen bei mir am Hauptstandort. Ebenso wie die Terminalserver.
Die User arbeiten auf dem Terminalserver wegen der Wawi, haben aber auch Outlook lokal (also sowohl als auch)
Lokal läuft es flüssig ohne Probleme - ob im cache oder im online modus.
Ich habe auch mehrere Niederlassungen per IPsec VPN angebunden und auch dort läuft Outlook lokal performant und am TS manchmal langsam. Also ziemlich gleiches Verhalten. Demnach kann es nicht an der Strecke liegen. (die Leitungen sind synchrone co-co Leitungen (50 zu 10))

Wenn ansonsten alle Anwendungen performant laufen, wird dir eine Umkonfiguration nichts bringen.

Sollten alle Anwendungen lahmen ohne das du eine hoche RAM oder CPU Auslastung hast, dann könnte auch die IO Leistung des Storage
eine Schwachstelle sein. Sollte da zutreffen, dann könnte man hier eine Speichergruppe mit IO stärkeren Platten einrichten oder die
Zugriffe optimieren.

Ich musste aus Kostengründen auf ein Storage verzichten. Jeder Host verfügt über ein bzw. mehrere interne ssd raids.
Die TS liegen auf einem Datastore der auf einem Raid 5 liegt. Aber eigentlich sollte bei einem SSD Raid (intern) kein IO Problem auftreten face-smile
Dr.EVIL
Dr.EVIL 15.03.2018 aktualisiert um 09:03:08 Uhr
Goto Top
Zitat von @askando:

Nein haben wir noch nicht. Das GPU Rendering erfolgt bei uns ausschließlich emuliert über die cpu.
Ich habe schon mal von solchen Grafikkarten gehört allerdings sollten die rund 5000€ kosten und die performance von Terminalservern nahezu identisch mit CAD fähigen Desktops machen. (Diese waren aber rein für Hyper-V bzw. VMWare Hosts konzipiert und hatten auch keinen Video Ausgang mehr)

Es gibt "Grid fähige" Grafikkarten, z.B. die NVIDIA Tesla Serie, welche für VDI Umgebungen gedacht sind und in jeder VM eine eigene virtuelle Grafikkarte emulieren und es gibt "RemoteFX" Grafikkarten, welche die GPU Leistung des Hypervisors erhöhen.
Erstere sind vorallem bei virtuellen CAD Workstations gefragt, letztere eignen sich eher für Remotedesktops mit "normalen" Office Workloads an Terminalservern...
(Ausserdem kann man damit prima Bitcoins Mining betreiben... face-wink)

Wenn ich das auf dem ersten Blick richtig verstehe ist die p2000/p4000 Reihe eine clusterfähige Grafikartenreihe (mit multi HDMI ports) die für den virtualisierten hosts das GPU Rendering übernehmen kann?

Korrekt!
Entscheident ist hier der "Pascal" Chipsatz.
Aber >5.000€ Kosten diese nicht.
Die P2000 liegt zwischen 500 und 800 €.
Man sollte aber darauf achten, das der Server diese Karten auch supportet: Ohne speziell angepasste Lüfter und redundante >750Watt Netzteile läuft da wenig...
ukulele-7
ukulele-7 19.03.2018 um 12:01:24 Uhr
Goto Top
Mit den VMware Themen (siehe emeriks) solltest du dich auf jedenfall intensiv beschäftigen, fast immer sind weniger Kerne mehr. Dabei ist aber natürlich auch relevant was neben dem Terminal vServer auf dem ESXi noch läuft oder ob das die einzige VM auf dem Host ist.

Als ich mich mit dem Thema befasst habe hat mir von DATEV jemand gesagt das pro ASP Host (Terminal Server von der DATEV) nur 3-5 User auf einem Host laufen, das fand ich schon extrem. Was genau der (technische) Grund dafür ist konnte mir keiner erklären. Wir haben hier durchaus 15 User pro RD Session Host und das mit "nur" 8 vCPUs. Ich empfehle dir einen Blick auf esxtop um Performance Probleme im Betrieb zu beobachten.
Dr.EVIL
Dr.EVIL 19.03.2018 um 12:40:05 Uhr
Goto Top
Speziell bei "Datev" sollte man aber hinzu fügen, das deren Hardwareanforderungen schon als "extrem" zu betrachten sind...
Hier wird offensichtlich die mangelhafte Optimierung der Software (insbesondere der SQL Datenbank) durch Investitionen der Kunden in die Hardware kompensiert.
ukulele-7
ukulele-7 19.03.2018 um 15:40:18 Uhr
Goto Top
Nun der SQL ist ja von MS und jetzt auch nicht mehr sonderlich stark angepasst, der rennt schon. Die Leistungsanforderung der Client Software an die Hardware sind schon nicht ohne, das ist aber immer häufiger so, leider nicht nur bei DATEV.