New in version 2.2.
Create snapshots of the running states of selected features, add new show commands for snapshot creation, delete and compare existing snapshots.
parameter | required | default | choices | comments |
---|---|---|---|---|
action | yes |
| Define what snapshot action the module would perform. |
|
compare_option | no |
| Snapshot options to be used when action=compare . |
|
comparison_results_file | no | Name of the file where snapshots comparison will be store. |
||
description | no | Snapshot description to be used when action=create . |
||
element_key1 | no | Specify the tags used to distinguish among row entries, to be used when action=add . |
||
element_key2 | no | Specify the tags used to distinguish among row entries, to be used when action=add . |
||
host | yes | Specifies the DNS host name or address for connecting to the remote device over the specified transport. The value of host is used as the destination address for the transport. |
||
password | no | Specifies the password to use to authenticate the connection to the remote device. This is a common argument used for either cli or nxapi transports. If the value is not specified in the task, the value of environment variable ANSIBLE_NET_PASSWORD will be used instead. |
||
path | no | ./ | Specify the path of the file where new created snapshot or snapshots comparison will be stored, to be used when action=create and save_snapshot_locally=true or action=compare . |
|
port | no | 0 (use common port) | Specifies the port to use when building the connection to the remote device. This value applies to either cli or nxapi. The port value will default to the appropriate transport common port if none is provided in the task. (cli=22, http=80, https=443). |
|
provider | no | Convenience method that allows all nxos arguments to be passed as a dict object. All constraints (required, choices, etc) must be met either by individual arguments or values in this dict. |
||
row_id | no | Specifies the tag of each row entry of the show command's XML output, to be used when action=add . |
||
save_snapshot_locally | no |
| Specify to locally store a new created snapshot, to be used when action=create . |
|
section | no | Used to name the show command output, to be used when action=add . |
||
show_command | no | Specify a new show command, to be used when action=add . |
||
snapshot1 | no | First snapshot to be used when action=compare . |
||
snapshot2 | no | Second snapshot to be used when action=compare . |
||
snapshot_name | no | Snapshot name, to be used when action=create or action=delete . |
||
ssh_keyfile | no | Specifies the SSH key to use to authenticate the connection to the remote device. This argument is only used for the cli transport. If the value is not specified in the task, the value of environment variable ANSIBLE_NET_SSH_KEYFILE will be used instead. |
||
transport | yes | cli | Configures the transport connection to use when connecting to the remote device. The transport argument supports connectivity to the device over cli (ssh) or nxapi. |
|
use_ssl | no |
| Configures the transport to use SSL if set to true only when the transport=nxapi , otherwise this value is ignored. |
|
username | no | Configures the username to use to authenticate the connection to the remote device. The value of username is used to authenticate either the CLI login or the nxapi authentication depending on which transport is used. If the value is not specified in the task, the value of environment variable ANSIBLE_NET_USERNAME will be used instead. |
# Create a snapshot and store it locally - nxos_snapshot: action: create snapshot_name: test_snapshot description: Done with Ansible save_snapshot_locally: true path: /home/user/snapshots/ host: "{{ inventory_hostname }}" username: "{{ un }}" password: "{{ pwd }}" # Delete a snapshot - nxos_snapshot: action: delete snapshot_name: test_snapshot host: "{{ inventory_hostname }}" username: "{{ un }}" password: "{{ pwd }}" # Delete all existing snapshots - nxos_snapshot: action: delete_all host: "{{ inventory_hostname }}" username: "{{ un }}" password: "{{ pwd }}" # Add a show command for snapshots creation - nxos_snapshot: section: myshow show_command: show ip interface brief row_id: ROW_intf element_key1: intf-name host: "{{ inventory_hostname }}" username: "{{ un }}" password: "{{ pwd }}" # Compare two snapshots - nxos_snapshot: action: compare snapshot1: pre_snapshot snapshot2: post_snapshot comparison_results_file: compare_snapshots.txt compare_option: summary path: '../snapshot_reports/' host: "{{ inventory_hostname }}" username: "{{ un }}" password: "{{ pwd }}"
Common return values are documented here Common Return Values, the following are the fields unique to this module:
name | description | returned | type | sample |
---|---|---|---|---|
report_file | name of the file where the new snapshot or snapshots comparison have been stored. | verbose mode | string | /home/gabriele/Desktop/ntc-ansible/ansible_snapshot |
final_snapshots | list of final snapshots. | verbose mode | list | [{'date': 'Tue Sep 13 10:58:08 2016', 'description': 'First snapshot', 'name': 'first_snap'}, {'date': 'Tue Sep 13 10:27:31 2016', 'description': 'Pre-snapshot', 'name': 'pre_snapshot'}, {'date': 'Tue Sep 13 10:37:50 2016', 'description': 'Post-snapshot', 'name': 'post_snapshot'}] |
existing_snapshots | list of existing snapshots. | verbose mode | list | [{'date': 'Tue Sep 13 10:58:08 2016', 'description': 'First snapshot', 'name': 'first_snap'}, {'date': 'Tue Sep 13 10:27:31 2016', 'description': 'Pre-snapshot', 'name': 'pre_snapshot'}] |
updates | commands sent to the device | verbose mode | list | ['snapshot create post_snapshot Post-snapshot'] |
changed | check to see if a change was made on the device | always | boolean | True |
Note
transport=cli
may cause timeout errors.
Note
The element_key1
and element_key2
parameter specify the tags used to distinguish among row entries. In most cases, only the element_key1 parameter needs to specified to be able to distinguish among row entries.
Note
action=compare
will always store a comparison report on a local file.
For more information on what this means please read Core Modules
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, developing_test_pr and Developing Modules.
© 2012–2016 Michael DeHaan
© 2016 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/nxos_snapshot_module.html