purestorage.flasharray.purefa_pod – Manage AC pods in Pure Storage FlashArrays

Note

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

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

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

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

New in version 1.0.0: of purestorage.flasharray

Synopsis

  • Manage AC pods in a 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
  • requests

Parameters

Parameter Choices/Defaults Comments
api_token
string
FlashArray API token for admin privileged user.
eradicate
boolean
    Choices:
  • no
  • yes
Define whether to eradicate the pod on delete or leave in trash.
fa_url
string
FlashArray management IPv4 address or Hostname.
failover
list / elements=string
The name of the array given priority to stay online if arrays loose contact with eachother.
Oprions are either array in the cluster, or auto
mediator
string
Default:
"purestorage"
Name of the mediator to use for a pod
name
string / required
The name of the pod.
promote
boolean
    Choices:
  • no
  • yes
Promote/demote any pod not in a stretched relationship. .
Demoting a pod will render it read-only.
quiesce
boolean
    Choices:
  • no
  • yes
Quiesce/Skip quiesce when promote is false and demoting an ActiveDR pod.
Quiesce will ensure all local data has been replicated before demotion.
Skipping quiesce looses all pending data to be replicated to the remote pod.
Can only demote the pod if it is in a Acrive DR replica link relationship.
This will default to True
state
string
    Choices:
  • absent
  • present
Define whether the pod should exist or not.
stretch
string
The name of the array to stretch to/unstretch from. Must be synchromously replicated.
To unstretch an array use state absent
You can only specify a remote array, ie you cannot unstretch a pod from the current array and then restretch back to the current array.
To restretch a pod you must perform this from the remaining array the pod resides on.
target
string
Name of clone target pod.
undo
boolean
    Choices:
  • no
  • yes
Use the undo-remote pod when promote is true and promoting an ActiveDR pod.
This will default to True

Notes

Note

  • This module requires the purestorage and py-pure-client Python libraries
  • Additional Python librarues may be required for specific modules.
  • 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 pod named foo
  purefa_pod:
    name: foo
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present

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

- name: Set failover array for pod named foo
  purefa_pod:
    name: foo
    failover:
    - array1
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Set mediator for pod named foo
  purefa_pod:
    name: foo
    mediator: bar
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Stretch a pod named foo to array2
  purefa_pod:
    name: foo
    stretch: array2
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Unstretch a pod named foo from array2
  purefa_pod:
    name: foo
    stretch: array2
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

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

Authors

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