Monitoring F5 via Zabbix

Posted on Posted in DevOps & Networking

Zabbix is a very powerful monitoring system that can integrate with almost any product you can imagine.

I wanted to share a useful template for monitoring F5 Loadbalancers via SNMP using Zabbix.

The template uses SNMP to get the following data from the F5:

  • CPU
  • Memory
  • Network performance
  • SSL performance (TPS, protocols, errors)
  • Virtual Servers, Pools (Discovered automatically)

The following triggers are defined:

  • High CPU utilization
  • Out of sync configuration state
  • Low free TMM memory
  • Node/Pool/Virtual Server is disabled
  • Node/Pool/Virtual Server is down or unavailable

Here are a few example graphs that demonstrate what can be visualized with this data:

F5 SNMP Configuration (via TMSH shell)

modify sys snmp communities add { <SNMP_COMMUNITY> { community-name <SNMP_COMMUNITY> } }

modify sys snmp allowed-addresses add { <ZABBIX_IP_ADDRESS> }

Zabbix configuration for this template

  1. Download SNMP MIB files from your F5 device
    • Login to your device via HTTPS > Home/Welcome screen > Downloads > SNMP MIBs
  2. Unzip the MIB files on your Zabbix server (and Zabbix proxies if you are using a distributed architecture) in the SNMP MIBs directory (CentOS default is /usr/share/snmp/mibs/)
  3. Restart Zabbix server service (and Zabbix proxy service if you are using a distributed architecture)
  4. Import the template to Zabbix  (Configuration > Templates > Import > Choose file > Leave all default options checked > Import)
  5. Configure the F5 host in Zabbix:
    • “SNMP Interfaces” should be set to the F5 management IP
    • Define a Macro {$SNMP_COMMUNITY} with the community you configured earlier on your F5 device
  6. If everything was configured correctly you should start seeing the data, then you can increase the discovery rule intervals under the Template if you want (right now these are set to every minute)

Version notes:

  • I’ve used this template with F5 versions 11.x and 12.x devices and F5 version 11.x MIB files
  • If you are using Zabbix 2.x there is an additional step of creating value maps
    • Administration > General > Dropdown box on the right > Value Mapping > Create value map
    • The list of value maps is in the zabbix-2.4 folder

You can get the template here for Zabbix 2.x and 3.x: https://github.com/dimachait/zabbix-templates/tree/master/F5

 

7 thoughts on “Monitoring F5 via Zabbix

  1. Excellent work overall. There is a problem with CPU discovery though – the CPUs are discovered, but the items don’t work because it says “no OID exists”

    1. Hi Aviram,

      The issue you are describing is most likely an outdated SNMP MIB file
      Can you check on your Zabbix server (or proxy if you are using a proxy) if this file /usr/share/snmp/mibs/F5-BIGIP-SYSTEM-MIB.txt contains sysMultiHostCpuUsageRatio5s

      If the MIB file is outdated you should not see this kind of response when using snmpwalk, this is an example with F5 1600 that has 2 CPUs:
      snmpwalk -v 2c -c F5-BIGIP-SYSTEM-MIB::sysMultiHostCpuUsageRatio5m
      F5-BIGIP-SYSTEM-MIB::sysMultiHostCpuUsageRatio5m.”0″.1 = Wrong Type (should be Counter64): Gauge32: 10
      F5-BIGIP-SYSTEM-MIB::sysMultiHostCpuUsageRatio5m.”0″.2 = Wrong Type (should be Counter64): Gauge32: 11

  2. Excellent work 🙂 But I have a problem with CPU discovery, the CPUs are discovered but the item don’t work :
    No Such Instance currently exists at this OID

  3. Nice work. However, I’m having a problem importing the template into Zabbix 3.4.3:

    Cannot find value map “F5 sysCmSyncStatusId” used for item “ConfigSync status” on “Template_F5_SNMP”.

    Because that, the template is not imported.

    Please, could you help me?

    Regards.

    Pedro

    1. Hi Pedro,
      Did you use the Zabbix 3.x template? it has that value map.
      I just tested with Zabbix server 3.4.4 and it imported it without any errors.

      Regards,
      Dima

  4. Portuguese br:
    Amigos, eu consegui fazer funcionar com estas dicas no zabbix versao 3.0.3 , estou monitorando o balanceador F5 big ip 2000, aparece o template com o seguinte nome Template_F5_SNMP .

    english:
    Friends, I was able to work with these tips in zabbix version 3.0.3, I am monitoring the balancer F5 big ip 2000, the template with the following name Template_F5_SNMP appears.

Leave a Reply

Your email address will not be published. Required fields are marked *