Moab allows several types of service guarantees that can help customers establish relationships whereby they can rely on the availability of utility compute resources. These relationships, called service level agreements, allow sites any of the following:
While Moab is unique in truly guaranteeing many of these capabilities, it is also unique in its ability to provide these SLA arrangements and to do so in a manner that maintains high overall system utilization and performance.
In this model, customers can be guaranteed that they will have available to them a certain quantity of resources within a given period of time subject to a maximum burn rate. For example, an organization may request that they be guaranteed resource access to at least 3600 node hours per month with a maximum burn rate of 200 node hours per day. Moab can automatically track their utilization for the given timeframe and, if they begin to fall behind on utilization, can reserve nodes to allow up to the maximum burn-rate.
This can be accomplished using the fairshare facility and a QoS threshold with reservation access. In essence, Moab can track their current utilization and, if assistance is needed to meet monthly objectives, can create an automatic resource reservation to help reach target objectives. This is demonstrated in the following example:
PEERTOACCOUNTMAPPINGENABLED TRUE ACCOUNTCFG[jasper1] QLIST=jasper1& QOSCFG[jasper1] USAGETARGET=3600NHPERMONTH QOSCFG[jasper1] USAGEACTION=RESERVE
In this model, a customer specifies ahead of time when he will need resources. Moab will automatically allocation and provision these resources to the customer during the specified time-frames. If desired, the customer may cancel the resource access with advance notice. If not, the resources will be customized and automatically integrated with his local system.
SRCFG[amc] PERIOD=DAY STARTTIME=2:00:00 ENDTIME=6:00:00 SRCFG[amc] DAYS=mon,tue,wed,thu,fri SRCFG[amc] TRIGGER=etype=start;atype=exec;adata='$TOOLSDIR/createcluster-amc.pl' SRCFG[amc] TRIGGER=etype=end;offset=-00:20:00;atype=exec;adata='$TOOLSDIR/clearcluster-amc.pl' SRCFG[amc] DEPTH=8 TASKCONT=160 FEATURES=fastio
In this example, Moab will create a reservation from 2:00 AM until 6:00 AM on 160 fastio nodes and provision them for use by the customer amc
Moab can also enable a guaranteed response time for a set of resources. This is accomplished using Rollback Reservations. For example, the following will guarantee access for up to 48 nodes within 1 hour of the request.
SRCFG[amc] PERIOD=INFINITY SRCFG[amc] ROLLBACKOFFSET=1:00:00 SRCFG[amc] TRIGGER=etype=start;atype=exec;adata='$TOOLSDIR/createcluster-amc.pl' SRCFG[amc] TRIGGER=etype=end;offset=-00:20:00;atype=exec;adata='$TOOLSDIR/clearcluster-amc.pl' SRCFG[amc] DEPTH=8 TASKCONT=48 feature=opteron SRCFG[amc] ACCOUNTLIST=smallclust
Note that an ACCOUNTLIST attribute should be specified to grant access to the created resources to the requesting cluster. The account name should be set to be the same as the one specified in the requesting Moab's SCHEDCFG[] line.
Moab can guarantee access to specific resources during specific times, access to a given quantity of resources over an arbitrary time-frame, and guarantee a resource access response time. These policies can be mixed and matched and even combined with other Moab policies to custom tailor a solution to meet the needs of most any customer. See QoS Facilities and Moab Fairness Policies for more information.
By default, outside of the specified service level agreements and QoS policies, the utility computing hosting center will operate on a basic first-come, first-served basis. In many cases, this is the desired behavior. In other cases, more advanced fairness policies may be required. Moab provides a number policies to allow management of the distribution of resources amongst competing customers. The purpose of these policies is to control both current and historical usage in a balanced manner, delivering fair access and responsiveness.