Unsolved
6 Posts
0
839
"we support only unique identifiers for volume creation on PowerMax from Ansible"
Are there any plans to enable the creation of volumes without names? We don't use volume names, and this limitation will require me to loop through multiple volumes to add another irrelevant identifier in the volume name. I would just like the ability to create 'n' unnamed volumes in a given storage group.
JoshPrice
6 Posts
0
April 15th, 2021 18:00
btw, this is an error message from the dellemc_powermax_storagegroup module.
Anil_Degwekar
13 Posts
1
April 16th, 2021 05:00
Hi,
We will not support volume creation without names.
The reason for it is as follows:
One of the key features of Ansible is idempotency (end-state based behavior). In order to support this, we need to know the name or ID of the volume that the user wants to exist in the given storage group. Based on the name, we can determine whether the volume already exists (in which case it is a no-op), or whether it needs to be freshly created.
This way, even if you run the same task again, we will not create a new volume unnecessarily.
Hope this helps.
Regards
Anil
JoshPrice
6 Posts
0
April 16th, 2021 08:00
That does make sense, but in my case I would prefer idempotency be based maybe on volume count in the storage group rather than name. I understand that causes other issues and ruins the module for adding to existing storage groups without adding more flags (which I think would be a good idea to specify what exactly you want the module to do). It's just frustrating that I would have to add another messy unique identifier to the name that doesn't mean anything outside of ansible after the creation of the volumes. Maybe it's just me, but I seem to be abandoning ansible modules for rest api in playbooks to do what I need (this is true for other vendors also, not just Dell/EMC)
Anil_Degwekar
13 Posts
1
April 19th, 2021 00:00
Idempotency would require either volume name or volume ID -- since there are cases where a user might want to expand a volume size (in which case we would need to know which volume is getting expanded). In the most general case not all volumes in a storage group are identical.
Volume expand can be done by specifying the volume ID -- but for creating a volume the volume name is required, since the ID is generated by the array. After volume creation is done, all other operations are supported by using either volume name or volume ID.
Most customers prefer to deal with user friendly names rather than volume ID.
Since these modules are generic, we need to design them based on what most customers would require.
We urge you to use volume names (labels) -- we believe it will help you in the long run.
It will not be possible for us to support idempotency in the absence of volume names. For instance, if a user asks us to delete a volume, we would not want to delete a wrong volume. So to uniquely identify a volume, we would want to know its name (or ID). These operations can not be done reliably just by looking at the volume count in a storage group.
STIV1992
5 Posts
0
April 19th, 2021 04:00
Volume expand can be done by specifying the volume ID but for creating, a volume the volume name is required, since the ID is generated by the array