服务器虚拟化最重要的特色之一就是能够把物理服务器的负载迁移到虚拟服务器上。物理到虚拟(P2V)的迁移可以使你淘汰过时的服务器,从而可以减少数据中心所需的物理服务器数量。尤其具有吸引力的是不牺牲性能就能减少所用的空间、电量、冷却、硬件和许可费。但是在哪个工作负载可以虚拟化有限制,并且这个选择过程对于维护稳定的服务器环境非常关键。
那么你如何识别哪个工作负载迁移到一个虚拟服务器上?通过收集一段时间内精确的趋势数据来获得所考虑的物理服务器一个真实的负载概况。为此,你需要一个监视工具或者一个趋势分析工具。工具可以任选,但是你所需的数据不会随之而变的,这些数据可以最精确地描绘你的物理系统的平均负载。你监视性能趋势的时间越长,你对资源的使用情况的估定越精确。在你决定是否将一个物理服务器迁移到一个虚拟环境时,我建议你收集两到六个周的趋势数据,高资源利用的物理服务器特别需要长时间的监视。
在分析服务器的负载的时候,我建议你关注以下因素:
RAM的使用
平均CPU使用
磁盘空间使用
磁盘I/O(读和写)
网络(读或写)的使用
有许多不同的监视和评估工具来收集这些信息。这有一些我用过的监视工具,用来确定哪一个物理服务器将成为虚拟环境的一个好的候选者。
Microsoft Assessment and Planning Toolkit 4.0(MAP Toolkit):除了许多其它的功能,MAP工具可以收集指定物理服务器的关键的资源利用数据。原始的数据对于虚拟化单个物理服务器很有帮助,但是这个工具可以通过从多个物理服务器收集数据并且如果他们迁移到虚拟环境,可以建议需要多少个Hyper-V主机来容纳那些服务器。以我的经验,推荐的每一个主机的虚拟机的数量比较保守。对于虚拟化管理员新手,这提供了一个很好的起点。
Microsoft Performance Monitor (Perfmon):这个值得信赖的备用工具在收集短期(例如,一到四个周)趋势数据方面相当出色。
Cati:我用Cacti来收集CPU的使用、磁盘的性能和使用、网络的使用相关的基本数据。我用过许多的基于简单网络管理协议(SNMP)监控工具,但是其他插件扩展了它的监控功能。这个工具在用来分析用于Hyper-V和其它Hypervisor的微软和Linux工作负载同样出色。
其他企业的解决方法:监视工具如System Center Operations Manager 和PlateSpin Recon能够提供大量的有关指定的P2V候选者的趋势数据。一些甚至可以推荐哪一个服务器是虚拟化的一个良好的候选者。
那么现在你已经收集了资源利用的数据,这意味着什么呢?你如何通过这些数据知道哪个物理服务器是虚拟化的一个良好的候选者?你怎么知道在一个特定的主机上可以获得多少个VM糟?下面是在Hyper-V环境下根据我的经验得出的一些我建议,它随着资源利用的增长划分成A、B、C 三个等级。
知道了这些等级之后,当你决定迁移一定数量虚拟机到某个特定主机上时,要考虑其中的两个资源。RAM非常重要,因为所有的VM分配的RAM必须在Hyper-V中预留。取决于你的磁盘子系统,磁盘I/O也非常重要,它可能产生性能瓶颈。
也就是说,在Hyper-V没有RAM池时,我主要基于RAM来为每个主机分配VM槽,因为在主机上这个资源经常是最先耗尽的。
最大可用VM槽的示例: 64GB RAM的主机
注意:对于C级别的服务器,理论上可以工作15个虚拟机,在实践中,这可能有点乐观。为了更好的性能,我建议在不同的主机服务器之间拆分C级别的虚拟机。
在你着手实施P2V迁移的时候,确定特定物理工作负载的资源利用率是很关键的。精确的趋势数据可以使你能够确定物理负载的等级。这个过程将对未来机器的稳定性和虚拟机环境的可预测性产生深远的影响,所以需要花时间弄准确。上述的步骤不仅仅是对P2V迁移的指导原则,它们也可以用于新的负载的安装。避免新的负载迁移到物理服务器上,直接安装到虚拟负载上可以帮助减少数据中心的空间、电力、冷却、硬件和许可证的费用。
【编辑推荐】