Moab Adaptive Computing Suite Administrator's Guide 5.4

2.10 Accounting, Costing, and Automated Billing

Moab allows organizations to create, process, and distribute detailed accounting records based on resources and services used. The raw accounting information can be exported to databases and allocation and identity management systems in real-time or Moab can export processed costing information to these systems. With its costing system, Moab can charge users based on desired quality of service levels, resources allocated, internal and external services used, time of day factors, and so forth.

2.10.1 Automating Accounting

Cost weights can be associated with storage, network, license, and compute resources. Cost weights can also be assigned to generic external service usage or generic consumable resource usage. These cost weights are adjusted by the CHARGINGCONSUMPTIONMETRIC policy that indicates whether the user should be charged based on resources used, resources dedicated, successful jobs only, or other aspects of usage. The effective cost per job can be further modified by setting costing factors for the quality of service requested and delivered, events that occurred on allocated resources, generic metric consumption, time of day or resource utilization, and so forth.

Beyond specifying resource, service, and event based charging, Moab also allows customization of the effective chargerates using credential based charge modifiers. These modifiers can be specified directly in the moab.cfg configuration file or imported in real-time from a database or peer service using the identity manager interface.

A quick way to get started with allocation tracking is through the use of the file allocation management interface. In most cases, the allocation management interface is used to interface directly to a powerful peer allocation management service such as Gold. However, if the server URL is pointed to a file, Moab will populate that file with event records indicating each charge it creates to resource or service usage as in the following example:

AMCFG[acct] SERVER=file:/opt/moab/charge.dat

Once the allocation management interface is enabled, the next step is to define the charging rules. Utilization charging rates and event based charging can be enabled using any combination of the following:

Per Node Provisioning Costs
Specifies per-node setup cost associated with provisioning the resources required by the production virtual private cluster.
VCPROFILE[datamining1] NODESETUPCOST=150.0
   
Per NodeHour Package Usage Costs
Specifies per-node node hour multiplier that will be factored in with other charge rates in determining total VPC resource usage costs. Total utilization costs are calculated as follows:

(Node1Cost[+Node2Cost]...)*QOSChargeRate*VPCChargeRate*AccountChargeRate*WallTime
VCPROFILE[datamining1] NODEHOURCHARGERATE=10.0
   
Per Node Base Costs
Specifies per-node base costs associated with raw resource value. Total utilization costs are calculated as follows:

(Node1Cost[+Node2Cost]...)*QOSChargeRate*VPCChargeRate*AccountChargeRate*WallTime
NODECFG[node0014] CHARGERATE=1.5
   
Per Account Charge Multiplier
Specifies per-account cost multiplier allowing per account special pricing and discounts. Total utilization costs are calculated as follows:

(Node1Cost[+Node2Cost]...)*QOSChargeRate*VPCChargeRate*AccountChargeRate*WallTime
   
Per QoS Charge Multiplier
Specifies per-account cost multiplier allowing per account special pricing and discounts. Total utilization costs are calculated as follows:

(Node1Cost[+Node2Cost]...)*QOSChargeRate*VPCChargeRate*AccountChargeRate*WallTime
QOSCFG[DEFAULT]    CHARGERATE=2.0
QOSCFG[guaranteed] CHARGERATE=1.5
QOSCFG[lowlatency] CHARGERATE=1.25

2.10.2 Automating Billing Reports

The Moab Cluster Manager tool can be used to create professional billing reports for arbitrary timeframes. The exact format for these reports can be customized on a per site basis. These reports can be exported to PDF, JPEG, or other standard formats. Once the desired report format and content is achieved, Moab Cluster Manager can export a command line string which can be used to automatically create this report manually from a terminal or automatically from within a cron-like facility.

2.10.3 Monitoring Customer Usage

In addition to historical reporting, Moab Cluster Manager can also present information regarding real-time usage as well as multi-customer usage breakdowns and delivered service levels. This information can be highly useful in identifying whether key customers are receiving appropriate levels of service and quantities of resources.

2.10.4 Evaluating Center Effectiveness

Standard cluster analysis techniques, as described in the Cluster Analysis section, can be applied to determine efficiency, utilization and bottlenecks as well as answer general capacity planning questions.

See Also