Arctiq: Ansible for Networks: Beyond Static Templates


During a recent consulting project with a large Canadian ISP, focused on network automation, we embarked on a journey to re-evaluate how Juniper routers were provisioned. Up until now, all of the Ansible for networks publications and development seemed to be focused on leveraging Ansible to install config files from a directory.  While this is logical and can be fairly easily maintained, in that you curate the static files, and automate their deployment, it doesn’t help solve for efficiencies in mitigating human error.

The work we did over the past few months is to create playbooks and jinja templates that take a series of variables, that define a router’s configuration, and dynamically build the configuration files.  Once built and assembled, the playbooks install the newly built configuration files. The playbook runs are idempotent, and help remove human error in template building, by using the logic we wrote into the templates.




Tim Fairweather, Partner, Arctiq