abh1sar commented on PR #9748:
URL: https://github.com/apache/cloudstack/pull/9748#issuecomment-2667927024

   > Hi @abh1sar, ok. I will allocate some time to look at this in the coming 
days. As I mentioned before, we don't have a bucket level quota setting. We do 
have a User level QoS setting. I think the only thing that I can do currently 
is to set the User (that owns the bucket) QoS settings to the limit specified 
in the create bucket request. An example might be as below:
   > 
   > * Bucket B1 created for User A with a quota of 5GB.
   > * > Plugin adjusts the HyperStore user A's quota to 5GB
   > * Bucket B2 created for User A with a quota of 5GB.
   > * > Plugin keeps HyperStore user A's quota at 5GB (updates CS DB quotas 
for B1,B2 to 5GB to match)
   > * Bucket B3 created for User A with a quota of 3GB.
   > * > Plugin reduces HyperStore user A's quota to 3GB (updates CS DB quotas 
for B1,B2,B3 to 3GB to match)
   > * Bucket B2's quota is adjusted to 10GB
   > * > Plugin expands HyperStore user A's quota to 10GB (updates CS DB quotas 
for B1,B2,B3 to 10GB to match)
   > 
   > When any adjustment happens to the user's quota, all of the HyperStore 
buckets owned by that account need to get their quota settings updated in the 
DB to correctly represent the latest user's quota setting.
   > 
   > This is currently all we can do I think. If we document it, it should not 
be too hard to understand for the admin.
   > 
   > Does this sounds ok? I think plugin wise, the plugin currently does not 
update information about different bucket(s) when processing a request for a 
certain bucket, so I will need to figure out how best to do that. I do think it 
is easier for the administrator to understand the implementation and understand 
what the quota is set to though if it is done this way.
   
   Hi @tpodowd
   There could be another approach : if the user has 3 buckets of size 5GB, 
10GB and 3GB, we keep the quota in CS DB as 5, 10 and 3 respectively. On the 
plugin side we can set the total user quota to be the sum of all quotas i.e. 
18GB. So, the plugin needs to increase, decrease user quota whenever a bucket 
is created/ destroyed or quota is changed. This will also
   need to be documented, that a bucket from the same user can feed space from 
another bucket of the same user (Although we defined bucket quota as 5, 10 and 
3, the actually usage could be 6, 6 and 6.)
   
   Another thing could be, if you are ok with Cloudian not supporting Object 
Storage Limits, you can document that and make the quota field non-mandatory 
for Cloudian.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to