On this page
purestorage.flasharray.purefa_snap – Manage volume snapshots on Pure Storage FlashArrays
Note
This plugin is part of the purestorage.flasharray collection (version 1.11.0).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install purestorage.flasharray.
To use it in a playbook, specify: purestorage.flasharray.purefa_snap.
New in version 1.0.0: of purestorage.flasharray
Synopsis
- Create or delete volumes and volume snapshots on Pure Storage FlashArray.
 
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.7
 - purestorage >= 1.19
 - py-pure-client >= 1.6.0
 - netaddr
 - requests
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| api_token
        
        string
         | 
      
        
        FlashArray API token for admin privileged user.
         | 
     |
| eradicate
        
        boolean
         | 
      
       
  | 
      
        
        Define whether to eradicate the snapshot on delete or leave in trash.
         | 
     
| fa_url
        
        string
         | 
      
        
        FlashArray management IPv4 address or Hostname.
         | 
     |
| ignore_repl
        
        boolean
         | 
      
       
  | 
      
        
        Only valid for Purity//FA 6.1 or higher
        
       
        If set to true, allow destruction/eradication of snapshots in use by replication.
        
       
        If set to false, allow destruction/eradication of snapshots not in use by replication
         | 
     
| name
        
        string / required
         | 
      
        
        The name of the source volume.
         | 
     |
| offload
        
        string
         | 
      
        
        Only valid for Purity//FA 6.1 or higher
        
       
        Name of offload target for the snapshot.
        
       
        Target can be either another FlashArray or an Offload Target
        
       
        This is only applicable for creation, deletion and eradication of snapshots
        
       
        state of copy is not supported.
        
       
        suffix is not supported for offload snapshots.
         | 
     |
| overwrite
        
        boolean
         | 
      
       
  | 
      
        
        Define whether to overwrite existing volume when creating from snapshot.
         | 
     
| state
        
        string
         | 
      
       
  | 
      
        
        Define whether the volume snapshot should exist or not.
         | 
     
| suffix
        
        string
         | 
      
        
        Suffix of snapshot name.
        
       
        Not used during creation if offload is provided.
         | 
     |
| target
        
        string
         | 
      
        
        Name of target volume if creating from snapshot.
        
       
        Name of new snapshot suffix if renaming a snapshot
         | 
     
Notes
Note
- This module requires the 
purestorageandpy-pure-clientPython libraries - Additional Python librarues may be required for specific modules.
 - You must set 
PUREFA_URLandPUREFA_APIenvironment variables if fa_url and api_token arguments are not passed to the module directly 
Examples
- name: Create snapshot foo.ansible
  purefa_snap:
    name: foo
    suffix: ansible
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present
- name: Create R/W clone foo_clone from snapshot foo.snap
  purefa_snap:
    name: foo
    suffix: snap
    target: foo_clone
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: copy
- name: Create R/W clone foo_clone from remote mnapshot arrayB:foo.snap
  purefa_snap:
    name: arrayB:foo
    suffix: snap
    target: foo_clone
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: copy
- name: Overwrite existing volume foo_clone with snapshot foo.snap
  purefa_snap:
    name: foo
    suffix: snap
    target: foo_clone
    overwrite: true
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: copy
- name: Delete and eradicate snapshot named foo.snap
  purefa_snap:
    name: foo
    suffix: snap
    eradicate: true
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: absent
- name: Rename snapshot foo.fred to foo.dave
  purefa_snap:
    name: foo
    suffix: fred
    target: dave
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: rename
- name: Create a remote volume snapshot on offload device arrayB
  purefa_snap:
    name: foo
    offload: arrayB
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Delete and eradicate a volume snapshot foo.1 on offload device arrayB
  purefa_snap:
    name: foo
    suffix: 1
    offload: arrayB
    eradicate: true
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
  Authors
- Pure Storage Ansible Team (@sdodsley) <pure-ansible-team@purestorage.com>
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/purestorage/flasharray/purefa_snap_module.html