RANCID integration

Hi,

I found the below example config for RANCID in Horizon 30.0, but I can’t find any documentation on how to implement it.

Can someone point me to any useful resources?

opennms@18310a59bd5c:/usr/share/opennms/etc/examples$ more rancid-configuration.xml
<?xml version="1.0"?>
<rancid-configuration delay="3600" retries="1">

<!-- Configuration example that uses policy-manage -->
<policies>
<policy-manage name="example1">
  <package name="example1">
    <filter>IPADDR != '0.0.0.0'</filter>
    <include-range begin="1.1.1.1" end="254.254.254.254" />
  </package>
  <schedule name="global" type="weekly">
	<time day="sunday" begins="12:30:00" ends="12:45:00"/>
	<time day="sunday" begins="13:30:00" ends="14:45:00"/>
	<time day="monday" begins="13:30:00" ends="14:45:00"/>
	<time day="tuesday" begins="13:00:00" ends="14:45:00"/>
  </schedule>
 </policy-manage>
</policies>

  <mapping sysoid-mask=".1.3.6.1.4.1.9.1" type="cisco"/>
  <mapping sysoid-mask=".1.3.6.1.4.1.9.5" type="cat5"/>
  <mapping sysoid-mask=".1.3.6.1.4.1.1916.2" type="extreme"/>
  <mapping sysoid-mask=".1.3.6.1.4.1.2636.1" type="juniper"/>
  <mapping sysoid-mask=".1.3.6.1.4.1.4874.1" type="erx"/>
  <mapping sysoid-mask=".1.3.6.1.4.1.11.2.3.7.11" type="hp"/>


</rancid-configuration>

It’s considered deprecated and probably not functional. The world has largely moved on from RANCID and it’s been superseded by other projects and solutions, as I understand it. Full disclosure, I’ve never used it, and I don’t know anyone else that ever has, either.

What are you trying to accomplish with it?

I am looking to backup device configs. I looked at DeviceConfigMonitor which uses TFTP, is there any other way that I can achieve this in OpenNMS?

Considered Oxidized? That’s what we’re using in combo with Netbox and OpenNMS. We have python tooling to keep all in Sync.

Any links that I could potentially refer to for an idea on how to implement with OpenNMS?

Turn key? I’m not sure… we use Netbox as our source of truth, then push added devices into OpenNMS via API, and to Gitlab for Oxidized w/ CI/CD.

It’s fairly trivial to pull data from Netbox and then use the provision.pl script included with OpenNMS to provision devices into OpenNMS as for the Oxidized part, if you’re running on the same system that’s just a flat file update which again could be scripted to pull from Netbox or the OpenNMS API depending upon your needs.

FWIW I think there is plans to integrate Horizon/Meridian with Oxidized? At least that was the rumblings I heard when we started on this, which is why we went Oxidized, assuming it would come to proper integration at some point down the road.

Thanks, I will look into this.

1 Like

That’s exactly what the DCB feature does. SSH connection to the device → tell device to push config to OpenNMS via TFTP.

Not as far as I am aware. We replaced the functionality offered in a RANCID or Oxidized integration with the in-house developed DeviceConfigBackup solution instead.

I heard that was going to be replaced with Oxidized from the Horizon/Meridian consulting sales team… but that it wasn’t ready for prime time yet, I guess maybe that was a fallacy. shrug

Yeah, I don’t know then, happy to be wrong! Do you remember about when that conversation happened?

Fall 2021, paraphrasing it was something like the roadmap had Oxidized as a built-in but it wasn’t ready yet when we brought up RANCID/Auto-backup, we were steered away from DCB that Oxidized was the future path.