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
    Choices:
  • no
  • yes ←
Define whether to enabled snapshots for the protection group.
eradicate
boolean
    Choices:
  • no ←
  • yes
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
    Choices:
  • absent
  • present ←
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 library
  • You must set PUREFA_URL and PUREFA_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

Authors

Hint

If you notice any issues in this documentation you can edit this document to improve it.