Skip to main content

Prerequisites & requirements

Check this list before you install.

Cluster​

  • A conformant Kubernetes cluster: EKS, AKS, GKE, RKE2/Rancher, OpenShift or similar. Docker Desktop and Rancher Desktop are for light testing only.
  • A kube context for it. List contexts with kubectl config get-contexts.
  • For production: a highly available cluster with several worker nodes, a replicated control plane and redundant persistent storage.
  • A default StorageClass. If the cluster has none, set storageClass in local-env.yaml before the first install. You cannot change it later. See Storage and S3.
  • Cluster-admin rights for the installer. It creates cluster-level objects. If the cluster already runs Prometheus, Loki or cert-manager, or another Octostar install, read Shared clusters first.

⚠️ Production requirement — Do not use a single-node or desktop cluster for production or performance evaluation.

Resources​

ResourceMinimum
CPU24 cores
Memory96 GB RAM
Storage1 TB NVMe

These are minimums. Production clusters must be larger. Too little memory is the most common cause of failed installs.

⚠️ Optional map data needs hundreds of GB — The map tile server (tileserver.enabled) and the geocoder (photon.enabled) need about 280 GiB and 240 GiB of free node disk while they copy their data. An update with a new geocoding index needs about 330 GiB. Leave them off unless you need them.

bigData: "small" needs about 30 GB more, and "large" about 100 GB.

Install host​

  • Ubuntu or Debian, or macOS with Homebrew. The download script in Quick start uses apt-get on Linux and Homebrew on macOS.
  • sudo and curl.
  • helm, helmfile, kubectl and yq come with the release (v2.0.9 and later; rclone too from v2.0.10) for Linux on amd64 and arm64 and for macOS on Apple silicon, and the installer uses those whatever else is installed. On another platform, such as an Intel Mac, install helm 4, helmfile 1.8.2 or later, kubectl and yq yourself (and rclone to restore a backup): the installer refuses helm 3.
  • Up to v2.0.9 only: bc and numfmt (from coreutils). Pass --install-tools and the installer installs them. Without them, the install fails half-way, after it changes the cluster. Later releases do not use them.

The installer puts its bundled tools on PATH only while it runs, so your own shell does not have them. To run kubectl, helm or helmfile yourself, as other pages of this guide do, put them on your PATH first. Run this in the directory the release is in (/opt/octostar by default). From v2.0.10, install.sh and update-existing.sh end by printing this line for their tree:

export PATH="$PWD/bin/tools/$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m | sed 's/x86_64/amd64/; s/aarch64/arm64/'):$PATH"

Access​

  • A Docker Hub token from Octostar. Set it as dockerHub.token in local-env.yaml. Air-gapped installs do not need it.
  • A new admin password for timbrAdminPassword. The default is public.
  • API keys for the AI/ML and enrichment features that you use (optional).

Network (online installs)​

The install host and the cluster need outbound access to:

  • Docker Hub (docker.io), for images and the Octostar charts.
  • The upstream Helm chart repositories that the installer uses.
  • geomirror.octostar.com, only if you download map data from a URL.

If you cannot allow this, use the air-gapped installation.

Air-gapped installs also need​

  • A private container registry that all nodes can reach, with every image of the release.
  • An HTTP Helm chart repository with every chart of the release.
  • An admission mutator that rewrites the image registry to your registry.

Ask your Octostar contact for the image list and the charts.