Upload a License
This article explains how to upload a license to an Exasol database.
All Exasol deployments start with a license that allows you to load 10 GiB of raw data for testing purposes. For larger data sizes, you must upload a license to the database.
This procedure can be carried out using the Administration API or ConfD.
Prerequisites
-
Exasol 8 must be installed.
-
You must have a valid Exasol 8 license file.
Exasol 7.1 licenses are not valid in Exasol 8 because of differences in the license format. For more information about how to obtain a valid license for Exasol 8, contact support.
Procedure - Administration API
The following examples use curl in a Linux terminal to send REST calls to endpoints in the Administration API. You can also use other interfaces and languages to interact with the API. For more information, see Administration API.
Placeholder values are styled as Bash variables, for example: $NODE_IP
. Replace the placeholders with your own values.
-
Open a Linux terminal in the directory where you have downloaded your Exasol 8 license file.
-
To upload the license to the database, send a
POST
request to the/api/v1/license
endpoint on one of the database nodes in the cluster:curl -X 'POST' --insecure "https://$NODE_IP:4444/api/v1/license" \
-H "accept: application/json" \
-H "Authorization: Basic $AUTH_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary "@$FILENAME"Parameter/placeholder Description $NODE_IP
The external IP address of one of the nodes in the cluster. $AUTH_TOKEN
Authentication token generated from the username and password of a user in the exaadm group.
For information about how to generate authentication tokens from a user and password, see Authentication.
$FILENAME
The filename of the license file, for example
1234567890.exasol_license
The
@
before the license filename is required since it tells curl to upload the contents of the license file, not the actual binary.The option
--insecure
or-k
tells curl to bypass the TLS certificate check. This option allows you to connect to a HTTPS server that does not have a valid certificate. Only use this option if certificate verification is not possible and you trust the server.Uploading a license overwrites the existing license. This means that if you install and activate a temporary license you cannot keep the old license file inactive on the system and then reactivate it, you must upload the old license again.
Example:
curl -X 'POST' --insecure "https://203.0.113.11:4444/api/v1/license" \
-H "accept: application/json" \
-H "Authorization: Basic YWRtaW46ZXhhc29s" \
-H "Content-Type: application/octet-stream" \
--data-binary "@1234567890.exasol_license"The uploaded license is automatically applied after a few minutes.
The server may respond with the error message “Internal server error” even if the upload was successful. This is a temporary bug that will be fixed in an upcoming release. To verify that the license was correctly uploaded, use the ConfD job license_info
. For more details, see Verification - ConfD.
Procedure - ConfD
The following examples use ConfD through the command-line tool confd_client, which is available on all database nodes. For more information, see ConfD.
-
Download the license file to a directory on your local machine.
-
To upload the contents of the license file to COS, use the
cat
Linux command and the ConfD job license_upload.cat <license_name>.exasol_license | c4 connect -s cos -i <play_id> -- confd_client license_upload license: '\""{< -}\""'
Replace
<license_name>
with the name of the license file and<play_id>
with the ID of the deployment. To find the ID of the deployment, usec4 ps
.Example:
When the license has been successfully uploaded to COS it is automatically applied after a few minutes.
The server may respond with an error message even if the upload was successful. This is a temporary bug that will be fixed in an upcoming release. To verify that the license was correctly uploaded, use the ConfD job license_info
. For more details, see Verification - ConfD.
Verification - ConfD
This article explains how check the limits and validity of an uploaded license.
You can check the details of an uploaded license using ConfD. This operation is not available in the Administration API.
Connect to COS
Connect to EXAClusterOS (COS) using c4 connect -t <DEPLOYMENT>[.<NODE>]/cos
. For example:
For more information about how to use c4 connect
, see How to use c4.
View license details
To view details about the currently installed license, use the ConfD job license_info. For example:
confd_client license_info
Contract:
comment: Unlimited license with an expiration date.
company_name: Exasol
distributor: Exasol
distributor_id: 1
expiration_date: '2024-08-02'
license_id: 2
Exasol_DB_license:
schema_version: 1
Limits:
max_db_mem_size_in_gb: Unlimited
max_db_raw_data_size_in_gb: Unlimited
max_nodes_per_cluster: Unlimited
max_num_clusters: Unlimited
Limits:
-
max_db_mem_size_in_gb
-
Previously used for licenses based on database RAM. This license type is deprecated and the parameter value is always “Unlimited”.
-
max_db_raw_data_size_in_gb
-
The maximum size of raw data in GiB that you can store across all databases in the cluster. The raw data volume corresponds to the data volume that is comparable to the size the data would have if stored as CSV files.
Audit data is not counted towards the raw data license limit.
For more details about how raw data size is determined, see Sizing for Data Types and Object Types.
-
max_num_clusters
-
The maximum number of running clusters allowed by the license.
Clusters are counted per database. This means that n databases will count as n clusters, even if all databases run on the same set of nodes.
-
max_nodes_per_cluster
-
The maximum number of active nodes on a running cluster. Access node and standby nodes are not counted towards this limit.
Check license
To verify that the currently running databases do not exceed the license limits, use the ConfD job license_run_check. If the command returns OK
, you are within the limits of your license.