OS Upgrade

OS Upgrade#

The procedure must be carried out on each Node, starting from the one on which the Directory Server Role is installed, and it will require to reboot the Node and therefore a downtime of the Carbonio CE infrastructure must be planned. Please read carefully the whole section before starting the upgrade.

The procedure is divided into phases:

  1. upgrade PostgreSQL from 12 to 16 (you can skip it if you already upgraded)

  2. manual upgrade Carbonio CE to 25.3.0

  3. upgrade Ubuntu LTS from 20.04 to 22.04 (Jammy Jellifish) or RHEL 8 to RHEL 9. Note that this release, 25.03, is the last version supporting Ubuntu 20.04 LTS, which goes EOL in May 2025, so you are strongly recommended to upgrade to Ubuntu 22.04 LTS.

  4. upgrade Carbonio CE's packages to match the correct repository

  5. complete the upgrade procedure

Phase 1#

If you have not yet upgraded to Postgres 16, do so before upgrading the operating system. Directions to upgrade PostgreSQL can be found in Section Upgrade to PostgreSQL 16.

Phase 2#

This phase is the same as a normal upgrade, so please refer to Section From Previous Version.

Phase 3#

This phase requires to upgrade the Ubuntu 20.04 distribution to 22.04 or the RHEL 8 to RHEL 9 please refer to the Ubuntu and Red Hat upstream documentations.

Note

If you upgrade to Ubuntu 22 and use the Carbonio Monitoring role, please make sure to change the Grafana repository.

Phase 4#

Once you successfully carried out the first three phases, you can proceed to update the Carbonio CE packages to match the distribution. This phase requires some manual command to be executed.

During the Ubuntu upgrade, the file /etc/apt/sources.list.d/zextras.list will be modified. You need to make sure that it contains only the correct repository, that is, the line defining the repository

  1. contains the word jammy

  2. is not commented, i.e., it does not start with a # sign

During the RHEL upgrade, the file /etc/yum.repos.d/zextras.repo will be modified. You need to make sure that it contains only the correct repository, that is, the line defining the repository is:

baseurl=https://repo.zextras.io/release/rhel9

Then update the package list, and the packages themselves with these commands

# apt update && apt dist-upgrade

# dnf upgrade –best –allowerasing

Phase 5#

After completing the installation you need to update also the ubuntu repositories with the new version.

  • Before changing anything, back up your current APT sources:

    zextras$ sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
    
  • Update sources.list entries from focal to jammy, Open with your text editor:

    zextras$ sudo nano /etc/apt/sources.list
    
  • Then replace all instances of:

    focal

    with

    jammy

  • If you have third-party PPAs, you may also want to check files under file:/etc/apt/sources.list.d/

Some of them may not yet support Jammy — they may need to be disabled temporarily or updated manually.

Finally, reboot the Node.

# reboot