1
Delimiter – Cross Project Quota Library
Vilobh Meshram, Joshua Harlow, Nikhil Komawar
3
What is Quota ?
Quota helps to enforce restriction on resource
consumption.
4
Projects and Resources
Nova
CPU, Memory, Disk,
#Instances
Cinder
Volumes,
Snapshots,
Gigabytes
Neutron
Port, Subnet,
Router, Network
Magnum Trove
5
Why?
• Every project has its own way of enforcing Quotas.
• Similar pattern for Quota code in projects using Quota.
• Duplication of efforts.
• Time consumed in developing Quota features.
• Concurrency and Transactional Issues in current
design.
• Crucial to keep track of resource limits.
6
State of Quota across different projects
• TOP CONCERNS in every Dev-Ops Summit.
• How to Refresh Quota ?
• How to reset in-correct quota count ?
7
State of Quota Enhancement efforts
Discussion on Quota at Design Summit (or Mid cycle for
respective projects)
Propose a spec or solution. Realize Quotas are broken and
will need significant investment to get it right. Service v/s
Library debate.
Will it affect the current state of the project ?
Other features prop up.
8
9
Delimiter – Cross Project Quota Library
• Delimiter – Library not a Service
• Delimiter’s role is to impose restriction on resource consumption.
• Delimiter will not be responsible for rate limiting.
• Delimiter will not maintain data for the resources.
• Respective projects will take care of keeping, maintaining data for
resources.
• Delimiter won’t have the concept of reservation.
• Delimiter may fetch information for project quota from Keystone or
respective projects.
• Delimiter will understand both Flat and Nested models.
• Consolidate utility code for quota issues at common place.
Thank you!
#openstack-quota

Delimiter - OpenStack Cross Project Quota Library Proposal

  • 1.
  • 2.
    Delimiter – CrossProject Quota Library Vilobh Meshram, Joshua Harlow, Nikhil Komawar
  • 3.
    3 What is Quota? Quota helps to enforce restriction on resource consumption.
  • 4.
    4 Projects and Resources Nova CPU,Memory, Disk, #Instances Cinder Volumes, Snapshots, Gigabytes Neutron Port, Subnet, Router, Network Magnum Trove
  • 5.
    5 Why? • Every projecthas its own way of enforcing Quotas. • Similar pattern for Quota code in projects using Quota. • Duplication of efforts. • Time consumed in developing Quota features. • Concurrency and Transactional Issues in current design. • Crucial to keep track of resource limits.
  • 6.
    6 State of Quotaacross different projects • TOP CONCERNS in every Dev-Ops Summit. • How to Refresh Quota ? • How to reset in-correct quota count ?
  • 7.
    7 State of QuotaEnhancement efforts Discussion on Quota at Design Summit (or Mid cycle for respective projects) Propose a spec or solution. Realize Quotas are broken and will need significant investment to get it right. Service v/s Library debate. Will it affect the current state of the project ? Other features prop up.
  • 8.
  • 9.
    9 Delimiter – CrossProject Quota Library • Delimiter – Library not a Service • Delimiter’s role is to impose restriction on resource consumption. • Delimiter will not be responsible for rate limiting. • Delimiter will not maintain data for the resources. • Respective projects will take care of keeping, maintaining data for resources. • Delimiter won’t have the concept of reservation. • Delimiter may fetch information for project quota from Keystone or respective projects. • Delimiter will understand both Flat and Nested models. • Consolidate utility code for quota issues at common place.
  • 10.