purestorage.flasharray.purefa_pg module – Manage protection groups on Pure Storage FlashArrays
Note
This module is part of the purestorage.flasharray collection (version 1.31.1).
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
. You need further requirements to be able to use this module, see Requirements for details.
To use it in a playbook, specify: purestorage.flasharray.purefa_pg
.
New in purestorage.flasharray 1.0.0
Synopsis
- Create, delete or modify protection groups on Pure Storage FlashArrays.
- If a protection group exists and you try to add non-valid types, eg. a host to a volume protection group the module will ignore the invalid types.
- Protection Groups on Offload targets are supported.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 3.3
- purestorage >= 1.19
- py-pure-client >= 1.26.0
- netaddr
- requests
- pycountry
- urllib3
Parameters
Parameter | Comments |
---|---|
api_token string | FlashArray API token for admin privileged user. |
disable_warnings boolean added in purestorage.flasharray 1.29.0 | Disable insecure certificate warnings in debug logs Choices:
|
enabled boolean | Define whether to enabled snapshots for the protection group. Choices:
|
eradicate boolean | Define whether to eradicate the protection group on delete and leave in trash. Choices:
|
fa_url string | FlashArray management IPv4 address or Hostname. |
host list / elements=string | List of existing hosts to add to protection group. Note that hostnames are case-sensitive however FlashArray hostnames are unique and ignore case - you cannot have hosta and hostA |
hostgroup list / elements=string | List of existing hostgroups to add to protection group. Note that hostgroups are case-sensitive however FlashArray hostgroup names are unique and ignore case - you cannot have groupa and groupA |
name aliases: pgroup string / required | The name of the protection group. |
rename string | Rename a protection group If the source protection group is in a Pod or Volume Group ‘container’ you only need to provide the new protection group name in the same ‘container’ |
safe_mode boolean added in purestorage.flasharray 1.13.0 | Enables SafeMode restrictions on the protection group Once set disabling this can only be performed by Pure Technical Support Choices:
|
state string | Define whether the protection group should exist or not. If specified with volume or host or hostgroup will act on those items in the protection group only. Choices:
|
target list / elements=string | List of remote arrays or offload target for replication protection group to connect to. Note that all replicated protection groups are asynchronous. Target arrays or offload targets must already be connected to the source array. Maximum number of targets per Portection Group is 4, assuming your configuration suppors this. |
volume list / elements=string | List of existing volumes to add to protection group. Note that volume are case-sensitive however FlashArray volume names are unique and ignore case - you cannot have volumea and volumeA |
Notes
Note
- This module requires the
purestorage
andpy-pure-client
Python libraries - Additional Python librarues may be required for specific modules.
- You must set
PUREFA_URL
andPUREFA_API
environment variables if fa_url and api_token arguments are not passed to the module directly
Examples
- name: Create new local protection group purestorage.flasharray.purefa_pg: name: foo fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Create new protection group called bar in pod called foo purestorage.flasharray.purefa_pg: name: "foo::bar" fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Create new replicated protection group purestorage.flasharray.purefa_pg: name: foo target: - arrayb - arrayc fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Create new replicated protection group to offload target and remote array purestorage.flasharray.purefa_pg: name: foo target: - offload - arrayc fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Create new protection group with snapshots disabled purestorage.flasharray.purefa_pg: name: foo enabled: false fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Delete protection group purestorage.flasharray.purefa_pg: name: foo eradicate: true fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 state: absent - name: Eradicate protection group foo on offload target where source array is arrayA purestorage.flasharray.purefa_pg: name: "arrayA:foo" target: offload eradicate: true fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 state: absent - name: Rename protection group foo in pod arrayA to bar purestorage.flasharray.purefa_pg: name: "arrayA::foo" rename: bar fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Create protection group for hostgroups purestorage.flasharray.purefa_pg: name: bar hostgroup: - hg1 - hg2 fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Create protection group for hosts purestorage.flasharray.purefa_pg: name: bar host: - host1 - host2 fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Create replicated protection group for volumes purestorage.flasharray.purefa_pg: name: bar volume: - vol1 - vol2 target: arrayb fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Remove a volume from protection group purestorage.flasharray.purefa_pg: name: bar volume: - vol1 state: absent fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592
Collection links
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/purestorage/flasharray/purefa_pg_module.html