title: 'Kubernetes Deployment' sidebar_label: 'Kubernetes' sidebar_position: 5 description: 'Deploy Spice.ai on Kubernetes using Helm, Argo CD, or Flux.' tags:
Spice.ai runs on any Kubernetes cluster — managed (EKS, GKE, AKS) or self-hosted (kubeadm, k3s, Kind, RKE2). The official Spice Helm chart is the foundation for all three deployment paths covered here.
Choose the workflow that matches the operating model:
| Path | When to use |
|---|---|
| Helm | Direct, imperative deploys with helm install / helm upgrade. Simplest path for getting started or CI-driven pipelines that already invoke Helm. |
| Argo CD | GitOps with continuous reconciliation. Define the desired state in Git; Argo CD applies and self-heals. |
| Flux | GitOps with native Kubernetes-style controllers (HelmRelease, HelmRepository, Kustomization). Lightweight alternative to Argo CD. |
All three options consume the same chart and values.yaml, so configuration learned in one path transfers directly to the others.
:::tip[Spice.ai Enterprise Operator] For production lifecycle management beyond what the Helm chart provides, the Spice.ai Enterprise Kubernetes Operator introduces two custom resources:
SpicepodSet — declarative replica management with automatic PVC resizing, rolling/parallel update strategies, crashloop protection, and per-replica StatefulSets when persistent volumes are configured. Use it instead of the chart's stateful mode for stateful workloads.SpicepodCluster — distributed query clusters with dedicated scheduler and executor nodes, automatic mTLS, and shared object-store-backed state. Use it for horizontally scaled query execution and high availability.The operator works alongside Helm, Argo CD, and Flux — install the operator chart and manage SpicepodSet / SpicepodCluster resources from the same GitOps pipeline.
:::
kubectl configured for the target cluster. See the Kubernetes documentation.