Update Procedure
This article explains how to update Exasol 8 software
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
.
During the update procedure, c4 also updates the cloud stack template. For more information, see Cloud Stack 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 deployment to be updated must be running Exasol version 8.21.0 or newer.
-
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.
-
The user or role executing the update must have the necessary privileges on AWS to update the cloud stack template. See also Cloud Stack Update.
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.
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 |
-t
|
The Exasol package to use as the update target (the version to update to). |
For example, to update the Exasol software running in 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:
Cloud Stack Update
During the update procedure, c4 also updates the cloud stack template. This step is mandatory and cannot be omitted. To update the cloud stack, c4 requires appropriate AWS privileges, which are not included by default in the instance roles of the deployment. There are two possible options to enable the cloud stack template update step to run with the appropriate permissions:
- If the update procedure is being executed from outside the deployment, ensure that the user performing the update has sufficient AWS privileges. This is the preferred method.
- If the update procedure is being executed from within the deployment, ensure that either the entire update procedure accesses AWS with a special role/IAM user, or explicitly execute the template update outside of the deployment, using an AWS role/IAM user with sufficient privileges.
If the update must be initiated from within the cluster, split the update procedure into two parts as follows:
-
Update the template but do not perform the rest of the update procedure. This step runs inside the cluster.
-
Run the update procedure without updating the cloud stack template. This step runs outside of the cluster.
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
This is an example of typical output during an update procedure.
user@host:~./c4 update cluster -p 4182d94d -t @exasol-8.23.4
INFO[2023-10-27 15:01:32] Checking if the cluster can be updated...
INFO[2023-10-27 15:01:32] Running the update checks dry-run=true
INFO[2023-10-27 15:01:44] Success
INFO[2023-10-27 15:01:44] Updating the cluster dry-run=false
INFO[2023-10-27 15:01:46] Applying new configuration to deployment: 4182d94d-f328-42c1-8aac-49c29a8776bf
INFO[2023-10-27 15:01:51] Done
[n12] [2023-10-27 13:01:53] Updating: @exasol-8.21.0 -> branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n12] time="2023-10-27 13:01:53" level=info msg="✓ THIS (branchr-saas-22da2bac-64r) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ SLC (branchr-d48b12bb-64u) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ CCC (branchr-ccc-60f03814-64r) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ COS (branchr-cos+cad7cdbe-1ccf16c7-64r) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ DB (branchr-db+ck.cos-8.36.0-db-8.23.4-819e3abd-64r) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ TOOLCHAIN (rr0961-9ba2a33b-64r) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ UI (sbe285-ed03733b-64u) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ SEED (branchr-seed) found "
[n12] time="2023-10-27 13:01:53" level=info msg="✓ JDK (rr0961-9ba2a33b-jdk) found "
[n12] [2023-10-27 13:01:53] Downloaded branchr-saas-22da2bac-64r
[n11] [2023-10-27 13:01:53] Updating: @exasol-8.21.0 -> branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n13] [2023-10-27 13:01:53] Updating: @exasol-8.21.0 -> branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n11] time="2023-10-27 13:01:53" level=info msg="✓ TOOLCHAIN (rr0961-9ba2a33b-64r) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ DB (branchr-db+ck.cos-8.36.0-db-8.23.4-819e3abd-64r) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ JDK (rr0961-9ba2a33b-jdk) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ COS (branchr-cos+cad7cdbe-1ccf16c7-64r) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ CCC (branchr-ccc-60f03814-64r) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ SEED (branchr-seed) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ SLC (branchr-d48b12bb-64u) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ THIS (branchr-saas-22da2bac-64r) found "
[n11] time="2023-10-27 13:01:53" level=info msg="✓ UI (sbe285-ed03733b-64u) found "
[n10] [2023-10-27 13:01:53] Updating: @exasol-8.21.0 -> branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n11] [2023-10-27 13:01:53] Downloaded branchr-saas-22da2bac-64r
[n13] time="2023-10-27 13:01:53" level=info msg="✓ UI (sbe285-ed03733b-64u) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ COS (branchr-cos+cad7cdbe-1ccf16c7-64r) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ SLC (branchr-d48b12bb-64u) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ TOOLCHAIN (rr0961-9ba2a33b-64r) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ DB (branchr-db+ck.cos-8.36.0-db-8.23.4-819e3abd-64r) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ JDK (rr0961-9ba2a33b-jdk) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ CCC (branchr-ccc-60f03814-64r) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ THIS (branchr-saas-22da2bac-64r) found "
[n13] time="2023-10-27 13:01:53" level=info msg="✓ SEED (branchr-seed) found "
[n13] [2023-10-27 13:01:53] Downloaded branchr-saas-22da2bac-64r
[n10] time="2023-10-27 13:01:53" level=info msg="✓ THIS (branchr-saas-22da2bac-64r) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ CCC (branchr-ccc-60f03814-64r) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ COS (branchr-cos+cad7cdbe-1ccf16c7-64r) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ DB (branchr-db+ck.cos-8.36.0-db-8.23.4-819e3abd-64r) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ SLC (branchr-d48b12bb-64u) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ SEED (branchr-seed) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ TOOLCHAIN (rr0961-9ba2a33b-64r) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ JDK (rr0961-9ba2a33b-jdk) found "
[n10] time="2023-10-27 13:01:53" level=info msg="✓ UI (sbe285-ed03733b-64u) found "
[n10] [2023-10-27 13:01:53] Downloaded branchr-saas-22da2bac-64r
[n12] [2023-10-27 13:01:55] EXA_DB_VERSION=8.23.4
[n12] [2023-10-27 13:01:55] EXA_OS_VERSION=8.36.0
[n12] [2023-10-27 13:01:55] EXA_RE_VERSION=8.5.0
[n12] [2023-10-27 13:01:55] EXA_IMG_VERSION=8.36.0
[n12] [2023-10-27 13:01:55] EXA_META_PACKAGE=branchr-saas-22da2bac-64r
[n12] [2023-10-27 13:01:55] Ok, everything is looking fine to me. Starting the real update...
[n12] [2023-10-27 13:01:55] Shutting down the existing system...
[n11] [2023-10-27 13:01:55] EXA_DB_VERSION=8.23.4
[n11] [2023-10-27 13:01:55] EXA_OS_VERSION=8.36.0
[n11] [2023-10-27 13:01:55] EXA_RE_VERSION=8.5.0
[n11] [2023-10-27 13:01:55] EXA_IMG_VERSION=8.36.0
[n11] [2023-10-27 13:01:55] EXA_META_PACKAGE=branchr-saas-22da2bac-64r
[n11] [2023-10-27 13:01:55] Ok, everything is looking fine to me. Starting the real update...
[n13] [2023-10-27 13:01:55] EXA_DB_VERSION=8.23.4
[n13] [2023-10-27 13:01:55] EXA_OS_VERSION=8.36.0
[n13] [2023-10-27 13:01:55] EXA_RE_VERSION=8.5.0
[n13] [2023-10-27 13:01:55] EXA_IMG_VERSION=8.36.0
[n13] [2023-10-27 13:01:55] EXA_META_PACKAGE=branchr-saas-22da2bac-64r
[n13] [2023-10-27 13:01:55] Ok, everything is looking fine to me. Starting the real update...
[n11] [2023-10-27 13:01:55] Shutting down the existing system...
[n13] [2023-10-27 13:01:55] Shutting down the existing system...
[n12] [2023-10-27 13:01:55] Shutdown was successful
[n12] [2023-10-27 13:01:55] Doing offline update...
[n11] [2023-10-27 13:01:55] Shutdown was successful
[n11] [2023-10-27 13:01:55] Doing offline update...
[n13] [2023-10-27 13:01:55] Shutdown was successful
[n13] [2023-10-27 13:01:55] Doing offline update...
[n10] [2023-10-27 13:01:56] EXA_DB_VERSION=8.23.4
[n10] [2023-10-27 13:01:56] EXA_OS_VERSION=8.36.0
[n10] [2023-10-27 13:01:56] EXA_RE_VERSION=8.5.0
[n10] [2023-10-27 13:01:56] EXA_IMG_VERSION=8.36.0
[n10] [2023-10-27 13:01:56] EXA_META_PACKAGE=branchr-saas-22da2bac-64r
[n10] [2023-10-27 13:01:56] Ok, everything is looking fine to me. Starting the real update...
[n10] [2023-10-27 13:01:56] Shutting down the existing system...
[n10] [2023-10-27 13:01:56] Shutdown was successful
[n10] [2023-10-27 13:01:56] Doing offline update...
[n12] Container has been successfully updated!
[n12] - Image ver. : 8.35.0 --> 8.36.0
[n12] - DB ver. : 8.21.0 --> 8.23.4
[n12] - OS ver. : 8.35.0 --> 8.36.0
[n12] - RE ver. : 8.5.0 --> 8.5.0
[n12] - EXAConf : 8.35.0 --> 8.36.0
[n12] - MetaPkg : none --> branchr-saas-22da2bac-64r
[n12] [2023-10-27 13:01:57] Switched to the new version: branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n12] [2023-10-27 13:01:57] Starting up...
[n12] [2023-10-27 13:01:57] Waiting for exainit is finished
[n12] [2023-10-27 13:01:57] Checking /home/ubuntu/.ccc/play/local/4182d94d-f328-42c1-8aac-49c29a8776bf/main/12/data/etc/init_done
[n11] Container has been successfully updated!
[n11] - Image ver. : 8.35.0 --> 8.36.0
[n11] - DB ver. : 8.21.0 --> 8.23.4
[n11] - OS ver. : 8.35.0 --> 8.36.0
[n11] - RE ver. : 8.5.0 --> 8.5.0
[n11] - EXAConf : 8.35.0 --> 8.36.0
[n11] - MetaPkg : none --> branchr-saas-22da2bac-64r
[n11] [2023-10-27 13:01:57] Switched to the new version: branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n11] [2023-10-27 13:01:57] Starting up...
[n11] [2023-10-27 13:01:57] Waiting for exainit is finished
[n11] [2023-10-27 13:01:57] Checking /home/ubuntu/.ccc/play/local/4182d94d-f328-42c1-8aac-49c29a8776bf/main/11/data/etc/init_done
[n13] Container has been successfully updated!
[n13] - Image ver. : 8.35.0 --> 8.36.0
[n13] - DB ver. : 8.21.0 --> 8.23.4
[n13] - OS ver. : 8.35.0 --> 8.36.0
[n13] - RE ver. : 8.5.0 --> 8.5.0
[n13] - EXAConf : 8.35.0 --> 8.36.0
[n13] - MetaPkg : none --> branchr-saas-22da2bac-64r
[n13] [2023-10-27 13:01:58] Switched to the new version: branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n13] [2023-10-27 13:01:58] Starting up...
[n13] [2023-10-27 13:01:58] Waiting for exainit is finished
[n13] [2023-10-27 13:01:58] Checking /home/ubuntu/.ccc/play/local/4182d94d-f328-42c1-8aac-49c29a8776bf/main/13/data/etc/init_done
[n10] Container has been successfully updated!
[n10] - Image ver. : 8.35.0 --> 8.36.0
[n10] - DB ver. : 8.21.0 --> 8.23.4
[n10] - OS ver. : 8.35.0 --> 8.36.0
[n10] - RE ver. : 8.5.0 --> 8.5.0
[n10] - EXAConf : 8.35.0 --> 8.36.0
[n10] - MetaPkg : none --> branchr-saas-22da2bac-64r
[n10] [2023-10-27 13:01:59] Switched to the new version: branchr-saas-22da2bac-64r (@exasol-8.23.4)
[n10] [2023-10-27 13:01:59] Starting up...
[n10] [2023-10-27 13:01:59] Waiting for exainit is finished
[n10] [2023-10-27 13:02:00] Checking /home/ubuntu/.ccc/play/local/4182d94d-f328-42c1-8aac-49c29a8776bf/main/10/data/etc/init_done
[n12] [2023-10-27 13:02:57] Done: exainit is finished successfully
[n12] [2023-10-27 13:02:57] SUCCESS: Update was successful.
[n12] [2023-10-27 13:02:57] SUCCESS: Database is being started
[n12] [2023-10-27 13:02:57] Cleaning up local c4 packages repository
[n12] [2023-10-27 13:02:57] SUCCESS: Cleanup was successful.
[n11] [2023-10-27 13:02:57] Done: exainit is finished successfully
[n11] [2023-10-27 13:02:57] SUCCESS: Update was successful.
[n11] [2023-10-27 13:02:57] SUCCESS: Database is being started
[n11] [2023-10-27 13:02:57] Cleaning up local c4 packages repository
[n11] [2023-10-27 13:02:58] SUCCESS: Cleanup was successful.
[n13] [2023-10-27 13:02:58] Done: exainit is finished successfully
[n13] [2023-10-27 13:02:58] SUCCESS: Update was successful.
[n13] [2023-10-27 13:02:58] SUCCESS: Database is being started
[n13] [2023-10-27 13:02:58] Cleaning up local c4 packages repository
[n13] [2023-10-27 13:02:58] SUCCESS: Cleanup was successful.
[n10] [2023-10-27 13:03:00] Done: exainit is finished successfully
[n10] [2023-10-27 13:03:00] SUCCESS: Update was successful.
[n10] [2023-10-27 13:03:00] SUCCESS: Database is being started
[n10] [2023-10-27 13:03:00] Cleaning up local c4 packages repository
[n10] [2023-10-27 13:03:00] SUCCESS: Cleanup was successful.
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.