Leandro Rosa Tiago Martins Context Problem Cloud Admin is not able to limit resources usage within a domain Solution Domain Quotas Constraints Services eg nova should continue enforcing quotas ID: 269562
Download Presentation The PPT/PDF document "Domain Quotas (DRAFT)" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Domain Quotas (DRAFT)
Leandro Rosa
Tiago MartinsSlide2
Context
Problem: Cloud Admin is not able to limit resources usage within a domain
Solution: Domain Quotas
Constraints
Services (e.g. nova) should continue enforcing quotas
Keystone should concentrate the public APIs
Issue: How Keystone can distribute domain quotas to services?Slide3
Approaches
Cross-Region Domain Quotas (based on Update and Usage)
Cloud Admin sets domain quotas
Services exchange quotas usage
Keystone continuously distributes domain quotas to regions
Keystone-centric
Collaborative (Voucher)
Per-Region Domain Quotas (based on Update)
Cloud Admin sets domain quotas
Keystone distributes domain quotas to services
Global assignment
Individual assignmentSlide4
Cross-Region Domain QuotasSlide5
Cross-Region Domain Quotas: Use Cases
Pre-requisite: Default domain quotas are in place
Cloud Admin sets domain quotas (UPDATE)
Cloud Admin views domain quotas
Cloud Admin views domain quotas usage
Cloud Admin views domain quotas usage per region
Cloud Admin deletes domain quotas – back to default valuesSlide6
Cross-Region Domain Quotas: Distribution
Keystone
Region 1
Nova
Glance
Region n
Nova
Glance
...
...
...
Domain “A” vCPUs: 100
vCPUs: 10
vCPUs: 20
Services exchange quotas usage
Keystone continuously distributes domain quotas to regionsSlide7
Cross-Region Domain Quotas: Approaches
Keystone-centric
Distribution intelligence is in Keystone only
Approach #1: Polling
“Service, how many quotas are you using?”
Collaborative
Distribution intelligence is spread over Keystone and services
Approach #1: Vouchers (Service request)
“Keystone, I need a quota voucher now/in a short-term”
Note: We are
not
considering a Distributed Database (e.g. MongoDB) neither Message Queue Protocol (e.g. RabbitMQ)Slide8
Cross-Region Domain Quotas
Advantages
Automated distribution
Domain quotas are shared
Global usage view
Disadvantages
Cloud Admin does
not
control quota distribution
Not suitable for regions that have different infrastructure (e.g. KVM and ESX)
Recommended for similar regions (e.g. same hypervisor type)Slide9
Per-Region Domain QuotasSlide10
Per-Region Domain Quotas: Use Cases
Pre-requisite: Default domain quotas are in place
Global Assignment
Cloud Admin sets domain quotas (UPDATE)
Cloud Admin views domain quotas
Cloud Admin views domain quotas usage
Cloud Admin deletes domain quotas – back to default values
Individual Assignment
Cloud Admin sets domain quotas for each region (UPDATE)
Cloud Admin views domain quotas per region
Cloud Admin views domain quotas usage per region
Cloud Admin deletes domain quotas per region – back to default valuesSlide11
Per-Region Domain Quotas: Global Assignment
Keystone
Region 1
Nova
Glance
Region n
Nova
Glance
...
...
...
Domain “A” vCPUs: 100
vCPUs: 100
Keystone distributes domain quotas to services (on update only)
vCPUs: 100Slide12
Per-Region Domain Quotas: Individual Assignment
Keystone
Region 1
Nova
Glance
Region 4
Nova
Glance
...
...
...
Domain “A” Region 1 vCPUs: 100
vCPUs: 100
Keystone distributes domain quotas to services (on update only)
vCPUs: 200
Domain “A” Region 4 vCPUs: 200Slide13
Per-Region Domain Quotas
Advantages
Cloud Admin controls the domain quota distribution per region
Fine-grained region control
Suitable for regions that have different infrastructure (e.g. KVM and ESX)
Disadvantages
No domain quotas sharing
No global domain quota usage view
Global Assignment: Recommended for similar regions (e.g. same hypervisor type)
Individual Assignment: Recommended for different regions (e.g. unlike hypervisor types)Slide14
PlanningSlide15
Effort Estimate
Approach
Effort
Estimate
(EW)
Cross-Region Domain Quotas (Voucher)
12
Per-Region Domain Quotas
6Slide16
Cross-Region Domain Quotas (Voucher)
Use Case
/ Underlying Functionality
Effort
Estimate
(EW)
Distributor:
middleware with responsability of quota distribution, revocation. Tracking of quotas , quota expiration control.
4
Domain Quota Driver: check,
reserve, commit, rollback and enforcement of quotas. Decides when to ask for more quotas to Distributor. Developed as expecting a plugin to predict quota usage. Keep quota consumation to feed predictor plugin.
4
Predictor Plugin: decides how much quota the
Domain Quota Driver must ask for the Distributor.1CRUD – how to update quotas and how
to inform the services. Deletion – back do defaults and sanity checks2Unit
testing, code review, etc1Total12Slide17
Per-Region Domain Quotas
Use Case
/ Underlying Functionality
Effort
Estimate
(EW)
CRUD – update
quotas and sanity check, delete quota: back to default values
2
Domain
Quota Driver: check, reserve, commit , rollback and enforcement of quotas.
3
Unit testing, code review, etc1Total
6Slide18
Thank you