The Ansible Modules for Dell Technologies (Dell) PowerFlex allow Data Center and IT administrators to use RedHat Ansible to automate and orchestrate the provisioning and management of Dell PowerFlex storage systems.
The capabilities of the Ansible modules are managing SDCs, volumes, snapshots, storage pools, replication consistency groups, SDSs, devices, protection domains, MDM cluster, and to gather high level facts from the storage system. The options available are list, show, create, modify and delete. These tasks can be executed by running simple playbooks written in yaml syntax. The modules are written so that all the operations are idempotent, so making multiple identical requests has the same effect as making a single request.
The Ansible collection for PowerFlex is released and licensed under the GPL-3.0 license. See LICENSE for the full terms. Ansible modules and modules utilities that are part of the Ansible collection for PowerFlex are released and licensed under the Apache 2.0 license. See MODULE-LICENSE for the full terms.
| Ansible Modules | PowerFlex/VxFlex OS Version | SDK version | Python version | Ansible |
|---------------------|-----------------------|-------|--------------------|--------------------------|
| v1.5.0 |3.5
3.6
4.0 | 1.6.0 | 3.9.x
3.10.x
3.11.x | 2.12
2.13
2.14 |
The modules are written in such a way that all requests are idempotent and hence fault-tolerant. It essentially means that the result of a successfully performed request is independent of the number of times it is executed.
The installation and execution steps of Ansible modules for Dell PowerFlex can be found here.
Ansible Modules for Dell Technnologies PowerFlex follows Semantic Versioning.
New version will be release regularly if significant changes (bug fix or new feature) are made in the collection.
Released code versions are located on "release" branches with names of the form "release-x.y.z" where x.y.z corresponds to the version number. More information on branching strategy followed can be found here.
Ansible Modules for Dell Technologies PowerFlex deprecation cycle is aligned with that of Ansible.
Based on the community decision to use true/false
for boolean values in documentation and examples, we ask that you evaluate booleans in this collection and consider changing any that do not use true/false
(lowercase).
See documentation block format for more info (specifically, option defaults).
If you have already implemented this or decide not to, feel free to close this issue.
P.S. This is auto-generated issue, please raise any concerns here
Hello,
I am trying to install a powerflex with a maximum of automated tasks.
I managed to initiate a one-node cluster, and then I installed and setup a gateway to interface with it.
However, when trying to add standby nodes, I'm getting the following error :
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: KeyError: slaves
fatal: [cop-pflex04 -> localhost]: FAILED! => {"changed": false, "module_stderr": "Traceback (most recent call last):
File \"/home/runner/.ansible/tmp/ansible-tmp-1674509598.2062175-319-228748645774836/AnsiballZ_mdm_cluster.py\", line 107, in <module>
_ansiballz_main()
File \"/home/runner/.ansible/tmp/ansible-tmp-1674509598.2062175-319-228748645774836/AnsiballZ_mdm_cluster.py\", line 99, in _ansiballz_main
invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
File \"/home/runner/.ansible/tmp/ansible-tmp-1674509598.2062175-319-228748645774836/AnsiballZ_mdm_cluster.py\", line 47, in invoke_module
runpy.run_module(mod_name=ansible_collections.dellemc.powerflex.plugins.modules.mdm_cluster, init_globals=dict(_module_fqn=ansible_collections.dellemc.powerflex.plugins.modules.mdm_cluster, _modlib_path=modlib_path),
File \"/usr/lib64/python3.9/runpy.py\", line 225, in run_module
return _run_module_code(code, init_globals, run_name, mod_spec)
File \"/usr/lib64/python3.9/runpy.py\", line 97, in _run_module_code
_run_code(code, mod_globals, init_globals,
File \"/usr/lib64/python3.9/runpy.py\", line 87, in _run_code
exec(code, run_globals)
File \"/tmp/ansible_dellemc.powerflex.mdm_cluster_payload_331_163c/ansible_dellemc.powerflex.mdm_cluster_payload.zip/ansible_collections/dellemc/powerflex/plugins/modules/mdm_cluster.py\", line 1338, in <module>
File \"/tmp/ansible_dellemc.powerflex.mdm_cluster_payload_331_163c/ansible_dellemc.powerflex.mdm_cluster_payload.zip/ansible_collections/dellemc/powerflex/plugins/modules/mdm_cluster.py\", line 1334, in main
File \"/tmp/ansible_dellemc.powerflex.mdm_cluster_payload_331_163c/ansible_dellemc.powerflex.mdm_cluster_payload.zip/ansible_collections/dellemc/powerflex/plugins/modules/mdm_cluster.py\", line 1199, in perform_module_operation
File \"/tmp/ansible_dellemc.powerflex.mdm_cluster_payload_331_163c/ansible_dellemc.powerflex.mdm_cluster_payload.zip/ansible_collections/dellemc/powerflex/plugins/modules/mdm_cluster.py\", line 872, in add_standby_mdm
File \"/tmp/ansible_dellemc.powerflex.mdm_cluster_payload_331_163c/ansible_dellemc.powerflex.mdm_cluster_payload.zip/ansible_collections/dellemc/powerflex/plugins/modules/mdm_cluster.py\", line 1107, in check_mdm_exists
File \"/tmp/ansible_dellemc.powerflex.mdm_cluster_payload_331_163c/ansible_dellemc.powerflex.mdm_cluster_payload.zip/ansible_collections/dellemc/powerflex/plugins/modules/mdm_cluster.py\", line 1065, in check_ip_in_secondarys
KeyError: slaves
", "module_stdout": "", "msg": "MODULE FAILURE
See stdout/stderr for the exact error", "rc": 1}
Which seems to indicate that the module is trying to check in the current set of slaves of the cluster if the IP is already present. As I only have one node in the cluster, the slaves key is empty, and might be the reason why this is throwing an error.
Then I added manually 2 nodes as standby mdms, and created a 3-node cluster, it worked fine, which makes me think that my analysis is correct.
Let me know if anything else is needed :)
Ansible modules for Dell PowerFlex
Ansible modules for Dell PowerFlex
Ansible modules for Dell PowerFlex
Ansible modules for Dell PowerFlex
Ansible modules for Dell EMC PowerFlex
Ansible modules for Dell EMC PowerFlex
ansible automation dell devops infrastructure-as-code powerflex