suggestion goal for zed: getting swift and glance to support uwsgi

Thomas Goirand zigo at debian.org
Sun Oct 2 15:53:51 UTC 2022


Hi,

As you may know, almost all of OpenStack now supports running on UWSGI. 
However, 2 projects remain incompatible with it: Glance and Swift.

I've heard that it's now fixed with Glance, but I haven't checked the 
fact for myself. Has anyone already run Glance (with Swift as backend) 
under uwsgi, instead of eventlet? What's the status? Has all of the 
remaining issues been tackled?

As for Swift, while upstream has even examples on how to run Swift over 
uwsgi, experience (in heavy load production) demonstrated that there are 
many issues running under uwsgi. That's a shame, because the uwsgi 
server makes most services (proxy, object, container and account 
servers) run twice as fast.

Currently, the proxy and object servers aren't following the RFCs, and 
are incompatible with uwsgi, especially when chunks are involved 
(SLO/DLO in the pipeline).

Also, it doesn't look like the Swift servers are thread safe. Switching 
to more than one thread just fails under heavy load.

As a result, in production, we had to run double the amount of servers 
to handle the load. That's a huge waste of resources, IMO.

It'd be great if upstream took it seriously to propose a uwsgi binary by 
default, and if the CI was using it. Note that I've already proposed 
such a patch [1], but it received zero votes, and not really getting 
attention upstream.

Your thoughts anyone?

Cheers,

Thomas Goirand (zigo)

P.S: This is just a suggestion for the work in the next cycle, I don't 
think I have the bandwidth to work on each individual project, and that 
my time is better spent on what I do best: Debian packaging of OpenStack 
and cluster deployment integration.

[1] https://review.opendev.org/c/openstack/swift/+/821192



More information about the openstack-discuss mailing list