Using Cloud Deployment Manager Template

This section provides you with instructions on how to deploy Exasol on GCP using a Cloud Deployment Manager template.

Sizing Considerations

RAM

As a rule of thumb, the total amount of RAM of the cluster should be approximately 10% - 15 % of your raw data. However, based on your use case, you may need more RAM.

Instance

Exasol recommends n1-standard, n1-highcpu, and n1-highmem category instances with more than 16 GB of memory.

Example

Let's assume the size of raw data is 500GB. Based on the RAM thumb rule, a good configuration for this data size would be:

  • n1-standard-16, 16 vcores, 60 GB main memory
  • n1-highmem-8, 8 vcores, 52 GB main memory

Storage

Exasol recommends using SSD persistent disk for data storage and Cloud Storage for data backup. The data storage volumes should be properly sized to store the maximum recommended amount of data for this instance type, data replicas in case of a cluster configuration as well as index structures and space for temporary data.

The template configures the correct storage configuration for every instance type.

Deployment Steps

Step 1: Create GCP Account

If you do not have a GCP account, create one at Google Cloud Platform Console.

If you already have an account, skip to Step 2.

Step 2: Install Cloud SDK Command-line Tool

Install the Cloud SDK command-line tool by following the instruction from Installing Google Cloud SDK.

Step 3: Download the Templates

Each Google Cloud Deployment Manager template is a combination of two files (.jinja and .yaml). You need both the files for Exasol deployment. Based on your requirement, you can download the templates from the following locations:

Step 4: Deploy the Templates

Do the following to deploy the downloaded template:

  1. Run the following command if you want to deploy Exasol using an existing VPC:
    • Run the following command if you want to deploy Exasol using an existing VPC

      gcloud deployment-manager deployments create exasol-<deployment_name> --config exasol_cluster_google.yaml

    • Run the following command if you want to deploy Exasol using a new VPC

      gcloud deployment-manager deployments create exasol-<deployment_name> --config exasol_cluster_google_generate_new_VNET.yaml

  2. Provide the values of the parameters and continue. To know about the parameters, see Template Parameters.

Launch Instance

Once the instance is in running state, you can connect to it using the IP address or the DNS name displayed in the console. To launch the instance, follow these steps:

  1. Copy and paste the IP address or the DNS name of the instance in a browser.
  2. You will receive a digital certificate to confirm. Once you have confirmed this, the installation is initialized, and the following screen is displayed.
  3. Once installation is complete, you will be redirected to the EXAoperation screen.

    It may take up to 45 minutes for the EXAoperation to be online after deployment.

Template Parameters

The following table lists the parameters used in the templates and their descriptions.

Parameter Description
publicIP

If set to true, public IP addresses are assigned to all instances.

dbNodeCount

Number of cluster nodes.

standbyNode

Specifies the number of standby node(s) that you want to add for failover. The replication factor is automatically set to two if there is more than one node in the system.

You can implement any of the following two standby modes:

  • Hot Standby: The standby node is always in active mode. It's a faster failover mechanism but it's more expensive. This is enabled by default when you add a standby node.
  • Cold Standby: The standby node is in suspended mode. You need to shut down the stand by node to enable this option. It is a relatively slower failover mechanism but it's more cost-effective. In case of a failover, the node starts and it takes over for the failed node.

To know more about how these standby modes work, see Fail Safety on Cloud Platform.

dbSystemName

Name of the generated database.

exasolPassword

Password for the Exasol operations admin user (EXAoperation 'admin' user).

dbPassword

Password for the Exasol database admin user (Exasol 'sys' user).

license

In case of a BYOL image an already acquired license can be pasted here as string.

firewallRule

Restrict access to specific ip addresses (0.0.0.0/0 results in access from everywhere).

networkName

Target network

subnetworkName

Target subnetwork

networkCidr

CIDR Block of the target network.

subnetworkCidr

CIDR Block of target subnetwork.

firstNodeIP

Counting upwards for the IPs of the data nodes (FirstDataNodeIP > LicenceServerIP).

zone

Target zone where instances and persistent disks are deployed into.

timezone

Required timezone for the DB (default Europe/Berlin).

image

VM Image from the Google Marketplace Solution.

machineTypeManagementNode

For example, n1-standard-2.

machineTypeDatabaseNode

For example, n1-standard-4.

dnsServer

For example, 169.254.169.254 (Google Cloud internal DNS Server).

 

ntpServer

For example, ntp.ubuntu.com.

blockDeviceVolumeSizeGB

Devices size for data volume.

blockDeviceCount

Number of storage volumes for each node.

Next Steps

Connect to Exasol

After installing Exasol on GCP, you can do the following:

Load Data

After you have connected your choice of tool to Exasol, you can load your data into Exasol and process further. To know more about loading data into Exasol, see Loading Data.

Administration

For the maintenance tasks related to Exasol on GCP, see GCP Administration.