Update Procedure

This article explains how to update Exasol 8 software in an on-premises deployment.

This procedure is carried out using Exasol Deployment Tool (c4).

Overview

The c4 update command is used to perform update actions on various objects and components. This section explains how to update a deployment to a new Exasol version using c4 update cluster.

You can initiate the update from any of the hosts in the cluster or from an external system (jump host) that has SSH access to the database hosts. If the system that is used to perform the update is not connected to the internet, you must first download the Exasol 8 installation package from the Exasol Download Portal using another system, and then copy the installation package to the system that will perform the update.

For details about all options for the update command, use c4 update --help.

Read the information on Update Considerations carefully before you start the update.

Prerequisites

  • The version of c4 used to perform the update must be 0.4.12 or newer and must be compatible with the database version that is being updated. The latest version of c4 is available on the Exasol Download Portal.

  • The deployment to be updated must be running Exasol version 8.21.0 or newer.

  • The partition where the home directory of the user is mounted (on each host) must have at least 20 GiB free space.

  • All nodes in the deployment must be online.

  • The database must be stopped. For more information, see Stop a Database.

  • If the system performing the update has no internet access, a copy of the installation package for the new Exasol version must exist on the system.

  • The user or role executing the update must have the necessary privileges to connect to the cluster through SSH.

  • The system running the update must have rsync, ssh, and either wget or curl installed.

Update

The database must be stopped. For more information, see Stop a Database.

To update the Exasol software in a deployment, use the c4 update cluster command.

./c4 update cluster [-P|-p PLAY_ID] -t TARGET [-i CONFIG] [--from-file FILE]
Option Description
-P Updates all clusters in the current deployment (where the update command was started).
-p PLAY_ID

Updates all clusters in the deployment identified by PLAY_ID.

-t The Exasol package to use as the update target (the version to update to).
-i

The configuration file that was used when the deployment was created.

This option is required when running the update procedure from an external system (jump host). If the update is run from a host in the deployment to be updated, this option can be omitted.

--from-file

Path to the file containing the update package.

This option is required if the system performing the update has no internet access. The update package must then be downloaded and copied to the system that is used to perform the update.

For example, to update the Exasol software running on the deployment with play ID 4182d94d to version 8.23.4, using the config file config and the downloaded update package file exasol-8.23.4.tar.gz, run the following command:

./c4 update cluster -i config -p 4182d94d -t @exasol-8.23.4 --from-file exasol-8.23.4.tar.gz

Usage Notes

  • The update procedure communicates with the clusters using c4 connect. This means that the user or role that starts the update must have access to the remote system as a privileged user through SSH.

  • The update command requires Exasol 8.21.0 or later. If the version running in the deployment is older than 8.21.0, the update procedure will fail silently (without an error message). To update from versions prior to 8.21.0, you must use the same procedure as when migrating from a 7.1 database to Exasol 8. For more information, see Migrate from Exasol 7.1 to Exasol 8.

Examples

Verification

Update log

The update log provides information about the update procedure. The update log is located in /var/log/ccc/update.log.

Update log example:

user@host:~./c4 connect -t1/host
ubuntu@ip-192-168-0-96:~$ tail /var/log/ccc/update.log
[2023-10-27 13:01:56] Doing offline update...
[2023-10-27 13:01:59] Switched to the new version: branchr-saas-22da2bac-64r (@exasol-8.23.4)
[2023-10-27 13:01:59] Starting up...
[2023-10-27 13:01:59] Waiting for exainit is finished
[2023-10-27 13:02:00] Checking /home/ubuntu/.ccc/play/local/4182d94d-f328-42c1-8aac-49c29a8776bf/main/10/data/etc/init_done
[2023-10-27 13:03:00] Done: exainit is finished successfully
[2023-10-27 13:03:00] SUCCESS: Update was successful.
[2023-10-27 13:03:00] SUCCESS: Database is being started
[2023-10-27 13:03:00] Cleaning up local c4 packages repository
[2023-10-27 13:03:00] SUCCESS: Cleanup was successful.