Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This feature will come as a separate plugin which will use the PluggableService to add the DedicatedResources feature APIs into CloudStack, the DedicatedResourceManager will be responsible for thread scheduling and the DedicatedResourcePlanner which will implement a deployment planner interface.

Explicit Dedication:

  1. New Admin APIs to dedicate Zones/Pods/Clusters/Hosts to a domain or account (these APIs will come in a separate plugin)
  2. list affinity types: Add a new type: explicit dedication
  3. User should be able to create affinity groups based on the explicit dedication type
  4. User can associate above affinity group to VM during deployment.
  5. A new ExplicitDedicationProcessor plugin that implements AffinityGroupProcessor adapter (see , 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+groups) andImage Removed set deploymentplan scope to the correct resource level.
  6. The Deployment Planning Manager will call the ExplicitDedicationProcessor to process the dedication request.
  7. Image Added).
  8. The Deployment Planning Manager will do the following:
    1.  Processors: Call the ExplicitDedicationProcessor to process the dedication request based on the explicitly dedicated resources for the user.
    2.  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. 
    3.  Allocators: Call Allocators to match the requirement to explicit dedication.

New Addition: ExplicitDedicationProcessor

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 Pods P1,  P2. P1 has Clusters C1, C2  and P2 has Cluster C3

...

  • To deploy VM for Acct B with explicit dedication, processor 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:

API Changes:

Following new APIs will be added:

...