Support separate block devices for account and container devices

Bug #1729727 reported by James Hebden
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Swift Storage Charm
Triaged
Wishlist
Unassigned

Bug Description

Currently, block devices specified in charm configuration are added to the account, container and object rings. It would be great to be able to specify a list of block devices per-ring (account, contianer, object) in configuration.

Whilst most environments would want the same devices to be specified for all three rings, it can become important to consider the storage used for the account and container databases when usage of Swift requires the storage of a large number of containers in a single account, or a large number of objects in a single container. Both of these uses will greatly increase the size of the sqlite databases used by Swift to store metadata about accounts, and the frequency of updates to the indivdual sqlite databases stored on-disk on the swift-storage nodes.

When these sqlite databases become large, storage on higher performance block devices (such as SSD/NVMe) becomes advantageous to making sure that updates to these databases can be performed quickly, and syncronised around the cluster, preventing the accumulation of "async pending" updates (uncommitted metadata changes), whilst allowing better cost per GB (i.e. rotational) disks to be used for storing object data.

The account and container block device list could be an entirely optional setting, defaulting to the current block device setting if unset.

James Page (james-page)
Changed in charm-swift-storage:
status: New → Triaged
importance: Undecided → Wishlist
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.