Hyper-V性能监控: |
Hyper-V性能监控: 物理CPU: \Hyper-V Hypervisor Logical Processor(*)\%Total Run Time %Total Run Time :处理器处理来宾代码和虚拟机监控程序代码所花费时间的百分比 %Total Run Time = %Guest Run Time + %Hypervisor Run Time
虚拟CPU: \Hyper-V Hypervisor Virtual Processor(*)\%Guest Run Time
根分区CPU: \Hyper-V Hypervisor Root Virtual Processor(_Total)\%Total Run Time (注:宿主机本身其实也是一台虚机,该虚机的配置=宿主机本身配置)
Hypervisor\Logical Processors:8 宿主机所有CPU核心总数量 Hypervisor\Virtual Processors:20=4C*3+8 > 8(3台运行中VM,每个VM 4vC,宿主8vC) Hypervisor\Partitions :4=3+1 (3运行中VM+1根分区)
Hyper-V Hypervisor Logical Processor(_Total)\% Total Run Time:物理CPU总体使用率,可用
单台VM CPU(每个核心)利用率:(该值与VM中任务管理器中看到的CPU利用率并不是一回事,不能直接使用该值来衡量VM CPU使用率,实际查看还是使用vM中的任务管理器) Hyper-V Hypervisor Virtual Processor(_Total)\来宾运行时间百分比 (与vCPU数量有关系,不能直接使用该值来衡量实际VM的CPU利用率)
vCPU/pCPU:
上图的最下面黑色区域代表硬件层,包含了硬件信息的描述,中间的Hypervisor层区域,Total代表看到物理CPU的总使用率;Guest代表包括了父分区以及其他正在运行的VM操作系统的总使用率;HvOh表示Hypervisor Overhead,这里的HvOh表示Hypervisor层自己的开销,它的开销数据代表着父分区和其他VM的开销。8Logical CPU,20Virtual CPU(4*3+8) 54%*(4/8)+57%*(4/8)+53%*(4/8)+5%*(8/8)= 87%(所有Guest OS<包括父分区>开销,,数值时刻处于动态,约等于90%) 56%*12/8 + 5%*(8/8)=89% ,约等于90% 当根分区或者子分区CPU压力增大时,Logical Processor\% Total Run Time都会增高。 如果vCPU个数(12,不包含根分区)大于LogicalCPU个数(8)时:第一台VM的CPU利用率达到80%,第二台VM的CPU利用率达到80%,则当第三台VM的CPU利用率逐渐增大时,会导致对物理CPU的争抢,三台VM的CPU利用率都会降低,最后达到一个均衡,如上图
物理CPU和虚拟CPU不能划等号,没有直接关系: 测试: 宿主8C,VM01:8C,VM02:8C 测试1: VM01和VM02同时开机,VM01的Cpu利用率达到80%(任务管理器),VM01:Hv VP 0:80%,Hyper-V Hypervisor Virtual Processor(_Total)\总运行时间百分比:50%。关闭VM02后,Hyper-V Hypervisor Virtual Processor(_Total)\总运行时间百分比:100%。 可得知Hyper-V Hypervisor Virtual Processor(_Total)\总运行时间百分比 与vCPU总数量有关系,vCPU数量越多(只算运行中的VM),该值越低 测试2: VM01开机,VM02关机,VM01的Cpu利用率达到80%(任务管理器),VM01:Hv VP 0=80%,宿主CPU:80%。 启动VM02后,VM02的CPU达到80%(任务管理器)的时候,VM01:Hv VP 0=45%, VM02:Hv VP 0=45%,VM02的CPU达到80%(任务管理器),宿主CPU:99% 总结:vCPU数量越多,宿主CPU利用率越高。当物理CPU利用率已达到100%时,再启动新的VM,则VM之间会争夺CPU资源,导致VM性能下降(此时 Hyper-V Hypervisor Virtual Processor(VM01:Hv VP 0)\总运行时间百分比 会下降,最终每台VM之间比例基本持平)。虽然VM01和VM02分别分配了8vCPU,但实际上只是抢到了4LCPU的资源,相当于4vCPU 测试3: 宿主共计48个logicalCPU,4个NUMA,每个NUMA 12个logicalCPU VM2003: 总结:VM如果只位于某一个NUMA节点上,则不会使用其他NUMA节点上的资源,vCPU与logicalCPU并没有直接对应关系,4vC就会调用到8logicalCPU的资源 =======================================================
The “Hyper-V Hypervisor Virtual Processor” and “Hyper-V Hypervisor Root Virtual Processor” counter sets have the same counters. The only difference between the two is the ““Hyper-V Hypervisor Root Virtual Processor” contains counters for only the Root Virtual Processors (VP’s) whereas “Hyper-V Hypervisor Virtual Processor” has counter for all other partitions. partition=分区=虚机,一个分区就是一个虚机,根分区就是宿主机
与在 Hyper-V 上运行来宾操作系统相关的成本与所有服务器虚拟化软件一样,运行必需的虚拟化代码以支持在 Hyper-V 上运行的来宾操作系统都会产生一定的开销。以下各节总结了在 Hyper-V 虚拟机上运行来宾操作系统时所产生的特定资源开销: CPU 开销在 Hyper-V 虚拟机中运行来宾操作系统时所产生的 CPU 开销的范围是 9% 到 12%。例如,在 Hyper-V 虚拟机中运行的来宾操作系统通常有 88–91% 的空闲 CPU 资源可用于在物理硬件上运行的对等操作系统。 内存开销在 Hyper-V 虚拟机中运行来宾操作系统时所产生的内存开销大约为 300 MB(用于虚拟机监控程序),加上第一次为每台虚拟机分配 1 GB RAM 时产生的 32 MB 内存开销,再加上以后每次为每台虚拟机分配 1 GB RAM 时产生的 8 MB 内存开销。 网络开销与在 Hyper-V 虚拟机中运行来宾操作系统直接相关的网络延迟大约不到一毫秒 (ms),而且来宾操作系统维护的网络输出队列长度通常不超过 1。 磁盘开销在 Hyper-V 中使用直通磁盘功能时,与在 Hyper-V 虚拟机中运行来宾操作系统相关联的磁盘 I/O 开销的范围是 6% 到 8%。例如,在 Hyper-V 上运行的来宾操作系统通常有 92–94% 的空闲磁盘 I/O 可用于在物理硬件上运行的对等操作系统。
|