Versions Compared

Key

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

...

  • Requirements

    • Update Resource Limit: Root/Domain Admin should be able to limit the following resources
      • CPUs
      • RAM
      • Primary (shared) storage (Volumes)
      • Secondary storage  (Snapshots, Templates & ISOs)
      • Network bandwidth rate (in bpsmbps)
    • Usage: Limits can be imposed on Accounts, Domains and Projects.
    • List Resource Limit: Any User/RootAdmin/Domain Admin can list Resources
    • Resource Limit Logs: Ensure proper logs are maintained into vmops.log and api.log 

...

  • Configuration

    • global configuration parameters:
      • max.account.cpus - Maximum number of CPU cores that can be used for an account. Default value for this is 40.
      • max.account.ram (in MB) - * Maximum RAM that can be used for an account. Default value for this is *40960.
      • max.account.primary.storage   (in GB)   - Maximum primary storage space that can be used for an account. Default value for this is 20*10.
      • max.account.secondary.storage   (in GB)   - Maximum secondary storage space that can be used for an account. Default value for this is is 20*20.
      • max.account.network.rate (in mbps)   - Maximum network rate that can be used for an account. Default value for this is is 200.
      • max.project.cpus   - Maximum number of CPU cores that can be used for an account. Default value for this is is 40.
      • max.project.ram (in MB) - * Maximum RAM that can be used for an account. Default value for this is  40960* 40960.
      • max.project.primary.storage   (in GB)   - Maximum primary storage space that can be used for an account. Default value for this is is 20*10.
      • max.project.secondary.storage (in GB)   - Maximum secondary storage space that can be used for an account. Default value for this is is 20*20.
      • max.project.network.rate (in mbps)   - Maximum network rate that can be used for an account. Default value for this is is 200.
  • User permission

    • Normal users would have privilege to list resource limits (listResourceLimits).
    • Root-Admin would have privilege to list and update resource limits.
    • Domain-Admin would have privilege to list resources and update resource limits that are assigned to the domain.

...

Domain D1 , Account A1 and  Project P1

1. Number of CPUs CPUs:

    1. Root/Domain-Admin update CPU to 10 for domain D1. Users belonging to Domain D1 should not be able to use more than that.
    2. Root/Domain-Admin update CPU to 10 for Account A1 in Domain D1. Users belonging to Account A1 should not be able to use more than that. Also, they should not cross CPU limit defined for D1 domain.
    3. Limits imposed on Domain D1 should be imposed on sub-domain SD1 as well.
    4. Root/Domain-Admin update CPU to 10 for Project P1 having account A1 . Users belonging to Project P1 should not be able to use more CPUs than the defined limit.

2. Amount of RAM:

    1. Root/Domain-Admin update RAM to 1GB for domain D1. Users belonging to Domain D1 should not be able to use more than that.
    2. Root/Domain-Admin update RAM to 1GB for Account A1 in Domain D1. Users belonging to Account A1 should not be able to use more than that. Also, they should not cross RAM limit defined for D1 domain.
    3. Limits imposed on Domain D1 should be imposed on sub-domain SD1 as well.
    4. Root/Domain-Admin update RAM to 1GB for Project P1 having account A1. Users belonging to Project P1 should not be able to use more RAM than the defined limit.

3. Amount of Primary Storage:

    1. Root/Domain-Admin update primary storage to 5GB for domain D1. Users belonging to Domain D1 should not be able to use more than that.
    2. Root/Domain-Admin update primary storage to 5GB for Account A1 in Domain D1. Users belonging to Account A1 should not be able to use more than that. Also, they should not cross primary storage limit defined for D1 domain.
    3. Limits imposed on Domain D1 should be imposed on sub-domain SD1 as well.
    4. Root/Domain-Admin update primary storage to 5GB for Project P1 having account A1. Users belonging to Project P1 should not be able to use more primary storage than the defined limit.

4. Amount of Secondary Storage:

    1. Root/Domain-Admin update secondary storage to 5GB for domain D1. Users belonging to Domain D1 should not be able to use more than that.
    2. Root/Domain-Admin update secondary storage to 5GB for Account A1 in Domain D1. Users belonging to Account A1 should not be able to use more than that. Also, they should not cross secondary storage limit defined for D1 domain.
    3. Limits imposed on Domain D1 should be imposed on sub-domain SD1 as well.
    4. Root/Domain-Admin update secondary storage to 5GB for Project P1 having account A1. Users belonging to Project P1 should not be able to use more secondary storage than the defined limit.

5. Network bandwidth rate:

    1. Root/Domain-Admin update network bandwidth rate to 1000bps for 200mbps for domain D1. Users belonging to Domain D1 should not be able to use more than that.
    2. Root/Domain-Admin update network bandwidth rate to 1000bps for 200mbps for Account A1 in Domain D1. Users belonging to Account A1 should not be able to use more than that. Also, they should not cross network bandwidth rate limit defined for D1 domain.
    3. Limits imposed on Domain D1 should be imposed on sub-domain SD1 as well.
    4. Root/Domain-Admin update network bandwidth rate to 1000bps for 200mbps for Project P1 having account A1. Users belonging to Project P1 should not be able to use more network bandwidth rate than the defined limit.

Architecture and Design description

...