指针块也称为间接块,是包含 VMFS 文件块的文件系统资源。打开ESXi主机上的 vmdk 文件时,与该文件相关的指针块会存储在指针块缓存中。指针块缓存的大小是可配置参数。
指针块缓存是主机范围的缓存,与 VMFS 无关。从同一个 ESXi主机访问的所有数据存储共享该缓存。
指针块缓存的大小由 /VMFS3/MinAddressableSpaceTB和/VMFS3/MaxAddressableSpaceTB 控制。可以配置每个 ESXi主机上的最小大小和最大大小。
- /VMFS3/MinAddressableSpaceTB
- 最小值是系统向指针块缓存保证的最小内存量。例如,1 TB 的打开文件空间需要大约 4 MB 的内存。默认值为 10 TB。
- /VMFS3/MaxAddressableSpaceTB
- 此参数定义可在内存中缓存的指针块最大限制。默认值为 32 TB。最大值为 128 TB。通常, /VMFS3/MaxAddressableSpaceTB参数的默认值足以满足需求。
- 指针块逐出
- /VMFS3/MaxAddressableSpaceTB参数还控制指针块缓存的增长。当指针块缓存的大小接近配置的最大大小时,将启动指针块逐出过程。该机制将保留活动的指针块,而从缓存中移除非活动的或活动较少的块,以便可以重用空间。
要更改指针块缓存的值,请使用 vSphere Client 的高级系统设置对话框或 esxcli system settings advanced set -o 命令。
您可以使用esxcli storage vmfs pbcache命令获取有关指针块缓存大小的信息以及其他统计信息。这些信息可帮助您调整指针块缓存的最小和最大大小,以便您可以获得最佳性能。