Azure VM 中的磁盘缓存如何工作?

How disk caching in Azure VM works?

我正在努力寻找一篇合适的文章来解释 Azure VM 中的缓存是如何工作的。 什么拥有那个缓存?它是如何同步的?等等

谢谢!

磁盘缓存:

本文将提供完整的信息:https://docs.microsoft.com/en-us/learn/modules/caching-and-performance-azure-storage-and-disks/

利用 Azure 高级存储的大规模 VM 具有称为 BlobCache 的多层缓存技术。 BlobCache 结合使用虚拟机 RAM 和本地 SSD 进行缓存。此缓存可用于高级存储永久性磁盘和 VM 本地磁盘。默认情况下,此缓存设置对于 OS 磁盘设置为 Read/Write,对于高级存储上托管的数据磁盘设置为只读。通过在高级存储磁盘上启用磁盘缓存,大规模 VM 可以获得超过底层磁盘性能的极高级别的性能。

4 TiB 及更大的磁盘不支持磁盘缓存。如果多个磁盘连接到您的 VM,每个小于 4 TiB 的磁盘都将支持缓存。

更改 Azure 磁盘的缓存设置会分离并重新附加目标磁盘。如果是操作系统盘,则重启虚拟机。在更改磁盘缓存设置之前停止所有可能受此中断影响的 applications/services。

更多信息可以参考这篇文章:https://docs.microsoft.com/en-us/azure/virtual-machines/windows/premium-storage-performance#disk-caching

主机缓存支持的最大磁盘大小 <= 4095 GiB。如果您在 Portal 上部署了一个 4096 GiB 的磁盘,主机缓存将不受支持。

参考https://pachehra.blogspot.com/2019/06/azure-vm-disk-caching.html

附加信息:主机缓存适用于高级和标准存储磁盘。如 VM 规范文档中所述,不同 VM 类型之间的缓存性能存在一些差异。支持高级存储磁盘的 VM 类型使用高级主机功能,并带有记录的专用性能目标。而老一代的 VM 具有不同的目标,如文档所述,并且通常没有专用的高性能目标。因此,对于非 Premium Disk VM,根据工作负载模式和其他因素,您可能看不到缓存带来的相同好处。如果您使用的是支持高级磁盘的 VM,则连接到此类 VM 的标准磁盘上的主机缓存将提供与高级磁盘上的主机缓存相同类型的缓存性能。

主机缓存支持标准 HDD、标准 SSD 和高级 SSD

如果您需要添加 8 TB 磁盘,主机缓存将不会启用,因为磁盘大小超过 4095 GiB