Jaredn / PodArc

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PodArc

Django web project to build medium to large scale (not super-scale) datacenter network architectures. This database driven approach allows automation of device configurations, network topologies, and lends itself towards "SDN". Workflow is as follows...:

Build physical locations inside of the app

  • Create a "Datacenter" location
  • Create a "Cage" inside the "datacenter"
  • Create a "Row" inside of a "Cage"
  • Create a "Rack" inside of a "Row"

Create definitions of your network architecture building blocks, called "Pods"

  • Using YAML, define different Pods...
    • Pair of large devices
    • 4x16 CLOS fabrics
    • 6 TORs in a full mesh
    • etc...

Finally - Build your network

  • Create a "Pod" inside of a "Datacenter"
    • Ghost "devices" as defined by your "pod definition" now exist in your database
    • All physical interconnections now exist inside of your database (to be used later for config generation)
  • Assign system MACs to "devices" for use with Zero Touch Provisioning.
    • Config Generation creates individual device base configs using Jinja2 templates
    • Those config files get pushed to repository and host entries are added to DHCP server for ZTP requiring download of generated configuration
  • Connect "Pods" to other "Pods" to create a large datacenter network
    • Uses "Pod Definition" file which reserves "network infrastructure" ports for pod interconnection

About


Languages

Language:HTML 78.3%Language:Python 21.7%