netconf_config - netconf device configuration
New in version 2.2.
Synopsis
- Netconf is a network management protocol developed and standardized by the IETF. It is documented in RFC 6241.
- This module allows the user to send a configuration XML file to a netconf device, and detects if there was a configuration change.
Requirements (on host that executes module)
- python >= 2.6
- ncclient
Options
parameter | required | default | choices | comments |
---|---|---|---|---|
allow_agent (added in 2.4)
| no | True | if true, enables querying SSH agent (if found) for keys if false, disables querying the SSH agent for ssh keys | |
datastore (added in 2.4)
| no | auto | auto, uses candidate and fallback to running candidate, edit <candidate/> datastore and then commit running, edit <running/> datastore directly | |
host | yes | the hostname or ip address of the netconf device | ||
hostkey_verify | no | True | if true, the ssh host key of the device must match a ssh key present on the host if false, the ssh host key of the device is not checked | |
look_for_keys (added in 2.4)
| no | True | if true, enables looking in the usual locations for ssh keys (e.g. ~/.ssh/id_*) if false, disables looking for ssh keys | |
password | yes | password of the user to authenticate with | ||
port | no | 830 | the netconf port | |
save (added in 2.4)
| no | The save argument instructs the module to save the running- config to the startup-config if changed. | ||
src (added in 2.4)
| no | Specifies the source path to the xml file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with xml. | ||
username | yes | the username to authenticate with | ||
xml | no | the XML content to send to the device |
Examples
- name: set ntp server in the device netconf_config: host: 10.0.0.1 username: admin password: admin xml: | <config xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0"> <system xmlns="urn:ietf:params:xml:ns:yang:ietf-system"> <ntp> <enabled>true</enabled> <server> <name>ntp1</name> <udp><address>127.0.0.1</address></udp> </server> </ntp> </system> </config> - name: wipe ntp configuration netconf_config: host: 10.0.0.1 username: admin password: admin xml: | <config xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0"> <system xmlns="urn:ietf:params:xml:ns:yang:ietf-system"> <ntp> <enabled>false</enabled> <server operation="remove"> <name>ntp1</name> </server> </ntp> </system> </config>
Return Values
Common return values are documented here Return Values, the following are the fields unique to this module:
name | description | returned | type | sample |
---|---|---|---|---|
server_capabilities | list of capabilities of the server | success | list | ['urn:ietf:params:netconf:base:1.1', 'urn:ietf:params:netconf:capability:confirmed-commit:1.0', 'urn:ietf:params:netconf:capability:candidate:1.0'] |
Notes
Note
- This module supports devices with and without the candidate and confirmed-commit capabilities. It always use the safer feature.
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/netconf_config_module.html