Exoscale (SKS)
Deploy jambonz on Exoscale Scalable Kubernetes Service
Prerequisites
You will need:
- An Exoscale account at exoscale.com
- API credentials (key and secret with full permissions)
- Terraform >= 1.5
- kubectl installed
Provision the SKS Cluster
The Terraform templates for provisioning an SKS cluster are available here.
- Clone the Terraform repository to your local machine.
- Navigate to
exoscale/provision-sks-cluster. - Export your API credentials:
- Copy
terraform.tfvars.exampletoterraform.tfvarsand edit it with your desired settings. - Run
terraform init && terraform plan && terraform applyto provision the cluster. - Configure kubectl:
export KUBECONFIG=$(pwd)/kubeconfig && kubectl get nodes
When deploying Traefik (or another ingress controller) with multiple node pools, Exoscale requires a load balancer annotation specifying the instance pool ID. See the Terraform README for details.
Deploy jambonz
Once the cluster is provisioned, deploy jambonz using the Helm chart. Follow the instructions in the Helm chart README to configure and install.
After deployment, complete the Post-Install Steps and generate a license key as described in Software Licensing.
Cleanup
You must delete any Kubernetes LoadBalancer services (which create Exoscale NLBs) before running terraform destroy, or the destroy will fail because the instance pools are locked by the NLBs.
- Delete NLBs via the Exoscale CLI:
- Run
terraform destroy.