purefa_pg – Manage protection groups on Pure Storage FlashArrays¶
New in version 2.4.
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 >= 2.7
purestorage
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
api_token
string
/ required
|
FlashArray API token for admin privileged user.
|
|
enabled
boolean
|
|
Define whether to enabled snapshots for the protection group.
|
eradicate
boolean
|
|
Define whether to eradicate the protection group on delete and leave in trash.
|
fa_url
string
/ required
|
FlashArray management IPv4 address or Hostname.
|
|
host
list
|
List of existing hosts to add to protection group.
|
|
hostgroup
list
|
List of existing hostgroups to add to protection group.
|
|
pgroup
string
/ required
|
The name of the protection group.
|
|
state
string
|
|
Define whether the protection group should exist or not.
|
target
list
added in 2.8 |
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 Protection Group is 4, assuming your configuration supports this.
|
|
volume
list
|
List of existing volumes to add to protection group.
|
Notes¶
Note
This module requires the
purestorage
Python libraryYou 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
purefa_pg:
pgroup: foo
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Create new replicated protection group
purefa_pg:
pgroup: 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
purefa_pg:
pgroup: 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
purefa_pg:
pgroup: foo
enabled: false
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Delete protection group
purefa_pg:
pgroup: 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
purefa_pg:
pgroup: "arrayA:foo"
target: offload
eradicate: true
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
state: absent
- name: Create protection group for hostgroups
purefa_pg:
pgroup: bar
hostgroup:
- hg1
- hg2
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Create protection group for hosts
purefa_pg:
pgroup: bar
host:
- host1
- host2
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Create replicated protection group for volumes
purefa_pg:
pgroup: bar
volume:
- vol1
- vol2
target: arrayb
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]