性能监控工具
perf kvm
为了在主机中使用perf kvm,您必须访问/ proc / modules和
/ proc / kallsyms文件。“复制/ proc文件从guest虚拟机到主机“,以将文件传输到主机并对文件运行报告。
注意:
如果直接复制所需的文件(例如,使用scp),您将只复制零的文件
长度。 此过程描述如何首先将guest虚拟机中的文件保存到临时位置
(使用cat命令),然后将它们复制到主机以供perf kvm使用。
在Guest系统上执行:
# cat /proc/modules > /tmp/modules
# cat /proc/kallsyms > /tmp/kallsyms
# scp [email protected]:/tmp/kallsyms guest-kallsyms
# scp [email protected]:/tmp/modules guest-modules
您现在有两个文件来自guest(guest-kallsyms和guest-modules),准备由perf kvm使用。
在Host中执行:
# perf kvm --host --guest --guestkallsyms=guest-kallsyms \ --guestmodules=guest-modules record -a -o perf.data
perf --host和--guest在命令中使用,输出将被存储
perf.data.kvm。 如果仅使用--host,则文件将命名为perf.data.host。
同样,如果只使用--guest,文件将被命名为perf.data.guest。
报告事件
以下示例命令使用通过记录过程获得的文件,和
将输出重定向到新文件中,进行分析。
perf kvm --host --guest --guestmodules=guest-modules report -i perf.data.kvm \ --force > analyze
查看分析文件的内容以检查记录的事件:
cat analyze
虚拟性能监控单元(PMU)
虚拟性能监视单元(vPMU)显示指示客户虚拟机的方式的统计信息
机器运行。
虚拟性能监视单元允许用户识别可能性能的来源
客户虚拟机中的问题。 vPMU基于英特尔的PMU(性能监控)
单位),并且只能在英特尔机器上使用。
只有运行Red Hat Enterprise Linux 6或Red的客户虚拟机才支持此功能
Hat Enterprise Linux 7,并且默认情况下禁用。
要验证系统是否支持vPMU,请检查主机CPU上的arch_perfmon标志
通过运行:
# cat /proc/cpuinfo|grep arch_perfmon
要启用vPMU,请在guest虚拟机XML中将cpu模式指定为host-passthrough:
# virsh dumpxml guest_name |grep "cpu mode"
<cpu mode=‘host-passthrough‘>
启用vPMU后,通过在虚拟机中运行perf来显示虚拟机的性能统计信息