The most prominent storage feature made available yesterday with the 10th release of OpenStack cloud software — known as Juno — gives users the ability to control how and where they want to store, replicate and access data across object storage clusters.
The new “storage policies” capability applies to the OpenStack Object Storage project, which is better known by its code name, Swift. The latest OpenStack Swift release also includes updated support for the OpenStack Keystone identity service and CPU-lowering data handling improvements, but the feature drawing the most attention is storage policies.
“They’re the biggest thing that’s happened to Swift since it was open sourced as part of OpenStack four years ago,” said John Dickinson, the project technical lead for OpenStack Swift and director of technology at SwiftStack Inc., which sells a commercially supported version of the open source Swift software.
Dickinson said, by using storage policies, a company with a Swift-based server cluster located in the United States and in Europe could choose to store some data only in one geographic region. Or, a user with flash- and disk-based storage could set up tiers based on storage policies and offer different service-level agreements or chargeback/billing options.
Storage policies also enable users to decide the number of data replicas they want across a Swift cluster. For instance, an enterprise might choose to replicate some data only in two locations and other data across four data centers in different geographies.
“You can very specifically customize your Swift cluster for your use case – which, in my opinion, is really the whole purpose of cloud,” Dickinson said.
In addition to the immediate benefits, storage policies will also pave the way for an important feature in the 11th version of OpenStack, known by its project code name, Kilo. Dickinson said storage policies are the “critical foundation” allowing the community to build erasure code support in Swift. The community hopes to finish its work on erasure codes by year’s end, and at the latest, by the time of next spring’s Kilo release, according to Dickinson.
Another key storage capability targeted for OpenStack’s Kilo release is encryption of data at rest by Swift, but Dickinson said the feature is still in the design phase at the moment.
Of course, Swift isn’t the only storage option in OpenStack. The OpenStack Block Storage project, known as Cinder, will focus on core internals in the Kilo release, according to John Griffith, the project’s technical lead and a software engineer at SolidFire Inc.
“There’s a good deal of housekeeping that needs to be done, not only general architecture and stability improvements, but also we would like to focus on things like rolling upgrades and project interactions,” Griffith said via an email.
In the meantime, this week’s OpenStack Juno release added new features such as support for volume replication, volume pools, consistency groups and snapshots of consistency groups to OpenStack Cinder block storage.
File storage remains a work in progress for the OpenStack community. The OpenStack Foundation’s press release listed the Manila shared file system among several projects in the incubation phase, “expected to land in late 2015 and beyond.”