Tranparent Page Sharing (TPS) ist eine Technik zur gemeinsamen Verwendung von Speicherinhalten, indem identische Pages nur einmalig abgelegt werden.
Seit Update 2b wurde TPS von VMware per Default deaktiviert, da es in seltenen Fällen zu Sicherheitsverletzungen zwischen VMs kommen konnte. Wie es sich zeigte, ist aber bei ESXi Servern mit höherer Build Nummer unter Umständen TPS noch aktiv. Das liegt daran, daß VMware TPS offensichtlich nur bei Neuinstallation abschaltet.
TPS Status
Wie kann man nun ermitteln, welchen TPS Status die ESX Server eines Clusters haben?
Hierfür kann man mittels PowerCLI einen oneliner ausführen.
# Connect-VIServer <myVC> # Get-VMHost –State Connected | Get-AdvancedSetting –Name Mem.ShareScanGHz | Format-Table –Property Entity,Name,Value -AutoSize # Disconnect-VIServer
Werte >0 deuten auf ein aktiviertes TPS.
TPS deaktivieren
# Connect-VIServer <YourvCenter>
# Get-VMHost –State Connected | Get-AdvancedSetting –Name Mem.ShareScanGHz | Set-AdvancedSetting –Value 0
Status erneut testen
# Get-VMHost –State Connected | Get-AdvancedSetting –Name Mem.ShareScanGHz | Format-Table –Property Entity,Name,Value -AutoSize
# Disconnect-VIServer
Links
- LongWhiteClouds – VMware Turns Off TPS Taps in vSphere ESXi and vCloud Air to Avoid Rare VMescape Security Bug
- vmware KB 2080735 – Security considerations and disallowing inter-Virtual Machine Transparent Page Sharing