Skip to content

Installation ​

Palena ships three equivalent install paths. Use whichever matches your cluster's operator distribution model.

If your cluster runs the Operator Lifecycle Manager (OpenShift ships with it; OKD, Rancher, and many managed distributions have it enabled), use the OLM bundle. Upgrades become a one-line subscription bump.

bash
operator-sdk run bundle ghcr.io/palenaai/palena-operator-bundle:v0.1.0 \
  --namespace palena-system \
  --timeout 10m

This installs the operator, CRDs, and an OperatorGroup into palena-system.

To uninstall:

bash
operator-sdk cleanup palena-operator --namespace palena-system

Option B — Helm ​

For clusters without OLM, the Helm chart is the simplest path.

bash
helm install palena-operator deploy/charts/palena-operator \
  --namespace palena-system \
  --create-namespace

The chart installs:

  • CRDs for all five Palena types
  • ServiceAccount, ClusterRole, ClusterRoleBinding
  • The controller Deployment
  • Role + RoleBinding for leader election

Chart values you'll typically want to tune:

yaml
image:
  repository: ghcr.io/palenaai/palena-operator
  tag: v0.1.0
replicaCount: 1
installCRDs: true
metrics:
  enabled: true
leaderElection:
  enabled: true
resources:
  limits:
    cpu: 500m
    memory: 512Mi
  requests:
    cpu: 100m
    memory: 128Mi

See values.yaml for the full list.

Option C — Raw manifests (development) ​

Useful for local development against a kind cluster or when you want to inspect every resource being applied.

bash
# 1. Install CRDs
make install

# 2. Deploy the controller
make deploy IMG=ghcr.io/palenaai/palena-operator:v0.1.0

This uses kustomize under config/default and creates everything in palena-operator-system.

Verifying the install ​

Regardless of install path, you can confirm the operator is running:

bash
kubectl get pods -n palena-system
# NAME                                          READY   STATUS    RESTARTS   AGE
# palena-operator-controller-manager-...        2/2     Running   0          30s

kubectl get crd | grep operator.palena.ai
# palenagateways.operator.palena.ai
# palenamcpservers.operator.palena.ai
# palenamodels.operator.palena.ai
# palenaobservabilities.operator.palena.ai
# palenauis.operator.palena.ai

The READY 2/2 reflects the controller + kube-rbac-proxy sidecar.

Upgrading ​

  • OLM: bump the channel or upgrade the Subscription to the new bundle version.
  • Helm: helm upgrade palena-operator deploy/charts/palena-operator after updating image.tag.
  • Raw: re-run make deploy IMG=... with the new tag.

Palena's CRDs follow a strict compatibility policy during v1alpha1 — additive changes only. See Upgrading for version-specific guidance.

Next step ​

Install complete? Move on to the quick start for a working gateway + model + UI in under ten minutes.

Released under the Apache 2.0 License. "Palena" is a trademark of bitkaio LLC.