W3cubDocs

/Ansible 2.10

purestorage.flasharray.purefa_volume – Manage volumes on Pure Storage FlashArrays

Note

This plugin is part of the purestorage.flasharray collection.

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

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

New in version 1.0.0: of purestorage.flasharray

Synopsis

  • Create, delete or extend the capacity of a volume on Pure Storage FlashArray.

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

Parameters

Parameter Choices/Defaults Comments
api_token
string
FlashArray API token for admin privileged user.
bw_qos
string
Bandwidth limit for volume in M or G units. M will set MB/s G will set GB/s To clear an existing QoS setting use 0 (zero)

aliases: qos
eradicate
boolean
    Choices:
  • no
  • yes
Define whether to eradicate the volume on delete or leave in trash.
fa_url
string
FlashArray management IPv4 address or Hostname.
iops_qos
string
IOPs limit for volume - use value or K or M K will mean 1000 M will mean 1000000 To clear an existing IOPs setting use 0 (zero)
move
string
Move a volume in and out of a pod or vgroup
Provide the name of pod or vgroup to move the volume to
Pod and Vgroup names must be unique in the array
To move to the local array, specify local
This is not idempotent - use ignore_errors in the play
name
string / required
The name of the volume.
Volume could be created in a POD with this syntax POD_NAME::VOLUME_NAME.
Volume could be created in a volume group with this syntax VG_NAME/VOLUME_NAME.
overwrite
boolean
    Choices:
  • no
  • yes
Define whether to overwrite a target volume if it already exisits.
rename
string
Value to rename the specified volume to.
Rename only applies to the container the current volumes is in.
There is no requirement to specify the pod or vgroup name as this is implied.
size
string
Volume size in M, G, T or P units.
state
string
    Choices:
  • absent
  • present
Define whether the volume should exist or not.
target
string
The name of the target volume, if copying.

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 volume named foo with a QoS limit
  purefa_volume:
    name: foo
    size: 1T
    bw_qos: 58M
    iops_qos: 23K
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present

- name: Extend the size of an existing volume named foo
  purefa_volume:
    name: foo
    size: 2T
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present

- name: Delete and eradicate volume named foo
  purefa_volume:
    name: foo
    eradicate: yes
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: absent

- name: Create clone of volume bar named foo
  purefa_volume:
    name: foo
    target: bar
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present

- name: Overwrite volume bar with volume foo
  purefa_volume:
    name: foo
    target: bar
    overwrite: yes
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present

- name: Clear volume QoS from volume foo
  purefa_volume:
    name: foo
    bw_qos: 0
    iops_qos: 0
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present

- name: Move local volume foo from local array to pod bar
  purefa_volume:
    name: foo
    move: bar
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Move volume foo in pod bar to local array
  purefa_volume:
    name: bar::foo
    move: local
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Move volume foo in pod bar to vgroup fin
  purefa_volume:
    name: bar::foo
    move: fin
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
volume
dictionary
success
A dictionary describing the changed volume. Only some attributes below will be returned with various actions.

bandwidth_limit
integer
success
Volume bandwidth limit in bytes/sec

created
string
success
Volume creation time

Sample:
2019-03-13T22:49:24Z
iops_limit
integer
success
Volume IOPs limit

name
string
success
Volume name

serial
string
success
Volume serial number

Sample:
361019ECACE43D83000120A4
size
integer
success
Volume size in bytes

source
string
success
Volume name of source volume used for volume copy



Authors

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