天天看点

《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一2.4.1 CPU/内存

本节书摘来华章计算机《vsphere性能设计:性能密集场景下cpu、内存、存储及网络的最佳设计实践》一书中的第2章 ,第2.4.1节,[美] 克里斯托弗·库塞克(christopher kusek) 著 吕南德特·施皮斯(rynardt spies)姚海鹏 刘韵洁 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

生成cpu和内存负载对于测试vsphere功能或者观察负载下的应用性能十分有用。尽管有大量工具可以生成这个负载,但是使用可以同时生成这两种负载的单个工具可以简化你的测试。

prime95

仿真cpu和内存负载最老的工具之一是prime95。这个工具最初是为了帮助寻找质数(现在仍出于这个目的),但它同时也是一个有用的负载仿真工具。

当你第一次运行prime95时,会提示你用特定功能来运行一个压力测试。例如,你可以选择给cpu但不给ram施加压力,或者你可以选择给两者都施加压力。图2-13显示了压力测试的选项,选择“blend(tests some of everything, lots of ram tested)”作为测试参数。这个测试会同时测试cpu以及内存。

《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一2.4.1 CPU/内存

注意图2-13中的number of torture test threads to run字段,它表明了进行压力测试的cpu数量。如果你有4个vcpu而只选择两个线程,prime95将只消耗cpu负载50%的性能。为了测试所有vcpu,要确保整个值与配置的vcpu的数量相符。

有多个原因使你可能想要对一个或多个虚拟机的cpu和内存进行压力测试。以下列表提供了一些常见的例子,但是根据个人需求可能还有许多其他原因:

如果对你的esxi主机物理硬件进行压力测试,那么在多个虚拟机上同时使用prime95是一个好方法。如果配置虚拟机使用所有可用的cpu和内存资源,那么使用prime95可以为物理cpu和内存加压,并有可能在将服务器放入生产环境之前发现错误的硬件。这一般称为“burn-in”测试。

在环境中引入模拟cpu和内存负载可以确定负载下的虚拟机性能。比如,如果一个应用的基准性能标准(如每秒的数据库请求)低于正常情况,prime95可以引入负载并随后引起cpu或者内存争用。这样你就可以看到应用在这种负载下的性能,并且知道如果在生产环境中出现这种情景,应用将会有怎样的性能。

对于测试像vsphere drs这样的功能,生成cpu和内存负载是一个非常好的方式。通过模拟负载来确保drs可以自动迁移虚拟机来平衡负载。还可以用它来确认达到了cpu和内存的预留。可能最重要的是,如果虚拟机接收到了符合配置限制、预留或共享资质的资源,你可以进行观察。当使用资源池给虚拟机分配cpu和内存资源时,这是尤为重要的。为资源池分配资源的更多细节见第4章。

存在多种原因使你想要在环境中生成模拟cpu和内存负载。不管是什么原因,prime95都是一个用来仿真负载的好工具。

要学习有关prime95的更多信息以及下载副本,请访问www.mersenne.org/freesoft。