To find the best infrastructure on which to place a deployment, vRealize Automation makes several filtering decisions. vRealize Automation integration with vRealize Operations Manager may further refine the placement decision.
vRealize Operations Manager can help to optimally place workloads provided that you have enabled the Advanced placement policy option in your vSphere based cloud zones.
In addition, the vSphere cloud accounts for the cloud zones must be monitored by vRealize Operations Manager.
Phase 1: Reservation
The vRealize Automation reservation phase is the same whether or not you enable Advanced placement with vRealize Operations Manager.
- Reservation starts with a cloud template linked to a project. That project is in turn linked to cloud zones.
- The cloud zones consist of compute resource hosts, pools, and clusters, and attached storage.
Initially, any cloud zone in the project may be a potential placement target.
- vRealize Automation filters out cloud zones that don't have enough healthy resources for the deployment.
For example, if too many resources are powered off or in maintenance, that cloud zone is filtered out.
- vRealize Automation filters out cloud zones that can't meet business requirements.
For example, the deployment might exceed a pricing or budget limit for the zone.
- vRealize Automation filters out cloud zones that can't meet cluster requirements.
For example, the cloud zone resources might have CPU or memory usage limits that are too low for the deployment.
- vRealize Automation filters out cloud zones that have no affinity with application constraints.
Affinity requires that cloud template or project-level constraint tags match capability tags found somewhere in the cloud zone resources.
For example, if the cloud template or project includes a storage constraint to use storage tagged
pci
, a cloud zone where none of the storage resources have that capability tag would be filtered out. - vRealize Automation selects cloud zones with the best provisioning priority.
- If the project-level placement policy is something other than Default, vRealize Automation selects a cloud zone that supports the non-default placement policy.
In this release, Spread is the only non-default. Spread distributes the load by selecting the cloud zone with the lower ratio of virtual machines to hosts. Default simply deploys to the first available zone.
The project placement policy is only a factor during the cloud zone reservation phase. It has no effect on, nor relation to, the cloud zone placement policy in the allocation phase.
When finished, the reservation phase selects one cloud zone and its resources. vRealize Automation reserves the first available zone that remains qualified after passing the preceding filters.
Phase 2: Allocation
vRealize Automation inspects the reserved cloud zone compute resources and linked storage.
- Within the cloud zone, vRealize Automation filters out resources that are in a maintenance or powered-off state.
Note that there are still enough healthy resources for the deployment. Otherwise, the entire cloud zone would have been filtered out during the reservation phase.
- vRealize Automation filters out resources that don't match cluster-level constraints found in the cloud template or project.
For example, a resource in the cloud zone might be tagged
test
under .If the cloud template or project includes a constraint tag to use a
dev
resource, thetest
resource is filtered out.In addition, storage or network profiles in the cloud zone might be tagged in ways that don't match cluster-level storage or network constraints in the cloud template or project.
- vRealize Automation filters out resources based on affinity settings that are defined in vCenter.
For example, there might be a rule in vCenter where the presence of a virtual machine in one cluster might block another cluster from being used.
- vRealize Automation filters out resources that don't match any remaining custom constraints found in the cloud template or project.
For example, if the cloud template includes a constraint to use a
ubuntu
tagged image, a cloud zone where none of the image mappings are taggedubuntu
would be filtered out. - vRealize Automation looks for the best possible compute and storage according to the cloud zone placement policy.
vRealize Automation engages vRealize Operations Manager only when the following two conditions are true:
- The cloud zone placement policy is set to Advanced.
- After filtering through step 4, at least one DRS enabled cluster and the storage linked to it remain qualified.
Otherwise, vRealize Automation proceeds with its own placement algorithm without input from vRealize Operations Manager.
vRealize Operations Manager placement recommendation
If qualified for input from vRealize Operations Manager, vRealize Automation contacts vRealize Operations Manager for a recommendation of the best possible compute and storage for the deployment. vRealize Automation sends the following data to vRealize Operations Manager:
- The qualified target DRS enabled clusters and their attached datastores or datastore cluster
- The resource count or cluster size of the deployment
- CPU and memory requirements for the virtual machines in the deployment
- Disk requirements for the virtual machines in the deployment
From the qualified targets, if vRealize Operations Manager can return an optimal placement for each of the virtual machines, vRealize Automation allocates compute and storage according to the vRealize Operations Manager recommendation.
For more about how vRealize Operations Manager handles workloads, see the vRealize Operations documentation.
If vRealize Operations Manager couldn't find a recommendation, or vRealize Automation couldn't find any DRS enabled cluster and storage, vRealize Automation checks the fallback setting of the cloud zone:
- With Fallback
vRealize Automation allocates compute and storage that remains qualified even without a vRealize Operations Manager recommendation.
- Without Fallback
vRealize Automation cancels the request and does not proceed with provisioning.
Phase 3: Provisioning
vRealize Automation deploys the requested virtual machines, storage, and network through the adapter for the placement target selected at the end of the allocation phase.
The placement target consists of compute hosts, clusters, or resource pools, and attached storage datastore or datastore cluster.