透明页共享是VMware提供的一种功能,管理员借助该功能能够更高效地管理主机的内存。 透明页共享会扫描主机上的所有虚拟机,识别相同的内存页。例如,如果你正在主机上运行Windows Server 2012的很多副本,那么该主机上很可能有很多重复的内存页,比如重复代码。这种重复是一种浪费,为解决该问题,透明页共享使用hypervisor定位同一主机上不同虚拟机所使用的重复内存块,然后只保留一份。
剩下的重复内存块被指向该内存块的指针取代,然后释放出相应的内存资源。 虚拟机需要发现该内存块,并通过指针指向包含实际数据副本的内存块。底层的操作系统并不知道发生了什么,一切都借助VMware Tools实……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
透明页共享是VMware提供的一种功能,管理员借助该功能能够更高效地管理主机的内存。
透明页共享会扫描主机上的所有虚拟机,识别相同的内存页。例如,如果你正在主机上运行Windows Server 2012的很多副本,那么该主机上很可能有很多重复的内存页,比如重复代码。这种重复是一种浪费,为解决该问题,透明页共享使用hypervisor定位同一主机上不同虚拟机所使用的重复内存块,然后只保留一份。剩下的重复内存块被指向该内存块的指针取代,然后释放出相应的内存资源。
虚拟机需要发现该内存块,并通过指针指向包含实际数据副本的内存块。底层的操作系统并不知道发生了什么,一切都借助VMware Tools实现。假设拥有很大规模的虚拟桌面基础设施资产—节省的内存空间可能相当可观。为启用透明页共享,需要在虚拟机上安装VMware Tools。
透明页共享被禁用
这种管理内存的方式很不错,直到在vSphere 5.5 update 2中,VMware决定关闭透明页共享,原因是一些学者利用透明页共享获取了同一主机上其他虚拟机的加密密钥。在实际应用中,这应该不是问题。
VMware公司对此稍微有些谨慎,出于对安全第一的想法,VMware非常高效地采用技术手段关闭了透明页共享功能。
透明页共享功能仍旧存在,但加入了新的限制—透明页共享功能仅用于共享同样salting值的特定虚拟机。通过限制透明页共享仅用于共享同样salting值的特定虚拟机,VMware大大限制了透明页共享特性的应用。
恢复透明页共享
幸运的是,我们可以重新启用透明页共享。过程有些繁琐,因为你需要在高级设置中重新配置每台主机,但这一切都是值得的。
首先,如图1所示,在vSphere Client中打开虚拟主机,选择配置选项卡。
图1.在VMware ESxi 6.0.0 选择配置选项卡
如图2所示,接下来,在高级菜单下通过选择菜单选项修改salting值。选择“Mem.ShareForceSalting”条目然后设置为0。新主机默认被设置为2,意味着启用了salting。
图2.修改salting值
修改salting值后,保存更改并重启主机。重启完成后,再次检查已经保留的设置。
为使恢复透明页共享功能变得更容易,我创建了一个非常简单的脚本,获取主机名以及整个vCenter的Mem.ShareForceSalting值。为使用该脚本,必须先登录到vCenter,并使用vCenter的IP或DNS替换vc_fqdn。
请注意Get-AdvancedSetting参数不能换行,否则会报错。
Connect-VIServer vc_fqdn
$hostlist = Get-vmHost
foreach ($hostserver in $hostlist) {
Get-AdvancedSetting -Entity $hostserver -Name mem.shareForceSalting | select Entity, Value
}
图3.获取主机名及其salting值的脚本
你可以通过修改图3中的脚本更新每台主机的salting值,但使用Get-AdvancedSetting命令获取salting值要比使用Set-AdvancedSetting命令更新参数要更容易,也更安全。
VMware禁用了透明页共享以确保这一非常模糊、小众的安全风险不会被暴露出来。然而,该安全风险并不会影响大多数用户。重新启用透明页共享的优势大于风险,尤其是在虚拟机密度非常高的VDI环境中更是如此。
作者
相关推荐
-
vSphere 5.5的Flash Read Cache有人用过吗?和Host Cache有什么区别
-
大家有没有做过vsphere 5.5和5.1的对比,主要包括支持多少个群集,每个群集支持多少主机等等
有没有做过5.5和5.1的对比,主要包括支持多少个群集,每个群集支持多少主机,一个主机支持多少虚机,每个虚机支 […]
-
谁有vsphere 5.5部署的文档啊,最好就是ESXi和VCenter的。多谢~
谁有vsphere 5.5部署的文档啊,最好就是ESXi和VCenter的。 学习学习,想了解下部署都哪些注意 […]
-
管理员应该掌握的内存管理技术
如果你想要整合重复的文件,或者反之,你想要备份文件以防止出现错误,或者物理服务器需要从虚拟机收回一些内存,本文中的内存管理技术就可以为你提供解决方案。