Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
App::Netdisco::Worker:UsergContributeddPerl:Docuker::Plugin::MakeRancidConf(3)

NAME
       MakeRancidConf -	Generate rancid	Configuration

INTRODUCTION
       This worker will	generate a rancid configuration	for all	devices	in
       Netdisco.

       Optionally you can provide configuration	to control the output, however
       the defaults are	sane for rancid	versions 3.x and will create one
       rancid group called "default" which contains all	devices. Those devices
       not discovered successfully within the past day will be marked as
       "down" for rancid to skip.  Configuration is saved to the ~/rancid
       subdirectory of Netdisco's home folder.

       Note that this only generates the router.db files, you will still need
       to configure rancid's .cloginrc and schedule "rancid-run" to run.

       You could run this worker at 09:05 each day using the following
       configuration:

	schedule:
	  makerancidconf:
	    when: '5 9 * * *'

       Since MakeRancidConf is a worker	module it can also be run via
       "netdisco-do":

	~/bin/netdisco-do makerancidconf

       Skipped devices and the reason for skipping them	can be seen by using
       "-D":

	~/bin/netdisco-do makerancidconf -D

CONFIGURATION
       Here is a complete example of the configuration,	which must be called
       "rancid". All keys are optional:

	rancid:
	  rancid_cvsroot:  '$ENV{NETDISCO_HOME}/rancid'	# default
	  rancid_conf:	   '/etc/rancid'		# default
	  down_age:	   '1 day'			# default
	  delimiter:	   ';'				# default
	  default_group:   'default'			# default
	  groups:
	    groupname1:	   'host_group1_acl'
	    groupname2:	   'host_group2_acl'
	  vendormap:
	    vname1:	   'host_group3_acl'
	    vname2:	   'host_group4_acl'
	  excluded:
	    - 'host_group5_acl'
	    - 'another.host.example.com'
	  by_ip:	   'host_group6_acl'
	  by_hostname:	   'host_group7_acl'

       Note that the default directory for writing files is not
       /var/lib/rancid so you may wish to set this in "rancid_cvsroot",
       (especially if migrating	from the old "netdisco-rancid-export" script).

       Any values above	that are a host	group ACL will take either a single
       item or a list of network identifiers or	device properties. See the ACL
       documentation
       <https://github.com/netdisco/netdisco/wiki/Configuration#access-
       control-lists> wiki page	for full details. We advise you	to use the
       "host_groups" setting and then refer to named entries in	that, for
       example:

	host_groups:
	  coredevices: '192.0.2.0/24'
	  edgedevices: '172.16.0.0/16'
	  grp-nxos:    'os:nx-os'

	rancid:
	  groups:
	    core_devices: 'group:coredevices'
	    edge_devices: 'group:edgedevices'
	  vendormap:
	    cisco-nx:	  'group:grp-nxos'
	  by_ip:	  'any'

       Do not forget that rancid also needs configuring	when adding a new
       group, such as scheduling the group to run, adding it to	rancid.conf,
       setting up the email config and creating	the repository with
       "rancid-cvs".

   "rancid_conf"
       The location where the rancid configuration (rancid.types.base and
       rancid.types.conf) is installed.	It will	be used	to check the existence
       of device types before exporting	the devices to the rancid
       configuration. If no match is found the device will not be added	to
       rancid.

   "rancid_cvsroot"
       The location to write rancid group configuration	files (router.db)
       into. A subdirectory for	each group will	be created.

   "down_age"
       This should be the same or greater than the interval between regular
       discover	jobs on	your network. Devices which have not been discovered
       within this time	will be	marked as "down" to rancid.

       The format is any time interval known and understood by PostgreSQL,
       such as at
       <https://www.postgresql.org/docs/10/static/functions-datetime.html>.

   "delimiter"
       Set this	to the delimiter character for your router.db entries if
       needed to be different from the default,	the default is ";".

   "default_group"
       Put devices into	this group if they do not match	any other groups
       defined.

   "groups"
       This dictionary maps rancid group names with configuration which	will
       match devices in	the Netdisco database.

       The left	hand side (key)	should be the rancid group name, the right
       hand side (value) should	be a Netdisco ACL
       <https://github.com/netdisco/netdisco/wiki/Configuration#access-
       control-lists> to select	devices	in the Netdisco	database.

   "vendormap"
       If the device vendor in Netdisco	is not the same	as the rancid vendor
       script or device	type, configure	a mapping here.

       The left	hand side (key)	should be the rancid device type, the right
       hand side (value) should	be a Netdisco ACL
       <https://github.com/netdisco/netdisco/wiki/Configuration#access-
       control-lists> to select	devices	in the Netdisco	database.

       Note that vendors might have a large array of operating systems which
       require different rancid	modules. Mapping operating systems to rancid
       device types is a good solution to use the correct device type.
       Example:

	host_groups:
	  grp-ciscosb:	 'os:ros'

	rancid:
	  vendormap:
	    cisco-sb:	 'group:grp-ciscosb'

   "excluded"
       Netdisco	ACL
       <https://github.com/netdisco/netdisco/wiki/Configuration#access-
       control-lists> to identify devices that will be excluded	from the
       rancid configuration.

   "by_ip"
       Netdisco	ACL
       <https://github.com/netdisco/netdisco/wiki/Configuration#access-
       control-lists> to select	devices	which will be written to the rancid
       config as an IP address,	instead	of the DNS FQDN	or SNMP	hostname.

   "by_hostname"
       Netdisco	ACL
       <https://github.com/netdisco/netdisco/wiki/Configuration#access-
       control-lists> to select	devices	which will have	the unqualified
       hostname	written	to the rancid config. This is done simply by stripping
       the "domain_suffix" configuration setting from the device FQDN.

SEE ALSO
       o   <http://www.shrubbery.net/rancid/>

       o   <https://github.com/ytti/oxidized>

       o   <https://github.com/netdisco/netdisco/wiki/Configuration#access-control-lists>

perl v5.32.1		      App::Netdisco::Worker::Plugin::MakeRancidConf(3)

NAME | INTRODUCTION | CONFIGURATION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=App::Netdisco::Worker::Plugin::MakeRancidConf&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help