quota enforcement

77 views
Skip to first unread message

Tanya

unread,
Nov 28, 2011, 3:27:14 PM11/28/11
to iROD-Chat, tlev...@fnal.gov, agu...@unlnotes.unl.edu
Hi,

I have done some searching but could find anything relevant to answer
my question. Sorry, if it was discussed already and I have missed it
somehow.


I am trying to make quota enforcement to work.

I have created a group, assigned users to this group and set a quota
per group, per resource (the group "engage" for disck_cache_1
resource)

I have modified core.irb

acRescQuotaPolicy||msiSetRescQuotaPolicy(on)|nop

and restarted the server.

User "tlevshin" is a member of group "engage". As a user I was able
to upload multiple files and continue to do so even when quota was
exceeded, e.g:

current utilization:

Group quotas on resources:
Resource: disk_cache_1
Group: engage
Zone: fermilab
Quota: 10,000,000 (10 million) bytes
Over: 1,026,153 (1 million) bytes OVER QUOTA


"tlevshin" is a regular member of this group:
iuserinfo
name: tlevshin
...

member of group: engage
member of group: tlevshin
member of group: public


now I put another file, run "iadmin cu" and check quota:

-bash-3.2$ iput -R disk_cache_1 multivol-tar.sh


-bash-3.2$ iquota
Resource quotas for user tlevshin:
None

Global (total) quotas for user tlevshin:
None

Group quotas on resources:
Resource: disk_cache_1
Group: engage
Zone: fermilab
Quota: 10,000,000 (10 million) bytes
Over: 1,033,173 (1 million) bytes OVER QUOTA

Group global (total) quotas:
None

Any idea what have I missed?
Thanks a lot,
Tanya


Reagan Moore

unread,
Nov 28, 2011, 4:58:01 PM11/28/11
to irod...@googlegroups.com
You need to periodically evaluate usage with the micro-service msiQuota.

An example is:

quotaRule {
delay ("<PLUSET>30s</PLUSET><EF>24h</EF>") {
msiQuota;
writeLine"serverLog","Updated quota");
}
}
INPUT null
OUTPUT ruleExecOut

and execute this with irule.

Reagan Moore

>--
>"iRODS: the Integrated Rule-Oriented Data-management System; A
>community driven, open source, data grid software solution"
>https://www.irods.org
>
> iROD-Chat: http://groups.google.com/group/iROD-Chat

schr...@diceresearch.org

unread,
Nov 28, 2011, 5:13:54 PM11/28/11
to irod...@googlegroups.com
You can also use the 'iadmin cu' (calculate usage) command to do this once.  See the 'Quotas' page on irods.org for descriptions of ways to use the quota system:  https://www.irods.org/index.php/Quotas  

 - Wayne -

Tanya

unread,
Nov 28, 2011, 5:06:20 PM11/28/11
to iROD-Chat
I was running "iadmin cu" manually every time I uploaded file, so
quota gets updated all the time, but it still allows me to write new
files over the quota.
Will automatic evaluation of quota help?

Thanks,
Tanya

Tanya

unread,
Nov 28, 2011, 5:23:42 PM11/28/11
to iROD-Chat, tlev...@fnal.gov, agu...@unlnotes.unl.edu
it is exactly what i am doing for now. Still doesn't work. Is there
anyway to increase log verbosity and see what is going on?
Thanks,
Tanya

On Nov 28, 4:13 pm, <schroe...@diceresearch.org> wrote:
> You can also use the 'iadmin cu' (calculate usage) command to do this once.  See the 'Quotas' page onirods.orgfor descriptions of ways to use the quota system: https://www.irods.org/index.php/Quotas

schr...@diceresearch.org

unread,
Nov 28, 2011, 7:43:00 PM11/28/11
to irod...@googlegroups.com
There are various types of verbosity settings for different situations (see Troubleshooting_Guide on irods.org) but for this you might first try confirming that the quotas are being set properly via the iadmin lq and cu commands and iquota.  And if that looks good, I'd suspect the rule to enforce it isn't working.  If you are using 3.0 (so with the new rule engine), that's in core.re instead of core.irb.

Reagan Moore

unread,
Nov 29, 2011, 10:07:25 AM11/29/11
to irod...@googlegroups.com
Tanya:
When I run iquota, I see a quota for both my account and the group of
which my account is a member. When you ran iquota, you did not see a
quota for your account.


On iRODS 3.0, I did the following:

- turned on quota enforcement within the core.re file
acRescQuotaPolicy {msiSetRescQuotaPolicy("on") }

- calculated current usage
iquest "select sum(DATA_SIZE) where COLL_NAME like '/tempZone/home/rods%%'"

- set a quota using
iadmin suq rods total 3000

- evaluated quotas
iadmin cu

- then tried to load a file when my usage was greater than the quota
iput test1.r

The upload was not allowed, and printed out the message
ERROR: putUtil: put error for /tempZone/home/rods/test1.r, status =
-110000 status = -110000 SYS_RESC_QUOTA_EXCEEDED

I then tried this with a group quota.
- I reset the rods quota to 1000000000,
iadmin suq rods total 1000000000

- created a user group qg,
iadmin mkgroup qg

- added rods to the user group,
iadmin atg qg rods

- set a quota
iadmin sgq qg total 3000

- evaluated quotas
iadmin cu

When I tried to load a file when my usage was greater than the quota,
I got the same error message.

Are these steps consistent with what you tried?

Reagan Moore

Tanya

unread,
Nov 29, 2011, 11:36:21 AM11/29/11
to iROD-Chat, agu...@unlnotes.unl.edu
>If you are using 3.0 (so with the new rule engine), that's in core.re instead of core.irb.

That is it! When I enabled quota enforcement in core.re it all
started to work.

Thanks,
Tanya

On Nov 28, 6:43 pm, <schroe...@diceresearch.org> wrote:
> There are various types of verbosity settings for different situations (see Troubleshooting_Guide onirods.org) but for this you might first try confirming that the quotas are being set properly via the iadmin lq and cu commands and iquota.  And if that looks good, I'd suspect the rule to enforce it isn't working.  If you are using 3.0 (so with the new rule engine), that's incore.reinstead of core.irb.

Tanya

unread,
Nov 29, 2011, 11:40:32 AM11/29/11
to iROD-Chat
Thanks, Reagan.
I have made changes in core.irb instead of core.re (is core.irb
obsolte now?). After, I have done that quota started to work. I will
try now to automate usage calculation process.

Tanya

Reply all
Reply to author
Forward
0 new messages