...
- New Admin APIs to dedicate Zones/Pods/Clusters/Hosts to a domain or account (these APIs will come in a separate plugin)
- list affinity types: Add a new type: explicit dedication
- User should be able to create affinity groups based on the explicit dedication type
- User can associate above affinity group to VM during deployment.
- A new ExplicitDedicationProcessor plugin that implements AffinityGroupProcessor adapter, will set deployment plan scope to the correct resource level (For AffinityGroupProcessor adapter see: https://cwiki.apache.org/confluence/display/CLOUDSTACK/FS+-+Affinity-Anti-affinity+groupsImage Removed).
- The Deployment Planning Manager will do the following:
- Processors: Call the ExplicitDedicationProcessor to process the dedication request based on the explicitly dedicated resources for the user.
- Planners: Call Deployment Planner to drill down to the right set of clusters to look for placement based on explicitly dedicated clusters/hosts inside them.
- Allocators: Call Allocators to match the requirement to explicit dedication.
...
This will implement the process to set scope of deployment plan to the correct resource level for planners to look into. The resource level is the
For Example:
Zone Z has Zone Z has Pods P1, P2.
Pod P1 P1 has Clusters C1, C2 and P2 has Cluster C3
Clusters
C1 -> h1 (dedicated A), h2 (dedicated B)
C2 -> h3 (dedicated A)
C3 -> h4, h5(dedicated B)
...
Case 1: Deploy VM for account A with explicit dedication,
...
processors should set the scope of plan to Pod P1 since both dedicated hosts are in Pod P1 even if in different clusters. Also set the Pod P2 in avoid set
...
Case 2: Deploy VM for
...
account B with explicit dedication,
...
processors should set the scope of plan to Zone Z since the dedicated hosts are in Pod P1 and P2 , with parent being the zone itself. Also set the Cluster C2 in avoid set.
Modify Planners and Allocators
Existing Planners and Allocators will be modified to make sure that dedicated resources are not picked, when dedication is not required.
Implicit Dedication:
Still in discussion...
Change in the Existing Private Zone feature:
Zones can be dedicated to domains while creating them. Further when Deploying a VM for a user in the dedicated domain, only private zone is listed.
API Changes:
Following new APIs will be added:
...