如果我事先知道内容大小,我是否应该创建固定大小或可扩展的 VHD?

如果我事先知道内容大小,我是否应该创建固定大小或可扩展的 VHD?

我想要执行以下操作:创建一个 VHD,将文件树复制到那里,然后将 VHD 文件上传到 Azure blob 存储,然后当我的 Azure 角色启动时,我将下载 VHD 并安装它并将其用作只读。我事先知道文件树,因此我可以在固定大小的 VHD 和可扩展的 VHD 之间进行选择。

可扩展看起来更方便,但我怀疑它可能会产生一些开销,而且与固定文件相比,我可能会得到更大的文件。

使用可扩展 VHD 会产生更大的文件吗?在这种情况下,可扩展 VHD 有什么问题吗?

答案1

其“陷阱”并不是增加文件大小,事实上,精简配置/动态扩展磁盘的真正目的就是减少它们在磁盘上的大小。

[主要] 权衡是所有情况下的性能,以及大多数情况下的过度承诺风险(随着卷的增长而耗尽空间)。如果您监控磁盘使用情况并小心避免让可扩展 VHD 超出存储大小,则可以相对轻松地避免过度承诺问题(但这取决于您拥有的数量和虚拟环境的复杂性),并且您可以通过某些磁盘设置在一定程度上缓解性能问题。

有关 VHD 架构的 MS 文章可能有用

对于动态大小的 VHD,读取性能较慢,并且您可能还需要考虑其他性能因素 - 例如,如果您的大量 VHD 同时增长,主机和/或存储上会发生什么情况,因为您的性能也会受到影响。再加上其他与存储相关的考虑因素,例如您的动态大小的 VHD 变得碎片化/不连续,以及与重复数据删除和快照的交互,您的环境限制可能会决定它们是否是一个好主意。

一般来说,如果您知道需要多大容量,并且现在有足够的空间来分配所有容量,那么固定大小/厚配置磁盘是更好的选择。至少,您会获得略微更好的性能,而且不用担心。但是,如果您空间紧张,并且牢记上述几点,那么选择动态/精简路线也没什么问题。事实上,有人可能会说动态磁盘并不是一个糟糕的默认选择,因为当需求发生变化并且有人需要将几十 GB 的额外内容塞到您的磁盘上时,可扩展虚拟磁盘会为您提供更大的灵活性。与其他所有事情一样,这取决于您的环境。

相关内容