Skip to content

Prerequisites#

Requirements for installing Stakater Cloud Orchestrator on OpenShift.

Cluster Requirements#

  • Platform: Red Hat OpenShift 4.14+ (ocp is the only currently supported platform)
  • Deployment: Bare metal (production-supported)
  • Access: Cluster administrator privileges
  • Nodes: Minimum 6 worker nodes recommended for production
  • Storage: Worker nodes with unused raw disks — the hosting variant deploys ODF as the cluster storage layer (you do not pre-configure a CSI provisioner)

Compute Resources#

Recommended minimum capacity for the SCO platform:

Role Count vCPU RAM
Control plane nodes 3 4 16 GB
Worker nodes 6+ 16 64 GB

Storage: 500 GB+ available across workers.

What the hosting variant installs#

hosting is the full greenfield deployment. Starting from a base OpenShift cluster, ksp up brings up the entire stack — you do not pre-install these components yourself:

  • Platform foundation — GitOps (OpenShift GitOps / Argo CD), Crossplane (operator, providers, functions), storage (ODF), cluster management (ACM), Hypershift, and the supporting identity and secrets services.
  • SCO layer — the Stakater Cloud control plane and all the user-facing cloud APIs (*.cloud.stakater.com) your tenants consume.

The only things you provide up front are a base cluster with enough capacity (see above), wildcard DNS/TLS, and the ksp CLI plus registry credentials. ksp up installs and wires everything else.

Tool Requirements#

KubeStack+ CLI (ksp)#

Stakater provides the ksp CLI together with your registry credentials when you engage — request both from sales@stakater.com (see Registry Access below). Builds are available for Linux x86_64, macOS arm64 (Apple Silicon), and Windows x86_64.

Once you have the release archive for your platform, extract the ksp binary and put it on your PATH:

# Linux (x86_64)
tar -xzf ksp_linux_x86_64.tar.gz
sudo mv ksp_linux_x86_64/bin/linux_amd64/ksp /usr/local/bin/ksp

# macOS (Apple Silicon)
tar -xzf ksp_darwin_arm64.tar.gz
sudo mv ksp_darwin_arm64/bin/darwin_arm64/ksp /usr/local/bin/ksp
xattr -d com.apple.quarantine /usr/local/bin/ksp   # clear the Gatekeeper quarantine flag

# Verify
ksp version

On Windows, extract the ksp_windows_x86_64.zip archive and add the folder containing ksp.exe to your PATH.

oc / kubectl#

# Verify oc is installed and authenticated
oc version
oc whoami

Network Requirements#

  • DNS: Wildcard DNS configured for cluster ingress (e.g., *.apps.cluster.example.com)
  • TLS: Wildcard TLS certificate for ingress routes
  • Connectivity: Outbound access to container registries (docker.io, Quay.io, ghcr.io)

Registry Access#

SCO platform components — Crossplane configuration packages, composition functions, and Helm charts — are published to Stakater's private registry (ghcr.io/stakater). Installing SCO therefore requires Stakater registry credentials.

Request your registry credentials

Email sales@stakater.com to request access. You will receive a username and a token with read access to ghcr.io/stakater. You supply these to ksp up through a registry-secret file (--registry-secret) — see OpenShift Installation.

The cluster also needs outbound connectivity to the public registries SCO depends on: docker.io, Quay.io, ghcr.io, and the Red Hat registry (for OpenShift platform components).

Configuration Claim Files#

Before running ksp up you need two claim files prepared:

  1. KubeStackConfig — Platform configuration (name, location, domain)
  2. KubeStackPlus — SCO platform deployment (variant, platform)

See OpenShift Installation for example claim files.

Pre-Installation Checklist#

  • [ ] OpenShift 4.14+ cluster on bare metal
  • [ ] Cluster administrator access
  • [ ] ksp CLI installed and on PATH
  • [ ] oc authenticated to the cluster
  • [ ] Wildcard DNS configured
  • [ ] Wildcard TLS certificate ready
  • [ ] Stakater registry credentials obtained (from sales@stakater.com)
  • [ ] KubeStackConfig claim file prepared
  • [ ] KubeStackPlus claim file prepared
  • [ ] Minimum compute and storage capacity available

What's Next?#