Collect Storage Performance Metrics - ( IO Count , Response Time)

Registered by Rakesh Jain

The aim is to provide a way in Ceilometer to have basic storage performance meter data (IO and Response Time) for policy based storage management such as performance aware storage placement, storage tiering and basic reporting. Pretty much every storage device report the IO and Response Time information – so we need to define the semantics behind the metrics to create the standardized notion.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
Rakesh Jain
Direction:
Needs approval
Assignee:
None
Definition:
Obsolete
Series goal:
None
Implementation:
Unknown
Milestone target:
None
Completed by
gordon chung

Related branches

Sprints

Whiteboard

Initially our goal is to apply it to Cinder Storage Volume constructs. It can be potentially extended later to other similar constructs in Manila and Swift.

Total Logical IO: This metric provides total absolute count of number of IOs observed by the storage device from host/server/VM. It doesn’t reflect the physical IOs that might reflect on the underlying physical disk. Simple example: if a particular storage block was read two times consecutively by an application on a VM from a Cinder storage volume , Total Logical IO would be reported as two. But, storage system might read it once from disk and return the same result from storage cache resulting in a physical IO of one. Total Logical IO count would be reported for a Cinder storage volume for a duration (start Time, end Time).

So, Total Logical IO would be the sum total of all Read and Write IOs observed by the Cinder storage volume from host during the duration (start Time, end Time). Users reading the metric from Ceilometer can easily derive related metrics such as

i) IOPS (IO per second)
ii) IO-Density (IO per second per GB)
Response Time: This metric Reports the average Response Time for IOs for a Cinder storage volume for a duration (start Time, end Time).

Note:
i) Storage Volumes in replication relationships might not reflect/report the replication related IOs under Total Logical IO.
ii) Total Logical IO can later be broken down and reported as Read/WRITE, RANDOM/SEQUENTIAL
iii) Average Block Size can be reported to make the concrete use of the Total Logical IO.
iv) In addition to the metrics, the storage system / pool identifier will also be stored.

Blueprint by:
Alfredo Alba, Rakesh Jain (rakeshj), Ramani Routray (routrayr), Yang Song (yangsong)

please add a spec to https://github.com/openstack/ceilometer-specs -- gordc (19/11/14)

seems inactive, closing.

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.