na_ontap_snapshot_policy – NetApp ONTAP manage Snapshot Policy¶
New in version 2.8.
Requirements¶
The below requirements are needed on the host that executes this module.
- A physical or virtual clustered Data ONTAP system. The modules support Data ONTAP 9.1 and onward
- Ansible 2.6
- Python2 netapp-lib (2017.10.30) or later. Install using ‘pip install netapp-lib’
- Python3 netapp-lib (2018.11.13) or later. Install using ‘pip install netapp-lib’
- To enable http on the cluster you must run the following commands ‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
comment
-
|
A human readable comment attached with the snapshot. The size of the comment can be at most 255 characters.
|
|
count
list
|
Retention count for the snapshots created by the schedule.
|
|
enabled
boolean
|
|
Status of the snapshot policy indicating whether the policy will be enabled or disabled.
|
hostname
string
/ required
|
The hostname or IP address of the ONTAP instance.
|
|
http_port
integer
|
Override the default port (80 or 443) with this port
|
|
https
boolean
|
|
Enable and disable https
|
name
-
/ required
|
Name of the snapshot policy to be managed. The maximum string length is 256 characters.
|
|
ontapi
integer
|
The ontap api version to use
|
|
password
string
/ required
|
Password for the specified user.
aliases: pass |
|
schedule
list
|
Schedule to be added inside the policy.
|
|
snapmirror_label
list
added in 2.9 |
SnapMirror label assigned to each schedule inside the policy. Use an empty string ('') for no label.
|
|
state
-
|
|
If you want to create, modify or delete a snapshot policy.
|
use_rest
string
|
|
REST API if supported by the target system for all the resources and attributes the module requires. Otherwise will revert to ZAPI.
Always -- will always use the REST API
Never -- will always use the ZAPI
Auto -- will try to use the REST Api
|
username
string
/ required
|
This can be a Cluster-scoped or SVM-scoped account, depending on whether a Cluster-level or SVM-level API is required. For more information, please read the documentation https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/.
aliases: user |
|
validate_certs
boolean
|
|
If set to
no , the SSL certificates will not be validated.This should only set to
False used on personally controlled sites using self-signed certificates. |
vserver
-
added in 2.9 |
The name of the vserver to use. In a multi-tenanted environment, assigning a Snapshot Policy to a vserver will restrict its use to that vserver.
|
Examples¶
- name: Create Snapshot policy
na_ontap_snapshot_policy:
state: present
name: ansible2
schedule: hourly
count: 150
enabled: True
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
hostname: "{{ netapp_hostname }}"
https: False
- name: Create Snapshot policy with multiple schedules
na_ontap_snapshot_policy:
state: present
name: ansible2
schedule: ['hourly', 'daily', 'weekly', 'monthly', '5min']
count: [1, 2, 3, 4, 5]
enabled: True
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
hostname: "{{ netapp_hostname }}"
https: False
- name: Create Snapshot policy owned by a vserver
na_ontap_snapshot_policy:
state: present
name: ansible3
vserver: ansible
schedule: ['hourly', 'daily', 'weekly', 'monthly', '5min']
count: [1, 2, 3, 4, 5]
snapmirror_label: ['hourly', 'daily', 'weekly', 'monthly', '']
enabled: True
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
hostname: "{{ netapp_hostname }}"
https: False
- name: Modify Snapshot policy with multiple schedules
na_ontap_snapshot_policy:
state: present
name: ansible2
schedule: ['daily', 'weekly']
count: [20, 30]
snapmirror_label: ['daily', 'weekly']
enabled: True
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
hostname: "{{ netapp_hostname }}"
https: False
- name: Delete Snapshot policy
na_ontap_snapshot_policy:
state: absent
name: ansible2
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
hostname: "{{ netapp_hostname }}"
https: False
Status¶
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors¶
- NetApp Ansible Team (@carchi8py) <ng-ansibleteam@netapp.com>
Hint
If you notice any issues in this documentation, you can edit this document to improve it.