[SOLVED] Frage zur Nutzung von CPU-Units inkl. Resourcenzuteilung

fireon

Distinguished Member
Oct 25, 2010
4,627
558
183
Austria/Graz
deepdoc.at
Hallo Leute,

Nutzen hier PVE4.4 und PVE5.1

wir nutzen hier bei uns seit kurzem nicht mehr CPU-Hotplug sondern die Resourcenzuteilung. Ist ja wesentlich besser :)

Wenn ich z.B. 8 Cores habe. Diese teile ich allen VM's zu. Mit der Resourcenzuteilung kann ich dann bequem während dem Betrieb die Leistung rauf und runter drehen. Gut.

Trifft folgende Aussage zu?
Nun gibt es ja die CPUunits. Diese haben 1024. Host und VM immer gleich (Default). Jetzt könnte man es ja auch so drehen das man die Resourcenzuteilung nicht nutzt und nur nach Units mit allen Cores geht. Also alle VM's wieder alle Cores und volle Power. Nun die Units aller VM's default auf 1000. Somit hätte ich 24 weitere Abstufungen. Also hätte ich z.B. 10 VM's, gebe ich 2 davon, die essentiell sind 1001 Units. Somit wären die in der Rechenleistung mit der Priorität vorne.

Würde also der Host mit allen VM's und allen Cores auf 100% Last fahren, hätten die beiden VM's mit 1001 die Nase vorne. Könnten aber unmöglich den Host abschießen weil dieser ja immer 1024 Units hat. Die anderen VM's mit nur 1000 Units können wiederum die 2 Priorisierten nicht beeinflussen.

Habe ich das so richtig verstanden?
 
die cpuunits verhalten sich aber relativ zueinander:
eine vm mit cpuunits 2048 bekommt doppelt soviele ressourcen wie eine mit 1024 (volle auslastung vorrausgesetzt)
 
Versteh ich jetzt nicht ganz. Die Units sind ja Prioritäten. Default ist ja 1024. ... hmm du relativ zum Host. Da dieser ja 1024 hat? Da wäre dann ja 2048 blöd. Könnte man den Host bei Vollast abschießen oder?
 
önnte man den Host bei Vollast abschießen oder?
das versteh ich jetzt nicht ganz ;)

cpu units sind relative gewichte beim scheduling

solange resources zur verfügung stehen ist alles ganz normal,
sobald es einen engpass gibt, gewichtet der cpu scheduler nach den cpuunits (bzw cpu shares heißen die im kernel) d.h.
eine vm mit cpuunits 2048 bekommt doppelt soviel cpu zeit wie eine vm mit 1024 bzw ein prozess mit 1024

siehe auch https://www.kernel.org/doc/Documentation/scheduler/sched-design-CFS.txt
 
Aja ok danke. Ist mir jetzt klar. Muss man sich eben gut einteilen.