21
Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Embed Size (px)

Citation preview

Page 1: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Allocation Chargeback and Usage Accounting with Gold

Scott JacksonMoab Con 2011

Page 2: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Allocation ManagerGold is an allocation and billing system that tracks and charges for usage on cloud and technical computing systems.

Jan-99 Feb-99 Mar-99 Apr-99 May-99 Jun-99 Jul-99

Alloc6

Alloc5

Alloc4

Alloc3

Alloc2

Alloc1

.

10,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

Chargeback system for resource and service usage

Ensures funds are used according to allocation plan

Tracks resource utilization Allows for insightful capacity

planning Used in production at dozens of

sites

Page 3: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Gold in a nutshell: A usage accounting system

Gold tracks and records resource usage information, archives past state in journals and maintains a complete transaction history. It can track and maintain arbitrary custom accounting statistics.

A resource billing systemGold provides a chargeback system for usage on cloud and technical computing environments. It behaves like a bank in which deposits are made into accounts with constraints designating which entities may access the account. As resources or services are utilized, accounts are charged and usage recorded. Quotes provide charge estimates. Reservations prevent allocation oversubscription. Balance feedback is available to managers and end users.

An allocation managerCredits can be pre-allocated to specific users, projects and machines. Timeframes can be given for the expenditure of the credits enabling allocation cycles, capacity planning and a use-it-or-lose it policy.

An information serviceDynamic object creation allows sites to customize the types of accounting data they collect without modifying the code.

Page 4: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Setting up Gold

Associate costs for resource or service usageDefine entity relationships (i.e. project users)Create accounts with constraintsMake deposits into accounts

Page 5: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

AccountsProjects

UsersMachines

Allocations

Universeof

Projects

Universeof

Projects

Account: 1234Name: Chemistry

Account: 1234Name: Chemistry

Universeof

Users

Universeof

Users

Universeof

Machines

Universeof

Machines

Account: 1234Name: Chemistry

TimePeriod Allocation CreditLimit

F1Q10 250,000 0

F2Q10 250,000 0

F3Q10 250,000 0

F4Q10 250,000 0

FY10 0 20,000

Page 6: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Allocations An allocation is an allotment of computational resource credits

for use by specific projects or users during a specified time period.

When jobs complete, projects are charged and resource usage recorded. Jobs are prevented from starting unless they have an active allocation with a sufficient balance.

Limitations: Does not manage short-term usage, does not impact scheduling priority.

Project Users Machine Time Period Balance

Biology Amy, Bob Colony FY2005 100,000

chemistry Bob, Dave Colony FY2005 150,000

Page 7: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Reservations and Dynamic Charging

Accounting Manager

(Gold)

0

2

1

4

3

5

6

Deposit

0 Deposits are made in Account

1 A Job is Submitted

2 A Quote is Requested

Quote

3 A Reservation is Made

Scheduler(Moab)

4 The Job is allowed to Start

Reservation

5 The Job Completes

Resource Manager(Torque, LL, LSF)

6 The Reservation is Removed

Reservation

and a Charge is Issued

Charge

Page 8: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Capacity & Workload Planning:The Brick Approach Controlling project usage is key to capacity and workload

planning. The use of regularly expiring allocations allows you to

establish a project cycle and use the brick approach to allocation management.

Now- 1 Qtr + 3 Qtr+ 2 Qtr+ 1 Qtr- 3 Qtr - 2 Qtr + 4 Qtr

100 % Capacity

Page 9: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Year-end Resource Exhaustion It is common to see projects get off to a slow start and then

have a surge of activity at the end when results are due. Without careful management of expectations, this can be a

cause of considerable anxiety.

100% Machine Capacity

Project A’s Allotment

Project A’s Demand

Project Period

Page 10: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Expiring Allocations

Jan-99 Feb-99 Mar-99 Apr-99 May-99 Jun-99 Jul-99

Alloc6

Alloc5

Alloc4

Alloc3

Alloc2

Alloc1

.

10,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

Jan-99 Feb-99 Mar-99 Apr-99 May-99 Jun-99 Jul-99

Alloc1

.

60,000 NH

Jan-99 Feb-99 Mar-99 Apr-99 May-99 Jun-99 Jul-99

Alloc7

Alloc6

Alloc5

Alloc4

Alloc3

Alloc2

Alloc1

.

5,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

5,000 NH

Jan-99 Feb-99 Mar-99 Apr-99 May-99 Jun-99 Jul-99

Alloc6

Alloc5

Alloc4

Alloc3

Alloc2

Alloc1

.

10,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

10,000 NH

Page 11: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

ChargeRates Consumable Resource Charge Rates — Consumable Resource Charge Rates define how much it costs

per unit of time to use a consumable resource like processors, memory, etc. Usage Charge Rates — Usage Charge Rates define how much to charge for metrics of total resource

usage such as CpuTime, Licenses used, Power consumed (in Watts), etc. Name-Based Multiplier Rates — Name-Based Multiplier Rates are quality based charge rates which

apply a multiplicative charge factor based on a quality of the job such as QOS, queue, user, etc. Value-Based Multiplier Rates — Value-Based Multiplier Rates are scaled multipliers which apply a

multiplicative charge factor (such as Discount) based on a numeric scaling factor. Value-Based Fees — Value-Based Fees define how much to charge for scaled or enumerated fees such

as setup fees, shipping charges, etc. which should be added after the multipliers are applied.

Type Name Instance Rate Description

VBR Processors 1 Processor Charge

VBR Memory .001 Memory in MB

VBU Power .05 Watts

VBU CpuTime 1 Actual CPU

NBM QualityOfService Premium 2 Hi Prio, Preemptor

NBM QualityOfService Normal 1 Regular Prio

NBM QualityOfService Bottomfeeder .5 Lo Prio, Preemptee

VBM Discount 1 Special Discounts

VBF Setup 100 Setup Fee

Page 12: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Other Gold Features

Flexible Charging

Credit and Debit ModelsGuaranteed Quotes

Powerful Querying

Page 13: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Other Gold Features

Strong Security

Historical JournalingTransparency Features

Dynamically Customizable

Page 14: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Web-based GUI

Page 15: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011
Page 16: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011
Page 17: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011
Page 18: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011
Page 19: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Nested Accounts

UniversityUniversity

BiologyBiology

ActinidesActinides

Chem 201Chem 201

PhysicsPhysics

Chem 101Chem 101

ChemistryChemistry

WorkshopWorkshop

252525

4040

5040

Page 20: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

More charge rate examplesType Name Instance Rate Description

---------- ---------- --------- ---- ------------------------------

VBR Processors 1 Charge 1 per processor per second

NBR License Abacus 10 Charge 10 per second for abacus license

VBU Power 5 Charge 5 per watt used

NBU Feature Telescope 5 Charge flat fee of 5 if telescope requested

NBM QOS Premium 2 Multiply resource charges by 2 for premium

VBM Discount 1 Apply specified discount

VBF Shipping 100 Charge for specified units of shipping fees

NBF Zone Asia 400 Apply a flat fee of 400 for the asia zone

Disk User scottmo 10 Charge scottmo a disk rate of 10 per second

The multi-dimensional Resource is a resource value that changes on a per-attribute basis, and is assumed if the Type is anything other than the known types. For example, the above line illustrates a disk resource fee of 10 for User=scottmo, whereas a different value might be applied for User=fred.

Total Charge = ((((sum of all NBR and (M)VBR*value) times walltime) + (sum of all NBU and VBU*value)) times (product of all NBM and VBM*value)) + (sum of all NBF and VBF*value)

Page 21: Allocation Chargeback and Usage Accounting with Gold Scott Jackson Moab Con 2011

Sneak Peak – Moab Gold 3.0In this major release of Gold Allocation Manager, many HPC-centric

relics were generalized for application in the cloud space.

The Job object was replaced by the more generic UsageRecord object. Accounts are now associated with arbitrary constraints instead of being tied

specifically to Users, Projects and Machines. Better filtering can be applied to the results of bank object queries. These filters

also enable more refined role privilege filtering. Command-line clients have been added to better manage roles and charge rates. Object defaults and auto-generation have been generalized to custom objects. Arbitrary organizational relationships can be established and applied to the

usage dynamics. Quotes, reservations and charges may use independently negotiated prices for

resource and usage rates. A priority can be associated with accounts to influence account precedence

when charging.