Update docs
This commit is contained in:
parent
47227d1cf0
commit
5c3492f13c
104
README.md
104
README.md
|
|
@ -3,3 +3,107 @@
|
||||||
[](https://travis-ci.org/napalm-automation-community/napalm-vyos)
|
[](https://travis-ci.org/napalm-automation-community/napalm-vyos)
|
||||||
|
|
||||||
# napalm-vyos
|
# napalm-vyos
|
||||||
|
|
||||||
|
|
||||||
|
General support matrix
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
===================== ==============
|
||||||
|
_ VyOS
|
||||||
|
===================== ==============
|
||||||
|
**Module Name** napalm-vyos
|
||||||
|
**Driver Name** vyos
|
||||||
|
**Structured data** Yes
|
||||||
|
**Minimum version** 1.1.6
|
||||||
|
**Backend library** `netmiko`_
|
||||||
|
===================== ==============
|
||||||
|
|
||||||
|
Configuration support matrix
|
||||||
|
----------------------------
|
||||||
|
|
||||||
|
===================== ==========
|
||||||
|
_ VyOS
|
||||||
|
===================== ==========
|
||||||
|
**Config. replace** Yes
|
||||||
|
**Config. merge** Yes
|
||||||
|
**Compare config** Yes
|
||||||
|
**Atomic Changes** Yes
|
||||||
|
**Rollback** Yes
|
||||||
|
===================== ==========
|
||||||
|
|
||||||
|
|
||||||
|
Other methods
|
||||||
|
-------------
|
||||||
|
|
||||||
|
============================== =====
|
||||||
|
_ VyOS
|
||||||
|
============================== =====
|
||||||
|
**load_template** |yes|
|
||||||
|
**ping** |yes|
|
||||||
|
**traceroute** |no|
|
||||||
|
============================== =====
|
||||||
|
|
||||||
|
|
||||||
|
Optional arguments
|
||||||
|
------------------
|
||||||
|
|
||||||
|
NAPALM supports passing certain optional arguments to some drivers. To do that you have to pass a dictionary via the
|
||||||
|
:code:`optional_args` parameter when creating the object::
|
||||||
|
|
||||||
|
>>> from napalm import get_network_driver
|
||||||
|
>>> driver = get_network_driver('eos')
|
||||||
|
>>> optional_args = {'my_optional_arg1': 'my_value1', 'my_optional_arg2': 'my_value2'}
|
||||||
|
>>> device = driver('192.168.76.10', 'dbarroso', 'this_is_not_a_secure_password', optional_args=optional_args)
|
||||||
|
>>> device.open()
|
||||||
|
|
||||||
|
List of supported optional arguments
|
||||||
|
____________________________________
|
||||||
|
|
||||||
|
* :code:`port` (vyos) - Allows you to specify a port other than the default.
|
||||||
|
* :code:`key_file` (vyos) - Netmiko/Paramiko argument, path to a private key file (default: 'False').
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Prerequisites
|
||||||
|
-------------
|
||||||
|
|
||||||
|
|
||||||
|
VyOS has no native HTTP API or NETCONF capability.
|
||||||
|
We are using Netmiko for ssh connections and scp file transfers.
|
||||||
|
Having Netmiko installed in your working box is a prerequisite.
|
||||||
|
|
||||||
|
VyOS in version 1.1.x (tested 1.1.7)
|
||||||
|
|
||||||
|
napalm==2.*
|
||||||
|
paramiko
|
||||||
|
netmiko>=1.1.0
|
||||||
|
vyattaconfparser
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Configuration file
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Currently VyOS driver supports two different configuration formats:
|
||||||
|
* load_replace_candidate - Full config file (with brackets) like in /config/config.boot
|
||||||
|
Due to the OS nature, we do not support a replace using
|
||||||
|
a set-style configuration format.
|
||||||
|
* load_merge_candidate - Currently driver supports set-style configuration format.
|
||||||
|
Example
|
||||||
|
|
||||||
|
`set system login banner pre-login "test"`
|
||||||
|
|
||||||
|
Vyos require configuration file (load_replace) to contain comment like following
|
||||||
|
|
||||||
|
`/* Warning: Do not remove the following line. */
|
||||||
|
/* === vyatta-config-version: "cluster@1:config-management@1:conntrack-sync@1:conntrack@1:cron@1:dhcp-relay@1:dhcp-server@4:firewall@5:ipsec@4:nat@4:qos@1:quagga@2:system@6:vrrp@1:wanloadbalance@3:webgui@1:webproxy@1:zone-policy@1" === */
|
||||||
|
/* Release version: VyOS 1.1.7 */`
|
||||||
|
|
||||||
|
Otherwise VyOS reject `load` operation
|
||||||
|
|
||||||
|
Notes
|
||||||
|
------------------
|
||||||
|
* The NAPALM-vyos driver supports all Netmiko arguments as either standard arguments (hostname, username, password, timeout) or as optional_args (everything else).
|
||||||
|
|
||||||
|
* The NAPALM-vyos driver supports authentication with ssh key. Please specify path to a key in optional_args
|
||||||
|
`'optional_args': {'key_file': '/home/user/ssh_private_key'}`
|
||||||
|
|
|
||||||
2
setup.py
2
setup.py
|
|
@ -12,7 +12,7 @@ reqs = [str(ir.req) for ir in install_reqs]
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name="napalm-vyos",
|
name="napalm-vyos",
|
||||||
version="0.1.4",
|
version="0.1.5",
|
||||||
packages=find_packages(),
|
packages=find_packages(),
|
||||||
author="Piotr Pieprzycki",
|
author="Piotr Pieprzycki",
|
||||||
author_email="piotr.pieprzycki@dreamlab.pl",
|
author_email="piotr.pieprzycki@dreamlab.pl",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue