前言:
当前各位老铁们对“windows2016和windows2019”大约比较关注,兄弟们都需要分析一些“windows2016和windows2019”的相关知识。那么小编也在网上收集了一些关于“windows2016和windows2019””的相关资讯,希望我们能喜欢,姐妹们一起来学习一下吧!第1章 前言
今天客户打电话给小编,问虚拟机内存怎么添加不了,小编问虚拟机关机了吗,客户说不用关,虚拟机可以热添加内存,只要开启热添加功能就可以。但是内存最大只能到64GB,无法添加到128GB,然后给小编发来图片。
第2章 准备环境
小编公司有vSphere 8的环境,然后把虚拟机的热添加内存功能开启。
然后开机,修改内存,小编居然也遇到了一样的问题
第2章 找到原因
因为内存的热添加(VMware Hot Add)最大值,只能是虚拟机开机时内存的16倍,即
开机内存(GB)
最大内存(GB)
4
64
8
128
12
192
16
256
以此类推
小编把虚拟机关机,内存改成8GB,然后再开机,就可以修改成128GB了,但这个时候内存是无法再添加也无法缩减,因为已经达到了上限8*16=128GB。
第3章 深入理解
热添加(VMware Hot Add)内存要满足以下条件
已安装最新版本的VMware Tools。客户机操作系统支持设备热添加。必须关闭虚拟机才能启用热添加功能。必须使用Enterprise Plus 许可证。不能为虚拟机启用容错功能(FT)。虚拟机硬件兼容性(虚拟机硬件版本)为7或更高。
以下是常见 Windows 版本对 VMware Hot Add 功能的支持情况:
Windows 版本
支持 Hot Add
Windows Server 2008
否
Windows Server 2008 R2
是
Windows Server 2012
是
Windows Server 2012 R2
是
Windows Server 2016
是
Windows Server 2019
是
Windows 7
否
Windows 8
否
Windows 8.1
是
Windows 10
是
Windows 11
是
第4章 注意事项
首先在启用热添加功能后,无法热移除CPU或内存资源。因为添加后应用程序会消耗已添加的资源,如果要移除只能先关闭虚拟机,再编辑移除。
热添加内存的最大数量是为虚拟机配置的初始内存量的16倍。例:在启用内存热添加的情况下,虚拟机开机时有1GB的内存,那么热添加最多只能加到1*16=16GB。若需要继续添加,则需要将虚拟机关机,再添加。
最后,启用热添加功能后会自动禁用掉虚拟机vNUMA。VMware默认会为具有 8 个或更多vCPU的虚拟机启用 vNUMA 以提高性能。什么是vNUMA呢?在搞清楚这个之前我们需要先了解什么是NUMA。
非统一内存访问(NUMA)是一种用于多处理器的电脑内存体设计,内存访问时间取决于处理器的内存位置。 在NUMA下,处理器访问它自己的本地存储器的速度比非本地存储器(存储器的地方到另一个处理器之间共享的处理器或存储器)快一些。NUMA 系统是具有多个系统总线的平台,每个处理器都可以访问主板上的所有内存。内存安装在该处理器附近插槽中的处理器称为NUMA节点。
如果禁用NAMU,那么假设您有两个CPU,但内存只安装在其中一个处理器的插槽中,则可能会出现性能下降和其他硬件问题。
那什么是vNUMA呢?Virtual NUMA是 VMware vSphere 中的一种优化方法。它通过考虑 NUMA 拓扑并避免内存带宽瓶颈来确保大型虚拟机以最佳性能运行。物理 NUMA 拓扑通过 vNUMA 暴露给客户机操作系统。因此vNUMA 拓扑基于 ESXi 主机使用的底层物理硬件的 NUMA 拓扑。虚拟机的虚拟CPU可以调度对位于相同 NUMA 节点上的内存的访问。
因此当启用热添加并禁用vNUMA时,虚拟机无法识别ESXi主机上的底层NUMA节点,因此会增加对远程NUMA节点的内存访问。客户操作系统的CPU/内存调度不是最佳的。因此,虚拟机性能会下降。对于应用程序线程增加的宽虚拟机,性能下降是显而易见的。
第5章 总结
因为启用内存热添和CPU热添加会禁用vSphere vNUMA,所以小编不建议开启内存和CPU热添加。
而且vSphere的虚拟机默认是禁用了VMware Hot Add功能,我们秉承默认即是最好的原则,建议用户在关机下去修改虚拟机的CPU和内存大小。
最后小提示,vCPU个数修改,在vSphere 8 下,已经换位置了,下图参考。