Swift-on-File
Swift-on-File, formerly called Gluster-Swift, is a Swift Object Server implementation that enables objects created using the Swift API to be accessed as files on a Posix filesystem.
The main difference from the default Swift Object Server is that Swift-on-File stores objects following the same path hierarchy as that object's URL. On a vanilla openstack swift the object server will store the object following the mapping given by the Ring and its final storage location and filename are unknown to the user. In the case of Sof, the object will be stored in the configured filesystem volume with the same directory structure as the object's URL.
For example, an object with URL: https://swift.example.com/v1/acc/cont/obj, would be stored in the following way:
- Swift: /mnt/sdb1/2/node/sdb2/objects/981/f79/f566bd022b9285b05e665fd7b843bf79/1401254393.89313.data
- SoF: /mnt/gluster-object/acc/cont/obj
Roadmap
Swift-On-File is in a transition period. The project was recently renamed from Gluster-Swift to Swift-on-File to better represent its nature of a Swift backend that supports multiple Posix Filesystems, not just GlusterFS. It is also transitioning to become a Swift Storage Policy. While Gluster-Swift had to be deployed as its own cluster, SoF can be deployed as a storage policy on an existing Swift cluster. This is a tremendous change to the project as it opens up new possibilities of how SoF can be used, such as, enabling the ability to consume and migrate existing file storage (e.g., NFS) on a swift cluster.
Our last stable release was targetting the Swift Icehouse release. This was the last release of Gluster-Swift. The next release will target Juno, with support for storage policies.
Besides the work to support Storage Policies we also plan on adding support for other Filesystems (e.g., NFS) and also for enabling the access of objects through multiple protocols.
To learn more about the history of Gluster-Swift and how Swift-On-File came to be, you can watch this presentation given at the Atlanta Openstack Summit: Breaking the Mold with Openstack Swift and GlusterFS. Presentation slides can be found here.
Supported Filesystems:
- XFS
- GlusterFS