We use the Calix B6 platform in our shop. I have set up all of the devices on LibreNMS. While some of the metrics (processor etc) are showing up. I am having trouble especially with the ports not returning utilization on many of the port graphs.
I was wondering if someone could help us through the process of getting ports to map correctly. I am a newbie so I will probably require some hand holding, but I am willing!
I did the initial discoveries etc on a B6-316 blade.
I did a validate.php and everything seems in line.
Hi @bwehrspann
Seems that the snmpwalk is incomplete. Or the SNMP implementation is incomplete. But clearly, with current snmpdata, there is not much we can add.
I am wondering if the issue is not snmpbulkwalk. Also adding a longer timout. Can you try to run this command instead :
snmpwalk -t 10 -OUneb 172.17.1.0 -c public -v 2c . | ./pbin.sh
I tried both snmpwalk without the timeout and snmpbulkwalk with timeout = 10. Both work.
I’ve chosen to use the nobulk: true in the occamos.yaml definition file at this time since it is a bit more specific.
These devices poll slowly.
I have been looking at the port graphs and the labels I don’t think are right. Can we get these port labels to assign to the ports?
OK, I’ll suggest you monitor this for a while and we’ll see the result.
Concerning the port names, unfortunalely, we don’t have any easy way to use anything else than IF-MIB (the standard IF MIB standard).
And I don’t seen a lot of difference between both in fact, GigabitEthernet1/48 becomes Ethernet1/48 in the proprietary mib (which looks less precise). And 10GigabitEthernet becomes XgEthernet (again, XgEthernet does not look very good either).
So if the vendor decided to provide more standard names in IF-MIB, we should definitely stick with that.
Is your device “far” from your LibreNMS device ? What is the latency between both ? If latency is high, increasing the timeout and keeping the bulk is better.
If latency is normal (below 10 ms) then the device is slow and we need to get around that by disabling bulk (using nobulk: true).
Latency is low:
[root@Jesup-LibreNMS definitions]# ping 172.17.1.0
PING 172.17.1.0 (172.17.1.0) 56(84) bytes of data.
64 bytes from 172.17.1.0: icmp_seq=1 ttl=62 time=0.698 ms
64 bytes from 172.17.1.0: icmp_seq=2 ttl=62 time=0.428 ms
64 bytes from 172.17.1.0: icmp_seq=3 ttl=62 time=0.443 ms
64 bytes from 172.17.1.0: icmp_seq=4 ttl=62 time=0.757 ms
64 bytes from 172.17.1.0: icmp_seq=5 ttl=62 time=0.552 ms
64 bytes from 172.17.1.0: icmp_seq=6 ttl=62 time=0.902 ms
64 bytes from 172.17.1.0: icmp_seq=7 ttl=62 time=0.808 ms
So increasing the timeout is probably better. Is there a way to adjust this in occamos.yaml or should I adjust it by device. I have 36 devices I’ll need to adjust if I do it through the gui. Or can I do it dynamically by device group?
I have the Vendor MIBS, but it appears that some of the standard ones in the Vendor MIBS might be overiding the standard ones that LibreNMS normally uses. Can you help me understand which ones to keep?
If latency is low, then you have to use the nobulk variant. Means that the device is not handling the bulk command as we hoped it will do.
Bulk is here to make snmpwalk faster … It behave the exact opposite with your device, so we turn to standard snmpwalk instead if it works.
So the fix will come with LibreNMS update (We’ll change the YAML file). Until then, you can manually change your YAML file (but then you’ll have to revert your fix to get LibreNMS accept the patched version during upgrade).
Good for the mibs. Got the necessary ones and I should be able to add a few sensors etc.
Will create a Pull Request in GitHub so you can test it when done.
@bwehrspann
As I explained, there is no way to use anything else that IF-MIB currently. And IF-MIB implementation is provided by the vendor, not LibreNMS. They decided to provide different names. So if you prefer the proprietary names, you can:
Ask the vendor to change the IF-MIB replies
Rewrite code in LibreNMS to handle proprietary MIB (that’s a significant amount of code to re-write and (most importantly) test).
Still not clear why the vendor provides different names in IF-MIB and proprietary, but my guess is that the proprietary names are “unusual” names, so they decided to use more “usual” names in IF-MIB. And the matching between the proprietary and IF-MIB names is easy (Xg becomes 10Gigabit, etc etc).