Skip to content

Quota Management #77

@scotwells

Description

@scotwells

Overview

This enhancement proposes the development of a quota system for Datum Cloud to control and enforce the number of resources that customers (tenants) can consume. The system will allow platform administrators to define quota limits at the organization or project level and enforce these limits during resource creation requests.

Datum Employee's should be able to view and modify the quota levels of projects and organizations. Datum Cloud users should be able to view the quota levels and the number of resources consumed with each quota.

Expected Impact

Implementing a quota system will enable:

  • Predictable capacity management
  • Customer tier enforcement (e.g., free vs. paid tiers)
  • Transparency to customers regarding resource limits
  • Enforcement hooks that can reject API requests exceeding limits

Additional Context

Organization Resource Quotas

For organization level resource quotas we should look to support the number of organizational level resources that can be created. We will not worry about creating organization wide quotas for project level resources (e.g. total number of workloads an organization can create across all of its projects).

Project Resource Quotas

For project based quotas, we should be able to leverage Kubernetes ResourceQuotas to enforce the number of resources a user can consume.

Potential Mockup

Image

Registering Quotas

Services offered on the Datum Cloud platform need the ability to register the resources they want to have protected through quotas and the default quota levels that should be set for a project or an organization. Service providers (e.g. Datum) must be able to modify the individual quota thresholds of a project or organization.

Metadata

Metadata

Assignees

Labels

Datum CloudEnhancement to improve functionality of the Datum Cloud platformMiloEnhancement to improve functionality of Milo

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions