purefa_pg – Manage protection groups on Pure Storage FlashArrays

From Get docs
Ansible/docs/2.8/modules/purefa pg module


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

  • no
  • yes

Define whether to enabled snapshots for the protection group.

eradicate

boolean

  • 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

  • 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.


© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/purefa_pg_module.html