Adding cinder volume size limit

Registered by Rakesh Mishra

set default limit for per volume, should be configurable by admin tenant

How it does work:
       The per_volume_size_limit defaults to -1 always unless changed in cinder.conf by admin.

Implementation plan:
 1. Insert 1 more row for per_volume_gigabytes [per volume size limit] to quota_classes table.
 2. set configurable option to to set default quota for per volume size
 3. create API to update the default quota
 4. before creating volume, call limit_check function to check volume is under the limit or not

Use-Case
Currently we can set quota for a tenant, as well as number of volumes a tenant can create. However, there is a need to limit maximum size of a volume to levels that the storage infrastructure can handle.
Example: If volumes are based on Linux LVM, the local disks are used to create volumes for the VMs. We need to limit the maximum size of volume so that a given number if VMs can be created on the host.
Setting a maximum limit on size of a volume also prevents a tenant from creating large volumes that have not been tested and certified to satisfy SLA objectives.
Examples of performance criteria could include time to take a backup, snapshot, etc.
With such a limit in place, a provider could test the storage infrastructure at different volume sizes and set the limit accordingly.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
Rakesh Mishra
Direction:
Needs approval
Assignee:
Rakesh Mishra
Definition:
New
Series goal:
None
Implementation:
Implemented
Milestone target:
None
Started by
Sean McGinnis
Completed by
Sean McGinnis

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/cinder-quota-define-per-volume,n,z

Addressed by: https://review.openstack.org/185906
    cinder-quota-define-per-volume

[e0ne] Should it be marked as implemented?

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.