虚拟化有一些很大的好处,但有时虚拟化服务器需要更高的性能,应该转移到物理服务器上。
我的问题是,你怎么知道这些时间是什么时候?我正在寻找可衡量的数据和指标,这些数据和指标表明将服务器移动到自己的物理机柜会对性能产生重大影响。就我个人而言,我对 Windows 很感兴趣,但大概所有平台的基本要素都是相同的。
虚拟化有一些很大的好处,但有时虚拟化服务器需要更高的性能,应该转移到物理服务器上。
我的问题是,你怎么知道这些时间是什么时候?我正在寻找可衡量的数据和指标,这些数据和指标表明将服务器移动到自己的物理机柜会对性能产生重大影响。就我个人而言,我对 Windows 很感兴趣,但大概所有平台的基本要素都是相同的。
我不同意由于性能原因需要将虚拟服务器移至物理服务器。虚拟机管理程序现在非常接近金属,几乎(双关语)没有性能影响。尤其是现在许多电路板制造商都在芯片组中加入了管理程序。如果您使用具有相同硬件的两台服务器,一台运行单个客户机,另一台在物理硬件上运行该客户机的精确副本,我认为您将很难注意到性能差异。
但是,还有其他原因,您可能需要物理服务器而不是虚拟服务器。其中之一是硬件兼容性。如果您的应用程序需要具有自己独特总线的非标准硬件,您可能无法在虚拟机中运行它。
我很想听听别人要说什么。好问题。
注意:我们有经过虚拟化的服务器,然后放回相同的硬件上,只是为了拥有我们喜欢的快照/vmotion 功能。
我不是这个主题的专家,但一般来说:非常饥饿的 I/O 应用程序(尤其是那些写得很少而且速度很快的应用程序)是那些拥有自己的物理服务器的应用程序。
找到它们也不是很难,您只需运行性能监视器并寻找高 i/o 等待时间。
此外,高端数据库通常拥有自己的专用服务器,原因如下:
我必须执行 V2P 的一个案例是一个 MS SQL 机器,它运行在双 3.2Ghz 双核 CPU(总 CPU 14.4Ghz)上,我们迁移到 ESX 2.5 集群,其中底层硬件更新,更多较慢的(2.4Ghz IIRC)内核。即使有 4 个 vCPU,这个虚拟机也只能获得 8-8.5Ghz 的有效聚合 CPU。迁移前 60% 的峰值 CPU 变为迁移后的 90-100%,客户想要净空,所以我们恢复到物理。为了具体回答您的问题,我们看到该机器在 Perfmon 和 VI 客户端中以 100% 的 CPU 运行。一个更好的解决方案(在我看来)应该是升级到更快的 CPU,但是有这样的边缘情况,这是不经济的,尤其是随着 CPU 速度变慢的趋势
使用 ESX 4,我们可以将这样的盒子增加到 8 个 vCPU,但当时这不是一个选择。
至于寻找可能表明您需要放弃 VM 的性能上限,然后在 VMWare 环境中使用 Windows 来宾,那么 Perfmon 和 VI Client 的组合应该能够胜任查找任何性能受限的 VM 的任务. 如果可以的话,添加一些 SAN 分析,但如果 SAN 出现问题,那么您几乎可以肯定地重新处理存储以隔离和/或增强存储 VM 的虚拟磁盘的卷。这同样适用于任何其他 OS\Hypervisor 组合 - 尽可能获取任何内部统计信息,但将它们与 Hypervisor 对正在发生的事情的看法相关联,因为在 VM 中报告 100% CPU(例如)并不一定意味着 Hypervisor 永远无法交付更多性能,
这在很大程度上取决于所执行的服务。
我通常会查看正在使用的资源,并确定它们是否确实是此客人及其提供的服务的瓶颈。
这是这样的:
如果您有一个运行 Web 服务器 (IIS) 的双核 (2vSMP)、4GB RAM 来宾,并且您没有最大化 CPU 和 RAM 请求,那么来宾可能不需要更多硬件。
我们遇到过在虚拟化平台上运行 Oracle 数据库的性能与类似大小的硬件服务器几乎相同的情况。
显然,如果您想拥有一个 16 核服务器作为 VM,您可能很难看到它的性能与专用硬件一样好。
当虚拟机资源匮乏(或者可能其他虚拟机资源匮乏)时,例如:
我会说它是当服务器处于消耗足够的服务器资源而无法共享硬件的地步时。
ESX、ESXi 和 Window Hyper V 都应该为您提供接近真实的性能。因此,只要其中一台机器本身不使用 90% 的资源,您就不需要迁移到真正的硬件。
例外情况是,如果硬件出现故障,您不希望将 2 个域控制器之类的东西放在同一个盒子上。
我怀疑是否有一个通用的答案,但是如果您担心性能,那么这就是您必须考虑的。显而易见的是检查您是否正在最大化 CPU、I/O、...
而且,性能测试和基准测试还可以帮助您确定虚拟化是否有任何损失,以及在主机上拥有单个 VM 是否合理。
您首先需要确定哪个资源是瓶颈。
Windows 性能监视器 ( perfmon ) 为磁盘队列、虚拟内存统计等各个方面提供了大量计数器。
如果你是磁盘绑定的,让虚拟机直接访问磁盘而不是使用 VMWare 的 vmx 文件可能会有很大帮助。
我认为这完全取决于两个因素:
只是我的2cts。