Install Exasol
This section explains how to install Exasol 8 software on Linux hosts using Exasol Deployment Tool (c4).
You can run the installation process from a separate Linux system (jump host) or using one of the database host systems. In both cases the host running the installation requires SSH access to the other hosts.
If you are installing Exasol 8 on a single host system without using a jump host, SSH is not required for the installation. For more information, see Install Exasol 8 (single host).
Prerequisites
- The database host systems must be pre-installed with one of the recommended Linux distributions and must fulfill all system requirements for Exasol installation. For more information, see System Requirements.
-
The host running the installation must have rsync, ssh, uuidgen, and either wget or curl installed.
-
The host running the installation must have SSH access to the other hosts using key-based authentication. For more information, see Configure SSH Authentication.
The username and keyfile name for SSH access must be specified in the c4 configuration file before you start the installation procedure. For more details, see Step 2: Configuration.
- Internet connectivity from the database hosts is not required.
-
Internet connectivity from the jump host is optional but recommended.
-
A dedicated user for the Exasol software installation must exist on the database hosts.
-
The partitions where the home directory of the installation user is mounted on each database host must have at least 20 GiB free space available for the installation.
-
The user must have sudo privileges.
-
The user must have a system shell that allows access over SSH.
-
The username can be any name allowed by the operating system. In the following examples, the user has the username exasol.
Disk configuration
The Exasol software will be installed in the home directory of the installation user on each node. For example, if the username is exasol, Exasol will be installed under /home/exasol/. The partition where the home directory of the installation user is mounted must have at least 20 GiB free space available for the installation.
For the data volumes, a separate block device or multiple block devices must be configured before starting the installation. For more information about the requirements and sizing recommendations for storage devices, see System Requirements and Sizing Considerations.
Step 1: Download c4
Exasol Deployment Tool (c4) is a command-line application that is used to install Exasol on either a single node or multiple nodes in a network. The c4 application can run either on a separate system (jump host) or on one of the database hosts.
Database and c4 version dependency
The version of c4 used for installation must be compatible with the Exasol database version that you are installing. The following table describes the version of c4 required to install a specific Exasol database version:
Exasol database version |
Required c4 version |
---|---|
8.25.0 | 4.14.1 |
8.24.0 |
4.13.0 |
8.23.4 |
0.4.12 |
8.22.0 | 0.4.11 |
8.21.0 | 0.4.11 |
8.20.0 | 0.4.10 |
8.18.1 | 0.4.10 |
8.18.0 | 0.4.10 |
Install c4 with internet access
If the host used to run the installation is connected to the internet:
-
Download c4 to the host that will be used to run the installation. For more information, see Install c4.
-
The Exasol 8 installation package will be downloaded by c4 during the installation process.
Install c4 without internet access
If the host used to run the installation is not connected to the internet, use another system that has an internet connection to do the following:
-
Download c4 from the Exasol Download Portal or using the command line. For more information, see Install c4.
-
Download the latest version of Exasol 8 from the Exasol Download Portal.
-
Copy c4 and the Exasol 8 installation package to the same directory on the host used to run the installation.
If you download c4 from the Download Portal you must use chmod +x c4
to make c4 executable for all users, otherwise the application will not be able to run the installation. For more information, see Install c4.
Step 2: Configuration
On the host used to run the installation, create a file with the filename config in the same directory as the c4 binary. The configuration file should define the following parameters:
Configuration parameter | Description | Default value |
---|---|---|
CCC_HOST_ADDRS
|
The IP addresses of the database hosts, separated by spaces. The number of addresses in this parameter effectively determines the number of nodes that will be installed. |
[empty] |
CCC_HOST_EXTERNAL_ADDRS
|
The public IP addresses of the database hosts, separated by spaces. This parameter is optional and only required if you do not have routing to the internal IP addresses specified in |
[empty] |
CCC_HOST_DATADISK
|
Comma-separated list of block devices to be used for the data volume. If not specified, limited file-based storage is used. The devices used should have persistent block device names. Exasol recommends using volume management with LVM2. See also System Requirements. |
[empty] |
CCC_HOST_IMAGE_USER
|
Username that will be used to log in to the SSH instances. The user must have sudo privileges on the instances. | [empty] |
CCC_HOST_IMAGE_PASSWORD
|
Password for the user if required for sudo. The password is passed in plaintext to the instances. |
[empty] |
CCC_HOST_KEY_PAIR_FILE
|
Name of the file that contains the private SSH key required to access host instances. | [empty] |
CCC_PLAY_WORKING_COPY
|
Specifies the Exasol package to install, using the format For example: |
[empty] |
CCC_PLAY_DB_PASSWORD
|
Password for Exasol database authentication (user: sys). | aX1234567
|
Example:
CCC_HOST_ADDRS="10.0.0.11 10.0.0.12 10.0.0.13"
CCC_HOST_EXTERNAL_ADDRS="198.51.100.11 198.51.100.12 198.51.100.13"
CCC_HOST_DATADISK=/dev/mapper/exasol_disk_1,/dev/mapper/exasol_disk_2
CCC_HOST_IMAGE_USER=exasol
CCC_HOST_IMAGE_PASSWORD=exasol123
CCC_HOST_KEY_PAIR_FILE=id_rsa
CCC_PLAY_WORKING_COPY=@exasol-8.23.4
CCC_PLAY_DB_PASSWORD=exasol456
Always replace the default passwords by setting unique, secure passwords in your configuration file. Never use the passwords that are used in the examples in the documentation.
Step 3: Installation
-
To start the installation, run:
The
-i
option tells c4 to use a specific configuration file. By default, c4 reads the configuration from the configuration file./config
in the current directory. If the configuration is stored in another file, specify its location as an argument on the command line: -
If the configuration is valid, c4 will show the parameter values that will be used and ask you to either proceed with this configuration or cancel the installation.
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Exasol installation procedure is about to be started.
During this procedure, Exasol software will be installed to remote hosts.
It will take some time (several minutes).
The installation is finished when every node reaches stage 'd' (see 'c4 ps').
After the installation is finished, you can connect to the Database or COS.
During the installation, you can login to the hosts via SSH,
and watch the process using:
sudo journalctl -f
After the installation finished, you can connect to COS using:
ssh -p 20002 root@$IP
IP addresses of the systems:
* 198.51.100.11
* 198.51.100.12
* 198.51.100.13
Exasol version: 8.23.4
Exasol package: @exasol-8.23.4
SSH username : exasol
SSH keyfile : id_rsa
User password : exasol123
Data disk(s) : /dev/mapper/exasol_disk_1,/dev/mapper/exasol_disk_2
Press ENTER to proceed or Ctrl-C to cancel the installation procedure.
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| -
Press Enter to start the installation.
- If the necessary installation packages are present in the current directory they will be used for the installation. In this case no internet connection is required.
- If the installation packages are not found in the current directory and the host used to run the installation is connected to the internet, c4 will automatically download the necessary packages from the Exasol download portal.
- If no installation packages are found and c4 is not able to connect to the Exasol download portal, the installation will fail.
If the packages are available, the installation process will start. The installation requires no user intervention and can be run unattended. It comprises the following steps:
- Copying Exasol packages to the hosts
- Initial OS preparation
- Verifying OS configuration
- Configuring OS on the hosts
- Extracting packages
- Installing c4 on the hosts
- Syncing time between hosts
- Triggering remote installation finalization
The installation will typically require 20 to 90 minutes to complete, depending on the number of hosts and the location of the installation files. This however depends on many factors, and the installation may take longer.
-
When the installation has finished, a confirmation message is shown:
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The final steps of the Exasol installation procedure were successfully
started on remote hosts now.
It will take yet some time to complete (several minutes).
After the installation is finished, you can connect to the Database or COS.
During the installation, you can login to the hosts via SSH,
and watch the process using:
sudo journalctl -f
After the installation finished, you can connect to COS using:
ssh -p 20002 root@$IP
IP addresses of the systems:
* 198.51.100.11
* 198.51.100.12
* 198.51.100.13
Exasol version: 8.23.4
Exasol package: @exasol-8.23.4
Happy Exasolling!
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Step 4: Validation
When the installation has completed, the nodes can be accessed via SSH and the database can be accessed using a SQL client.
$ ssh -p 20002 root@198.51.100.11
The authenticity of host '[198.51.100.11]:20002 ([198.51.100.11]:20002)' can't be established.
RSA key fingerprint is SHA256:<fingerprint>.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[198.51.100.11]:20002' (RSA) to the list of known hosts.
[root@n11 ~]# cosps
ROOT NODE SUMMARY:
------------------
3 online nodes
0 offline nodes
ID OWNER GROUP PARENT FLAGS ONLINE NODES COMMAND
14 0 0 0 R--I 3/3 sshd
15 0 0 0 RA-I 3/3 crond
16 0 0 0 RA-I 3/3 logd
17 0 0 0 RA-I 3/3 lockd
25 500 500 0 RAEI 3/3 bucketfsd-bfsdefault
26 0 0 0 RA-I 3/3 healthd
27 0 0 0 RA-I 3/3 dwad
29 0 0 0 RA-I 3/3 cos_storage
30 0 0 0 RA-I 3/3 confd
31 0 0 0 RANI 3/3 db-restapi
34 500 500 27 --EK 3/3 controller-Exasol
35 500 500 34 --NI 3/3 pddserver-Exasol
36 500 500 34 --NI 3/3 objectserver-Exasol
38 500 500 34 --NI 3/3 exasqllog-Exasol
39 500 500 34 --NI 3/3 loaderd-Exasol
40 500 500 34 --NI 3/3 exacs-Exasol
41 500 500 34 --NI 3/3 exaetl-1024-Exasol
42 500 500 34 --NI 3/3 exasql-7-Exasol
[root@n11 ~]#
Errors
If an error occurs during the installation process it will be automatically interrupted and the installation will be rolled back. The last INFO
message on the screen will provide information about the error. For example:
INFO[2023-09-02 09:22:44]: Extracting packages...
cp: cannot create regular file '/var/lib/ccc/bin/': No such file or directory
In this example, an error happened during the packages extraction step. When you have located and resolved the error, run the installation script again.
If you require assistance with the installation, create a support case.