存储大小的虚拟机

我目前正在进行研究,以确定我们公司在开始使用虚拟化平台时可以预期的整合比率。 在研究如何将观察到的性能(数周的perfmon数据)转换为虚拟化服务器的硬盘arrays需求时,我发现自己不断陷入死胡同。 我熟悉IOP的概念,但是他们似乎是一个过分简单的测量,没有考虑到caching,写入组合等等。有没有关于存储arrays性能分析的重要工作,我错过了? 这似乎是传闻和“黑魔法”接pipe了冷酷,艰难的事实的一个领域。

老实说,这是一个很好的猜测和直觉的感觉。 您可以从基本IOP开始,但是您必须考虑依赖于对方的应用程序,并且会导致并发IO,其他应用程序是独立的并且不太可能是并发的。 这通常会导致计算如此复杂,最终导致四舍五入,直到听起来合理。

如果有疑问,为了获得更高的性能,用户从不抱怨响应速度太快的应用程序。 只要确保保持在预算范围内,否则pipe理层会抱怨。

看一下数字,不要直接猜测。 很多数字不会显示的是caching命中率, 如果你使用SAN,它可能会有一个更大的caching(caching命中率可能大不相同)。

如果您尝试猜测caching命中率和其他实现细节,我认为它会大大地过度复杂化您的configuration。 由于您已经提前完成了一些关注IOPS的性能testing,所以我已经将您的所有写入IOPS加起来,以便获得所需的大致数据。

如果你可以的话,你可以做一些磁盘arraystesting,以确认你自己的IOtypes,你将能够获得x个磁盘的数量。 我的经验法则是:对于7.2k,10k,15k磁盘分别为150,200,250 IOPS,对于RAID 10,每个镜像对添加到条带集中都可以为池增加许多IOPS。 因此,通过7.2k磁盘的两个镜像进行分条将会达到300 IOPS,如果您使用15k磁盘,则分配500 IOPS。

假设你有一个更大的环境来巩固你可能试图找出你需要多less架磁盘。 如果您使用的是15个磁盘架,则2个架子可以为您提供14个镜像对,以及2个热点,从而可以达到3500 IOPS。 当您添加caching和IOsorting和调度时,您可能会获得更高的性能,但不应该降低性能。

YMMV,所以最好用随机IO的大型testing集进行一些testing,以validation您的设备执行模型预测的结果,或者您可以调整模型以匹配观察到的行为。