Wie berechne ich mir die Anzahl der vCPU für HYPER-V aus?
Hallo,
bitte nicht schimpfen, ich habe mich nur selber gerade etwas verwirrt :D
Wie berechne ich mir aus wieviele vCPU's ich im Hyper-V vergeben kann? In unserem neuen Server möchte ich gerne den XEON Gold Prozessor 6244 haben.
1.) vCPU = Kerne * Threads? 8 Kerne * 16 Threads = 128 vCPU's? Kommt mir etwas viel vor ... kann das stimmen?
2.) Der XEON Gold 6244 hat 3,60 GHZ. läuft somit jede vergebene vCPU am Virtuellen Server mit 3,60 GHZ?
3.) Die CPU kann bis "DDR4-2933" verarbeiten. Könnte ich mir trotzdem DDR4-3200 kaufen? Taktet der Server diesen dann Automatisch auf 2933 runter?
DANKE!
lg
bitte nicht schimpfen, ich habe mich nur selber gerade etwas verwirrt :D
Wie berechne ich mir aus wieviele vCPU's ich im Hyper-V vergeben kann? In unserem neuen Server möchte ich gerne den XEON Gold Prozessor 6244 haben.
1.) vCPU = Kerne * Threads? 8 Kerne * 16 Threads = 128 vCPU's? Kommt mir etwas viel vor ... kann das stimmen?
2.) Der XEON Gold 6244 hat 3,60 GHZ. läuft somit jede vergebene vCPU am Virtuellen Server mit 3,60 GHZ?
3.) Die CPU kann bis "DDR4-2933" verarbeiten. Könnte ich mir trotzdem DDR4-3200 kaufen? Taktet der Server diesen dann Automatisch auf 2933 runter?
DANKE!
lg
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 522177
Url: https://administrator.de/contentid/522177
Ausgedruckt am: 21.11.2024 um 23:11 Uhr
21 Kommentare
Neuester Kommentar
Zitat von @samet22:
Okey ich verstehe. das bedeutet ich kann hier nur 16 vCPU's zuweißen. ist doch etwas wenig... Würde ich beide Sockets bestücken so könnte ich in Summe nur 32 vCPU's verteilen. Ich würde mindestens 40 brauchen.
Gut, das musst du natürlich für dich wissen und entscheiden.Okey ich verstehe. das bedeutet ich kann hier nur 16 vCPU's zuweißen. ist doch etwas wenig... Würde ich beide Sockets bestücken so könnte ich in Summe nur 32 vCPU's verteilen. Ich würde mindestens 40 brauchen.
Danke für deine Antwort
Gerne.Zum RAM: die Riegel werden (wenn kompatibel, siehe Serverhandbuch) heruntertakten.
Zitat von @tomolpi:
Hi,
vCPUs sind einfach alle Kerne und Threads. 8 Core CPU mit HT = 16 vCPUs.
Oder einfach das, was du im Taskmanager im CPU Diagramm siehst, sind deine vCPUs, die du an Hyper-V verteilen kannst.
Natürlich dem Host auch noch zwei lassen😉.
Hi,
vCPUs sind einfach alle Kerne und Threads. 8 Core CPU mit HT = 16 vCPUs.
Oder einfach das, was du im Taskmanager im CPU Diagramm siehst, sind deine vCPUs, die du an Hyper-V verteilen kannst.
Natürlich dem Host auch noch zwei lassen😉.
Also ich hab da irgenwo noch ne Überbuchung von 4:1 bzw 8:1 im Kopf. Sprich bei 8Core mit HT = 64 bis 128vCPU's wobei auch mehr geht. Je nach Systemauslastung.
Zitat von @samet22:
Hallo Wiesi,
was meinst du damit? kann ich mit der GOLD 6244 doch 64 vCPU's vergeben oder wie? Steht diese Überbuchung im Datenblatt?
kann mir jemand bestätigen: 1Thread = vCPU ist?
Danke!
Hallo Wiesi,
was meinst du damit? kann ich mit der GOLD 6244 doch 64 vCPU's vergeben oder wie? Steht diese Überbuchung im Datenblatt?
kann mir jemand bestätigen: 1Thread = vCPU ist?
Danke!
Das hat nicht mix der CPU ansich zu tun sonder mit dem Handling vom Hyper-V selber.
Beim Windows 2008 war glaub ich eine Begrenzung von 8:1 die gibt's so nicht mehr.
https://social.technet.microsoft.com/Forums/de-DE/6fb9a074-15b5-4f1e-a02 ...
Sprich wenn die Software 4 CPU's verlangt aber sich langweilt dann kannst du sehr gut überbuchen. Wenn die Software permanent richtig Leistung zieht, dann nicht.
hyper-v-virtual-cpus-explained
Gruß
der jenni
PS.: es ist nicht einfach die Maschinen somit vCPUs auszustatten, dass das System gut rennt.
Fang mit 8:1 an und schau wie es rennt... sonst 4:1
Gruß
der jenni
PS.: es ist nicht einfach die Maschinen somit vCPUs auszustatten, dass das System gut rennt.
Fang mit 8:1 an und schau wie es rennt... sonst 4:1
Zitat von @samet22:
Hallo Wiesi,
was meinst du damit? kann ich mit der GOLD 6244 doch 64 vCPU's vergeben oder wie? Steht diese Überbuchung im Datenblatt?
kann mir jemand bestätigen: 1Thread = vCPU ist?
Danke!
Hallo Wiesi,
was meinst du damit? kann ich mit der GOLD 6244 doch 64 vCPU's vergeben oder wie? Steht diese Überbuchung im Datenblatt?
kann mir jemand bestätigen: 1Thread = vCPU ist?
Danke!
Moin,
lies dir am Besten das hier mal durch. Das erklärt das Thema ziemlich gut.
https://www.faq-o-matic.net/2011/01/26/hyper-v-sizing-virtuelle-und-echt ...
Letztendlich kannst du so viel überbuchen, wie es eben passt. Das hängt ja auch immer vom Anspruch der jeweiligen VMs ab. Früher gab es mal ein Support-Limit von 8:1, aber das gibt es nun auch nicht mehr.
Wichtig zu erwähnen ist übrigens: So viel wie nötig, so wenig wie möglich. Es bringt also nichts, wenn du einen Server einfach 4 vCPU zuteilst, weil "man hat es ja".
Gruß
Es werden in Summe 15 Virtuelle Server auf dem Host laufen und...
und was ist, wenn der Host ausfällt???
einer davon ist ein SQL mit viele Daten wo auch "Echtzeit"-Statistiken abgerufen werden (Stark CPU und RAM lastig). allein für den SQL Server möchte ich 10 vCPU's mit 100% auslast im Hyper-V zuweißen.
ich habe schlechte Erfahrungen mit SQL auf Hyper-V gemacht...
unterdurchschnittliche Performance.
Zitat von @samet22:
Es werden in Summe 15 Virtuelle Server auf dem Host laufen und einer davon ist ein SQL mit viele Daten wo auch "Echtzeit"-Statistiken abgerufen werden (Stark CPU und RAM lastig). allein für den SQL Server möchte ich 10 vCPU's mit 100% auslast im Hyper-V zuweißen.
lg
Es werden in Summe 15 Virtuelle Server auf dem Host laufen und einer davon ist ein SQL mit viele Daten wo auch "Echtzeit"-Statistiken abgerufen werden (Stark CPU und RAM lastig). allein für den SQL Server möchte ich 10 vCPU's mit 100% auslast im Hyper-V zuweißen.
lg
Würd ich so jetzt nicht unbedingt so sagen. Kann denn der Spaß auch die Rechenleistung auf die 10 CPU's wirklich verteilen?
Heißt das dann 8vCores zu 1Core/HT-Core ?
Ich teste das gerade auf einem quad core mit ein paar Maschinenen und jeweils 4 vCores und es läuft sehr gut!
Zitat von @samet22:
Kann ich zusammenfasst sagen:
Wenn ich die Überbuchung weg lasse und bei der Vergabe einer vCPU im Hyper-V immer auf 100% auslast einstelle (UND auch so rechne). Somit ist dann 1 Thread = 1 vCPU oder?
Kann ich zusammenfasst sagen:
Wenn ich die Überbuchung weg lasse und bei der Vergabe einer vCPU im Hyper-V immer auf 100% auslast einstelle (UND auch so rechne). Somit ist dann 1 Thread = 1 vCPU oder?
Nein, ohne Überbuchung ist die Rechnung 1 Core mit HyperThreading = 1,25 Cores, ein HT Core ist ja kein vollwertiger Core. Du hast also 10 vCPUs pro Prozessor. Microsoft und auch VMware empfehlen eine max. Überbuchung von 1:2. Natürlich kannst du je nach Workload höher gehen, aber insbesondere bei SQL Server sollte man da vorsichtig sein.
/Thomas
Zitat von @samet22:
um die Sache nicht zu überziehen, da die Antworten doch nun alle so unterschiedlich waren:
Wieviele vCPU's kann ich mit dem INTEL GOLD 6244 im Hyper-V vergeben wenn ich die Einstellung treffe, dass keine Überbuchung zustande kommen soll (100% zuweißen) -> 16 vCPU's oder?
Ja.um die Sache nicht zu überziehen, da die Antworten doch nun alle so unterschiedlich waren:
Wieviele vCPU's kann ich mit dem INTEL GOLD 6244 im Hyper-V vergeben wenn ich die Einstellung treffe, dass keine Überbuchung zustande kommen soll (100% zuweißen) -> 16 vCPU's oder?
Edit: Virtualisierung Prozessorskalierung - vCPU Calculator
Nein 15 sonst hat der Hypervisor keine mehr wenn er sie exklusiv einer VM zuweist.
Die ganze Diskussion dreht sich. Das wichtigste ist weniger ist mehr, wurde bereits erwähnt. Für mich klingt 10 vCPU für eine SQL VM auf einem Hyper-V nach einer schlechten Idee vor allem wenn du offensichtlich wenig Vorwissen hast. Entweder ist der SQL wirklich so ein Biest das die Hardware vielleicht etwas knapp wird und dir außerdem Ausfallsicherheit fehlt oder du überschätzt hier maßlos den Bedarf. Am Ende wird nämlich alles gravierend langsammer und nicht schneller bei einer falschen Konfiguration.
Was ist das überhaupt für eine MSSQL Lizenz? Wie viele Kerne kann die überhaupt nutzen?
Allgemein ist Überbuchen eines physischen Kerns (in deinem Fall 8 + 8 HT Kerne) mit vCPUs am Hypervisor kein Problem (viele VMs mit jeweils wenigen Kernen). Wenn aber eine VM alle Kerne beansprucht (oder einen großen Teil) dann können andere VMs nicht gleichzeitig arbeiten. Arbeiten dann die anderen VMs kann der SQL nicht arbeiten und muss warten. Bei deiner Hardware würde ich dem SQL maximal 4 Kerne zu gestehen, grade wenn er viel unter Volllast läuft. Oder ihm eine eigene Hardware dahin stellen.
Die ganze Diskussion dreht sich. Das wichtigste ist weniger ist mehr, wurde bereits erwähnt. Für mich klingt 10 vCPU für eine SQL VM auf einem Hyper-V nach einer schlechten Idee vor allem wenn du offensichtlich wenig Vorwissen hast. Entweder ist der SQL wirklich so ein Biest das die Hardware vielleicht etwas knapp wird und dir außerdem Ausfallsicherheit fehlt oder du überschätzt hier maßlos den Bedarf. Am Ende wird nämlich alles gravierend langsammer und nicht schneller bei einer falschen Konfiguration.
Was ist das überhaupt für eine MSSQL Lizenz? Wie viele Kerne kann die überhaupt nutzen?
Allgemein ist Überbuchen eines physischen Kerns (in deinem Fall 8 + 8 HT Kerne) mit vCPUs am Hypervisor kein Problem (viele VMs mit jeweils wenigen Kernen). Wenn aber eine VM alle Kerne beansprucht (oder einen großen Teil) dann können andere VMs nicht gleichzeitig arbeiten. Arbeiten dann die anderen VMs kann der SQL nicht arbeiten und muss warten. Bei deiner Hardware würde ich dem SQL maximal 4 Kerne zu gestehen, grade wenn er viel unter Volllast läuft. Oder ihm eine eigene Hardware dahin stellen.
Zitat von @ukulele-7:
Allgemein ist Überbuchen eines physischen Kerns (in deinem Fall 8 + 8 HT Kerne) mit vCPUs am Hypervisor kein Problem (viele VMs mit jeweils wenigen Kernen). Wenn aber eine VM alle Kerne beansprucht (oder einen großen Teil) dann können andere VMs nicht gleichzeitig arbeiten. Arbeiten dann die anderen VMs kann der SQL nicht arbeiten und muss warten.
Allgemein ist Überbuchen eines physischen Kerns (in deinem Fall 8 + 8 HT Kerne) mit vCPUs am Hypervisor kein Problem (viele VMs mit jeweils wenigen Kernen). Wenn aber eine VM alle Kerne beansprucht (oder einen großen Teil) dann können andere VMs nicht gleichzeitig arbeiten. Arbeiten dann die anderen VMs kann der SQL nicht arbeiten und muss warten.
Wichtig ist hier auch zu verstehen das der Host bei 10 zugewiesenen vCPUs warten muss bis 10 Cores frei sind bevor er der VM die CPUs freigibt. Das geht naturgemäß schneller wenn er nur auf z. B. 4 Cores warten muss.
Bzgl. der Thread-Problematik, die tauchen im Taskmanager als CPU auf, sind ja aber keine vollwertigen CPUs und dienen nur zur besseren Auslastung der Pipelines. Deshalb 1,25% als Rechengröße...
/Thomas
Moin,
Gruß,
Dani
1.) vCPU = Kerne * Threads? 8 Kerne * 16 Threads = 128 vCPU's? Kommt mir etwas viel vor ... kann das stimmen?
Hyper-V Virtualization CalculatorGruß,
Dani