Skip to main content

Prerequisites

Before installing CASA, ensure the following are in place.

Kubernetes Cluster

  • Version: Kubernetes 1.26+
  • Tested on: kind, EKS, GKE, AKS
  • Node requirements: At least 2 nodes with 4 CPU / 8 GB RAM each for the runtime + a demo MAS

CLI Tools

ToolVersionPurpose
kubectl1.26+Apply manifests and interact with the cluster
helm3.10+Install CASA charts
istioctl1.17+Install and verify Istio

Dataplane

CASA requires one of the following dataplanes to be installed and operational in your cluster.

Istio (for Istio deployment mode)

This is the currently supported dataplane.

Install Istio using the Istio CLI:

istioctl install --set profile=default -y
istioctl verify-install

Minimum version: Istio 1.17

Cilium (for Cilium deployment mode)

Note: Cilium support is coming soon. The instructions below document the planned setup. Cilium deployment mode is not yet available; use Istio for the current release.

Install Cilium using the Helm chart:

helm repo add cilium https://helm.cilium.io/
helm install cilium cilium/cilium --version 1.14.0 \
--namespace kube-system \
--set kubeProxyReplacement=true

Verify Cilium is ready:

cilium status --wait

Minimum version: Cilium 1.14

Container Registry Access

All CASA runtime images are published publicly to GitHub Container Registry (GHCR) on every push to main:

ImageGHCR path
Auth serviceghcr.io/outshift-open/outshift-casa/casa-auth-server
UI Explorerghcr.io/outshift-open/outshift-casa/casa-auth-server-ui
Keycloakghcr.io/outshift-open/outshift-casa/casa-auth-server-keycloak
Operatorghcr.io/outshift-open/outshift-casa/casa-operator
Ext-auth serviceghcr.io/outshift-open/outshift-casa/ext_auth_service
LLM proxy (Wasm)ghcr.io/outshift-open/outshift-casa/llm_proxy_plugin
Traceparent injector (Wasm)ghcr.io/outshift-open/outshift-casa/traceparent_injector_plugin

No authentication is required to pull these images.

Helm charts are also published publicly to GHCR as OCI artifacts:

# Install from GHCR directly (no helm repo add required)
helm install casa-dev oci://ghcr.io/outshift-open/helm/casa-runtime --version <version>

Storage

The runtime requires persistent volumes for PostgreSQL. Your cluster must have a default StorageClass that supports ReadWriteOnce volumes, or you must specify a storageClass in the Helm values.

Check the default StorageClass:

kubectl get storageclass

Next Step

Install the Runtime →