[openstack-ansible] Documentation of host OS major upgrade
Hello, I'm actually using OpenStack-Ansible to deploy a little public cloud. For now it runs on Queens / Ubuntu 16.04. I've read that Rocky will be the only release supported on both Ubuntu 16.04 and Ubuntu 18.04 with OpenStack-Ansible. Stein being out soon (with OpenStack-Ansible), the question of Host OS upgrade from Ubuntu 16.04 to ubuntu 18.04 is a big thing of this year. I've not found any documentation about that upgrade path (Rocky->Stein, host OS). I had some answers on IRC that OpenStack Ansible does not support a mixed environnement (adding compute nodes on Ubuntu 18.04 while the rest is on Ubuntu 16.04 for example). Did I miss something in the actual doc or in some blogs ? I'm sure some users already faced this with transition fro Ubuntu 14.04 to Ubuntu 16.04. There's certainly some material to start some documentation and add it to https://docs.openstack.org/openstack-ansible/stein/admin/upgrades/ major-upgrades.html. I know that there's less contributors now, I'll see if I can help. Thanks.
Le samedi 13 avril 2019, 12:11:37 CEST Работягов Дмитрий a écrit :
Hi Gilles,
Regarding Xenial - Bionic upgrade - it's a possible upgrade, but it looks like more one-by-one re-setup than upgrade, if you wish to upgrade not only host OS, but containers as well. First of all you'll need to complete Q->R upgrade, after that you'll be able to upgrade Ubuntu. For instance I've completed such upgrade for my deployments, and it was pretty successful. We've got some notes regarding such upgrade on etherpad:https://etherpad.openstack.org/p/osa-rocky-bionic-upgrade Mixed deployments are supported by OSA as well - you may easily use different operating systems in one deployment, you just need wheels and packages to be build on the repo-server for this OS. -- Kind Regards, Dmitriy Rabotyagov
Thank you Dmitry for your notes ! But one question : when you say the wheels need to be rebuild for the OS in repo-server, how do we do that, and keep and maintain the two versions ? Doing a rolling remove/rebuild/re-add for each server seems fine if a mixed OS deployment is supported for the hosts OS. Concerning the LXC OS, is it built based on the host one, or a config somewhere ? Do all the containers need to be the same version ? Again, it can be fine, but time consuming, if we first need to upgrade all hosts, recreating containers in xenial on them until all hosts are upgraded. And only after, recreate all containers in bionic.
As far as I know work on upgrade Rocky->Stein is still in progress.
Of course, but it would be great if that sort of documentation is ready when OSA Stein is out ! -- Gilles
Hi, You'll need to re-run repo-build.yml playbook once have at least one host running another OS. So repo-server is designed to support different operating systems, and required packages would be built for every OS. You should be able to see such selection inside repo container in /var/www/repo/pools/ LXC OS is based on the host OS, but this might be overrided: https://github.com/openstack/openstack-ansible-lxc_hosts/blob/stable/rocky/d... Mixed containers are ok as well. And Ubuntu 18.04 on the host supports Ubuntu 16.04 containers, so it's possible to upgrade host and only after that rebuild containers on this node. The only tricky thing is that Ubuntu 18.04 runs lxc 3, while 16.04 is running lxc 2. This migration is covered by Kevin's note inside etherpad, so shouldn't be a big problem. 13.04.2019, 20:28, "Gilles Mocellin" <gilles.mocellin@nuagelibre.org>:
Le samedi 13 avril 2019, 12:11:37 CEST Работягов Дмитрий a écrit :
Hi Gilles,
Regarding Xenial - Bionic upgrade - it's a possible upgrade, but it looks like more one-by-one re-setup than upgrade, if you wish to upgrade not only host OS, but containers as well. First of all you'll need to complete Q->R upgrade, after that you'll be able to upgrade Ubuntu. For instance I've completed such upgrade for my deployments, and it was pretty successful. We've got some notes regarding such upgrade on etherpad:https://etherpad.openstack.org/p/osa-rocky-bionic-upgrade Mixed deployments are supported by OSA as well - you may easily use different operating systems in one deployment, you just need wheels and packages to be build on the repo-server for this OS. -- Kind Regards, Dmitriy Rabotyagov
Thank you Dmitry for your notes !
But one question : when you say the wheels need to be rebuild for the OS in repo-server, how do we do that, and keep and maintain the two versions ?
Doing a rolling remove/rebuild/re-add for each server seems fine if a mixed OS deployment is supported for the hosts OS.
Concerning the LXC OS, is it built based on the host one, or a config somewhere ? Do all the containers need to be the same version ?
Again, it can be fine, but time consuming, if we first need to upgrade all hosts, recreating containers in xenial on them until all hosts are upgraded. And only after, recreate all containers in bionic.
As far as I know work on upgrade Rocky->Stein is still in progress.
Of course, but it would be great if that sort of documentation is ready when OSA Stein is out !
-- Gilles
-- Kind Regards, Dmitriy Rabotjagov
participants (3)
-
Dmitriy Rabotjagov
-
Gilles Mocellin
-
Работягов Дмитрий