ZenDMD Tip - Change Interface Speed

From Zenoss Wiki
Revision as of 16:03, 8 January 2014 by Hydruid (Talk | contribs)$7

Jump to: navigation, search

The following is a zendmd script to set the speed for an interface of a device. Sometimes after a device is modeled the interface speed can be incorrect.

WARNING: Be careful and remember to take a backup and/or snapshot before running the below script!

https://github.com/hydruid/zenoss/blob/master/zendmd/interface_speed.zendmd

DEVICE = '172.16.41.21'
INTERFACE = 'eth0'
SPEED10Mb = '100000000'
SPEED100Mb = '100000000'
SPEED1Gb = '1000000000'
SPEED10Gb = '10000000000'
SPEED = SPEED10Gb
 
d = dmd.Devices.findDevice(DEVICE)
for dev in d.Devices.getSubDevices():
    value = d.getProperty(dev)
    for interface in d.os.interfaces():
        if interface.id.startswith(INTERFACE):
#            print interface.id
#            print interface.speed
            interface.speed = (SPEED)
            commit ()

Don't forget to lock the interface from updates, or once it's remodeled the change will be lost!

http://hydruid-blog.com/?p=675