Skip to main content
Version: Next

Prerequisites

OpenEverest runs on any CNCF-conformant Kubernetes cluster — on your laptop, in any cloud or on-premises. It does not create the cluster for you.

What the cluster needs​

  • Kubernetes 1.32 or later. The Helm chart refuses to install on older versions.
  • A default StorageClass that provisions persistent volumes. To grow instance storage later, the StorageClass must allow volume expansion (allowVolumeExpansion: true).
  • Enough nodes for your topologies. Providers place the data-bearing members of an instance on different nodes by default, so a three-member replica set needs three schedulable nodes. See Pod scheduling to change this.
  • Enough capacity for your instances. The OpenEverest core is small: the server requests 100m CPU and 20Mi of memory, the controller 10m CPU and 64Mi. Most of the capacity goes to the Operators that providers install and to the instances you create, so size the cluster for your workloads.

Get a cluster​

k3d runs a lightweight Kubernetes cluster (k3s) in Docker. It is the quickest way to try OpenEverest and the setup the OpenEverest developers use.

You need Docker with at least 8 GB of memory available — enough for OpenEverest, one provider and a small instance — and k3d 5 or later.

Create a cluster with three nodes, so that instances with three members can spread across them:

k3d cluster create openeverest \
--agents 2 \
--image rancher/k3s:v1.37.1-k3s1

--image pins a Kubernetes version that OpenEverest supports; older k3d releases default to an older version. k3d switches kubectl to the new cluster. Check it:

kubectl get nodes
NAME STATUS ROLES AGE VERSION
k3d-openeverest-agent-0 Ready <none> 10s v1.37.1+k3s1
k3d-openeverest-agent-1 Ready <none> 9s v1.37.1+k3s1
k3d-openeverest-server-0 Ready control-plane 13s v1.37.1+k3s1

The cluster comes with the local-path StorageClass, which stores data on the nodes' disks and does not support volume expansion. That is fine for trying OpenEverest, not for production.

To delete the cluster and everything in it:

k3d cluster delete openeverest

Other local tools, such as kind or minikube, work too.

Tools​

On the machine you install from, you need:

  • kubectl, configured to access the cluster:

    kubectl get nodes
  • Helm 3. OpenEverest, its providers and its plugins are installed as Helm charts.

  • Optionally, yq, used in some commands in these docs to read the initial admin password.

note

The everestctl command-line tool does not install OpenEverest 2 yet. Use Helm.

Optional components​

  • An Ingress controller or a load balancer to expose the OpenEverest UI outside the cluster. See Expose OpenEverest.
  • cert-manager to issue TLS certificates for OpenEverest. See TLS.
  • S3-compatible object storage for backups. See Backup storage.
  • An OpenID Connect identity provider for single sign-on. See Single sign-on.

Next steps​

Install OpenEverest →