mirror of https://github.com/zulip/zulip.git
docs: Fix upgrade instructions for Ubuntu 22.04->24.04.
Due to Ubuntu 22.04->24.04 doing an incompatible minor version jump in rabbitmq-server, we need to work around the issue by removing the rabbitmq-server package before upgrading to 24.04. https://bugs.launchpad.net/ubuntu/+source/rabbitmq-server/+bug/2074309
This commit is contained in:
parent
92437b4ab5
commit
e37f3cca07
|
@ -305,15 +305,42 @@ instructions for other supported platforms.
|
||||||
1. Upgrade your server to the latest Zulip `8.x` release (at
|
1. Upgrade your server to the latest Zulip `8.x` release (at
|
||||||
least 8.3, which adds support for Ubuntu 24.04).
|
least 8.3, which adds support for Ubuntu 24.04).
|
||||||
|
|
||||||
2. As the Zulip user, stop the Zulip server and run the following
|
1. As the Zulip user, stop the Zulip server and run the following
|
||||||
to back up the system:
|
to back up the system:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
supervisorctl stop all
|
/home/zulip/deployments/current/scripts/stop-server
|
||||||
/home/zulip/deployments/current/manage.py backup --output=/home/zulip/release-upgrade.backup.tar.gz
|
/home/zulip/deployments/current/manage.py backup --output=/home/zulip/release-upgrade.backup.tar.gz
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Switch to the root user and upgrade the operating system, following
|
1. One of Zulip's dependencies, RabbitMQ, is used to store deferred work
|
||||||
|
in queues. RabbitMQ's Ubuntu packaging has [problems][rabbitmq-bug]
|
||||||
|
upgrading from version 3.9 in Ubuntu 22.04 to 3.12 in Ubuntu
|
||||||
|
24.04. To work around this bug, you'll need to uninstall
|
||||||
|
`rabbitmq-server`, purging its database, before upgrading the OS;
|
||||||
|
the steps after the OS upgrade will reinstall the new version and
|
||||||
|
configure it properly. You can do this uninstallation process
|
||||||
|
safely via the following process:
|
||||||
|
|
||||||
|
1. As root, run:
|
||||||
|
```bash
|
||||||
|
rabbitmqctl list_queues
|
||||||
|
```
|
||||||
|
to check whether any of Zulip's RabbitMQ queues contain
|
||||||
|
unprocessed events.
|
||||||
|
1. If any queues contain events, you can run as the `zulip` user
|
||||||
|
```bash
|
||||||
|
/home/zulip/deployments/current/manage.py process_queue --all
|
||||||
|
```
|
||||||
|
to process any events still in the queues. You can also decide
|
||||||
|
to skip this step if you're OK losing a bit of data of the
|
||||||
|
relevant type.
|
||||||
|
1. As root, run `apt purge rabbitmq-server` to remove the RabbitMQ
|
||||||
|
package, including, critically, its database and configuration
|
||||||
|
state, which would otherwise cause installation of the Ubuntu
|
||||||
|
24.04 package to crash.
|
||||||
|
|
||||||
|
1. Switch to the root user and upgrade the operating system, following
|
||||||
the prompts until it completes successfully:
|
the prompts until it completes successfully:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
@ -330,11 +357,12 @@ instructions for other supported platforms.
|
||||||
The `do-release-upgrade` tool will complete by prompting you to
|
The `do-release-upgrade` tool will complete by prompting you to
|
||||||
restart the system; press `N`, as we will do so later.
|
restart the system; press `N`, as we will do so later.
|
||||||
|
|
||||||
4. Next, we need to reinstall the current version of Zulip, which
|
1. Next, we need to reinstall the current version of Zulip, which
|
||||||
among other things will recompile Zulip's Python module
|
among other things will recompile Zulip's Python module
|
||||||
dependencies for your new version of Python and rewrite Zulip's
|
dependencies for your new version of Python and rewrite Zulip's
|
||||||
full-text search indexes to work with the upgraded dictionary
|
full-text search indexes to work with the upgraded dictionary
|
||||||
packages:
|
packages. This will also take care of re-installing and re-configuring
|
||||||
|
RabbitMQ which we removed earlier.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
rm -rf /srv/zulip-venv-cache/*
|
rm -rf /srv/zulip-venv-cache/*
|
||||||
|
@ -346,13 +374,13 @@ instructions for other supported platforms.
|
||||||
which can safely be ignored. It may also prompt about "daemons
|
which can safely be ignored. It may also prompt about "daemons
|
||||||
using outdated libraries"; you should select "cancel".
|
using outdated libraries"; you should select "cancel".
|
||||||
|
|
||||||
5. As root, upgrade the database to the latest version of PostgreSQL:
|
1. As root, upgrade the database to the latest version of PostgreSQL:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
/home/zulip/deployments/current/scripts/setup/upgrade-postgresql
|
/home/zulip/deployments/current/scripts/setup/upgrade-postgresql
|
||||||
```
|
```
|
||||||
|
|
||||||
6. As root, restart the server:
|
1. As root, restart the server:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
reboot
|
reboot
|
||||||
|
@ -361,6 +389,8 @@ instructions for other supported platforms.
|
||||||
You should now be able to navigate to your Zulip server's URL and
|
You should now be able to navigate to your Zulip server's URL and
|
||||||
confirm everything is working correctly.
|
confirm everything is working correctly.
|
||||||
|
|
||||||
|
[rabbitmq-bug]: https://bugs.launchpad.net/ubuntu/+source/rabbitmq-server/+bug/2074309
|
||||||
|
|
||||||
### Upgrading from Ubuntu 20.04 Focal to 22.04 Jammy
|
### Upgrading from Ubuntu 20.04 Focal to 22.04 Jammy
|
||||||
|
|
||||||
1. Upgrade your server to the latest Zulip `5.x` release (at
|
1. Upgrade your server to the latest Zulip `5.x` release (at
|
||||||
|
|
Loading…
Reference in New Issue