nanog mailing list archives
Re: Templating/automating configuration
From: Brian Knight <ml () knight-networks com>
Date: Tue, 06 Jun 2017 15:48:20 -0500
Because we had different sources of truth which were written in-house, we wound up rolling our own template engine in Python. It took about 3 weeks to write the engine and adapt existing templates. Given a circuit ID, it generates the full config for copy and paste into a terminal session. It also hooks into a configuration parser tool, written in-house, that tracks configured interfaces, so it is easy to see whether the template would overwrite an existing interface. I used the Jinja2 template engine, along with pyodbc/unixODBC/FreeTDS for access to a Microsoft SQL backend. The keys for us are: * extracting information from a source of truth * validating the information for correctness * making sure you don't overwrite existing config * outputting the right templates for the circuit features It made more sense to write a tool than it did to try to adapt something for our environment. If I had a free hand and unlimited budget, I would find a single app that functions as a source of truth for all circuits and products, which includes a templating engine that hooks in easily. -Brian ---- On Tue, 06 Jun 2017 08:22:59 -0500 Graham Johnston <johnstong () westmancom com> wrote ---- Short of complete SDN, for those of you that have some degree of configuration templating and/or automation tools what is it that you run? I'm envisioning some sort of tool that let's me define template snippets of configuration and aids in their deployment to devices. I'm okay doing the heaving lifting in defining everything, I'm just looking for the tool that stitches it together and hopefully makes things a little less error prone for those who aren't as adept. Graham Johnston Network Planner Westman Communications Group 204.717.2829 johnstong () westmancom com<mailto:johnstong () westmancom com>
Current thread:
- Re: Templating/automating configuration, (continued)
- Re: Templating/automating configuration Oliver Elliott (Jun 06)
- Re: Templating/automating configuration Vincent Bernat (Jun 06)
- Re: Templating/automating configuration James Bensley (Jun 07)
- Re: Templating/automating configuration Oliver Elliott (Jun 06)
- Re: Templating/automating configuration Nick Hilliard (Jun 06)
- Re: Templating/automating configuration Christopher Morrow (Jun 06)
- Re: Templating/automating configuration Stefan (Jun 06)
- Re: Templating/automating configuration Alexis Letessier (Jun 06)
- Re: Templating/automating configuration Andrew Dampf (Jun 07)
- Re: Templating/automating configuration Gordon Cook (Jun 11)
- Re: Templating/automating configuration Gordon Cook (Jun 11)
- Re: Templating/automating configuration Gordon Cook (Jun 11)
- Re: Templating/automating configuration Brian Knight (Jun 06)
- Re: Templating/automating configuration Job Snijders (Jun 06)
- RE: Templating/automating configuration Graham Johnston (Jun 14)
- Re: Templating/automating configuration 'Job Snijders' (Jun 14)
- Re: Templating/automating configuration Nick Hilliard (Jun 14)
- Re: Templating/automating configuration Job Snijders (Jun 14)
- Re: Templating/automating configuration Jimmy Hess (Jun 15)
- Re: Templating/automating configuration Mike Meredith (Jun 15)
- Re: Templating/automating configuration Job Snijders (Jun 06)
- Re: Templating/automating configuration Brian Knight (Jun 07)
- Re: Templating/automating configuration James Bensley (Jun 07)