VMware Cloud Community
jspatz
Contributor
Contributor

Additional Disks in template not honoring Constraint Tag

We are running vra 8.9 on premise.. disks are setup like this in the blueprint.  Storage Selection is assigned in the form based on environment and server type.   The constraint tag is being applied for the initial hard disk (creating on the desired storage profile).  However the secondary hard disks are no longer honoring the constraint tag and are being built on a random storage profile.  Now we are 3-4 months into movingto vra 8 from 7.. and we have taken a bunch of upgrades along the way 8.1 - 8.4 - 8.8 - 8.9  and I would swear in an earlier version this WAS working .. but I dunno..  any ideas?

 

Cloud_vSphere_Machine_1:

...

attachedDisks: ${map_to_object(resource.Disks[*].id, "source")}
storage:
constraints:
- tag: ${input.storage_selection}
maxDiskCapacityInGB: 1
bootDiskCapacityInGB: 1

..

# =====================
# DISK Resources
# =====================
Disks:
type: Cloud.vSphere.Disk
allocatePerInstance: true
constraints:
- tag: ${input.storage_selection}
properties:
name: ${input.Hostname}
capacityGb: ${input.disks[count.index].size}
mountpoint: ${input.disks[count.index].mountpoint}
count: ${length(input.disks)}
provisioningType: thin
maxDiskCapacityInGB: 5000

Reply
0 Kudos
3 Replies
stratoCumulus
Enthusiast
Enthusiast

I’m not on 8.9 yet, but I have been in similar situations where placement logic was behaving strangely.

It’s been helpful for me to look at the request history under infrastructure. It should show what placement logic was in effect for the request, and hopefully give you a starting point for troubleshooting 

Reply
0 Kudos
jspatz
Contributor
Contributor

Thank you for reply .. I have been reviewing that .. and it does look like the placement logic is being honored for the first disk of the machine.. it's the additional disks that aren't honoring both the constraint tags or the storageProfile property if placed on the disk.

 

Reply
0 Kudos
jspatz
Contributor
Contributor

Still not quite sure why the constraint tags aren't being honored.. but in fiddling around I found this property to work

 

dataStore: ${input.storage_datastore}

 

and in my form  I have some hidden fields that calculate which strorage profile to use based on environment / Server Type / OS Type so I just use that same logic to assign it directly to the same datastore cluster.

 

Reply
0 Kudos