ba39ade716
This commit only removes code that is not required when swiftonfile will be used as Storage Policy in Swift. This commit does NOT: * include code changes to support SP * fix functional tests * update documentation related to SP This commit removes the following: * Gen builders script and its man page. * Authentication guide, user guide and other docs. * Swiftkerbauth code, unit tests, func tests and doc. * gswauth code, unit tests, func tests and doc. * Object expirer code modifications, unit tests and doc. * Conf files of account, container, proxy. * Account, container and proxy server code - server.py of each. * Account, container and proxy unit and functional tests. * DiskDir class and corresponding unit tests. * Our overridden ring.py (enforces account = volume = device) and tests. * Functional tests for authentication filters. * modules/swift and test/deploy directories. * Proxy base controllers unit tests. NOTE: We may have to reintroduce some of the above functional and unit tests after SP related code changes - during fixing functional tests. This commit modifies: * setup.py to reflect the above code removals. * constraints.py to remove references to ring.py * object server.py to remove object-expirer changes * tox.ini to remove ksfunctest and swfunctest Signed-off-by: Prashanth Pai <ppai@redhat.com> |
||
---|---|---|
bin | ||
doc/markdown | ||
etc | ||
extras | ||
gluster | ||
test | ||
tools | ||
.functests | ||
.gitignore | ||
.gitmodules | ||
.gitreview | ||
.travis.yml | ||
.unittests | ||
glusterfs-openstack-swift.spec | ||
HISTORY | ||
makerpm.sh | ||
pkgconfig.py | ||
README.md | ||
requirements.txt | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
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