Files
napalm-danos/README.md
Pieprzycki Piotr 5c3492f13c Update docs
2018-04-08 11:28:15 +02:00

110 lines
3.6 KiB
Markdown

[![PyPI](https://img.shields.io/pypi/v/napalm-vyos.svg)](https://pypi.python.org/pypi/napalm-vyos)
[![PyPI](https://img.shields.io/pypi/dm/napalm-vyos.svg)](https://pypi.python.org/pypi/napalm-vyos)
[![Build Status](https://travis-ci.org/napalm-automation-community/napalm-vyos.svg?branch=master)](https://travis-ci.org/napalm-automation-community/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'}`