Glance multi-store backend support
Glance currently supports a single store per scheme (file, vsphere, etc.) and as a result image bits can only be backed on a single backend on a per scheme basis. While this approach suffices for a number of use cases, ideally glance would support multiple stores of the same scheme and expose capabilities to discover and target those backends for (applicable) v2 image operations. Multi-store support opens the door to a handful of image replication and backend targeting use cases which can provide additional value related to fault tolerance, image locality and policy based image hosting.
This BP suggests we should enhance glance v2 in the following ways to support multi-store capabilities:
- Support in the glance-api.conf and supporting logic to configure, manage and use multiple stores of the same type / scheme.
- A new REST API to list all configured (applicable) stores known to the glance service.
- Enhance the image upload API to (optionally) support targeting a backend store for the image bits.
- Enhance the image download API to (optionally) support targeting a backend store to download the image bits from.
- Additional metadata attribute(s) added to an image locations' metadata properties related to backing stores.
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Essential
- Drafter:
- Boden R
- Direction:
- Approved
- Assignee:
- Abhishek Kekane
- Definition:
- Approved
- Series goal:
- None
- Implementation:
- Implemented
- Milestone target:
- rocky-rc1
- Started by
- Brian Rosmaita
- Completed by
- Brian Rosmaita
Related branches
Related bugs
Sprints
Whiteboard
(2/6/15: boden) IRC dump with potential dependencies / overlap
--------------
12:19 nikhil_k: we're planning to refactor glance_store api to support some of the use cases like https:/
12:20 nikhil_k: boden: so, see your proposal prolly matches close to what there is already
--------------
Gerrit topic: https:/
Addressed by: https:/
WIP Glance Multi Store Support New Change
Addressed by: https:/
Add multi-store support
Addressed by: https:/
+1
Addressed by: https:/
Doc:Multiple stores support
Addressed by: https:/
Unit tests for multi store support