VMware ESXi挂载NFS类型存储容器相关内核参数优化
如果要为VMware ESXi主机使用NFS方式挂载存储容器(datastore),需要修改相关ESXi内核参数,以便优化挂载效率及网络读写性能。
以下参数设定值以ESXi 6.0为例。不同版本的系统,相应值会有所不同。
使用vSphere Web Client登陆主机控制台,找到主机配置页面,然后进入“高级设置”选项卡。
根据需要挂载的存储容器数量,按线性比例调整如下参数:
NFS参数
#主机允许挂载的NFS datastore数量上限 #ESXi 5.5及以下版本最大值为64,ESXi 6.0及以上版本最大值为256 NFS.MaxVolumes = 256 NFS41.MaxVolumes = 256 #NFS datastore允许的最大队列深度 #ESXi 5.5及以下版本建议为64,ESXi 6.0及以上版本建议为128,避免大量NFS请求造成队列挤压 NFS.MaxQueueDepth = 128 #NFS链路健康状态的心跳检测 #优化心跳检测参数,避免因NFS链路波动而触发不必要的APD(All Path Down) NFS.HeartbeatMaxFailures = 10 NFS.HeartbeatFrequency = 12 NFS.HeartbeatTimeout = 5
NET参数
#用于VMkernel TCP/IP网络连接所分配的堆内存量(单位为 MB) #增加默认堆内存量,可以提升NFS并发连接性能 Net.TcpipHeapSize = 32 #用于VMkernel TCP/IP网络连接所分配的突发堆内存量(单位为 MB) #增加默认最大堆内存量,可以提升NFS并发连接性能。如果调整后影响到系统稳定性,请适当降低该值 #注:ESXi 4.0/5.0/5.1最大值为128,ESXi 5.5最大值为512,ESXi 6.0及以上版本最大值为1536 Net.TcpipHeapMax = 1536
VMFS3参数
#启用带硬件加速的VMFS锁定 VMFS3.HardwareAcceleratedLocking = 1 #在客户端发出UNMAP指令后,不删除对应的VMFS块 VMFS3.EnableBlockDelete = 0
以上参数修改完后,需要重启主机才能使设置生效。
网卡链路
如果NFS存储的流量走双虚拟网卡(vmnic),建议关闭自动故障切换,并将双虚拟网卡模式从双活(active-active)改为主备(active-standby),避免因为网络瞬断而造成不必要的链路切换,NFS能够容忍网络的个别丢包。
最佳实践
有关使用NFS存储的vSphere主机最佳实践,推荐阅读:
- Best Practices for running VMware vSphere on Network Attached Storage: https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/vmware-nfs-bestpractices-white-paper-en.pdf – VMware
- ESXi host values set using ONTAP tools: https://docs.netapp.com/us-en/ontap-tools-vmware-vsphere/configure/reference_esxi_host_values_set_by_vsc_for_vmware_vsphere.html – NetApp
最后更新:2022-07-18
— END —