|Main||Roadmap and Innovation||Technology||For Users||For Resource Providers||Media|
Scenario 4: Accounting across Resource Providers
Leader: Alison Packer and John Gordon, STFC
|Scenario leader||STFC||Alison Packer|
To account for resource usage across multiple resource providers we need to define:
- the elements to be accounted for and how accounting data may be gathered. (This relates to the statement “Resource providers agree and follow the same rules for accounting the resource usage”.)
- how accounting data will be published
- what is required from this data (for VM users, Resource Providers, VO Managers, others?)
Cloud Accounting Draft Usage Record
Some assumptions related to the current version of the Draft - Cloud Accounting Usage Record are as a result of the feedback from our meeting on 24th November, 2011:
- Many of the properties defined in the Usage Record may be set to NULL, this is based on the assumption that different Resource Providers may want to publish different sets of data, but we want only one Usage Record, usable by all.
- The "Charge" property is no longer included in the Cloud Accounting Usage Record as the cloud accounting records may be used by Resource Providers to charge for their service, but the charging mechanism would be Resource Provider specific and should therefore be separated from accounting.
- The fields for GlobalUserName, VirtualOrganization, Projectname and Group relate to an existing method of authorizing grid users, if this authorization mechanism were to be used for cloud usage as well then these would provide a method of associating VM usage with a user and then querying usage in a portal could be based on user, VO etc.
- A VM might be in one of three states: started, stopped and suspended. I think we would expect to gather many VM records whilst a VM is running, so I propose using the existing UR “Status” property for this – it may be possible to extend the implementation of this property to include some VM-specific statuses if these existing ones are not deemed appropriate.
- We need a method of identifying where a specific running VM is – there are many ways to do this, I suggest that the RecordIdentity might contain a concatenation of some of the other fields in the record – e.g. TimeStamp SiteName MachineName ImageID - other suggestions welcome.
- We have job accounting and storage accounting systems and their related usage records already - we therefore account for jobs and storage using these existing records/methods.
Compute Accounting Record
To help define what we will account for the existing Compute Accounting Record could be extended.
Publishing Accounting Data
The software and technology choices for the new APEL system (which receives compute accounting records) will be used to provide a ‘testbed’ so that the resource providers can send records to a Cloud Accounting System at STFC. The software is written in Python and the data is stored in a MySQL database, the component parts of the system are:
- Record loader
- MySQL Database
More detail available in the Cloud Accounting System document here: - Cloud Accounting System
Feedback from Resource Providers
|VM||What is measured|
|Oxford/Eucalyptus (no longer running)||Number of VM instantiated - Type of VM - Amount of time each VM has been running - Number of Elastic Block Storage volumes created - Amount of time the EBS volumes have been owned - Times the EBS volumes have been mounted - Binding between EBS volumes and VMs - Number of OS images loaded in the S3 repository - Amount of time the OS images have been loaded into the S3 repository|
|OpenNebula||(Have reviewed UR)|