Skip to content

Require or limit max quota size for buckets #77

Description

@bmarinov

Is your feature request related to a problem? Please describe.
With no upper bound on bucket volume, a single tenant can end occupying disproportionate amounts storage space. If the data volume on a node fills up, this will cause a service disruption as consequent writes get rejected.

This is especially problematic in environments where storage isnt dynamically provisioned, or extra capacity is not readily available.

Describe the solution you'd like
(1) Expose a setting requiring a maxSize quota to be present on every new bucket. Block on reconcile and surface an appropriate condition.
(2) (Optionally) Configure an upper limit for the size quota. Either per bucket or per namespace can work.

Describe alternatives you've considered
A configurable lifecycle policy on the bucket can be considered an alternative and act as a reminder.

Additional context
The maxSize field is currently optional and will not be made mandatory. This is consistent with the upstream Garage API.

There have been issues in the past where Garage nodes running out of space at different rates causes the cluster to accept writes while being unable to honor the configured replication factor. These should be fixed, only partially relevant: https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/1355

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions