Skip to content

staaled/pynetforce

 
 

Repository files navigation

Netforce

Netforce is a network infrastructure automation service for managing and configuring network devices.


To start as a developer:

$ git clone https://github.com/eBay/pynetforce.git
$ cd netforce
$ virtualenv ~/Downloads/netforce-dev
$ source ~/Downloads/netforce-dev/bin/activate
$ tox

Features supported for a network switch:

  • Port Enable
  • Port Disable
  • Port-vlan flip
    • Validation support for VLAN change from trunk to access and vice versa for a physical port.
  • Create subnet on vlan interface
    • Validation support for BGP configured bubbles using flat/non-flat networks.
  • Port labelling

Vendor OS supported:

  • Juniper: junos
  • Cisco: nxos and ios
  • Arista: eos

TODO:

  • NAPALM integration: Increase the device driver coverage by adding more device driver functions.

  • OpenConfig Integration: Integrate with OpenConfig to program openconfig enabled devices using yang models as Netforce gives a unified api layer.

Note:

  • Not all Vendor device OS versions have been tested.

  • e.g. new versions of eos supports json parsing and old versions don't. Hence, device drivers are written to support both old and new versions.

Useful links:

https://www.openstack.org/videos/boston-2017/netforce-extending-neutron-to-support-routed-networks-at-scale-in-ebay

License

Licensed under the Apache License, Version 2.0 (the "License"). See Apache License

About

Network infrastructure automation service

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.7%
  • Shell 1.1%
  • Mako 0.2%