Linux interfaces can change their index after a reboot:
I have seen an environment of a couple hundred Linux machines perform a mass reboot, and afterwards 5-10% of the machines have a snmp index change on the Linux bootup. This causes Zabbix to report interface down errors, lower speed changes, and then subsequently creating a new set of interfaces on next LLD where it then starts gathering data on the new interfaces and then housekeeping will delete the old interfaces after awhile. After another reboot, these hosts that changed will likely change the SNMPINDEX order likely change back and its rinse-repeat and lose data.
In looking at further information online, I found this post:
https://serverfault.com/questions/16...tence-for-snmp
Here the user posted the question "How can we change the index values to be persistent through reboots. We have seen this if we change an interface form static IP to dynamic as well." "chuckx" then responded with:
"""
Short answer, the SNMP RFCs do not require ifIndex persistence between network manager reinitialization. net-snmp does not provide any special facility to provide this functionality.
From RFC 2863:
The requirement for constancy (between re-initializations) of an interface's ifIndex value is met by requiring that after an interface is dynamically removed, its ifIndex value is not re-used by a different dynamically added interface until after the following re-initialization of the network management system.
The takeaway is that ifIndex entries are explicitly allowed to be used for any interface when the system is re-initialized (i.e. rebooted).
"""
Zabbix, mentions this in the manual: https://www.zabbix.com/documentation...p/dynamicindex
" Index numbers may be dynamic - they may change over time and your item may stop working as a consequence. To avoid this scenario, it is possible to define an OID which takes into account the possibility of an index number changing."
Given the above, and that Zabbix has the ability to do dynamic indexing (as well as caching of said data entries for many many Zabbix versions/years),then why then does standard bundled Linux SNMP template NOT do this?!
I have seen an environment of a couple hundred Linux machines perform a mass reboot, and afterwards 5-10% of the machines have a snmp index change on the Linux bootup. This causes Zabbix to report interface down errors, lower speed changes, and then subsequently creating a new set of interfaces on next LLD where it then starts gathering data on the new interfaces and then housekeeping will delete the old interfaces after awhile. After another reboot, these hosts that changed will likely change the SNMPINDEX order likely change back and its rinse-repeat and lose data.
In looking at further information online, I found this post:
https://serverfault.com/questions/16...tence-for-snmp
Here the user posted the question "How can we change the index values to be persistent through reboots. We have seen this if we change an interface form static IP to dynamic as well." "chuckx" then responded with:
"""
Short answer, the SNMP RFCs do not require ifIndex persistence between network manager reinitialization. net-snmp does not provide any special facility to provide this functionality.
From RFC 2863:
The requirement for constancy (between re-initializations) of an interface's ifIndex value is met by requiring that after an interface is dynamically removed, its ifIndex value is not re-used by a different dynamically added interface until after the following re-initialization of the network management system.
The takeaway is that ifIndex entries are explicitly allowed to be used for any interface when the system is re-initialized (i.e. rebooted).
"""
Zabbix, mentions this in the manual: https://www.zabbix.com/documentation...p/dynamicindex
" Index numbers may be dynamic - they may change over time and your item may stop working as a consequence. To avoid this scenario, it is possible to define an OID which takes into account the possibility of an index number changing."
Given the above, and that Zabbix has the ability to do dynamic indexing (as well as caching of said data entries for many many Zabbix versions/years),then why then does standard bundled Linux SNMP template NOT do this?!
)
Comment