lparstat命令我不常用,但可以给你以下思路。
topas
topas中的cpu% 可以和entc这个值结合起来得出实际的cpu利用率。topas看到的cpu的百分比是 (实际使用的cpu)/(运行时获得的physical cpu),entc是运行时分配的physical cpu /EC。但topas的entc是ec的使用率,但不是cpu的使用率。
因为CPU利用率=用户态CPU%+系统态CPU%=usr%+sys%。
但实际上还有wait%和idle%这一块也是在physical cpu的占用当中的。换句话说,wait%和idle%都是在ec的使用率的分子当中,但不算在cpu使用率的分子当中。
我们如果定义ec的使用率=运行时分配的physical cpu /EC,那么设想,如果是dedicated CPU模式,ec的使用率相当于一直都是100%。
告警阈值:这个需要根据系统的特点,虚拟化的目的之一就是合并资源,共享资源,有些系统,平时不用资源,偶尔有大量资源。这种系统,设置VP:EC=10:1,就是系统设计人员的初衷,为什么需要告警呢?除非设计有失误。不过假设,已经用了10倍的CPU时间片,并且此时CPU%达到70%,也就是此时VP的利用率(VP usr%+VP sys%)超过70%可以考虑是否需要报警,但如果系统是个ETL系统,需要在明天开门之前把ETL处理完,运维人员在乎的是CPU利用率还是处理速度呢? 我想肯定是希望CPU 100%用足,赶紧把ETL处理完。
BTW:不是阀值,是阈值,本人深入研究过阀值、阈值、阙值等写法