Monday, June 22, 2020

Network Automation Workflow Program

A while ago i built the netpalm project

https://github.com/tbotnz/netpalm

Talks a Rest API to your app and CLI/NETCONF/RESTCONF to your network devices

  • Provides a multi-level abstraction interface for service modeling of Create, Retrieve, Delete methods
  • Ability to write your own service templates
  • Per device task queuing (Ensure you dont overload your VTY's)
  • Large amount of supported multi vendor devices ( cheers to the netmiko & napalm & ncclient lads )
  • Supports TextFSM for parsing/structuring device data (includes ntc-templates)
  • Supports Jinja2 for model driven deployments of config onto devices accross napalm, netmiko and ncclient
  • Can be used to execute any python script via the ReST API and includes passing in of parameters
  • Includes large postman collection of examples
  • Supports automated download and installation of TextFSM templates from http://textfsm.nornir.tech online TextFSM development tool
  • Automatically generates a JSON schema for any Jinja2 Template
  • Can render NETCONF XML responses into JSON on the fly
  • Can render Jinja2 templates only if required via the API
  • Asynchronous parallel processing
  • Task oriented

I've also put together an UI (experimental) for it built on top of the popular node-red framework. See image below

https://pbs.twimg.com/media/EV9me-sUYAAKLHG?format=jpg&name=large

Feel free to give it a try ( requires a running netpalm app as a pre-req )

https://github.com/tbotnz/netpalm-flow

Just trying to gauge if there is sufficient interest in the UI project to continue to develop :)



No comments:

Post a Comment