How can I write a fairshare tree for multiple partitions?


Issue: How can I write a fairshare tree for multiple partitions?


Example: I have 4 partitions configured and I would like to wrire a tree so that each partition has its own seperate credentials.

Solution:

Moab has a custom XML solution for defining Fairshare trees. For example:

FSTREE[tree] '<fstree>
   <tnode partition="blue" name="root" type="acct" share="1" qlist="normal,standby">
      <tnode name="temp" type="acct" share="1" qlist="normal,standby">
         <tnode name="jbooth" ADEF="lux" ALIST="sa,lc,temp,dxdiv,texas,a,bdev,b,clbdivp,wprod,ee,lux" type="user" share="1" qlist="normal,special,standby,test,exempt,expedite,super" />
      </tnode>
   </tnode>
   <tnode partition="green" name="root" type="acct" share="1" qlist="normal,standby,exempt,expedite,super">
      <tnode name="pdesr" type="acct" share="50000" qlist="normal,standby">
         <tnode name="jbooth" ADEF="lc" ALIST="sa,lc,temp,dxdiv,texas,a,bdev,b,clbdivp,wprod,ee" type="user" share="1" qlist="normal,special,standby,test,exempt,expedite,super" />
      </tnode>
   </tnode>
   <tnode partition="red" name="root" type="acct" share="1" qlist="normal,standby">
      <tnode name="temp" type="acct" share="1" qlist="normal,standby">
         <tnode name="jbooth" ADEF="dxdiv" ALIST="sa,lc,temp,dxdiv,texas,a,bdev,b,clbdivp,wprod,ee" type="user" share="1" qlist="normal,special,standby,test,super" />
      </tnode>
   </tnode>
   <tnode partition="black" name="root" type="acct" share="1" qlist="normal,standby,exempt,expedite,super">
      <tnode name="root" type="user" share="1" qlist="normal,standby" />
      <tnode name="jbooth" ADEF="ucla" ALIST="sa,lc,temp,dxdiv,texas,a,bdev,b,clbdivp,wprod,ee" type="user" share="1" qlist="normal,standby" />
   </tnode>
</fstree>'

 

 In the above example I have a tree defined with parent "tnode" and a few children "tnode" entries. The rules for definding a tnode are as follows.

1) If the tnode is a parent you begin with "<tnode ...>" and end with "</tnode>". You should have a child tnode defined when using this format.

e.g.

<tnode partition="aztek" name="root" type="acct" share="1" qlist="normal,standby,exempt,expedite,super">

      <tnode name="jbooth" ADEF="ucla" ALIST="sa,lc,temp,dxdiv,texas,a,bdev,b,clbdivp,wprod,ee" type="user" share="1" qlist="normal,standby" />

<tnode>

 

2) If the tnode is a child you terminate the child with "/>" and not a "</tnode>". There is one exception. When you have a child that has a child of its own then you use the format from rule 1.

 

Now that the rules have been defined you now understand how to write a multi parttion faishare tree and have child credentials under each partition.

 

Note that it is a good idea to look into "PERPARTITIONSCHEDULING  TRUE"  if you are going to use a tree as there are some added benifits to using this parameter. For example per-partition job priorities.

 

Tags: fairshare, fairshare tree
Last update:
2016-06-13 18:09
Author:
Jason Booth
Revision:
1.11
Average rating:0 (0 Votes)

You cannot comment on this entry

Chuck Norris has counted to infinity. Twice.

Records in this category

Tags