Manual From Previous Version

Manual From Previous Version#

This section guides you in the upgrade from Carbonio 25.3.0, regardless of any specific patch numbers, to the latest 25.6.0.

Requirements & Preliminaries#

The upgrade to 25.6.0 may include some additional procedure that impacts the following Components, packages, or third-party software, which require some manual interaction before, during, or after the procedure. If you already have implemented them, please skip to the next section.

Operating system

Carbonio can be installed on Ubuntu 22.04 LTS, Ubuntu 24.04 LTS, RHEL 8, and RHEL 9. If you plan to upgrade both the OS and Carbonio, please refer to Section OS Upgrade.

Warning

The 25.6.0 release of Carbonio dropped support for Ubuntu 20.04 LTS, which is EOL since May 2025.

We strongly recommend upgrading to Ubuntu 22.04 LTS or even Ubuntu 24.04 LTS to ensure continued compatibility and support. .

Support for PostgreSQL 12 dropped

Carbonio no longer supports PostgreSQL 12, which must be upgraded to version 16 before upgrading Carbonio to 25.6.0. Check section Upgrade to PostgreSQL 16 for directions.

DB Connector Component

The DB Connector Component is no longer available, therefore you need to move some of the packages to the Database Component. The procedure to carry out this task can be found in Section Pgpool Removal.

Checklist#

  1. A new database for backups is added to Carbonio, so you will be required to execute the following command during the upgrade of the Database Node and then reboot all the Nodes

    # PGPASSWORD=$DB_ADM_PWD carbonio-mailbox-db-bootstrap carbonio_adm 127.0.0.1
    

Upgrade Procedure#

The upgrade procedures requires that you log in to each node of your Carbonio infrastructure and execute some command, then rebooting the Node as soon as you have successfully completed the procedure. Because you need to follow the output of the commands and make sure everything proceeds flawlessly, this procedure is suggested only if you want to have the control of all the steps.

Hint

For improved security, to prevent any data loss, it is suggested to make a backup or take a snapshot (if you are using an hypervisor) of each Node before upgrading.

We can not provide any estimate on the time required by the upgrade, because various factors may impact the duration, including the number of Nodes, their load, the speed of network connection, and so on.

Preliminary Tasks

As a preliminary task, we backup the LDAP data of the Directory Server. On a Multi-Server installation, execute the following commands on the Node with the Directory Server Component installed.

  1. Make a dump of the LDAP Database, especially if the upgrade includes the Directory Server. This can be done using the command (as the zextras user)

    zextras$ /opt/zextras/libexec/zmslapcat /tmp
    

    Note

    The dump will be saved in the /tmp/ directory, so make sure to copy it to a safe location.

  2. Make a backup copy of file /opt/zextras/conf/localconfig.xml and store it in a safe place

  3. It is necessary that all services, especially OpenLDAP, be running during the whole procedure

    zextras$ zmcontrol status
    
    zextras$ zmcontrol status
    
    zextras$ zmcontrol status
    

    Hint

    To see the status of only a service, use the new systemd commands that replace the zmcontrol commands (see Carbonio Systemd Targets).

    zextras$ zmcontrol status
    

    Hint

    To see the status of only a service, use the new systemd commands that replace the zmcontrol commands (see Carbonio Systemd Targets).

    If in the output some service appears as not running, start it.

Remember to start the upgrade from the Node featuring the Directory Server, then all the other Nodes in the same order of installation.

Step 1. Clean package list

Clean cached package list, metadata, and information.

# apt clean
# dnf clean all
# apt clean
# dnf clean all
Step 2. Update list of packages

Update package list.

# apt update
# dnf check-update
# apt update
# dnf check-update
Step 4. Upgrade Node

Install upgrades.

# apt upgrade
# dnf upgrade --best --allowerasing
# apt upgrade
# dnf upgrade --best --allowerasing
Step 5. (Optional) Remove unused packages

After the latest packages have been installed, you can remove unused packages still installed on your system. If unsure, skip this step.

# apt autoremove
# dnf autoremove
# apt autoremove
# dnf autoremove
Step 6. Register upgraded packages to Carbonio Mesh
# pending-setups -a
Step 7. Bootstrap new database

On the Database Node, run the following command. You can use the password of the Postgres user carbonio_adm that you defined during the Database Component’s installation, or of any other administrator user created previously.

# PGPASSWORD=$DB_ADM_PWD carbonio-mailbox-db-bootstrap carbonio_adm 127.0.0.1
Step 8. Reboot

Once the upgrade has completed successfully, make sure you restart all services by running command:

# reboot