Prepare a Cluster

To prepare a Linode environment for a Hydrolix deployment, use the Linode Cloud console. You'll need to create a new object storage bucket with an access key and a Kubernetes cluster.

Set Environment Variables

To begin, set up some environment variables using an env.sh script. Replace the < > values below with your actual values:

export HDX_HYDROLIX_URL=<e.g. https://my.domain.com>
export HDX_KUBERNETES_NAMESPACE=<e.g. my-production-service>
export HDX_ADMIN_EMAIL=<e.g. [email protected]>

Load these environment variables with the following command:

source env.sh

Create your Bucket

  1. Begin by logging in to the Linode Cloud console. Click the Create button. From the resulting list, select the "Bucket" option:
597
  1. Enter a name for the bucket. Hydrolix will store all of your row data in this bucket. Choose a region; we recommend Atlanta:
482
  1. Add the bucket region and URL to your env.sh file. A full list of region codes can be found here in the Linode documentation.

    export HDX_BUCKET_REGION=<e.g. us-central1>
    export HDX_DB_BUCKET_URL=<your bucket name here>
    

    And reload the env.sh file:

    source env.sh
    

Create an Access Key

Next, create an access key so Hydrolix can securely connect to your storage bucket. Within the Linode Cloud console, navigate to the "Object Storage" page. Click on "Access Keys" to view the access keys tab:

1485

Click the "Create Access Key" button. Enter a name for the key. Enable the "Limited Access" toggle. Grant the key "Read/Write" access to the bucket you created in the previous step. Click the "Create Access Key" button to create the keys.

691

A dialog will appear in the Linode Cloud console, displaying your access key and your secret key.
Store your secret key somewhere secure, like a password manager: Linode can only show you this key once.
You can view the access key at any time, but it's best to save it now since you'll need it to create your cluster.
Once you've recorded the keys, click the "I Have Saved My Secret Key" button to dismiss the dialog.

Create the Kubernetes Cluster

Now it's time to create the Kubernetes cluster where you'll deploy Hydrolix services. In the Linode Cloud console, click the Create button. From the resulting list, select the "Kubernetes" option:

617
  1. Enter a name for your cluster.
  2. Select the same region used to create your bucket (we recommend Atlanta).
  3. Use the latest version of Kubernetes.
  4. For high availability, use 3 nodes.
  5. Click the "Add" button to open a cluster summary dialog.
  6. Click "Create Cluster" to instantiate your cluster.
1484

Configure the Kubernetes Cluster

After creating the cluster, you should see the following cluster summary page:

1294

First, download your kubeconfig.yaml file. Save it to your local computer. You'll use this file to connect to your cluster on the command line.

Next, configure autoscaling for your cluster:

  1. Click "Autoscale Pool" to open a dialog where you can configure autoscaling.
  2. Enable the "Autoscaler" toggle.
  3. For the "Max" setting, enter a value of "20".
  4. Click the "Save Changes" button to update your cluster configuration.
601

You can now connect to your cluster with kubectl:

kubectl --kubeconfig <configfile>