Skip to content

Testing Cisco IOS-XE ZTP process with the Flask API endpoint, using Netbox as the source of truth and LibreNMS for monitoring.

License

Notifications You must be signed in to change notification settings

gt732/cisco-ztp-flask-netbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cisco-ztp-flask-netbox

Testing Cisco IOS-XE ZTP process with the Flask API endpoint, using Netbox as the source of truth and LibreNMS for monitoring. The process begins with the router requesting a script from the API endpoint to run inside its guest shell. The script then sends an HTTP post message containing the router's serial number to another API endpoint, triggering a script that uses the serial number to locate the device in Netbox and generate a configuration based on its config context details. Once the configuration is generated, the router sends a HTTP GET request to download and implement the config changes.

The script continues by using napalm to collect interface and IP address details, which are then used to update the device in Netbox. Finally, the script adds the device to LibreNMS for monitoring after completion.

Workflow

alt text

Script Run

alt text

Netbox

  • Onboard interface created temporarily and can be deleted after alt text

LibreNMS

alt text

About

Testing Cisco IOS-XE ZTP process with the Flask API endpoint, using Netbox as the source of truth and LibreNMS for monitoring.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages