{"id":35292,"date":"2019-10-31T22:03:28","date_gmt":"2019-10-31T19:03:28","guid":{"rendered":"https:\/\/prohoster.info\/blog\/analiz-proizvoditelnosti-vm-v-vmware-vsphere-chast-2-memory\/"},"modified":"2019-10-31T22:03:28","modified_gmt":"2019-10-31T19:03:28","slug":"analiz-proizvoditelnosti-vm-v-vmware-vsphere-chast-2-memory","status":"publish","type":"post","link":"https:\/\/prohoster.info\/nl\/blog\/administrirovanie\/analiz-proizvoditelnosti-vm-v-vmware-vsphere-chast-2-memory","title":{"rendered":"Prestatieanalyse van VM's in VMware vSphere. Deel 2: Geheugen","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/be3cfe4d8ff6491b5e32a247b996ded3.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/dataline\/blog\/452884\/\">Deel 1. Over CPU<\/a><\/noindex><\/p>\n<p>In dit artikel bespreken we de prestatiestatistieken van het RAM-geheugen in vSphere.<br \/>\nBij RAM lijkt alles eenduidiger te zijn dan bij de CPU: als er prestatieproblemen op de VM optreden, zijn ze moeilijk te missen. Maar als ze optreden, is het veel moeilijker om ze op te lossen. Maar laten we alles op een rijtje zetten. <noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Een beetje theorie<\/h3>\n<p>\nHet RAM-geheugen van virtuele machines wordt gehaald uit het geheugen van de servers waarop de VMs draaien. Dat is vrij voor de hand liggend :). Als het servergeheugen niet voldoende is voor iedereen die dat wil, begint ESXi optimalisatietechnieken voor het geheugengebruik toe te passen (memory reclamation techniques). Anders zouden de besturingssystemen van de VMs met foutmeldingen over geheugenfouten crashen. <\/p>\n<p>Welke technieken ESXi toepast, hangt af van de belasting van het RAM-geheugen:<\/p>\n<p><b>Geheugenstatus<\/b><\/p>\n<p><b>Grens<\/b><\/p>\n<p><b>Acties<\/b><\/p>\n<p>High<\/p>\n<p>400% van minFree<\/p>\n<p>Bij het bereiken van de bovengrens worden grote geheugenpagina's opgesplitst in kleine (TPS werkt in de standaardmodus).<\/p>\n<p>Wis<\/p>\n<p>100% van minFree<\/p>\n<p>Grote geheugenpagina's worden opgesplitst in kleine, TPS werkt geforceerd.<\/p>\n<p>Zacht<\/p>\n<p>64% van minFree<\/p>\n<p>TPS + Balloon<\/p>\n<p>Hard<\/p>\n<p>32% van minFree<\/p>\n<p>TPS + Compress + Swap<\/p>\n<p>Laag<\/p>\n<p>16% van minFree<\/p>\n<p>Compress + Swap + Block<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"http:\/\/www.yellow-bricks.com\/2015\/03\/02\/what-happens-at-which-vsphere-memory-state\/\">Bron<\/a><\/noindex> <\/p>\n<p>minFree is het RAM-geheugen dat nodig is voor de werking van de hypervisor. <\/p>\n<p>Tot en met ESXi 4.1 was minFree standaard vaststaand - 6% van de hoeveelheid RAM-geheugen van de server (het percentage kon worden gewijzigd via de optie Mem.MinFreePct in ESXi). In latere versies werd minFree vanwege de groei van het geheugengebruik op servers berekend op basis van de hoeveelheid hostgeheugen, en niet meer als een vast percentage. <\/p>\n<p>De standaardwaarde voor minFree wordt als volgt berekend:<\/p>\n<p><b>Percentage geheugen gereserveerd voor minFree<\/b><\/p>\n<p><b>Geheugenbereik<\/b><\/p>\n<p>6%<\/p>\n<p>0-4 GB<\/p>\n<p>4%<\/p>\n<p>4-12 GB<\/p>\n<p>2%<\/p>\n<p>12-28 GB<\/p>\n<p>1%<\/p>\n<p>Overgebleven geheugen<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"http:\/\/www.yellow-bricks.com\/2013\/06\/14\/how-does-mem-minfreepct-work-with-vsphere-5-0-and-up\/\">Bron<\/a><\/noindex><\/p>\n<p>Bijvoorbeeld, voor een server met 128 GB RAM zou de waarde MinFree als volgt zijn:<br \/>\nMinFree = 245,76 + 327,68 + 327,68 + 1024 = 1925,12 MB = 1,88 GB <br \/>\nDe werkelijke waarde kan enkele honderden MB verschillen, afhankelijk van de server en het RAM-geheugen.<\/p>\n<p><b>Percentage geheugen gereserveerd voor minFree<\/b><\/p>\n<p><b>Geheugenbereik<\/b><\/p>\n<p><b>Waarde voor 128 GB<\/b><\/p>\n<p>6%<\/p>\n<p>0-4 GB<\/p>\n<p>245,76 MB<\/p>\n<p>4%<\/p>\n<p>4-12 GB<\/p>\n<p>327,68 MB<\/p>\n<p>2%<\/p>\n<p>12-28 GB<\/p>\n<p>327,68 MB<\/p>\n<p>1%<\/p>\n<p>Overgebleven geheugen (100 GB)<\/p>\n<p>1024 MB<\/p>\n<p>\nVoor productieve omgevingen kan alleen de staat High normaal worden beschouwd. Voor test- en ontwikkelomgevingen zijn de staten Clear\/Soft acceptabel. Als er minder dan 64% MinFree RAM op de host overblijft, zullen de virtuele machines die daarop draaien zeker prestatieproblemen ervaren.<\/p>\n<p>In elke staat worden specifieke technieken voor geheugenrecuperatie toegepast, beginnend met TPS, dat praktisch geen invloed heeft op de prestaties van de virtuele machines, tot Swapping. Ik zal ze uitgebreider bespreken. <\/p>\n<p><b>Transparent Page Sharing (TPS).<\/b> TPS is, eenvoudig gezegd, deduplicatie van de geheugenpagina's van virtuele machines op de server.<\/p>\n<p>ESXi zoekt naar gelijke geheugenpagina's van virtuele machines, rekent en vergelijkt de hash-waarde van de pagina's, en verwijdert dubbele pagina's, waarbij deze worden vervangen door verwijzingen naar dezelfde pagina in het fysieke geheugen van de server. Dit resulteert in een vermindering van het fysieke geheugengebruik en er kan een zekere overboeking van geheugen worden bereikt met praktisch geen prestatieverlies.<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/c36972169fea245fd1298b03ebf471d2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.vladan.fr\/vmware-transparent-page-sharing-tps-explained\/\">Bron<\/a><\/noindex><\/p>\n<p>Dit mechanisme werkt alleen voor geheugenpagina's van 4 Kbyte (kleine pagina's). De hypervisor probeert grote pagina's van 2 Mbyte (grote pagina's) zelfs niet te dedupliceren: de kans om gelijke pagina's van deze grootte te vinden is niet groot.<\/p>\n<p>Standaard wijst ESXi geheugen toe aan grote pagina's. Het splitsen van grote pagina's in kleine pagina's begint wanneer de High-status wordt bereikt en gebeurt gedwongen wanneer de Clear-status wordt bereikt (zie de tabel van hypervisorstatussen).<\/p>\n<p>Als u echter wilt dat TPS begint te werken zonder te wachten tot het geheugen van de host vol is, moet u in de geavanceerde opties van ESXi de waarde instellen op <i>\u201cMem.AllocGuestLargePage\u201d<\/i> op 0 (standaard 1). Dan wordt de toewijzing van grote geheugenpagina's voor de virtuele machines uitgeschakeld.<\/p>\n<p>Sinds december 2014 is TPS tussen virtuele machines standaard uitgeschakeld in alle ESXi-releases, omdat er een kwetsbaarheid is ontdekt die theoretisch de toegang tot het geheugen van een andere virtuele machine vanuit \u00e9\u00e9n virtuele machine mogelijk maakte. Details hier. Ik heb geen informatie over de praktische implementatie van de exploitatie van de TPS-kwetsbaarheid gezien.<\/p>\n<p>Het beleid voor TPS wordt gecontroleerd via de geavanceerde optie <i>\u201cMem.ShareForceSalting\u201d<\/i> op ESXi:<br \/>\n0 \u2014 Inter-VM TPS. TPS werkt voor pagina's van verschillende virtuele machines;<br \/>\n1 \u2013 TPS voor virtuele machines met dezelfde waarde voor \u201csched.mem.pshare.salt\u201d in VMX;<br \/>\n2 (standaard) \u2013 Intra-VM TPS. TPS werkt voor pagina's binnen dezelfde virtuele machine.<\/p>\n<p>Het heeft beslist zin om grote pagina's uit te schakelen en Inter-VM TPS in te schakelen op testomgevingen. Dit kan ook worden gebruikt voor omgevingen met een groot aantal soortgelijke virtuele machines. Bijvoorbeeld, op VDI-omgevingen kan de besparing van fysieke geheugen wel tientallen procenten bedragen. <\/p>\n<p><b>Geheugen Ballooning.<\/b> Ballooning is al niet meer zo onschuldige en transparante techniek voor het besturingssysteem van de virtuele machine als TPS. Maar met een goede toepassing is het mogelijk om met Ballooning te werken en zelfs productief te zijn.<\/p>\n<p>Samen met de VMware Tools wordt er een speciale driver op de virtuele machine ge\u00efnstalleerd, genaamd de Balloon Driver (ook wel vmmemctl). Wanneer de hypervisor niet genoeg fysiek geheugen heeft en in een Soft-toestand komt, vraagt ESXi de virtuele machine om ongebruikt RAM via deze Balloon Driver terug te geven. De driver werkt op het niveau van het besturingssysteem en vraagt vrij geheugen aan het besturingssysteem. De hypervisor ziet welke pagina's van fysiek geheugen de Balloon Driver heeft ingenomen, neemt geheugen van de virtuele machine en retourneert het aan de host. Er ontstaan geen problemen met het besturingssysteem, omdat op het niveau van het besturingssysteem het geheugen door de Balloon Driver wordt ingenomen. Standaard kan de Balloon Driver tot 65% van het geheugen van de virtuele machine terugnemen.<\/p>\n<p>Als VMware Tools niet op de virtuele machine zijn ge\u00efnstalleerd of Ballooning is uitgeschakeld (niet aanbevolen, maar het is mogelijk), <noindex><a rel=\"nofollow\" href=\"https:\/\/kb.vmware.com\/s\/article\/1002586\">KB<\/a><\/noindex>:), gaat de hypervisor meteen over naar strengere technieken voor geheugenafname. Conclusie: zorg ervoor dat VMware Tools op de virtuele machine zijn ge\u00efnstalleerd.<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/884df6a7f5610d9bb372a7c34558f280.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>De werking van de Balloon Driver kan vanuit het besturingssysteem worden gecontroleerd via VMware Tools.<\/i>.<\/p>\n<p><b>Geheugencompressie.<\/b> Deze techniek wordt toegepast wanneer ESXi de Hard-toestand bereikt. Zoals de naam al aangeeft, probeert ESXi 4 KB-pagina's van RAM te comprimeren tot 2 KB en zo een beetje ruimte in het fysieke geheugen van de server vrij te maken. Deze techniek verhoogt aanzienlijk de toegangstijd tot de inhoud van pagina's in het RAM van de virtuele machine, omdat de pagina vooraf moet worden uitgewogen. Soms is het niet mogelijk om alle pagina's te comprimeren en het proces kost enige tijd. Daarom is deze techniek in de praktijk niet zeer effectief.<\/p>\n<p><b>Geheugenswapping.<\/b> Na een korte fase van Geheugencompressie gaat ESXi vrijwel onvermijdelijk (tenzij de virtuele machines naar andere hosts zijn verhuisd of zijn uitgeschakeld) over op Swapping. En als er echt niet veel geheugen meer over is (toestand Laag), stopt de hypervisor ook met het toewijzen van pagina's geheugen aan de virtuele machines, wat problemen kan veroorzaken in de gasten-besturingssystemen van de virtuele machines.<\/p>\n<p>Zo werkt Swapping. Wanneer een virtuele machine (VM) wordt ingeschakeld, wordt er een bestand met de extensie .vswp aangemaakt. De grootte ervan komt overeen met het niet-gereserveerde RAM van de VM: dit is het verschil tussen de geconfigureerde en de gereserveerde geheugen. Tijdens Swapping dump ESXi pagina's van het geheugen van de virtuele machine naar dit bestand en begint het met dit bestand te werken in plaats van met het fysieke geheugen van de server. Uiteraard is dit soort 'RAM' vele malen trager dan echt geheugen, zelfs als de .vswp op snelle opslag staat.<\/p>\n<p>In tegenstelling tot Ballooning, waarbij ongebruikte pagina's van de VM worden afgepakt, kunnen bij Swapping pagina's naar de schijf worden verplaatst die actief worden gebruikt door het besturingssysteem of applicaties binnen de VM. Dit resulteert in verminderde prestaties van de VM tot aan bevriezen. De VM blijft formeel functioneren en je kunt deze in ieder geval correct uitschakelen via het besturingssysteem. Wees geduldig \ud83d\ude09<\/p>\n<p>Als de VM in Swap is gegaan, is dit een niet-standaard situatie die bij voorkeur moet worden vermeden.<\/p>\n<h3>Belangrijkste prestatiestatistieken voor het geheugen van de virtuele machine<\/h3>\n<p>\nHier zijn we dan bij het belangrijkste. Voor het monitoren van de geheugentoestand in de VM zijn er de volgende statistieken:<\/p>\n<p><b>Actief<\/b> \u2014 toont het volume van het RAM (KB) dat de VM in de voorgaande meetperiode heeft benaderd.<\/p>\n<p><b>Gebruik<\/b> \u2014 hetzelfde als Active, maar in procenten van het geconfigureerde RAM van de VM. Wordt berekend met de volgende formule: active \u00f7 geconfigureerde geheugen grootte van de virtuele machine.<br \/>\nHoge Usage en Active zijn niet altijd indicatoren voor prestatieproblemen van de VM. Als de VM agressief geheugen gebruikt (tenminste, er toegang toe krijgt), betekent dit niet dat er onvoldoende geheugen is. Sterker nog, dit is een reden om te kijken wat er in het besturingssysteem gebeurt.<br \/>\nEr is een standaard Alarm voor Geheugengebruik voor VM's:<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/073132b332da79be15e3bedf2c66cf94.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Gedeeld<\/b> \u2014 volume van het RAM van de VM, gededupliceerd met behulp van TPS (binnen de VM of tussen VM's).<\/p>\n<p><b>Granted<\/b> \u2014 volume van het fysieke geheugen van de host (KB) dat aan de VM is toegewezen. Inclusief Shared.<\/p>\n<p><b>Consumed<\/b> (Granted \u2014 Shared) \u2014 volume van het fysieke geheugen (KB) dat de VM van de host consumeert. Sluit Shared uit.<\/p>\n<p>Als een deel van het geheugen van de VM niet uit het fysieke geheugen van de host wordt gehaald, maar uit het swap-bestand of als geheugen wordt afgenomen van de VM via de Balloon Driver, wordt dit volume niet meegenomen in Granted en Consumed.<br \/>\nHoge waarden voor Granted en Consumed zijn volkomen normaal. Het besturingssysteem neemt geleidelijk geheugen van de hypervisor af en geeft het niet terug. Na verloop van tijd komen de waarden van deze tellers, bij een actief werkende VM, dichtbij de geconfigureerde hoeveelheid geheugen en blijven daar.<\/p>\n<p><b>Nul<\/b> \u2014 het volume van het RAM-geheugen van de VM (Kbyte), dat nullen bevat. Dit geheugen wordt door de hypervisor als vrij beschouwd en kan aan andere virtuele machines worden toegewezen. Nadat het gast-OS iets heeft geschreven naar het gewiste geheugen, gaat het naar Consumed en komt nooit meer terug.<\/p>\n<p><b>Gereserveerde overhead<\/b> \u2014 het volume van het RAM-geheugen van de VM (Kbyte) dat door de hypervisor is gereserveerd voor de werking van de VM. Het is een bescheiden volume, maar het moet beschikbaar zijn op de host, anders start de VM niet.<\/p>\n<p><b>Ballon<\/b> \u2014 het volume van het RAM-geheugen (Kbyte) dat van de VM is afgenomen met behulp van de Balloon Driver.<\/p>\n<p><b>Gecomprimeerd<\/b> \u2014 het volume van het RAM-geheugen (Kbyte) dat is gecomprimeerd.<\/p>\n<p><b>Swapped<\/b> \u2014 het volume van het RAM-geheugen (Kbyte) dat, door gebrek aan fysiek geheugen op de server, naar de schijf is verplaatst.<br \/>\nBallon en andere tellers voor geheugenreclametechnieken zijn gelijk aan nul.<\/p>\n<p>Zo ziet een grafiek eruit met de tellers van een normaal functionerende VM met 150 GB RAM.<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/4c361a407581b24fc042c91a6d76aa68.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nIn de onderstaande grafiek vertoont de VM duidelijke problemen. Onder de grafiek is te zien dat alle hierboven beschreven technieken voor geheugenbeheer zijn gebruikt. De Balloon voor deze VM is aanzienlijk groter dan Consumed. In feite is de VM eerder dood dan levend. <\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/fcc8f196fc7d158e82de4737c5ebe776.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>ESXTOP<\/h3>\n<p>\nNet als bij de CPU, als we snel de situatie op de host willen beoordelen en ook de dynamiek met een interval van 2 seconden willen bekijken, is het aan te raden om ESXTOP te gebruiken.<\/p>\n<p>Het ESXTOP-scherm voor geheugen wordt opgeroepen met de toets \"m\" en ziet er als volgt uit (veld B,D,H,J,K,L,O zijn geselecteerd):<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/27383c357fb351bbe8353abf3b08171e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDe volgende parameters zijn interessant voor ons: <\/p>\n<p><b>Gemiddelde geheugenovercommit<\/b> \u2014 het gemiddelde van de geheugenovercommit op de host over 1, 5 en 15 minuten. Als dit boven nul ligt, is het een reden om te kijken wat er aan de hand is, maar het is niet altijd een indicator van problemen.<\/p>\n<p>In de regels <b>PMEM\/MB<\/b> en <b>VMKMEM\/MB<\/b> \u2014 informatie over het fysieke geheugen van de server en het geheugen dat beschikbaar is voor de VMkernel. Interessant om hier te zien is de waarde minfree (in MB), de status van de host met betrekking tot geheugen (in ons geval, hoog).<\/p>\n<p>In de regel <b>NUMA\/MB<\/b> je kunt de verdeling van het RAM-geheugen over de NUMA-nodes (socket) zien. In dit voorbeeld is de verdeling ongelijk, wat in principe niet ideaal is.<\/p>\n<p>Hier volgt de algemene statistiek van de server met betrekking tot geheugenhersteltechnieken:<\/p>\n<p><b>PSHARE\/MB<\/b> \u2014 dit is de TPS-statistiek;<\/p>\n<p><b>SWAP\/MB<\/b> \u2014 statistiek van het gebruik van Swap;<\/p>\n<p><b>ZIP\/MB<\/b> \u2014 statistiek van geheugencompressie;<\/p>\n<p><b>MEMCTL\/MB<\/b> \u2014 statistiek van het gebruik van de Balloon Driver.<\/p>\n<p>Voor afzonderlijke VM's kunnen we ge\u00efnteresseerd zijn in de volgende informatie. Ik heb de namen van de VM's verborgen om het publiek niet te verwarren:). Als de ESXTOP-metriek vergelijkbaar is met de teller in vSphere, geef ik de bijbehorende teller. <\/p>\n<p><b>MEMSZ<\/b> \u2014 de hoeveelheid geheugen die is geconfigureerd voor de VM (MB).<br \/>\nMEMSZ = GRANT + MCTLSZ + SWCUR + untouched.<\/p>\n<p><b>GRANT<\/b> \u2014 Granted in MB.<\/p>\n<p><b>TCHD<\/b> \u2014 Active in MB.<\/p>\n<p><b>MCTL?<\/b> \u2014 is de Balloon Driver op de VM ge\u00efnstalleerd.<\/p>\n<p><b>MCTLSZ<\/b> \u2014 Balloon in MB.<\/p>\n<p><b>MCTLGT<\/b> \u2014 de hoeveelheid RAM (MB) die ESXi van de VM wil onttrekken via de Balloon Driver (Memctl Target).<\/p>\n<p><b>MCTLMAX<\/b> \u2014 de maximale hoeveelheid RAM (MB) die ESXi van de VM kan onttrekken via de Balloon Driver.<\/p>\n<p><b>SWCUR<\/b> \u2014 de huidige hoeveelheid RAM (MB) die aan de VM is gegeven vanuit het Swap-bestand. <\/p>\n<p><b>SWGT<\/b> \u2014 de hoeveelheid RAM (MB) die ESXi aan de VM wil geven vanuit het Swap-bestand (Swap Target).<\/p>\n<p>Met ESXTOP kan ook meer gedetailleerde informatie over de NUMA-topologie van de VM worden bekeken. Hiervoor moeten de kolommen D,G worden geselecteerd:<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/3fde4ab9d54c709f66313020437255c2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>NHN<\/b> \u2013 NUMA-knooppunten waarop de VM zich bevindt. Hier kunnen we meteen wijde VM's zien die niet op \u00e9\u00e9n NUMA-knooppunt passen.<\/p>\n<p><b>NRMEM<\/b> \u2013 hoeveel megabytes geheugen de VM van een extern NUMA-knooppunt neemt.<\/p>\n<p><b>NLMEM<\/b> \u2013 hoeveel megabytes geheugen de VM van een lokaal NUMA-knooppunt neemt.<\/p>\n<p><b>N%L<\/b> \u2013 percentage geheugen van de VM op het lokale NUMA-knooppunt (als dit minder dan 80% is, kunnen er prestatieproblemen optreden).<\/p>\n<h3>Geheugen op de hypervisor<\/h3>\n<p>\nAls CPU-tellers van de hypervisor meestal niet bijzonder interessant zijn, is de situatie met geheugen juist omgekeerd. Hoge geheugenbelasting op de VM wijst niet altijd op een prestatieprobleem, maar hoge geheugenbelasting op de hypervisor activeert juist geheugenbeheertechnieken en veroorzaakt prestatieproblemen voor de VM. We moeten de alarmen van Host Memory Usage in de gaten houden en voorkomen dat de VM in Swap terechtkomt.<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/27931f9a8607000dc9a7ca483c03ad68.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/4a1c0d6199a340dd62e5c923611ddd6e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Unswap<\/h3>\n<p>\nAls de VM in Swap terechtkomt, daalt de prestatie aanzienlijk. Sporen van Ballooning en compressie verdwijnen snel nadat er vrije RAM op de host verschijnt, maar de virtuele machine haast zich helemaal niet om terug te keren van Swap naar het RAM van de server. <br \/>\nTot versie ESXi 6.0 was de enige betrouwbare en snelle manier om een VM uit Swap te krijgen het opnieuw opstarten (om precies te zijn, het uitschakelen\/inschakelen van de container). Vanaf ESXi 6.0 is er echter een niet officieel, maar werkende en betrouwbare manier ge\u00efntroduceerd om een VM uit Swap te krijgen. Tijdens een van de conferenties had ik de kans om te praten met een van de ingenieurs van VMware die verantwoordelijk is voor de CPU Scheduler. Hij bevestigde dat deze methode volledig functioneel en veilig is. In onze ervaring zijn er ook geen problemen mee geconstateerd.<\/p>\n<p>Eigenlijk de commando's om een VM uit Swap te halen <noindex><a rel=\"nofollow\" href=\"http:\/\/www.yellow-bricks.com\/2016\/06\/02\/memory-pages-swapped-can-unswap\/\">beschreef<\/a><\/noindex> Duncan Epping. Ik zal de gedetailleerde beschrijving niet herhalen, maar gewoon een voorbeeld van het gebruik geven. Zoals te zien is op de screenshot, verdwijnt Swap na enige tijd na het uitvoeren van het opgegeven commando van de VM.<\/p>\n<p><img decoding=\"async\" alt=\"Prestatieanalyse van VM&#039;s in VMware vSphere. Deel 2: Geheugen\" src=\"\/wp-content\/uploads\/c60d03c59e115d48b209dadc25081c1e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Tips voor het beheer van RAM op ESXi<\/h3>\n<p>\nTot slot geef ik enkele tips die u kunnen helpen om prestatieproblemen van de VM als gevolg van RAM te vermijden:<\/p>\n<ul>\n<li>Voorkom oversubscriberen van RAM in productieve clusters. Het is wenselijk om altijd ongeveer 20-30% vrije geheugen in het cluster te hebben, zodat DRS (en de administrator) ruimte heeft om te manoeuvreren en de VM's bij migratie niet naar Swap gaan. Vergeet ook de reservering voor fouttolerantie niet. Het is vervelend als, bij het uitvallen van een server en het opnieuw opstarten van de VM met HA, een deel van de machines ook nog eens naar Swap gaat.<\/li>\n<li>In infrastructuren met hoge consolidatie, probeer GEEN VM's te maken met meer geheugen dan de helft van het geheugen van de host. Dit zal DRS op nieuwe manieren helpen om de virtuele machines probleemloos over de servers van het cluster te verdelen. Deze regel is vanzelfsprekend niet universeel.<\/li>\n<li>Houd de Host Memory Usage Alarm in de gaten.<\/li>\n<li>Vergeet niet om VMware Tools op de VM te installeren en de Ballooning niet uit te schakelen.<\/li>\n<li>Overweeg om Inter-VM TPS in te schakelen en Large Pages uit te schakelen in VDI-omgevingen en testomgevingen.<\/li>\n<li>Als de VM prestatieproblemen heeft, controleer dan of deze geheugen van een externe NUMA-knooppunt gebruikt.<\/li>\n<li>Breng de VM zo snel mogelijk uit Swap! Naast alles, als de VM in Swap zit, lijdt de SAN, om voor de hand liggende redenen.<\/li>\n<\/ul>\n<p>\nDat was het voor nu over RAM. Hieronder artikelen over het onderwerp voor degenen die zich verder willen verdiepen in de details. Het volgende artikel zal gewijd zijn aan opslag.<\/p>\n<p><b class=\"spoiler_title\">Nuttige links<\/b><noindex><a rel=\"nofollow\" href=\"http:\/\/www.yellow-bricks.com\/2015\/03\/02\/what-happens-at-which-vsphere-memory-state\/\">http:\/\/www.yellow-bricks.com\/2015\/03\/02\/what-happens-at-which-vsphere-memory-state\/<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/www.yellow-bricks.com\/2013\/06\/14\/how-does-mem-minfreepct-work-with-vsphere-5-0-and-up\/\">http:\/\/www.yellow-bricks.com\/2013\/06\/14\/how-does-mem-minfreepct-work-with-vsphere-5-0-and-up\/<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.vladan.fr\/vmware-transparent-page-sharing-tps-explained\/\">https:\/\/www.vladan.fr\/vmware-transparent-page-sharing-tps-explained\/<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/www.yellow-bricks.com\/2016\/06\/02\/memory-pages-swapped-can-unswap\/\">http:\/\/www.yellow-bricks.com\/2016\/06\/02\/memory-pages-swapped-can-unswap\/<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/kb.vmware.com\/s\/article\/1002586\">https:\/\/kb.vmware.com\/s\/article\/1002586<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.vladan.fr\/what-is-vmware-memory-ballooning\/\">https:\/\/www.vladan.fr\/what-is-vmware-memory-ballooning\/<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/kb.vmware.com\/s\/article\/2080735\">https:\/\/kb.vmware.com\/s\/article\/2080735<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/kb.vmware.com\/s\/article\/2017642\">https:\/\/kb.vmware.com\/s\/article\/2017642<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/labs.vmware.com\/vmtj\/vmware-esx-memory-resource-management-swap\">https:\/\/labs.vmware.com\/vmtj\/vmware-esx-memory-resource-management-swap<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/blogs.vmware.com\/vsphere\/2013\/10\/understanding-vsphere-active-memory.html\">https:\/\/blogs.vmware.com\/vsphere\/2013\/10\/understanding-vsphere-active-memory.html<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.vmware.com\/support\/developer\/converter-sdk\/conv51_apireference\/memory_counters.html#overhead\">https:\/\/www.vmware.com\/support\/developer\/converter-sdk\/conv51_apireference\/memory_counters.html<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/docs.vmware.com\/en\/VMware-vSphere\/6.5\/vsphere-esxi-vcenter-server-65-monitoring-performance-guide.pdf\">https:\/\/docs.vmware.com\/en\/VMware-vSphere\/6.5\/vsphere-esxi-vcenter-server-65-monitoring-performance-guide.pdf<\/a><\/noindex><\/p>\n<p>Bron: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/dataline\/blog\/455820\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0427\u0430\u0441\u0442\u044c 1. \u041f\u0440\u043e CPU \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043f\u0440\u043e \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (RAM) \u0432 vSphere. \u0412\u0440\u043e\u0434\u0435 \u0431\u044b \u0441 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0432\u0441\u0435 \u0431\u043e\u043b\u0435\u0435 \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e, \u0447\u0435\u043c \u0441 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c: \u0435\u0441\u043b\u0438 \u043d\u0430 \u0412\u041c \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u044e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u0438\u0445 \u0441\u043b\u043e\u0436\u043d\u043e \u043d\u0435 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c. \u0417\u0430\u0442\u043e \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f, \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u0441 \u043d\u0438\u043c\u0438 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0441\u043b\u043e\u0436\u043d\u0435\u0435. \u041d\u043e \u043e\u0431\u043e \u0432\u0441\u0435\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443. \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u0442\u0435\u043e\u0440\u0438\u0438 \u041e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043f\u0430\u043c\u044f\u0442\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35292","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/nl\/blog\/administrirovanie\/analiz-proizvoditelnosti-vm-v-vmware-vsphere-chast-2-memory\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0410\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0412\u041c \u0432 VMware vSphere. \u0427\u0430\u0441\u0442\u044c 2: Memory | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/nl\/blog\/administrirovanie\/analiz-proizvoditelnosti-vm-v-vmware-vsphere-chast-2-memory\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:03:28+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:03:28+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Prestaties van VM in VMware vSphere analyseren. Deel 2: Geheugen | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/administrirovanie\/analiz-proizvoditelnosti-vm-v-vmware-vsphere-chast-2-memory","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0410\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0412\u041c \u0432 VMware vSphere. \u0427\u0430\u0441\u0442\u044c 2: Memory | ProHoster","og:url":"https:\/\/prohoster.info\/nl\/blog\/administrirovanie\/analiz-proizvoditelnosti-vm-v-vmware-vsphere-chast-2-memory","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:03:28+00:00","article:modified_time":"2019-10-31T19:03:28+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35292","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 22:41:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:01:22","updated":"2026-01-21 22:41:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/35292","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=35292"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/35292\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=35292"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=35292"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=35292"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}