Hi all,

I am trying out the fibrechannel module was recently published, to talk to
some of our Brocade FC switches, and am having some difficulty. It appears
as if the SNMP traffic is working, but there are no metrics being written
(no directory for the switch hostname in the rrd directory), and so no
graphs being drawn.

I installed the required dependancies, pysnmp and python-pyasn1 (running on
Fedora 16, the pyasn1 dependancy only showed up in gmond debug output), so
that the module runs. tcpdump shows SNMP packets that seem ok, but I am not
intimately familiar with the SNMP wire protocol. Many other python modules
are working fine on this machine, so I think my ganglia install is OK.

ganglia version:

: rpm -qa | grep ganglia
ganglia-gmond-3.4.0.1-1.x86_64
ganglia-gmetad-3.4.0.1-1.x86_64
libganglia-3.4.0.1-1.x86_64
ganglia-devel-3.4.0.1-1.x86_64
ganglia-gmond-modules-python-3.4.0.1-1.x86_64

all the rpms were build locally from source (not actually from the 3.4.0
release, but a few days later, because I needed the grid of grids fix)

fibrechannel module config:

: cat /etc/ganglia/conf.d/fibrechannel.pyconf
modules {
    module {
        name = "fibrechannel"
        language = "python"
param switch_1 {
            # ip:hostname
            value = '10.0.31.30:adc_bd1'
     }
#param switch_2 {
        # value = '192.168.1.2:switch2'
     #}
    }
}
#/* Collection groups for the
# example python module */
collection_group {
    collect_every = 20
    time_threshold = 50
    metric {
        name_match = "(.+)in"
        }
    metric {
        name_match = "(.+)out"
        }
    }

snmp config in the python module:

: grep public /usr/lib64/ganglia/python_modules/fibrechannel.py
        cmdgen.CommunityData('public', 'public'),

a few packets from tcpdump:

: sudo tcpdump -N -i br0 port 161
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on br0, link-type EN10MB (Ethernet), capture size 65535 bytes
11:46:45.516389 IP large-marge.49975 > 10.snmp:  GetNextRequest(132)
interfaces.ifTable.ifEntry.ifIndex interfaces.ifTable.ifEntry.ifDescr
interfaces.ifTable.ifEntry.ifInOctets interfaces.ifTable.ifEntry.ifInErrors
interfaces.ifTable.ifEntry.ifInUcastPkts
interfaces.ifTable.ifEntry.ifOutOctets
interfaces.ifTable.ifEntry.ifOutErrors
interfaces.ifTable.ifEntry.ifOutUcastPkts
11:46:45.533948 IP 10.snmp > large-marge.49975:  GetResponse(202)
interfaces.ifTable.ifEntry.ifIndex.805306369=805306369
interfaces.ifTable.ifEntry.ifDescr.805306369="chassis"
interfaces.ifTable.ifEntry.ifInOctets.805306369=1936866241
interfaces.ifTable.ifEntry.ifInErrors.805306369=0
interfaces.ifTable.ifEntry.ifInUcastPkts.805306369=180171758
interfaces.ifTable.ifEntry.ifOutOctets.805306369=70712272
interfaces.ifTable.ifEntry.ifOutErrors.805306369=0
interfaces.ifTable.ifEntry.ifOutUcastPkts.805306369=318150259
11:46:45.546150 IP large-marge.49975 > 10.snmp:  GetNextRequest(173)
interfaces.ifTable.ifEntry.ifIndex.805306369
interfaces.ifTable.ifEntry.ifDescr.805306369
interfaces.ifTable.ifEntry.ifInOctets.805306369
interfaces.ifTable.ifEntry.ifInErrors.805306369
interfaces.ifTable.ifEntry.ifInUcastPkts.805306369
interfaces.ifTable.ifEntry.ifOutOctets.805306369
interfaces.ifTable.ifEntry.ifOutErrors.805306369
interfaces.ifTable.ifEntry.ifOutUcastPkts.805306369

In this case, large-marge is my workstation, the 10.snmp is the brocade
being checked.

So, I cannot see why the rrds are not being written. Any ideas?

Cheers, Michael.
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Ganglia-general mailing list
Ganglia-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ganglia-general

Reply via email to