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!

Ressourcenzuteilung

Moderatoren: Dayworker, irix

Member
Beiträge: 2
Registriert: 03.09.2013, 14:40

Ressourcenzuteilung

Beitragvon xploit » 05.09.2013, 10:09

Liebe VMware-Forum.de Gemeinde

Ich arbeite seit kurzem mit VMware und würde gerne ein paar Fragen bezüglich Ressourcenzuteilung / Ressourcenverwaltung klären. (Ich bin in ein Unternehmen gekommen und muss nun das ganze managen, hab aber nicht wirklich viel Ahnung davon....das einzige was ich weiss: es ist bestimmt nicht optimal momentan) [Wir sind rund 14 Leute / Arbeitsplätze]

Vorneweg die Angaben zu meinem Host (ESXi 5.1):
CPU: 8 x 2.26 GHz Xeon E5520
Processor Sockets: 2
Cores per Socket: 4
Logical Processors: 16
HT: Active

RAM: 48GB (Es zeigt zwar aus irgend einem Grund 49142.14 MB an im vCenter.. auch bei den meisten VM's wird ein wenig mehr RAM angezeigt als eig. zugewiesen ist also z.B. 4096 zugewiesen; consumed RAM: 4157)

Darauf laufen VM's:
5x Windows Server 2008 R2
1x Linux CentOS oder so.. (Symantec Messaging Gateway)

Zweck der Server:_________________vCPU's:__________________RAM:____________Limit:___________Reservierung:__Anteile:
1x AD, DNS, DHCP__________________ 1______________________ _ 4GB_____________unlimited________keine_________normal
1x SQL Server_____________________ 6_______________________18GB_____________unlimited________keine_________normal
1x Exchange_______________________1________________________2GB_____________unlimited________keine_________normal
1x BlackBerry ES___________________2 (das ist ja wohl schlecht)___ 8GB_____________unlimited________keine_________normal
1x Fileserver_______________________1 _______________________ 4GB_____________unlimited________keine_________normal
1x Symantec Messaging Gateway______2 (wurde so empfohlen)_____ 4GB_____________unlimited________keine_________normal
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
____________________________Total: 12 / 16___________________40GB / 48GB

Nun die Frage: Hier die aktuelle belastungen der Server Bild

(Q0): Ganz allgemein: Wie würdet ihr die Aufteilung machen? Wer hat zu viel wer hat zu wenig? -> Falls jemand Lust hat darf er gerne die Zuteilung kopieren und nach seinem Ermessen anpassen...
(Q0.1): Wie würdet ihr das mit Reservierung, Limits und "Anteile" (Low, Normal, High) machen? Soll ich das verwenden? Und wenn ja bei welchen Servern was einstellen?


Verständniss Fragen
(Q1): Können nicht zugewiesene Ressourcen (z.B. die 8GB RAM und die 4 vCPU's) auf ALLE VM's verteilt werden? (oder gibt es Limitierungen wie z.B. übrige Ress. von Socket 1 können nur VM's zugewiesen werden die auch auf Socket 1 laufen?)
(Q1.1): Falls die übrigen Ressourcen (ich glaube das läft ja dann über die anteilsmässige Zuteilung) sowieso auf alle andern verteilt werden dann lohnt es sich ja eigentlich nur mehr RAM oder CPU zu geben, wenn ich das Limit höher setzten will als z.B. eine CPU mir geben kann...
(Q1.2): Bei mir auf dem Host steht "Memory usage" 41GB / 48GB wobei der SQL Server aber eigentlich noch mehr brauchen könnte! -> Wenn ich ihm mehr gebe dann belegt er auch mehr.. Wieso also gibt vmWare dem SQL jetzt nicht einfach die übrigen 8 GB?

(Q2): Kann ich mehr vCPU's/RAM zuweisen als es gibt? -> Ich denke nicht, jedoch frage ich mich dann wieso es dann die Ress. Reservierung gibt!? (Denn ich muss ja nichts reservieren, wenn es sowieso für alle genug gibt?)

(Q3): Bei der Zuweisung von CPU's hat man die Möglichkeit "virtuelle Sockets" und Cores zuzuweisen. (1 vSocket und 1 Core pro socket = 1vCPU) Was ist der unterschied zwischen:
- 1vSocket 2cores (=2vCPU's)
- 2vSockets 1core (=2vCPU's)
(Q3.1): Ist ein virtueller Socket = Socket (also hab ich zwei davon) ODER ist ein vSocket = Core (also hab ich 2x4 = 8) ? (Ich kann bei beiden 16 auswählen!!!!)



( Ich hab mir Mühe gegeben die richtigen Fragen zu stellen um meine Unklarheiten auszuräumen. Vieles kann halt aber erst geklärt werden durch Q-A-Q-A-Q...)

Ganz herzlichen Dank für jeden der sich 'kurz' Zeit nimmt!

Beste Grüsse Xploit

King of the Hill
Beiträge: 13058
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Re: Ressourcenzuteilung

Beitragvon irix » 05.09.2013, 11:10

xploit hat geschrieben:..
RAM: 48GB (Es zeigt zwar aus irgend einem Grund 49142.14 MB an im vCenter.. auch bei den meisten VM's wird ein wenig mehr RAM angezeigt als eig. zugewiesen ist also z.B. 4096 zugewiesen; consumed RAM: 4157)


Neben dem konfigurierten Arbeitsspeicher hat jede VM einen Overhead, welcher nach der Menge des Speichers, Anzahl an vCPUs und 32/64Bit abhaengt. Wenn das OS also alles nimmt bzw. zugewiesen bekommen hat dann kommt >100% heraus weil der Overhead Ontop kommt.


Nun die Frage: Hier die aktuelle belastungen der Server Bild


Mit Rechtsklick auf die Spaltenzeile kannst du zusaeztliche Spalten einblenden. Hier waere CPU und Memory interessant gewesen. Haette die die Liste von oben erspaert.



(Q0): Ganz allgemein: Wie würdet ihr die Aufteilung machen? Wer hat zu viel wer hat zu wenig? -> Falls jemand Lust hat darf er gerne die Zuteilung kopieren und nach seinem Ermessen anpassen...
(Q0.1): Wie würdet ihr das mit Reservierung, Limits und "Anteile" (Low, Normal, High) machen? Soll ich das verwenden? Und wenn ja bei welchen Servern was einstellen?


Wie kennen die Anforderungen nicht und sehen deine historischen Graphen nicht. Nein mach bitte in der kleinen Umgebung keine Reservierung und vergebe auch keine Shares. Reservierungen machen Sinn wenn die Anforderungen deutlich den vorhanden Resourcen uebersteigen und man dann Prioritaeten vergeben muss bzw. SLAs erfuellen muss. Des weiteren bedingen einige VMware vSphere Features 100% Reservierungen.



Verständniss Fragen
(Q1): Können nicht zugewiesene Ressourcen (z.B. die 8GB RAM und die 4 vCPU's) auf ALLE VM's verteilt werden? (oder gibt es Limitierungen wie z.B. übrige Ress. von Socket 1 können nur VM's zugewiesen werden die auch auf Socket 1 laufen?)


So funktioniert das nicht. Es ist weniger ein VMware Problem als das du dem OS nicht einfach sagen kannst so da hast du nun 3 CPUs und 14.5 GB RAM mehr. VMware kann das und somit gibts auch die Option um im lfd. Betrieb die Resourcen zu erhoehen. Bedingt aber auch ein OS welches das kann. Eine Reduzierung ist IIRC nicht moeglich.

Das was VMware bei dir schon macht ist nicht benoetigte Resourcen wo anders einzusetzen weil du ja schon eine Overprovisioning hast. (Siehe vCPUs). Dein Host hat 8 und du hast 13 vergeben.

(Q1.1): Falls die übrigen Ressourcen (ich glaube das läft ja dann über die anteilsmässige Zuteilung) sowieso auf alle andern verteilt werden dann lohnt es sich ja eigentlich nur mehr RAM oder CPU zu geben, wenn ich das Limit höher setzten will als z.B. eine CPU mir geben kann...


Nein, eine VM bekommt nur dann Rechenzeit wenn der Host fuer alle vCPUs, welche vom OS beschaeftigt werden, auch freie Cores findet. Findet er keine so leidet die Performance spuerbar. Belegt das GuestOS aber nicht alle vCPUs mit Last so erkennt das der Hypervisor. Aber im Gegensatz zu Hyper-V wo das CPU Scheduling eh ganz anders ist, weil das OS nicht das es in einer VM laeuft und traegt hier nicht aktiv bei Resourcen zusparen.

(Q1.2): Bei mir auf dem Host steht "Memory usage" 41GB / 48GB wobei der SQL Server aber eigentlich noch mehr brauchen könnte! -> Wenn ich ihm mehr gebe dann belegt er auch mehr.. Wieso also gibt vmWare dem SQL jetzt nicht einfach die übrigen 8 GB?


VMware kann dir nicht sagen was eine Anwendung braucht und was sinnvoll ist. Das ist deine Arbeit als Admin/Anwender. Wenn dem so waere wir du es dir Wuenscht und vorstellst.. dann kommt Anwender X mit einem Script 4 Zeiler welcher in einer Scriptschleife ausgefuehrt einfach mal Speicher allokiert und das OS gibt es ihm. Was soll der Host untendrunter nun machen? Wenn du ein Limit gesetzt hast ist er fein heraus nur wer soll sagen ob das Script nun Sinnvoll war oder nicht.


(Q2): Kann ich mehr vCPU's/RAM zuweisen als es gibt? -> Ich denke nicht, jedoch frage ich mich dann wieso es dann die Ress. Reservierung gibt!? (Denn ich muss ja nichts reservieren, wenn es sowieso für alle genug gibt?)


Ja, das machst du doch schon. Aber es bezieht sich auf die Gesamtsumme der VMs und nicht einer einzelnen. Die einzelne VM kann nur das Konfiguriert bekommen was der Host an max. Resourcen aufbringen kann und sofern die vSphere Lizenzstufe stimmt.

(Q3): Bei der Zuweisung von CPU's hat man die Möglichkeit "virtuelle Sockets" und Cores zuzuweisen. (1 vSocket und 1 Core pro socket = 1vCPU) Was ist der unterschied zwischen:
- 1vSocket 2cores (=2vCPU's)
- 2vSockets 1core (=2vCPU's)


Es gibt keinen Unterschied. Die Moeglichkeit wurde eingefuehrt das es Software gibt welche pro CPU lizenziert wird. Des weiteren gibts Microsoft Desktop OS welche generell aus 2 CPUs begrenzt sind.

(Q3.1): Ist ein virtueller Socket = Socket (also hab ich zwei davon) ODER ist ein vSocket = Core (also hab ich 2x4 = 8) ? (Ich kann bei beiden 16 auswählen!!!!)


Du hast 2x Quad Core was in Summe 8 gibt. Da Hypertreading aktiv ist sieht der Hypervisor in Summe dann 16 logische CPUs. Das HT zu aktivieren ist auch Sinnvoll unter VMware fuer die, welche eine hohe Konsolidierungsrate erreichen wollen. Aber die zusaetzichen 8 CPUs geben ja nicht 100% an Leistung sondern nur bis zu 20% und das auch nur wenn man einen deutlich groesseren Bereich anguckt.

Regel: So wenig wie moeglich und soviel wie noetig.

Gebe jede VM nur 1 vCPU und gucke den CPU Graphen fuer deinen SQL Server an und erhoehe auf 2 oder 4 wenn notwendig. Mehr als 4 zugeben ist unschoen da deine NUMA Nodegroesse 4 ist. Deinem Exchange gebe mal 4GB und nicht nur 2.

Die CPU Ready und CO-STOP Werte geben in einer VMware Umgebung an wie es um die CPU Leistung bestellt ist und nicht die Gesamtsumme an MHZ da in der Uebersicht.

Wenn ihr der Meinung seit das der SQL zu Langsam ist und das Speicher die Loesung ist dann erhoeht die Zuteilung. Dran denken das OS und Anwendungs Lizensierung da Schranken einbauen.

Gruss
Joerg

Guru
Beiträge: 2761
Registriert: 23.02.2012, 12:26

Re: Ressourcenzuteilung

Beitragvon ~thc » 05.09.2013, 20:49

irix hat geschrieben:Deinem Exchange gebe mal 4GB und nicht nur 2

Da stimmt was nicht in der Tabelle von xploit: Der Exchange könnte ja sonst nicht 7243 MB Host-Mem belegen, oder?

King of the Hill
Beiträge: 13058
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 05.09.2013, 21:19

Yupp.
Das waere nicht passiert wenn man die Spalten eingeblendet haette :)

Gruss
Joerg

Member
Beiträge: 2
Registriert: 03.09.2013, 14:40

Beitragvon xploit » 06.09.2013, 17:37

Hey Leute

Herzlichen Dank erstmal an Jürg für deine ausführliche Antwort! Ich bin nächste Woche in den Ferien und hab keine Zeit mehr da was schlaues reinzuschreiben melde mich nochmals wenn ich zurück bin.

Und jap Exchange hat 8GB, mein Fehler.. und danke für den Hinweis mit den Spalten! wobei ich die Tabelle bewusst so geschrieben hab, weil ich den Leuten die Möglichkeit geben wollte das ganze zu kopieren und nach Ihren Vorrstellungen anzupassen... anyway.. schönes WE!

Gruss Xploit


Zurück zu „vSphere 5 / ESXi 5 und 5.1“

Wer ist online?

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