Project

General

Profile

Add QoS capacity to librbd » History » Version 1

Jessica Mack, 06/23/2015 01:48 AM

1 1 Jessica Mack
h1. Add QoS capacity to librbd
2
3
h3. Summary
4
5
Now librbd doesn't support image-level rate-limit capacity. But we still can use hypervisor which support block IO qos to get , such as qemu. But it didn't know what the IO operation is clearly. For example, if rbd cache enabled many seq io may merge into one operation in the ceph side. In the other words, one IO in qemu not the same as a op in librbd.
6
7
h3. Owners
8
9
* Haomai Wang (UnitedStack)
10
* Rongze Zhu (UnitedStack)
11
* Name
12
13
h3. Interested Parties
14
15
* Danny Al-Gaaf (Deutsche Telekom AG)
16
* Zhiteng Huang (eBay Inc.)
17
* Name
18
19
h3. Current Status
20
 
21
Librbd doesn't support it now.
22
23
h3. Detailed Description
24
 
25
User can create image with specied qos spec, like "read_iops", "write_iops", "read_bytes" etc. Each image store it in the header object. We can limit the io via Objecter, or other places. We also can dynamically set image's qos online, it is very useful for cloud platform.
26
 
27
Then we can support qos at OpenStack Cinder rbd driver.
28
29
h3. Work items
30
31
h4. Coding tasks
32
33
# Determine qos fields
34
# Implement it at librbd
35
# Add to Cinder
36
37
h4. Documentation tasks
38
39
# Option docs