Swift Object Server implementation that enables objects created using the Swift API to be accessed as files on a POSIX filesystem.
Go to file
Thiago da Silva cd0faa4d7b Merge pull request #33 from thiagol11/release2.0
Updating SwiftOnFile version to release 2.0
2014-08-18 14:18:09 -04:00
bin changing references of gluster to swiftonfile 2014-07-08 11:04:31 -04:00
doc/markdown Update dev_guide.md 2014-07-31 13:13:00 -04:00
etc Updating SwiftOnFile version to release 2.0 2014-08-18 13:20:15 -04:00
extras changing references of gluster to swiftonfile 2014-07-08 11:04:31 -04:00
swiftonfile Updating SwiftOnFile version to release 2.0 2014-08-18 13:20:15 -04:00
test Add a swiftonfile specific functional test 2014-08-07 12:54:16 +05:30
.functests changes references to swiftonfile in tests scripts 2014-07-08 11:04:31 -04:00
.functests-ci changes references to swiftonfile in tests scripts 2014-07-08 11:04:31 -04:00
.gitignore Modify unit tests and func tests 2014-05-08 12:11:46 +05:30
.gitmodules Add OpenStack Swift as a git submodule 2013-09-05 04:23:50 -07:00
.gitreview Git review to use branch master 2013-08-13 12:43:54 -07:00
.travis.yml removing blank lines 2014-04-28 19:30:38 -04:00
.unittests changes references to swiftonfile in tests scripts 2014-07-08 11:04:31 -04:00
HISTORY Remove "ufo" directory, promoting contents to top-level 2013-05-10 07:12:08 -07:00
README.md Update README.md 2014-07-31 13:26:56 -04:00
makerpm.sh changing references of gluster to swiftonfile 2014-07-08 11:04:31 -04:00
pkgconfig.py changing references of gluster to swiftonfile 2014-07-08 11:04:31 -04:00
requirements.txt Sync with OpenStack Swift v1.13.1 2014-05-08 11:45:08 +05:30
setup.py changing references of gluster to swiftonfile 2014-07-08 11:04:31 -04:00
swiftonfile.spec changing references of gluster to swiftonfile 2014-07-08 11:04:31 -04:00
test-requirements.txt remove keystone client dependency 2014-07-24 16:16:26 -04:00
tox.ini Updating SwiftOnFile version to release 2.0 2014-08-18 13:20:15 -04:00

README.md

Build Status

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-vol/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

Get involved:

Join us in contributing to the project. Feel free to file bugs, help with documentation or work directly on the code. You can communicate with us using GitHub issues or find us in the #swiftonfile channel on Freenode.

Guides to get started:

  1. Quick Start Guide with XFS/GlusterFS
  2. Developer Guide