purestorage.flasharray.purefa_pod module – Manage AC pods in Pure Storage FlashArrays
Note
This module is part of the purestorage.flasharray collection (version 1.39.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.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: purestorage.flasharray.purefa_pod.
New in purestorage.flasharray 1.0.0
Synopsis
- Manage AC pods in a Pure Storage FlashArray. 
Requirements
The below requirements are needed on the host that executes this module.
- python >= 3.3 
- purestorage >= 1.19 
- py-pure-client >= 1.26.0 
- netaddr 
- requests 
- pycountry 
- urllib3 
Parameters
| Parameter | Comments | 
|---|---|
| FlashArray API token for admin privileged user. | |
| Name of fleet member on which to perform the operation. This requires the array receiving the request is a member of a fleet and the context name to be a member of the same fleet. Default:  | |
| Name of the default protection default for the pod Only applicable for existing pods Name must include the pod name Will create the PG in the pod if it doesn’t already exist To remove an existing defaul protection group provide [] | |
| This enables you to eradicate pods with contents. Choices: 
 | |
| Disable insecure certificate warnings in debug logs Choices: 
 | |
| Define whether to eradicate the pod on delete or leave in trash. Choices: 
 | |
| FlashArray management IPv4 address or Hostname. | |
| 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 | |
| Flag used to override checks for quota management operations. If set to true, pod usage is not checked against the quota_limits that are set. If set to false, the actual logical bytes in use are prevented from exceeding the limits set on the pod. Client operations might be impacted. If the limit exceeds the quota, the operation is not allowed. Choices: 
 | |
| Name of the mediator to use for a pod Default:  | |
| The name of the pod. | |
| Promote/demote any pod not in a stretched relationship. . Demoting a pod will render it read-only. Choices: 
 | |
| 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 Choices: 
 | |
| Logical quota limit of the pod in K, M, G, T or P units, or bytes. | |
| Define if default_protection_pg has retention lock enabled Choices: 
 | |
| Define whether the pod should exist or not. Choices: 
 | |
| 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. | |
| Name of clone target pod. | |
| Allows pod creation to fail if array health is not optimal Choices: 
 | |
| Use the undo-remote pod when promote is true and promoting an ActiveDR pod. This will default to True Choices: 
 | |
| Whether to keep the default container protection for the pod Only applicable for first creation of a pod Choices: 
 | 
Notes
Note
- This module requires the - purestorageand- py-pure-clientPython libraries.
- Additional Python libraries may be required for specific modules. 
- You must set - PUREFA_URLand- PUREFA_APIenvironment variables if fa_url and api_token arguments are not passed to the module directly.
Examples
- name: Create new pod named foo without SafeMode default protection
  purestorage.flasharray.purefa_pod:
    name: foo
    with_default_protection: false
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present
- name: Create new pod named foo with default protection PG safe, and with PG retention lock disabled
  purestorage.flasharray.purefa_pod:
    name: foo
    default_protection_pg: safe
    retention_lock: false
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present
- name: Delete and eradicate pod named foo
  purestorage.flasharray.purefa_pod:
    name: foo
    eradicate: true
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: absent
- name: Set failover array for pod named foo
  purestorage.flasharray.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
  purestorage.flasharray.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
  purestorage.flasharray.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
  purestorage.flasharray.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
  purestorage.flasharray.purefa_pod:
    name: foo
    target: bar
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: present
