如何使用Hyper-V的PerfMon计数器?

2009-1-5   
分享到:
| |

导读:本文学习使用Hyper-V的PerfMon计数器监视根分区和内存使用率以提升性能管理。

关键词:Hyper-V PerfMon 计数器

 
【TechTarget中国原创】在这系列的第一部分中,TechTarget中国的特约作者Greg Shields讨论了Hyper-V对PerfMon的更改以及如何测量虚拟机处理器的利用率。不过测量处理器计数器是检查Hyper-V虚拟机是否健康的唯一方法。其他现有的计数器有助于识别Hyper-V主机是否超载或者能轻松地完成所分配的任务。在本文中,我们将识别这些附加的计数器以及介绍如何使用它们。
 
查看全文
 
 
 
分享到:
 
 

虚拟机性能管理

 
在许多案例里,虚拟机环境中早期的小错误会导致一些大型的性能问题发生。这些问题可能看起来是非常明显的简单错误,但是请记得再检查一下您的设置,或许您会有大的发现。
 
P2V迁移好处多多,但是在哪个工作负载可以虚拟化有限制,并且这个选择过程对于维护稳定的服务器环境非常关键。该怎么办呢?
 
如果你并不需要在同时运行多种不同类型操作系统环境下工作,基于容器(container-based)的虚拟化也许是一个更佳的选择,它能为用户带来性能优势。
 
如今,VMware在其vCenter产品家族完善了三个新品:VMware vCenter AppSpeed、Chargeback及Lab Manager的更新版本。
 
在上周,F5 Networks宣布将集成vSphere和vCenter Server,以帮助用户管理虚拟环境及自动化更多的应用交付过程。
 



【TechTarget中国原创】在这系列的第一部分中,TechTarget中国的特约作者Greg Shields讨论了Hyper-V对PerfMon的更改以及如何测量虚拟机处理器的利用率。不过测量处理器计数器是检查Hyper-V虚拟机是否健康的唯一方法。其他现有的计数器有助于识别Hyper-V主机是否超载或者能轻松地完成所分配的任务。在本文中,我们将识别这些附加的计数器以及介绍如何使用它们。

  Hyper-V根分区和PerfMon计数器

  PerfMon计数器中有一种与“在安装Hyper-V之前唯一使用的那个操作系统”有关。在Hyper-V实例中,这个叫做根分区。Hyper-V架构要求在每台虚拟主机上运行这样的根分区。这个分区可以是完整的Windows Server版本或者Server Core实例,为本身使用的驱动和宿主其中的虚拟机提供管理访问和服务。由于运行Hyper-V的服务器需要“完整的操作系统”根分区,可能——但不推荐除了Hyper-V,Hyper-V主机还要运行角色或应用。

  由于你能安装其他功能,可能也想要测量根分区的资源使用情况。问题是一旦安装Hyper-V后,PerfMon计数器工作的方式就改变了。查看% Processor Time的值,它跨根分区及所有虚拟机显示整体处理器使用率。如果你只想查看根分区本身的使用率,应该查看计数器Hyper-V Hypervisor Root Virtual Processor\% Total Run Time。这个测量有助你了解服务器“附加”功能的资源需求。

  内存利用率计数器

  Hyper-V的内存利用率是一个计数器,实际上与传统计数器一起使用。Hyper-V不能给虚拟机分配过多内存,也就是说给虚拟机分配的内存不能多于服务器本身所拥有的物理内存。因此你需要计算出能分配多少内存给客户端,并且注意每台虚拟机的使用情况。查看所分配内存的实际使用情况的计数器是Memory\Available Mbytes。

  微软对Hyper-V内存分配的一个准则是为根分区预留至少512MB的RAM。此外,也需要为分配给虚拟机的RAM每个字节预留额外内存。微软的标准是对分配给虚拟机的第一个RAM字节预留额外的32MB,后面的则为8MB。将同台服务器上所有虚拟机的预留空间加起来就是我们应该预留的。由于虚拟机开启时将消耗所有这些分配给它的内存,对于除了根分区的其他所消耗的内存资源是多少,我们可以查看Memory\Available Mbytes计数器的值。

  虚拟机网络的PerfMon计数器

  微软提供了两种可以附属到虚拟机的虚拟网络适配器。“Network Adapter”是一个合成设备,用于平衡到根分区的VMBus连接。正因如此,这个设备需要安装Hyper-V的整合服务。实际上,这些整合服务应该安装到所有Windows工作负荷上。除了让虚拟机获得更好的性能以外,这些服务提供关键管理功能,如时间整合和在线备份。另一个虚拟网络适配器是“Legacy Network Adapter”。这个网络适配器使用较慢的模拟方法,在虚拟机与物理硬件之间转换命令,所以只适用于个别情况。

  在PerfMon里,与这两个适配器相关的计数器都是可用的。对合成驱动(高性能)可以用的计数器是Hyper-V Virtual Network Adapter\Bytes Received/sec和Hyper-V Virtual Network Adapter\Bytes Sent/sec,以及对模拟驱动(低性能)有帮助的Hyper-V Legacy Network Adapter\Bytes Received/sec和Hyper-V Legacy Network Adapter\Bytes Sent/sec。在所有情况下,跨虚拟网络进行的测量创建并捆绑在Hyper-V的Virtual Network Manager物理适配器里。当跨这些计数器查看性能时,需要注意多个虚拟机能共享少量虚拟网络。所以计数器所显示的结果可能是跨多个虚拟机的聚合信息。

  Hyper-V里的其他有用计数器

  最后,Hyper-V添加了三组计数器,乍一看功能有限,不过能识别环境里发生的有趣行为。第一个计数器是Hyper-V Task Manager Detail,提供了已经完成和正在进行的某个任务的信息。

  另一个可用计数器是Hyper-V Virtual Machine Summary,提供虚拟机完成个别活动(如应用快照、删除、合并磁盘及其他行为)的瞬时信息。

  第三个计数器很有趣,叫做Hyper-V Virtual Machine Health Summary,它列出了那些虚拟机运行得很健康以及哪些虚拟机面临崩溃。不过,没有解释这些计数器识别虚拟机某个时候健康的标准信息。

  在查看Performance Monitor实时图象时,虽然这三组计数器不能立即显示出有用信息,不过它们对决定Hyper-V主机的状态非常有用,可以确定Hyper-V主机是脚本的一部分或者创建一个数据采集设置成预定任务运行。对于用在数据采集设置报告里的快照类型的数据,了解虚拟机各种不同操作状态的计数很方便,这样便于使用其他性能度量校正你的架构。

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
登录Email
请输入您的登录Email
密码
下次自动登录