Installation
Palena ships three equivalent install paths. Use whichever matches your cluster's operator distribution model.
Option A — OLM bundle (recommended)
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.
operator-sdk run bundle ghcr.io/palenaai/palena-operator-bundle:v0.1.0 \
--namespace palena-system \
--timeout 10mThis installs the operator, CRDs, and an OperatorGroup into palena-system.
To uninstall:
operator-sdk cleanup palena-operator --namespace palena-systemOption B — Helm
For clusters without OLM, the Helm chart is the simplest path.
helm install palena-operator deploy/charts/palena-operator \
--namespace palena-system \
--create-namespaceThe chart installs:
- CRDs for all five Palena types
ServiceAccount,ClusterRole,ClusterRoleBinding- The controller
Deployment Role+RoleBindingfor leader election
Chart values you'll typically want to tune:
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: 128MiSee 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.
# 1. Install CRDs
make install
# 2. Deploy the controller
make deploy IMG=ghcr.io/palenaai/palena-operator:v0.1.0This 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:
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.aiThe READY 2/2 reflects the controller + kube-rbac-proxy sidecar.
Upgrading
- OLM: bump the
channelor upgrade theSubscriptionto the new bundle version. - Helm:
helm upgrade palena-operator deploy/charts/palena-operatorafter updatingimage.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.