Skip to content

Zimbra Upgrade

Updated: 2023-04-17

Preparation

  • Deactivate the SMTP-Ports for your Zimbra environment in your firewall settings, to prevent the delivery of incoming eMail after the VM-backups have been created, which will be lost in case sth. goes wrong during the upgrade process and you have to restore your system to the pre-upgrade status from your backup.
  • Create a VM-backup of all your Zimbra nodes, also backup or copy all your (config-) files or files changed due to 3rd-party Zimbra modifications, to re-apply them after the upgrade has been completed, eventually, in case these modifications are not upgrade stable.
  • Ensure all Zimbra nodes are at the up-to-date software level for your current version:
    $ sudo apt update 
    $ sudo apt upgrade
    

Upgrade Ubuntu-OS 18.04 LTS --> 20.04 LTS

Check for your current installed OS- and Zimbra version. For Ubuntu 18.04 LTS and Zimbra 8.8.15 P36, it should look like this:

    $ sudo su - zimbra
    $ zmcontrol -v
    Release 8.8.15.GA.3869.UBUNTU16.64 UBUNTU18_64 FOSS edition, Patch 8.8.15_P36.

    $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 18.04.6 LTS
    Release:        18.04
    Codename:       bionic

Check, if enough free space is available in / for download and and installation of the Ubuntu 20.04 packages. If a dedicated /boot/ partition exists, it should have a size of at least 1MB to provide enough space to host all kernel versions installed during the upgrade process.

  • Stoppe all Zimbra services on your Zimbra nodes as user zimbra:

    $ sudo su - zimbra
    $ zmcontrol stop
    
  • After all Zimbra serices have been shut down, update the OS:

In einer multi-server environment, update the nodes in that oder:

1. Node hosting the primary LDAP
2. Node hosting the LDAP-Replica (if exists)
3. Mailbox node(s)
4. Remaining nodes (MTAs/ proxies/ etc.)

OS-Upgrade per Zimbra Node:

Ensure to run the following operations from now on in a screen:

Become root and start the Ubuntu OS-upgrade:

    $ sudo -s
    $ apt update  && apt upgrade
    $ do-release-upgrade

When the following message is displayed, detach the screen or switch to another ssh-session on the node:

    Updating repository information

    Third party sources disabled

    Some third party entries in your sources.list were disabled. You can 
    re-enable them after the upgrade with the 'software-properties' tool 
    or your package manager.

    To continue please press [ENTER]
  • As root, open the file "/etc/apt/sources.list.d/zimbra.list" and reactivate the sources, that have been commented out, again:

    $ vi /etc/apt/sources.list.d/zimbra.list
    
    #deb [arch=amd64] https://repo.zimbra.com/apt/87 focal zimbra # Bei Aktualisierung zu bionic deaktiviert Bei Aktualisierung zu focal deaktiviert
    #deb [arch=amd64] https://repo.zimbra.com/apt/8815 focal zimbra # Bei Aktualisierung zu bionic deaktiviert Bei Aktualisierung zu focal deaktiviert
    #deb-src [arch=amd64] https://repo.zimbra.com/apt/87 focal zimbra # Bei Aktualisierung zu bionic deaktiviert Bei Aktualisierung zu focal deaktiviert
    
  • Save changes, the content of the files should now look like this:

    deb [arch=amd64] https://repo.zimbra.com/apt/87 focal zimbra
    deb [arch=amd64] https://repo.zimbra.com/apt/8815 focal zimbra
    deb-src [arch=amd64] https://repo.zimbra.com/apt/87 focal zimbra
    
  • Switch back to the screen in which the OS-upgrade is running and press "ENTER" to continue the upgrade process. In the next prompt all collected informatuon to the upgrade process are displayed:

    Do you want to start the upgrade?
    
    XXX installed packages are no longer supported by Canonical. You can 
    still get support from the community.
    
    XXX packages are going to be removed. XXX new packages are going to be 
    installed. XXX packages are going to be upgraded.
    
    You have to download a total of XXXX M. This download will take about 
    XX minutes with your connection.
    
    Installing the upgrade can take several hours. Once the download has 
    finished, the process cannot be canceled.
    
     Continue [yN]  Details [d]
    
  • When finished reviewing it (d), continue with "y"

During the upgrade process, you could be prompted in regards to config files that have changed and if you want to keep or replace them by a new version.

  • In doubt, always keep the existing files (N) and review/ compare them to the new ones after the upgrade process has been completed to adjust them if necessary, e.g.

    /etc/security/limits.conf
    
  • Before the upgrade is complete, you will be prompted to remove obsolete packages:

    Remove obsolete packages?
    
    XXX packages are going to be removed.
    
     Continue [yN]  Details [d]y
    
  • After checking (d), continue to remove the obsolute packages with "y" Once the upgrade has been completed, you will be prompted again:

    System upgrade is complete.
    
    Restart required
    
    To finish the upgrade, a restart is required. 
    If you select 'y' the system will be restarted.
    
    Continue [yN] y
    
  • Confirm with "y" and the node will be rebooted.

  • When the node has finished rebooting, check for the currently installed OS- and Zimbra version. The result should look like this:

    $ sudo su - zimbra
    $ zmcontrol -v
    Release 8.8.15.GA.4179.UBUNTU20.64 UBUNTU20_64 NETWORK edition, Patch 8.8.15_P36
    
    $ lsb_release -a
    Distributor ID: Ubuntu
    Description:    Ubuntu 20.04.5 LTS
    Release:        20.04
    Codename:       focal
    
  • Check if all zimbra services are up and running...

    sudo su - zimbra
    zmcontrol status
    
  • ... or in case not, execute a manual restart:

    zmcontrol restart
    

When all zimbra services are up and running again, the OS-Upgrade has been successfully completed.

Troubleshooting:

Inkorret/ UKNOWN zimbra version displayed after the OS-upgrade

    $ zmcontrol -v
    Release 8.8.15.GA.3869.UBUNTU16.64 UBUNTUUNKNOWN_64 FOSS edition, Patch 8.8.15_P38

Solution

1. Download and execute the Zimbra installer

Stop all zimbra services

    $ sudo su - zimbra
    $ zmcontrol stop

Download and execute the Zimbra installer 8.8.15 for Ubuntu 20.04.

    $ cd /tmp/
    $ wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-NETWORK-8.8.15_GA_4177.UBUNTU20_64.20211112014220.tgz
    $ sudo -s
    $ tar xvfz zcs-NETWORK-8.8.15_GA_4177.UBUNTU20_64.20211112014220.tgz
    $ cd zcs-NETWORK-8.8.15_GA_4177.UBUNTU20_64.20211112014220.tgz
    $ ./install.sh

Depending on your installed version of the Zimbra collaboration suite, adjust the download-URL for the wget command accordingly:

- OSE:<br/> 
```
https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954.tgz
```
- Network Edition:<br/>
```
https://files.zimbra.com/downloads/8.8.15_GA/zcs-NETWORK-8.8.15_GA_4177.UBUNTU20_64.20211112014220.tgz
```

Respond to the following prompts as instructed below:

    Do you agree with the terms of the software license agreement? [N] Y



    Checking current number of databases...

    Do you want to verify message store database integrity? [Y] N


    Use Zimbra's package repository [Y] Y

    ...

    Found ..

    < Liste der installierten Zimbra Komponenten >

    ...

    The Zimbra Collaboration Server appears to already be installed.
    It can be upgraded with no effect on existing accounts,
    or the current installation can be completely removed prior
    to installation for a clean install.

    Do you wish to upgrade? [Y]  Y
  • When prompted if you want to install additional components that are not installed on your current setup yet, always respond with "N" until you get to the following prompt:

    Installing:
    
    <List of Zimbra components to re-install>
    
    The system will be modified.  Continue? [N] Y
    
  • Once the installation has been completed, the Zimbra version will be displayed correctly:

    $ su - zimbra
    $ zmcontrol -v
    Release 8.8.15.GA.4179.UBUNTU20.64 UBUNTU20_64 FOSS edition.
    

Unfortunately the version displayed and installed now is the Zimbra version of the installer and therefore will not be on the current patchlevel (eg. Patch 38) and some of the services, e.g. the mailboxd, will not start anymore.

2. Reapply the current patch level

  • When trying to update your packages (as root), you will run into the following error message ...

    $ apt update
    $ apt upgrade
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    You might want to run 'apt --fix-broken install' to correct these.
    The following packages have unmet dependencies:
     zimbra-mta-patch : Depends: zimbra-common-core-jar (>= 8.8.15.1679569995-1.u20) but 8.8.15.1634917408-1.u20 is installed
                Depends: zimbra-common-core-libs (>= 8.8.15.1663926687-1.u20) but 8.8.15.1626439528-1.u20 is installed
     zimbra-patch : Depends: zimbra-common-core-libs (>= 8.8.15.1663926687-1.u20) but 8.8.15.1626439528-1.u20 is installed
            Depends: zimbra-mbox-store-libs (>= 8.8.15.1663926687-1.u20) but 8.8.15.1626439528-1.u20 is installed
            Depends: zimbra-common-core-jar (>= 8.8.15.1679569995-1.u20) but 8.8.15.1634917408-1.u20 is installed
            Depends: zimbra-mbox-webclient-war (>= 8.8.15.1678958998-1.u20) but 8.8.15.1635813854-1.u20 is installed
            Depends: zimbra-timezone-data (>= 2.0.1.1667816429-1.u20) but 2.0.1.1618576642-1.u20 is installed
            Depends: zimbra-mbox-admin-console-war (>= 8.8.15.1678957510-1.u20) but 8.8.15.1624007059-1.u20 is installed
            Depends: zimbra-mbox-war (>= 8.8.15.1655458176-1.u20) but 8.8.15.1634917408-1.u20 is installed
            Depends: zimbra-common-mbox-conf-msgs (>= 8.8.15.1652703447-1.u20) but 8.8.15.1556130968-1.u20 is installed
            Depends: zimbra-common-mbox-conf-attrs (>= 8.8.15.1652767386-1.u20) but 8.8.15.1571124020-1.u20 is installed
     zimbra-proxy-patch : Depends: zimbra-common-core-jar (>= 8.8.15.1679569995-1.u20) but 8.8.15.1634917408-1.u20 is installed
                  Depends: zimbra-common-core-libs (>= 8.8.15.1663926687-1.u20) but 8.8.15.1626439528-1.u20 is installed
    E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
    
  • ... which you can resolve as proposed:

    $ apt --fix-broken install
    
  • Finally re-install the patch packages manually:

    $ apt install --reinstall zimbra-ldap-patch zimbra-patch zimbra-proxy-patch zimbra-mta-patch
    

Depending on the components installed on the current node, check for the zimbra-patches to be reinstalled accordingly:

- eg the installed patched on a proxy node can look like this: <br/>

        $ dpkg -l | grep zimbra | grep patch
        ii  zimbra-mta-patch                          8.8.15.1679578642.p39-1.u20                                         amd64        Zimbra MTA Patch
        ii  zimbra-proxy-patch                        8.8.15.1679578642.p39-1.u20                                         amd64        Zimbra proxy Patch
  • When finished, like proposed, restart all zimbra services:

    $ su - zimbra
    $ zmcontrol restart
    
  • Once the restart of the zimbra servcies has been completed, the mailboxd and all other services are running and the Zimbra version and current patch level are displayed properly (e.g. OSE):

    $ zmcontrol -v
    Release 8.8.15.GA.4179.UBUNTU20.64 UBUNTU20_64 FOSS edition, Patch 8.8.15_P38.
    

Zimbra Upgrade 8.6.0 Ubuntu 14.04 to 8.7.11 Ubuntu 16.04

Upgrade procedure for a single server environment:

  • from Zimbra Release 8.6.0.GA.1153.UBUNTU14.64 UBUNTU14_64 NETWORK edition
  • to Zimbra Release 8.7.11.GA.1854.UBUNTU16.64 UBUNTU16_64 FOSS edition.

Steps to perform the Upgrade

  1. Upgrade Zimbra 8.6.0 Patch8 to 8.7.11 on Ubuntu 14.04
  2. Upgrade Ubuntu-OS from 14.04 to 16.04
  3. Upgrade Zimbra 8.7.11-Ubuntu14 to 8.7.11-Ubuntu16

We strongly suggest, to make a backup of your current Zimbra-environment before starting any upgrade-related procedures and propose to execute all operations in a screen.

1. Upgrade Zimbra 8.6.0 Patch8 to 8.7.11 on Ubuntu 14.04

  • login to your Zimbra server and download Zimbra Installation
  • download Zimbra 8.7.11Ubuntu14 Installation files to /tmp/:

    cd /tmp
    wget https://files.zimbra.com/downloads/8.7.11_GA/zcs-NETWORK-8.7.11_GA_1854.UBUNTU14_64.20170531151956.tgz
    
  • extract the installation files and execute the installer with root privileges:

    tar xvfz zcs-NETWORK-8.7.11_GA_1854.UBUNTU14_64.20170531151956.tgz
    cd zcs-NETWORK-8.7.11_GA_1854.UBUNTU14_64.20170531151956
    sudo -s
    ./install.sh
    

    When you are asked to verify database store integrity, answer No:

    Do you want to verify message store database integrity? [Y] N

  • When you are asked if you want to upgrade, answer with Yes:

    Do you agree with the terms of the software license agreement? [N] Y
    Do you want to verify message store database integrity? [Y] N
    Use Zimbra's package repository [Y] Y
    Do you wish to upgrade? [Y] Y
    
  • Afterwards the installer detects already installed components:

    Scanning for any new or additional packages available for installation
    Existing packages will be upgraded
        Upgrading zimbra-core
        Upgrading zimbra-ldap
        Upgrading zimbra-logger
        Upgrading zimbra-mta
        Upgrading zimbra-dnscache
        Upgrading zimbra-snmp
        Upgrading zimbra-store
        Upgrading zimbra-apache
        Upgrading zimbra-spell
        Upgrading zimbra-memcached
        Upgrading zimbra-proxy
    
  • In version 8.7.11 there are two new components proposed, which you can select(Y) or unselect(N) for installation, these are zimbra-chat and zimbra-drive:

    Install zimbra-chat [N]
    Install zimbra-drive [N]
    
  • Afterwards you are presented with your choice again and asked if you want to continue, select Y here:

    Installing:
        zimbra-core
        zimbra-ldap
        zimbra-logger
        zimbra-mta
        zimbra-dnscache
        zimbra-snmp
        zimbra-store
        zimbra-apache
        zimbra-spell
        zimbra-memcached
        zimbra-proxy
    

    The system will be modified. Continue? [N] Y

  • Now the System is beeing upgraded and when complete, you get the message:

    Configuration complete - press return to exit
    
  • Checking the zimbra-version, will now report 8.7.11 installed:

    su - zimbra
    zmcontrol -v
    Release 8.7.11.GA.1854.UBUNTU14.64 UBUNTU14_64 NETWORK edition.
    

2. Upgrade Ubuntu-OS from 14.04 to 16.04

Currently, the OS upgrade to Ubuntu 16.04 has to be done using a workaround, since as of right now, upgrading to 16.04 breaks the current Zimbra installation when following the officially suggested way, as reported in Bug 107436.

Check if you have enough space available in /boot/ partition for a new kernel and in / to download and install the necessary packages for Ubuntu 16.04.

  • Stop all Zimbra-services as user zimbra

    zmcontrol stop
    
  • When all services are stopped logout as user zimbra

    exit
    
  • Now create a file called /etc/update-manager/release-upgrades.d/allow-thirdparty.cfg with root privileges:

    sudo -s
    vi /etc/update-manager/release-upgrades.d/allow-thirdparty.cfg
    
  • and enter this content

    [Sources]
    AllowThirdParty=yes
    
  • save the file and perform the OS-upgrade via:

    do-release-upgrade
    
  • When you are asked if you want to replace config files that have been changed, choose N to keep the current ones.

  • When the release has been upgraded, the server is rebooted. Check the current Ubuntu-version after the reboot has been completed:

    cat /etc/issue
    Ubuntu 16.04.3 LTS \n \l
    
  • In case not all zimbra services have been started completely after the reboot, please perform a service restart

    sudo su - zimbra
    zmcontrol restart
    
  • After all zimbra services are up and running again, Zimbra 8.7.11 on Ubuntu 16.04 is now ready.