100% CPU Utilization despite MIB OIDs showing all zero values
search cancel

100% CPU Utilization despite MIB OIDs showing all zero values

book

Article ID: 219703

calendar_today

Updated On:

Products

CA Performance Management - Usage and Administration DX NetOps

Issue/Introduction

We have F5 Load Balancers that are showing CPU Utilization of 100%.

Yet MIB queries for the OIDs that are polled for that metric show all zero values. Why?

[root@DCHost ~]# snmpwalk -v2c -c comm ip 1.3.6.1.4.1.3375.2.1.8.2.3.1.1
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.49.46.48 = STRING: "1.0"
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.49.46.50 = STRING: "1.2"
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.49.46.52 = STRING: "1.4"
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.49.46.54 = STRING: "1.6"
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.50.46.48 = STRING: "2.0"
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.50.46.50 = STRING: "2.2"
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.50.46.52 = STRING: "2.4"
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.1.3.50.46.54 = STRING: "2.6"

[root@DCHost ~]# snmpwalk -v2c -c comm ip 1.3.6.1.4.1.3375.2.1.8.2.3.1.28
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.49.46.48 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.49.46.50 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.49.46.52 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.49.46.54 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.50.46.48 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.50.46.50 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.50.46.52 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.28.3.50.46.54 = Counter64: 0

[root@DCHost ~]# snmpwalk -v2c -c comm ip 1.3.6.1.4.1.3375.2.1.8.2.3.1.29
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.49.46.48 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.49.46.50 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.49.46.52 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.49.46.54 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.50.46.48 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.50.46.50 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.50.46.52 = Counter64: 0
SNMPv2-SMI::enterprises.3375.2.1.8.2.3.1.29.3.50.46.54 = Counter64: 0

Is the calculation on the Vendor Certification (VC) in use correct?

Is the metric expression for F5 CPU Utilization correct?
 
<Version>1.0</Version>
<Author>CA</Author>
<FacetType descriptorClass="com.ca.im.core.datamodel.certs.CertificationFacetDescriptorImpl" name="F5TMMCPU">
  <Documentation>Support for F5 BigIP TMM CPU Stats</Documentation>
  <FacetOf name="Item" namespace="http://im.ca.com/core"/>
    <Protocol>SNMP</Protocol>
    <MIB>F5-BIGIP-SYSTEM-MIB</MIB>
    <DisplayName>F5 BigIP TMM CPU Stats</DisplayName>
    <AttributeGroup external="true" list="true" name="F5TMMCPUGroup">
        <Attribute name="Index" type="ObjectID">
          <IsKey>true</IsKey>
          <IsIndex>true</IsIndex>
          <Source>1.3.6.1.4.1.3375.2.1.8.2.3.1.1</Source>
        </Attribute>
        <Attribute name="sysTmmStatTmTotalCycles" type="Long">
          <IsKey>false</IsKey>
          <NeedsDelta>true</NeedsDelta>
          <Source>1.3.6.1.4.1.3375.2.1.8.2.3.1.28</Source>
        </Attribute>
        <Attribute name="sysTmmStatTmIdleCycles" type="Long">
          <IsKey>false</IsKey>
          <NeedsDelta>true</NeedsDelta>
          <Source>1.3.6.1.4.1.3375.2.1.8.2.3.1.29</Source>
        </Attribute>
    </AttributeGroup>
    <Expressions>
        <ExpressionGroup destCert="{http://im.ca.com/normalizer}NormalizedProcessCpuUsageInfo" name="F5TMMCPUDS">
            <Expression destAttr="Indexes">Index</Expression>
            <Expression destAttr="Names">"F5 TMM CPU " + Index</Expression>
            <Expression destAttr="Descriptions">"Statistics for TMM CPU " + Index + " usage"</Expression>
           <Expression destAttr="Utilization">100.*(1.-snmpProtectedDiv(sysTmmStatTmIdleCycles,sysTmmStatTmTotalCycles))</Expression>
        </ExpressionGroup>
    </Expressions>
</FacetType>
</DataModel>

Environment

All supported DX NetOps Performance Management releases

Cause

F5 CPU Utilization is measured different than many other vendors and can be misleading at first glance.

Resolution

In this instance we're determining how many idle cycles there were, and if there are none it indicates that ALL CPUs are busy.

This would mean zero values from the targeted OIDs as seen here, which in the case of F5 CPU Utilization means 100% utilization.