purestorage.flasharray.purefa_pg – Manage protection groups on Pure Storage FlashArrays

From Get docs
Ansible/docs/2.11/collections/purestorage/flasharray/purefa pg module


purestorage.flasharray.purefa_pg – Manage protection groups on Pure Storage FlashArrays

Note

This plugin is part of the purestorage.flasharray collection (version 1.5.1).

To install it use: ansible-galaxy collection install purestorage.flasharray.

To use it in a playbook, specify: purestorage.flasharray.purefa_pg.


New in version 1.0.0: of purestorage.flasharray


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

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

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

pgroup

string / required

The name of the protection group.

state

string

  • absent
  • present

Define whether the protection group should exist or not.

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

Authors

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/purestorage/flasharray/purefa_pg_module.html