Getting started

Before you begin, you must prepare a machine according to the Prerequisites.

We recommend using a fresh Docker container for your work with Ellipsis Drive Kubernetes

Below is a step by step guide to deploy a standard Ellipsis Drive Cluster on the cloud provider of your choice:

  1. Installing the EDK CLI

  2. Preparing the config

  3. Creating the cluster

  4. Linking URL endpoints

  5. Verifying that everything works

1. Installing the EDK CLI

Download the desired release of the EDK CLI from the GitHub page. Inside the folder of the release, you can use the packages.json to install the node nodules needed by the script.

You can also use the script below to install the latest version of EDK CLI in one go.

tag=$(curl -s https://api.github.com/repos/ellipsis-drive/edk-cli/releases/latest | grep -m1 '"tag_name"' | cut -d '"' -f4)
wget https://github.com/ellipsis-drive/edk-cli/archive/refs/tags/$tag.zip
unzip $tag.zip
npm install --prefix=./edk-cli-${tag:1}/

The edk file inside the directory is the main entry point of the EDK CLI. You can create terminal shortcuts for this file so you can run it globally. For simplicity, the rest of this documentation assumes that the active directory of your current terminal session is inside the unzipped folder by running the following command directly after the previous ones:

cd edk-cli-${tag:1}

2. Preparing the config

Inside the unzipped folder, you will find a config.jsonc. This file will be used during the creation of your cluster to customize it. It is important that you fill in all the fields of this file before proceeding with the other steps. See the config.jsonc page for detailed information about each field.

You can use the configure command of the EDK CLI to randomly generate and fill in the password and secret fields.

You are free to further edit the fields of the config.jsonc after running this command, including the generated passwords and secrets.

You can use the configure validate command to see whether your configuration

3. Creating the cluster

When you are ready with the configuration, run the create command of the EDK CLI.

This will start the cluster creation process. This process can take up to 30 minutes. After the script terminates, it may take another few minutes before the cluster finishes the last setup tasks and stabilizes the nodes and pods.

4. Linking URL endpoints

The cluster will have created ingress endpoints for the UI and the API. It will also have created certificates for the URLs you have filled in the config for both of them.

Go to AWS Certificate Manager and follow the instructions there to verify the certificates.

After verifying the certificates, run the command below:

This should give you two entries. One is called api-ingress and the other one called penguin-ingress.

Create DNS records according to the following table:

Type
Host
Value

CNAME

(apiUrl in config.jsonc)

(address of api-ingress)

CNAME

(frontendUrl in config.jsonc)

(address of penguin-ingress)

5. Verifying that everything works

You can try visiting the frontEnd URL you have filled in config.jsonc to see whether the UI is in working order.

You can visit the apiUrl and adding /v3 behind the URL to see if the API gives a simple welcome message.

Last updated