Start a Cluster

This section explains how to start a cluster.

This procedure is carried out using the Administration API.

Prerequisites

  • The cluster must be stopped. For more information see, Stop a Cluster.

  • If the cluster you are starting is a worker cluster, the main cluster must be running.

Procedure

The following examples use curl on a Linux terminal. You can also use other interfaces and languages to execute the curl commands.

Placeholder values in the examples are styled as Bash variables, for example: $EXASOL_IP. Replace these placeholders with your own values.

The option --insecure or -k tells curl to bypass the TLS certificate check. This option allows you to connect to a HTTPS server that uses a self-signed certificate or a certificate that is not valid. Only use this option if certificate verification is not possible and you trust the server.

  1. To get information about the database, send a GET request to the /api/v1/databases endpoint.

    curl --insecure -X "GET" \
    "https://$EXASOL_IP/api/v1/databases" \
    -H "accept: application/json" \
    -H "Authorization: Basic $AUTH_TOKEN"

    The response includes the database ID, name, and version. Additional details are included depending on the configuration and platform.

  2. To find cluster information, send a GET request to the /api/v1/databases/DATABASE_ID/clusters endpoint. For example:

    curl --insecure -X "GET" \
    "https://$EXASOL_IP/api/v1/databases/$DATABASE_ID/clusters" \
    -H "accept: application/json" \
    -H "Authorization: Basic $AUTH_TOKEN"
  3. To start a cluster, send a PUT request to the /api/v1/databases/DATABASE_ID/clusters/CLUSTER_ID/start endpoint. For example:

    curl -k -X "PUT" \
    "https://$EXASOL_IP/api/v1/databases/$DATABASE_ID/clusters/$CLUSTER_ID/start" \
    -H "accept: application/json" \
    -H "Authorization: Basic $AUTH_TOKEN"

    If the cluster nodes are offline and you want to start the nodes before the cluster starts up, add ?startInstances=true after the endpoint name. For example:

    curl -k -X "PUT" \
    "https://$EXASOL_IP/api/v1/databases/$DATABASE_ID/clusters/$CLUSTER_ID/start?startInstances=true" \
    -H "accept: application/json" \
    -H "Authorization: Basic $AUTH_TOKEN"

Verification

To verify that the cluster is started, send a GET request to the /api/v1/databases/DATABASE_ID/clusters endpoint. For example:

curl -k -X "GET" \
"https://$EXASOL_IP/api/v1/databases/$DATABASE_ID/clusters" \
-H "accept: application/json" \
-H "Authorization: Basic $AUTH_TOKEN"

The cluster status should be running.