Background: Currently, CloudStack allows cloud admins to dedicate a zone to a tenant. While this is useful in certain scenarios, for several end-users this is a very expensive offering. This feature is to enable more economical options, but still preserve several of the benefits of the private zone offering. This feature allows admins to dedicate resources to a specific tenant that needs private infrastructure for additional security or performance guarantees. This feature also allows admins to dedicate resources to resellers. Re-sellers in turn can ‘resell’ the infrastructure to their customers.
Requirements:
- Root Admins must be able to dedicate a zone, pod, cluster or host to a specific domain or account - admin may or may not specify a specific resource (if pod or cluster or host is not specified explicitly, CS can optionally select an available pod/cluster/host in the zone)
- A service offering can optionally have “dedicated” flag that the end-user can select or not select
- Any zone can have “implicit” dedication flag on or off – this flag’s description will be clarified below
- Only VMs that belong to the domain/sub-domain/accounts should be deployed/started on the dedicated resource
- A request that does NOT have a dedicated requirement MUST not be placed on a dedicated area
- Migration of a VM to a resource not owned by the account must fail
- Must be able to dedicate a primary storage to an account
- at this time, there is no requirement for the domain/sub-domain admins to manage the resource - the root admin will remain the owner of the resources
|
Service Offering requested with dedication ON |
Service Offering requested with dedication OFF |
---|---|---|
Account (or sub-domain or domain) has dedicated host/cluster/pod/Zone AND Implicit dedication flag ON |
Place VM in a dedicated area if space available; if no space in dedicated area, find a new free host and place VM and make the host part of the dedicated host for this account/sub-domain/domain |
Place VM in a non-dedicated area |
Account (or sub-domain or domain) has NO dedicated host/cluster/pod/Zone AND Implicit dedication flag ON |
find a new free host and place VM and make the host part of the dedicated host for this account/sub-domain/domain to be used for future requests |
Place VM in a non-dedicated area |
Account (or sub-domain or domain) has dedicated host/cluster/pod/Zone AND Implicit dedication flag OFF |
Place VM in a dedicated area if space is available. if no space available in dedicated area, FAIL request |
Place VM in a non-dedicated area |
Account (or sub-domain or domain) has NO dedicated host/cluster/pod/Zone AND Implicit dedication flag OFF |
Fail the request |
Place VM in a non-dedicated area |