NAPALM (Network Automation and Programmability Abstraction Layer with Multivendor support) is python library that implements a set of functions to interact with different vendors using a unified API.
NAPALM supports several methods to connect to the devices, to manipulate configuration and to retrieve data.
- EOS - Using pyEOS. You need version 4.14.6M or superior.
- JunOS - Using junos-eznc
- IOS-XR - Using pyIOSXR
- FortiOS - Using pyFG
EOS | JunOS | IOS-XR | FortiOS | |
---|---|---|---|---|
Name | eos | junos | iosxr | fortios |
Config Management | Full | Full | Full | Full |
Atomic Changes | Yes | Yes | Yes | No |
Rollback | Yes | Yes | Yes | Yes |
Before using the library, please, read the documentation (link below). Specially the "caveats" section:
See the Read the Docs
To install, execute:
pip install napalm
There is an ansible module provided by this API. Make sure you read the documentation and you understand how it works before trying to use it.
If you have any questions, join the mailing list at napalm-automation@googlegroups.com
- David Barroso (dbarroso@spotify.com)
- Elisa Jasinska (elisa@bigwaveit.org)