[PKG-Openstack-devel] Releasing OpenStack Queens using Python 3

Thomas Goirand zigo at debian.org
Thu Feb 15 22:26:32 UTC 2018


Hi,

I'm moving this topic in the OpenStack list, if you don't mind (it
doesn't seem there's anything private, so I hope you wont mind). I'll
answer later about Ceph.

On 02/15/2018 12:45 PM, James Page wrote:
>     "Nova now requires Ceph/librados >= 11.1.0 if running under Python 3
>     with the RBD image backend for the libvirt driver."
> 
>     So I really would love to see Luminuous uploaded to Sid ASAP, since I'm
>     planning on switching everything to Python 3 for Queens.
> 
> 
> OK that's quite optimistic - in Ubuntu we're targeting Rocky as it
> really needs to be all or nothing (running different projects under
> different python under apache modwsgi is not possible).

First, Gentoo people have ran Pike with Py3 without issues (as per the
-dev list), and RDO guys (ie: my friend Haikel) is also moving toward
Py3 (for Rocky, as I understand). So there's a real move toward Py3 on
all distros.

Then for Pike, I thought I would do the switch *after* a first initial
release, and then run functional tests, to see if there was any
regression. Unfortunately, that's consuming too much of my time, and I
don't think I can afford to do that.

Also, I don't think there's any issue with modwsgi in Debian, as I've
used uwsgi on everything but Keystone. I am by the way thinking about
moving Keystone to uwsgi as well. The only last bit would be Horizon,
but since it's a web app (with fonts, graphics, etc.), then it must use
Apache. That means in Debian, only Horizon would be using mod_wsgi.

And if we want to achieve removal of Python 2 support before Buster, it
needs to be done early enough, as it will take a lot of time, and has to
be done in the correct order to avoid breakage. IE: removal from
services, then os-foo libs, then clients, then oslo libs. Then we will
need to get rid of the update-alternatives hack (though remember: only
the .postinst will go, and we will need the postrm until Buster is
released, otherwise the alternative stays and upgrade is not possible).
This will take time too, so again, best is to start early.

What is the situation in Ubuntu? Are you using mod_wsgi for most API
servers in OpenStack? Isn't this an issue in terms of configuration, as
when you need to restart an API, then all of them restart?

Also, currently, mostly all is configured through the init script (with
parameters to the uwsgi daemon). I thought that maybe, it'd be best to
use a configuration file, so that users would be able to tweak it in a
more easy way. We'd need to come with a scheme where to store these
files, and IMO, it'd be best if we could have a unified way to do it
between Debian and Ubuntu (ie: file names and path for the uwsgi
parameters file). Did you think about this? Would you agree that we'd do
something like this (example for nova placement API):

/etc/nova/nova-placement-api.uwsgi.conf

Please let me know if that is a fine filenaming scheme, and if you agree
to share that when using uwsgi. It is in our best interest to do so, so
that upstream configuration management script (puppet, ansible, salt,
charms, etc.) can handle the same config way.

Also please let me know if you have no intention to use uwsgi in Ubuntu.
I thought about moving Keystone to uwsgi, but I didn't do it yet because
I'm indeed scared to break compatibility with Ubuntu.

Cheers,

Thomas Goirand (zigo)



More information about the Openstack-devel mailing list