Forum Discussion
LMacchi_55183
Nimbostratus
Jun 30, 2009Empty TMM Memory graph in Cacti
Hi,
I'm pretty new to F5 world, but learning fast. I've installed Cacti in a RedHat Server to monitor some of our F5 boxes.
Following a tutorial found here I've got it up and running, almost all configured as I need.
However, I can't get the TMM memory graph to work, all the values appear as NaN. Some details:
Inside the server where cacti is installed, using the shell, I go to scripts folder and run the script manually...
php ss_f5-bigip-tmm-memory.php f5_ip public 2 161 10
sysStatMemoryTotal: 13136560128 sysStatMemoryUsed: 2379967036
I go to rra folder, and run this command using the graph from one of the boxes as argument:
rrdtool fetch vp-01_tmmmemtotal_22.rrd AVERAGE | tail
1246389600: nan nan
1246389900: nan nan
1246390200: nan nan
1246390500: nan nan
1246390800: nan nan
1246391100: nan nan
1246391400: nan nan
1246391700: nan nan
1246392000: nan nan
1246392300: nan nan
When running this other command...
rrdtool info vp-01_tmmmemtotal_22.rrd
filename = "vp-01_tmmmemtotal_22.rrd"
rrd_version = "0003"
step = 300
last_update = 1246282493
ds[TmmMemTotal].type = "GAUGE"
ds[TmmMemTotal].minimal_heartbeat = 600
ds[TmmMemTotal].min = 0.0000000000e+00
ds[TmmMemTotal].max = NaN
ds[TmmMemTotal].last_ds = "UNKN"
ds[TmmMemTotal].value = 0.0000000000e+00
ds[TmmMemTotal].unknown_sec = 293
ds[TmmMemUsed].type = "GAUGE"
ds[TmmMemUsed].minimal_heartbeat = 600
ds[TmmMemUsed].min = 0.0000000000e+00
ds[TmmMemUsed].max = NaN
ds[TmmMemUsed].last_ds = "UNKN"
ds[TmmMemUsed].value = 0.0000000000e+00
ds[TmmMemUsed].unknown_sec = 293
rra[0].cf = "AVERAGE"
rra[0].rows = 500
rra[0].pdp_per_row = 1
rra[0].xff = 5.0000000000e-01
rra[0].cdp_prep[0].value = NaN
rra[0].cdp_prep[0].unknown_datapoints = 0
rra[0].cdp_prep[1].value = NaN
rra[0].cdp_prep[1].unknown_datapoints = 0
rra[1].cf = "AVERAGE"
rra[1].rows = 600
rra[1].pdp_per_row = 1
rra[1].xff = 5.0000000000e-01
rra[1].cdp_prep[0].value = NaN
rra[1].cdp_prep[0].unknown_datapoints = 0
rra[1].cdp_prep[1].value = NaN
rra[1].cdp_prep[1].unknown_datapoints = 0
rra[2].cf = "AVERAGE"
rra[2].rows = 700
rra[2].pdp_per_row = 6
rra[2].xff = 5.0000000000e-01
rra[2].cdp_prep[0].value = NaN
rra[2].cdp_prep[0].unknown_datapoints = 0
rra[2].cdp_prep[1].value = NaN
rra[2].cdp_prep[1].unknown_datapoints = 0
rra[3].cf = "AVERAGE"
rra[3].rows = 775
rra[3].pdp_per_row = 24
rra[3].xff = 5.0000000000e-01
rra[3].cdp_prep[0].value = NaN
rra[3].cdp_prep[0].unknown_datapoints = 18
rra[3].cdp_prep[1].value = NaN
rra[3].cdp_prep[1].unknown_datapoints = 18
rra[4].cf = "AVERAGE"
rra[4].rows = 797
rra[4].pdp_per_row = 288
rra[4].xff = 5.0000000000e-01
rra[4].cdp_prep[0].value = NaN
rra[4].cdp_prep[0].unknown_datapoints = 162
rra[4].cdp_prep[1].value = NaN
rra[4].cdp_prep[1].unknown_datapoints = 162
rra[5].cf = "MAX"
rra[5].rows = 500
rra[5].pdp_per_row = 1
rra[5].xff = 5.0000000000e-01
rra[5].cdp_prep[0].value = NaN
rra[5].cdp_prep[0].unknown_datapoints = 0
rra[5].cdp_prep[1].value = NaN
rra[5].cdp_prep[1].unknown_datapoints = 0
rra[6].cf = "MAX"
rra[6].rows = 600
rra[6].pdp_per_row = 1
rra[6].xff = 5.0000000000e-01
rra[6].cdp_prep[0].value = NaN
rra[6].cdp_prep[0].unknown_datapoints = 0
rra[6].cdp_prep[1].value = NaN
rra[6].cdp_prep[1].unknown_datapoints = 0
rra[7].cf = "MAX"
rra[7].rows = 700
rra[7].pdp_per_row = 6
rra[7].xff = 5.0000000000e-01
rra[7].cdp_prep[0].value = NaN
rra[7].cdp_prep[0].unknown_datapoints = 0
rra[7].cdp_prep[1].value = NaN
rra[7].cdp_prep[1].unknown_datapoints = 0
rra[8].cf = "MAX"
rra[8].rows = 775
rra[8].pdp_per_row = 24
rra[8].xff = 5.0000000000e-01
rra[8].cdp_prep[0].value = NaN
rra[8].cdp_prep[0].unknown_datapoints = 18
rra[8].cdp_prep[1].value = NaN
rra[8].cdp_prep[1].unknown_datapoints = 18
rra[9].cf = "MAX"
rra[9].rows = 797
rra[9].pdp_per_row = 288
rra[9].xff = 5.0000000000e-01
rra[9].cdp_prep[0].value = NaN
rra[9].cdp_prep[0].unknown_datapoints = 162
rra[9].cdp_prep[1].value = NaN
rra[9].cdp_prep[1].unknown_datapoints = 162
Finally, here's the script:
[root@yblhpdefvm scripts] more f5-bigip-tmm-cpu.pl~
!/usr/bin/perl
Usage: f5-bigip-tmm-cpu.pl
use Net::SNMP qw(:snmp);
my $host = $ARGV[0];
my $snmp_comm = $ARGV[1];
chomp $host;
chomp $snmp_comm;
my $tmmTotalCyl = '.1.3.6.1.4.1.3375.2.1.1.2.1.41.0';
my $tmmIdleCyl = '.1.3.6.1.4.1.3375.2.1.1.2.1.42.0';
my $tmmSleepCyl = '.1.3.6.1.4.1.3375.2.1.1.2.1.43.0';
my ($session, $error) = Net::SNMP->session(
-hostname => $host,
-community => $snmp_comm,
-port => 161,
-version => 'snmpv2c',
-nonblocking => 0
);
if (!defined $session)
{
print "Received no SNMP response from $host\n";
print STDERR "Error: $error\n";
exit -1;
}
poll CPU oids
my $polled_oids = $session->get_request(
-varbindlist =>
[$tmmTotalCyl, $tmmIdleCyl, $tmmSleepCyl] );
calculate CPU Utilization
my $tmm_cpu = (( $polled_oids->{$tmmTotalCyl} -
($polled_oids->{$tmmIdleCyl} + $polled_oids->{$tmmSleepCyl}))
/ $polled_oids->{$tmmTotalCyl} * 100) ;
Round to integer
$tmm_cpu = int($tmm_cpu + .5);
print CPU Utilization to stdout for cli validation
print $tmm_cpu;
As I said, I'm fairly new, and I can't seem to find the problem.
Any help will be deeply appreciated.
Cheers,
Laura
- JRahm
Admin
I too was having issues with the memory template. I re-configured it and now am getting results. I have some other updates as well, including LTM pool stats, GTM wideip/pool stats, WA hit counts, v.10 global host cpu stats (5sec/1min/5min), etc. I'll be expanding as I have time. You can download it from the wiki page: - LMacchi_55183
Nimbostratus
Hi, - JRahm
Admin
I removed it, the memory stat oids are entered in the data templates, so there is no need for the script. - Steve_Hong_8454
Nimbostratus
Hi Jason,
So where can I graph the memory usage? Have you had any issues with using SNMPv3? When I use SNMPv3, Cacti is no longer graphing the "F5 BIG-IP - Memory Utilization". Any thoughts?
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects