Skip to main content

# Install Otomi on Linode Kubernetes Engine (LKE) with Linode DNS

Prerequisites

Configure Linode Kubernetes cluster

Configure the LKE cluster with the following specs

  • K8s version: 1.27
  • Enable HA Control Plane
  • Dedicated CPU: Dedicated 8 GB Plan, 4 CPUs, 160 GB Storage

Download the kubeconfig.

# Update the KUBECONFIG env to gain access to the cluster
export KUBECONFIG=<path-to-downloads>/otomi--kubeconfig.yaml

Configure DNS

info

When using Domains in Linode, name resolving takes at least 30 min to work. The Otomi installer will retry until it can resolve the Keycloak host name in the configured domain.

If you want to learn about how to use Linode DNS Manager read the following tutorials:

An Introduction to Managing DNS, and general documentation

Creating Linode Credentials

Generate a new oauth token by following the instructions at Access-and-Authentication

Set environment variable for the token:

LINODE_TOKEN="<your-token-here>"

The environment variable LINODE_TOKEN will be needed to run ExternalDNS with Linode.

Create the values.yaml file

tee values.yaml<<EOF
cluster:
name: otomi
provider: linode
domainSuffix: linode.example.com
otomi:
hasExternalDNS: true
dns:
domainFilters:
- example.com
provider:
linode:
apiToken: $LINODE_TOKEN
apps:
cert-manager:
issuer: letsencrypt
stage: production
email: admin@example.com
EOF

And adjust the domainSuffix, domainFilters and email.

Install Otomi using helm

Install Otomi using Helm:

helm repo add otomi https://otomi.io/otomi-core
helm repo update
helm install -f values.yaml otomi otomi/otomi

Monitor the logs of the installer job:

kubectl logs jobs/otomi -n default -f

When the installer is finished, copy the url and admin-password from the console output.

Follow the activation steps here.

tip

Like to learn how to use Otomi? Go through the Get Started labs