DomainQuotaDriver
Introduction
Keystone BP Domain Quota Management and Enforcement will enable O~S projects to enforce domain quotas, for this a new driver capable to enforce domain quota is necessary. This BP addresses the need of a new quota driver capable to enforce domain quotas in Nova.
Quotas in Nova
Today OpenStack services make usage of quotas to limit the project resources. For example, the “Instances” quota represents the number of instances that can be created in a project. The table below summarizes the existing project quotas. From now on there will be the same options as Quotas in the context of domain.
quotas | type | default values | description |
---|---|---|---|
instances | reservable | 10 | number of instances allowed per project |
cores | reservable | 20 | number of instance cores allowed per project |
ram | reservable | 50*1024 | megabytes of instance ram allowed per project |
floating_ips | reservable | 10 | number of floating ips allowed per project |
fixed_ips | reservable | -1 | number of fixed ips allowed per project |
metadata_items | absolute | 128 | number of metadata items allowed per instance |
injected_files | absolute | 5 | number of injected files allowed |
injected_files_content_bytes | absolute | 10*1024 | number of bytes allowed per injected file |
nova.injected_file_path_bytes | absolute | 255 | number of bytes allowed per injected file path |
nova.security_groups | reservable | 10 | number of security groups per project |
nova.security_groups_rules | countable | 20 | number of security rules per security group |
nova.key_pairs | countable | 100 | number of key pairs per user |
User Stories
The idea for the insertion of this new driver is that it runs parallel to the project driver. Therefore, you can enable and disable the driver in the configuration file Nova. The other features are similar to the driver domain project driver.
Following is the list of the USs in Domain Quota Driver:
- As a system administrator, I want to choose which quota driver to use
- As a system administrator, I want absolute quotas to be enforced
- As a system administrator, I want countable quotas to be enforced
- As a system administrator, I want reservable quotas to be reserved
- As a system administrator, I want reservable quotas to be commited
- As a system administrator, I want reservable quotas to be rolled back
- As a system administrator, I want reservable quotas to expire
- As a user, I want to free quotas when resources are deleted.