142008
Goto Top

Server 2019: vcpus überbuchen

hallo!

wir betreiben einen etwas performanteren server mit 12 kernen, 128gb ram und einigen tb an speicherplatz in form vom nvme-platten, der uns als host für die virtuellen maschinen dient. zudem gibt es zwei etwas weniger performante hosts mit nur 6 kernen, 64gb ram mit ebenfalls einigen tb an speicherplatz, allerdings mit sas-platten. diese beiden dienen als backup-server (replizierung), falls der hautpserver ausfallen sollte. eingerichtet wurde alles von einem it-dienstleister und soweit funktioniert alles auch gut.

ich bin jetzt dabei, bei einigen virtuellen maschinen die prozessorkerne zu erhöhen. auf dem haupthost ist das alles kein problem. aktuell sind 18 kerne in nutzung und nach der umstellung wäre immer noch ein kern 'ungenutzt'. allerdings würde es dann auf dem einen backup-host zu einer cpu-überbuchung kommen, und zwar von genau 3 kernen. nach etwas querlesen in diversen (teils auch englischen) foren, stellt dies wohl (im verhältnis 4 zu 1) kein problem dar.

jetzt habe ich dazu einige fragen:

1. aktuell wäre der eine backup-host 'voll' belegt, wenn er bzw. alle virtuellen maschinen hochgefahren werden müssten. wie ist das eigentlich mit der cpu-power für den host selber? dieser benötigt ja auch etwas rechenpower und ja, der scheduler handhabt das, aber leidet darunter nicht die performance im allgemeinen?

2. vor allem, wenn die cpu's überbucht werden?

3. zu wie vielen kernen ratet ihr bei einem dc? aktuell hat dieser nur einen mit 4gb ram, was auszureichen scheint. allerdings läuft auch der druckserver darauf.


thx für die antwort(en) im voraus!

@mods: falls ich im falschen unterforum sein sollte, bitte verschieben. thx!

Content-ID: 754037836

Url: https://administrator.de/forum/server-2019-vcpus-ueberbuchen-754037836.html

Ausgedruckt am: 26.12.2024 um 16:12 Uhr

radiogugu
radiogugu 21.06.2021 um 14:57:09 Uhr
Goto Top
Hallo.

Zitat von @142008:
ich bin jetzt dabei, bei einigen virtuellen maschinen die prozessorkerne zu erhöhen. auf dem haupthost ist das alles kein problem. aktuell sind 18 kerne in nutzung und nach der umstellung wäre immer noch ein kern 'ungenutzt'. allerdings würde es dann auf dem einen backup-host zu einer cpu-überbuchung kommen, und zwar von genau 3 kernen. nach etwas querlesen in diversen (teils auch englischen) foren, stellt dies wohl (im verhältnis 4 zu 1) kein problem dar.

Gilt meiner Meinung nach wie vor.

1. aktuell wäre der eine backup-host 'voll' belegt, wenn er bzw. alle virtuellen maschinen hochgefahren werden müssten. wie ist das eigentlich mit der cpu-power für den host selber? dieser benötigt ja auch etwas rechenpower und ja, der scheduler handhabt das, aber leidet darunter nicht die performance im allgemeinen?

Es kommt nun mal schwer auf die Anforderungen an. Wie sind die CPU generell ausgelastet? Viele Datenbank-Server im Einsatz? Die Mailstore Archivierung beispielsweise ist bei uns der CPU "Meister", was die Auslastung anbelangt.

2. vor allem, wenn die cpu's überbucht werden?

Sollte bei deinen Zahlen gut hinkommen.

3. zu wie vielen kernen ratet ihr bei einem dc? aktuell hat dieser nur einen mit 4gb ram, was auszureichen scheint. allerdings läuft auch der druckserver darauf.

Zwei Kerne und 4 GB sind für einen 2019er DC absolut in Ordnung. Den Druckserver würde ich allerdings dem DC "wegnehmen".

Gruß
Marc
aqui
aqui 21.06.2021 aktualisiert um 15:17:11 Uhr
Goto Top
@mods: falls ich im falschen unterforum sein sollte, bitte verschieben. thx!
Ein sinnfreier Appell...
Als alleiniger Thread Owner kannst (aus guten Gründen) nur DU selber das machen über den allseits bekannten "Bearbeiten" Knopf.
FAQs lesen hilft wirklich !! Und...eine korrekte Rechtschreibung wie Groß- Kleinschrift macht auch die Übersichtlichkeit eines Threads besser und unterstützt so immer die hiesige Community bei einer zielführenden Hilfe. face-wink
tech-flare
tech-flare 21.06.2021 um 15:00:18 Uhr
Goto Top
Zitat von @142008:

hallo!
Hallo,

jetzt habe ich dazu einige fragen:

1. aktuell wäre der eine backup-host 'voll' belegt, wenn er bzw. alle virtuellen maschinen hochgefahren werden müssten. wie ist das eigentlich mit der cpu-power für den host selber? dieser benötigt ja auch etwas rechenpower und ja, der scheduler handhabt das, aber leidet darunter nicht die performance im allgemeinen?
Natürlich braucht der Host auch etwas Leistung.


2. vor allem, wenn die cpu's überbucht werden?
Was willst du jetzt hören? Kommt auf die Überbuchung und die CPU an. Du schreibst ja hier nicht mal die Taktfrequenz sonst erzählst nur was von Kernen. Sind das physische Kernen oder Logische Kerne (HT) ?

3. zu wie vielen kernen ratet ihr bei einem dc? aktuell hat dieser nur einen mit 4gb ram, was auszureichen scheint. allerdings läuft auch der druckserver darauf.
ein Druckserver gehört nicht auf den DC !! Sonst läuft der hier mit 2 Cores + 4 GB RAM.
C.R.S.
C.R.S. 21.06.2021 um 15:16:24 Uhr
Goto Top
Hi,

deine Schilderung der Kerne (logisch/physisch?) durchschaue ich nicht ganz.

Aber generell werden Virtualisierungshosts überbucht, das ist ja ein entscheidender Zweck von Virtualisierung. Die Vorstellung, Kerne "freizuhalten", ist auch vollkommen widersinnig, da eine CPU bereits mit jedem modernen Betriebssystem "überbucht" ist, d.h. es werden mehr Threads ausgeführt als logische Kerne vorhanden sind. Bei Virtualisierung ist lediglich neben dem OS- noch der Hypervisor-Scheduler involviert. Der vertretbare Faktor der Überbuchung hängt von den Lasten ab. Eine VM mit einer Simulationssoftware, die ihre Kerne praktisch immer auslasten wird, ist anders zu betrachten als ein DC.

Bei einem DC, generell bei jeder Windows-VM, würde ich mit 4 logischen Kernen/vCPUs als Minimum starten. Es funktionier auch mit 2. Ich sehe das oft, gerade im Cloud-Hosting, wo gespart werden soll. Es ist aber in meinen Augen ein ständiges Ärgernis, weil Updates und jeder ungeplante Schritt ewig dauern. Kontrollüberlegung: 2 vCPUs auf einer Hyper-Threading-fähigen CPU entsprechen einem physischen Kern. Da hat der Scheduler wirklich was zu tun, und es gibt heute kein Hardware-Äquivalent (Einkernprozessor) mehr für diese Konfiguration.

Grüße
Richard
142008
142008 21.06.2021 aktualisiert um 15:45:12 Uhr
Goto Top
das erste bild zeigt den haupt-host, bild 2 und 3 entsprechend backup-host #2 und #3. damit sollte die hw-frage geklärt sein.

es ist so wie ich es mir gedacht hatte, dem dc werde ich einen weiteren kern mehr gönnen (ebenso dem zweiten dc), den ram belasse ich so und den druckserver ziehe ich auf einen anderen server um.

thx!

pic_1
pic_2
pic_3
ukulele-7
ukulele-7 21.06.2021 um 15:55:22 Uhr
Goto Top
Es gibt mehrere Arten von "überbuchen":

1) Zum einen können alle Kerne aller VMs eines Hosts zusammen genommen größer sein als die Kerne der VM, das ist Sinn des ganzen, wurde so beschrieben. Das ist eigentlich gar kein Problem, wenn man es nicht übertreibt. Wenn es dann zu viel wird nimmt die Performance ab aber es ergibt sich daraus keine künstliche "Bremse".

2) Einen großen Fehler kann man machen: Einer einzelnen VM zu viele Kerne geben - zwar nicht so viele wie der Host hat aber deutlich mehr als den anderen VMs. Beispiel: Drei VMs A B C, Host hat 12 Kerne. VM A: 4 Kerne, VM B 4 Kerne, VM C 10 Kerne. In Summe kein Problem aber, der Scheduler kann hier nicht optimal planen. Er vergibt Taktzeit immer auf allen Kernen gleichzeitig. Ein "Takt" kann jetzt entweder von VM A und B gleichzeitig oder von VM C belegt werden. VM C kann aber immer nur alleine einen Taktzyklus in Anspruch nehmen. Die anderen 2 Kerne rechnen in dieser Zeit nicht etwa für VM A oder B sondern gar nicht. Damit VM A rechnen kann braucht sie 4 Kerne oder wartet. Dabei spielt die Auslastung der Kerne von VM C auch keine Rolle, selbst wenn nur ein vCore eine Aufgabe hat belegt die VM 10 pCore (und damit den ganzen Host) um ihre Aufgabe zu bewältigen - hier bremst du den Host künstlich aus.

3) Je nach Hypervisor geht es eigentlich nicht aber du kannst auch eine VM mit mehr vCores als pCores haben. Nämlich in dem Moment wo dein Haupthost ausfällt und du per HA eine VM mit mehr als 6 Kernen auf einen anderen Host migrieren willst. Klappt glaube ich gar nicht erst und läuft nicht.

Ob die pCores jetzt Hyperthreading machen oder nicht ist eigentlich egal. Natürlich sind 2 HT pCores etwas weniger leistungsfähig und von anderen Faktoren abhängig aber das wirkt sich nicht auf die vCore-Aufteilung aus.

Der Host belegt über den Scheduler auch Kerne, aber nur 1 oder 2 und das auch eher selten.
ukulele-7
ukulele-7 21.06.2021 um 16:10:35 Uhr
Goto Top
PS: Die Konsequenz aus 2) ist: Weniger ist Mehr. Wenn die VMs die Kerne nicht nutzen sollten sie auch keine zugewiesen bekommen. Und keine VM darf zu groß werden oder sie wird den anderen VMs die Ressourcen verknappen, egal was sie zu tun hat.
tomolpi
tomolpi 21.06.2021 um 16:18:07 Uhr
Goto Top
Zitat von @aqui:

@mods: falls ich im falschen unterforum sein sollte, bitte verschieben. thx!
Ein sinnfreier Appell...
Als alleiniger Thread Owner kannst (aus guten Gründen) nur DU selber das machen über den allseits bekannten "Bearbeiten" Knopf.
FAQs lesen hilft wirklich !! Und...eine korrekte Rechtschreibung wie Groß- Kleinschrift macht auch die Übersichtlichkeit eines Threads besser und unterstützt so immer die hiesige Community bei einer zielführenden Hilfe. face-wink
Doooch, als Mod darf ich das auch. Die Kategorie passt mir aber.😉
MysticFoxDE
MysticFoxDE 22.06.2021 aktualisiert um 08:56:00 Uhr
Goto Top
Moin nixwissender,

du bist gerade Mal bei einer 1:1 Belegung und machst dir jetzt schon sorgen ... süss. 🙃
Das ist so, als ob du deinen Ferrari nur zum Sonntagsspaziergang aus der Garage holen würdest.

So sieht ein Ferrari im Rennbetrieb mit min. 1:4 Überbuchung aus. 😜

taskmanager

Sieht übrigens schlimmer aus als es ist, weil dieser Server erst bei einer CPU Auslastung von ~120% voll ausgelastet ist und nicht erst bei 100%, so wie es der Taskmanager vorgaukelt.

Ja, das habt Ihr korrekt gelesen, ein zu 100% gefülltes Glas ist bei Microsoft noch lange kein volles Glas. 😉 😵

Sieht man übrigens 1A über die Leistungsüberwachung.

leistungsÜberwachung

End Fazit: Bis das Thema bei dir zu einem ernsten Problem wird, musst du schon noch einige VM's mehr aufsetzen und vor allem auch die Last auf diesen generieren. 😉

Beste Grüsse aus BaWü
Alex

P.S. Dein Ferrari kann übrigens auch dauerhaft mit einer Auslastung von +-120% durch die Gegend heizen. 😉

P.S.P.S. Übrigens, bei aktiviertem HyperThreading ist dein Server bereits schon bei etwa 60% Auslastung bei seiner Schmerzgrenze angekommen, sprich wenn die realen Kerne voll ausgelastet sind. Die restlichen 60%, stellen die Performance der HyperThreading Kerne dar und diese, kannst du auch getrost in der Pfeife rauchen, Bums steckt da nicht wirklich dahinter.
142008
142008 22.06.2021 um 09:20:35 Uhr
Goto Top
um nicht das ganze netzwerk lahmzulegen, frage ich besser vorher hier:

aktuell haben wir zwei virtuelle dc parallel laufen. bei dem sekundären dc habe ich die prozessorkerne bereits angepasst, indem ich diesen ganz kurz runtergefahren, umgestellt und wieder hochgefahren habe. das ganze hat unterm strich keine minute gedauert.

aber wie ist das mit dem primären dc? wenn ich diesen runterfahre, auch wenn es ganz kurz ist, ist doch sense bzw. es sollte zu problemen in der domäne kommen, oder?

any advice?
MysticFoxDE
MysticFoxDE 22.06.2021 um 10:32:31 Uhr
Goto Top
Moin nixwissender,

aktuell haben wir zwei virtuelle dc parallel laufen. bei dem sekundären dc habe ich die prozessorkerne bereits angepasst, indem ich diesen ganz kurz runtergefahren, umgestellt und wieder hochgefahren habe. das ganze hat unterm strich keine minute gedauert.

aber wie ist das mit dem primären dc? wenn ich diesen runterfahre, auch wenn es ganz kurz ist, ist doch sense bzw. es sollte zu problemen in der domäne kommen, oder?

any advice?

wenn du auf den Endgeräten sauber beide DC's als DNS eigetragen und oder per DHCP verteilt hast, dann kannst du normalerweise
auch einen PDC ohne Stress mal kurz durchbooten.

Beste Grüsse aus BaWü

Alex
142008
142008 22.06.2021 aktualisiert um 11:46:23 Uhr
Goto Top
der bevorzugte dns-server ist der primäre dc, aber beim alternativen dns-server ist der core-switch eingetragen. und als dhcp-server ist ebenfalls nur der primäre dc eingerichtet worden.
Th0mKa
Th0mKa 22.06.2021 um 17:52:33 Uhr
Goto Top
Zitat von @142008:
ich bin jetzt dabei, bei einigen virtuellen maschinen die prozessorkerne zu erhöhen

Warum willst du das denn machen? Irgendwelche Probleme?

/Thomas
tech-flare
tech-flare 22.06.2021 um 18:25:33 Uhr
Goto Top
Zitat von @142008:

der bevorzugte dns-server ist der primäre dc, aber beim alternativen dns-server ist der core-switch eingetragen. und als dhcp-server ist ebenfalls nur der primäre dc eingerichtet worden.

ehm....warum? Gibts denn auf dem CoreSwitch eine DNS Weiterleitungsroute zum DC?

Warum sind nicht Beide DC eingetragen? Gibts dafür Gründe?
radiogugu
radiogugu 22.06.2021 um 20:05:30 Uhr
Goto Top
Zitat von @142008:
der bevorzugte dns-server ist der primäre dc, aber beim alternativen dns-server ist der core-switch eingetragen. und als dhcp-server ist ebenfalls nur der primäre dc eingerichtet worden.

Warum?

Wozu habt ihr denn den zweiten DC überhaupt. Wenn niemand von ihm weiß, kann der auch ausgeschaltet werden.

Zwei DC sollen sich ja gegenseitig "vertreten", wenn einer mal "austritt".

Ändere flux deine DHCP und DNS Einstellungen, damit das mehr Sinn macht.

Gruß
Marc
MysticFoxDE
Lösung MysticFoxDE 23.06.2021, aktualisiert am 24.06.2021 um 06:50:41 Uhr
Goto Top
Moin nixwissender,

der bevorzugte dns-server ist der primäre dc, aber beim alternativen dns-server ist der core-switch eingetragen. und als dhcp-server ist ebenfalls nur der primäre dc eingerichtet worden.

😮 core-switch ... DNS ... 😵
Warum, wieso und weshalb?

Eigentlich ist die Sache recht simpel.
Du hast zwei DC's (DC1(172.16.0.1) & DC2(172.16.0.2)) und auf beiden sollte auch ein DNS Server installiert sein.

Auf dem ersten DC trägst du in den TCPv4 Einstellungen der Netzwerkarte als ersten DNS-Server 172.16.0.2(DC2) ein und als zweiten 127.0.0.1(DC1).

Auf dem zweiten DC trägst du in den TCPv4 Einstellungen der Netzwerkarte als ersten DNS-Server 172.16.0.1(DC1) ein und als zweiten 127.0.0.1(DC2).

Dann sollten noch die Weiterleitungen bei beiden DC's über den DNS-Server-Manager geprüft und gegebenen falls korrigiert werden.

dns_forwarder

Wenn das ausgehende Gateway (Router/UTM/FireWall & Co) DNS-Forwarding unterstützt und es dort auch eingerichtet ist, dann trägt man dieses bei den DNS-Server der DC's als Weiterleitungsziel ein. (Primärempfehlung)

Wenn das ausgehende Gateway kein DNS-Forwarding unterstützt, dann solltest du bei den DNS-Server der DC's als Weiterleitungsziel die Provider DNS Server eintragen. (Sekundärempfehlung)

Die beiden DC's verteilt man dann per DHCP als DNS Server an die Client's und die mit den festen IP's muss man halt von Hand ändern.

Und schon ist der 🐟 geputzt. 😀

Beste Grüsse aus BaWü

Alex
142008
142008 24.06.2021 aktualisiert um 13:22:23 Uhr
Goto Top
@Th0mKa:
es kam ab und an zu einigen performance-einbrüchen, aber diese scheinen jetzt weg zu sein. und solange es der host hergibt.....who cares? ;)

um alle fragen zu beantworten: ich kann es nicht beantworten, da dies von einem it-systemhaus eingerichtet wurde und diese wissen (sollten), was sie machen.

so sieht es bei den TCPv4 einstellungen der netzwerkarte bei den virtuellen dc aus und bei beiden dns-servern steht folgender eintrag:

nic_1
nic_2
dns

nachdem ich mir mal einige clients angesehen habe, werden einige ip's komplett automatisch vergeben und bei einigen erfolgt die dns-serveradressenvergabe manuell, diese will/werde ich aber alle auf automatisch umstellen.

auch ist nur ein dhcp-server eingerichtet. ich weiss, dass zwei sich beissen würden, aber es steht keiner zweiter cold parat, um im falle eines falles eingeschaltet zu werden.
MysticFoxDE
Lösung MysticFoxDE 24.06.2021 um 19:23:01 Uhr
Goto Top
Moin nixwissender,


und diese wissen (sollten), was sie machen.

😂🤣😂🤣 ... in der Theorie schon, zu der gelebten Praxis sage ich jetzt mal lieber nichts.

so sieht es bei den TCPv4 einstellungen der netzwerkarte bei den virtuellen dc aus und bei beiden dns-servern steht folgender eintrag:

nic_1
Hier als bevorzugten DNS 192.168.110.4 und als alternativen 127.0.0.1 setzen.

nic_2
Hier als bevorzugten DNS 192.168.110.3 und als alternativen 127.0.0.1 setzen.

dns
😧 aha, Googel's und Cloudflare DNS Server als Weiterleitungsziele. 😱
Bei diesem Anblick müsste eigentlich jeder gewissenhafte DSBler (Daten-Schmutz-Beauftragter 😜) sofort an die Decke gehen.
Finde heraus wie die DNS Server deines Providers lauten und trage bitte diese anstelle der der Datenkracken ein.

nachdem ich mir mal einige clients angesehen habe, werden einige ip's komplett automatisch vergeben und bei einigen erfolgt die dns-serveradressenvergabe manuell, diese will/werde ich aber alle auf automatisch umstellen.

👍👍👍 sehr gute Idee, dann musst du bei solchen Änderungen in Zukunft auch nicht immer zig Clients abrennen.

auch ist nur ein dhcp-server eingerichtet. ich weiss, dass zwei sich beissen würden, aber es steht keiner zweiter cold parat, um im falle eines falles eingeschaltet zu werden.

Zwei DHCP's beissen sich theoretisch nur dann, wenn diese praktisch nicht ganz korrekt eigerichtet worden sind. 😉

Ein DHCP Failover ist total easy einzurichten, schau dir mal die folgenden Links an.

https://www.zueschen.eu/dhcp-failover-unter-windows-server-2016/
https://newhelptech.wordpress.com/2017/06/29/step-by-step-dhcp-failover- ...

oder als Filmchen

https://www.youtube.com/watch?v=NOMk-qP46s4
https://www.youtube.com/watch?v=ijQB5tSBW5Q

Beste Grüsse aus BaWü

Alex
142008
142008 25.06.2021 um 13:15:39 Uhr
Goto Top
die einträge der entsprechenden dns-adressen bei den dc's sind soweit eingetragen und auch der dhcp-failover ist eingerichtet. war ja wirklich total easy. es funktioniert auch, da ich auf beiden dhcp-servern dasselbe habe. bzgl. der sekundärempfehlung: cloudflare soll ja schnell sein und auf den datensch(m)utz achtgeben. unser provider ist die telekom, auch haben wir zwei leitungen von denen.
aktuell bin ich am anpassen der clients und nachher, kurz vorm feierabend, wird getestet, ob alles so läuft wie gewünscht. ich werde den primären virtuellen dc kurz abschalten, auch um die vcpus der maschine zu erhöhen. beim sekundären virtuellen dc habe ich das schon getan.

@MysticFoxDE:
big thx für deine ausführliche hilfe!