>
> and you need the whole Swift stack from OpenStack:
>
> # rpm -qa | grep swift
> openstack-swift-container-1.13.1-6.el7ost.noarch
> openstack-swift-object-1.13.1-6.el7ost.noarch
> swiftonfile-1.13.1-6.el7rhgs.noarch
> openstack-swift-proxy-1.13.1-6.el7ost.noarch
> openstack-swift-doc-1.13.1-6.el7ost.noarch
> openstack-swift-1.13.1-6.el7ost.noarch
> openstack-swift-account-1.13.1-6.el7ost.noarch
The swift project source code is shipped by splitting into
multiple RPMs, like many projects do. Unlike other
Openstack components, the good thing about Swift is that
it is very decoupled from rest of OpenStack and can work
standalone.
Vanilla swift deployment (without gluster) is distributed
among multiple nodes and has lot of moving parts as you've
mentioned.
But gluster-swift isn't so. The distribution and replication
functionality of Swift is suppressed and delegated to gluster.
gluster-swift is front-end which processes and converts all
incoming object requests into filesystem operations that
gluster can work with. That's all it does.
gluster-swift runs all four swift processes (PACO) *on the same node*.
+-------------------------------------------------------+
| |
| +-------------------------+ |
| | +-----> Account | |
| | | | |
| | | | +------------+ |
Network
HTTP Client +----> | | Proxy +-----> Container| | Glusterfs
+-------------->
| | | +---------> | FUSE mount | |
| | | | +------------+ |
| | +-----> Oject | |
| +-------------------------+ |
| |
+-------------------------------------------------------+
Same node
>
>
> but as wrote by Ben, there are too many moving parts to get that working.
>