ScyllaDB University Live | Free Virtual Training Event
Learn more
ScyllaDB Documentation Logo Documentation
  • Deployments
    • Cloud
    • Server
  • Tools
    • ScyllaDB Manager
    • ScyllaDB Monitoring Stack
    • ScyllaDB Operator
  • Drivers
    • CQL Drivers
    • DynamoDB Drivers
    • Supported Driver Versions
  • Resources
    • ScyllaDB University
    • Community Forum
    • Tutorials
Install
Search Ask AI
ScyllaDB Docs ScyllaDB Operator Install Operator Install with Helm

Caution

You're viewing documentation for an unstable version of ScyllaDB Operator. Switch to the latest stable version.

Install with Helm¶

This page walks you through installing ScyllaDB Operator and its dependencies using Helm charts. If you prefer applying raw manifests, see Install with GitOps. For Red Hat OpenShift, see Install on OpenShift.

Note

The Helm installation path supports single-datacenter deployments only. For multi-datacenter ScyllaDB clusters, use the GitOps installation path.

Warning

Helm does not support managing CustomResourceDefinition resources (helm#5871, helm#7735). Helm only creates CRDs on the first install and never updates them. You must update CRDs manually with every Operator upgrade. For this reason, the Install with GitOps path provides a more consistent experience.

Note

ScyllaDB Operator must run in the scylla-operator namespace.

Prerequisites¶

  • A Kubernetes cluster meeting the infrastructure requirements.

  • kubectl configured to communicate with the cluster.

  • Helm 3+ installed.

Add the Helm chart repository¶

helm repo add scylla https://scylla-operator-charts.storage.googleapis.com/stable
helm repo update

Verify the charts are available:

helm search repo scylla

Expected output: At least three charts: scylla/scylla-operator, scylla/scylla-manager, scylla/scylla.

Install cert-manager¶

cert-manager provisions the TLS certificate for ScyllaDB Operator’s webhook server. If you already have cert-manager installed in your cluster, skip this step. If you want to provide your own webhook certificate, set webhook.createSelfSignedCertificate: false and provide webhook.certificateSecretName when installing the Operator chart.

You can install cert-manager using the bundled manifest:

kubectl apply --server-side -f=https://raw.githubusercontent.com/scylladb/scylla-operator/master/examples/third-party/cert-manager.yaml

Or follow the upstream cert-manager installation instructions.

Wait for cert-manager to become available:

kubectl wait -n=cert-manager --for='condition=ready' pod -l app=cert-manager --timeout=60s
kubectl wait -n=cert-manager --for='condition=ready' pod -l app=cainjector --timeout=60s
kubectl wait -n=cert-manager --for='condition=ready' pod -l app=webhook --timeout=60s

Install ScyllaDB Operator¶

helm install scylla-operator scylla/scylla-operator \
  --create-namespace \
  --namespace scylla-operator

To customize the deployment (image, resources, replicas, log level), create a values file and pass it with --values:

helm install scylla-operator scylla/scylla-operator \
  --create-namespace \
  --namespace scylla-operator \
  --values my-operator-values.yaml

See the chart’s values.yaml for all available options.

Wait for ScyllaDB Operator to become available:

kubectl -n=scylla-operator rollout status --timeout=10m deployment.apps/scylla-operator
kubectl -n=scylla-operator rollout status --timeout=10m deployment.apps/webhook-server

Expected output: Both Deployments report successfully rolled out.

Install Prometheus Operator (optional)¶

Prometheus Operator is required only if you plan to use ScyllaDB monitoring (ScyllaDBMonitoring CRD). If you do not need monitoring, skip this step.

kubectl apply -n=prometheus-operator --server-side -f=https://raw.githubusercontent.com/scylladb/scylla-operator/master/examples/third-party/prometheus-operator.yaml
kubectl -n=prometheus-operator rollout status --timeout=10m deployment.apps/prometheus-operator

Next steps¶

  • Deploy ScyllaDB — choose a platform-specific reference deployment or deploy your first cluster.

Clean up¶

To remove the Helm releases:

helm uninstall scylla -n scylla
helm uninstall scylla-manager -n scylla-manager
helm uninstall scylla-operator -n scylla-operator

Note

Helm uninstall does not remove CRDs. To fully clean up, delete the CRDs manually after uninstalling:

kubectl delete crd scyllaclusters.scylla.scylladb.com nodeconfigs.scylla.scylladb.com scyllaoperatorconfigs.scylla.scylladb.com scylladbmonitorings.scylla.scylladb.com

Related pages¶

  • Prerequisites — Kubernetes version requirements and platform-specific setup.

  • Install with GitOps — alternative installation path using manifests.

  • Install on OpenShift — installation path for Red Hat OpenShift via OLM.

Was this page helpful?

PREVIOUS
Install with GitOps
NEXT
Install on OpenShift
  • Create an issue
  • Edit this page

On this page

  • Install with Helm
    • Prerequisites
    • Add the Helm chart repository
    • Install cert-manager
    • Install ScyllaDB Operator
    • Install Prometheus Operator (optional)
    • Next steps
    • Clean up
    • Related pages
ScyllaDB Operator
Search Ask AI
  • master
    • master
    • v1.21
    • v1.20
    • v1.19
    • v1.18
  • Get Started
    • What Is ScyllaDB Operator?
    • ScyllaDB Concepts on Kubernetes
  • Install Operator
    • Provision infrastructure
      • Set up a GKE cluster for ScyllaDB
      • Set up an EKS cluster for ScyllaDB
      • Set up an OKE cluster for ScyllaDB
      • Set up an OpenShift cluster for ScyllaDB
    • Install with GitOps
    • Install with Helm
    • Install on OpenShift
  • Deploy ScyllaDB
    • Before you deploy
      • Set up dedicated node pools
      • Configure CPU pinning
      • Configure nodes
      • Configure ScyllaDB Operator
    • Deploy your first cluster
    • Reference deployments
      • Reference deployment: GKE
      • Reference deployment: EKS
      • Reference deployment: OKE
      • Reference deployment: OpenShift
    • Install ScyllaDB Manager
    • Set up networking
      • Configure external access
      • IPv6 networking
        • Getting started with IPv6 networking
        • Configure dual-stack networking
        • Configure IPv6-only networking
        • Migrate clusters to IPv6
        • Troubleshoot IPv6 networking issues
        • IPv6 networking concepts
    • Set up monitoring
      • Set up ScyllaDB Monitoring
      • Set up ScyllaDB Monitoring on OpenShift
      • Expose Grafana
    • Production checklist
  • Connect Your App
    • Connect via CQL
    • Alternator (DynamoDB API)
    • Discovery endpoint
  • Understand
    • Storage
    • Tuning
    • ScyllaDB Manager
    • Networking
    • ScyllaDB Monitoring overview
    • Bootstrap synchronisation
    • Automatic data cleanup
    • Sidecar and pod anatomy
    • Ignition
    • Pod disruption budgets
    • Security
    • StatefulSets and racks
  • Operate
    • Scale, add, remove racks
    • Replace nodes
    • Expand storage volumes
    • Use maintenance mode
    • Back up and restore
    • Restore from backup
    • Perform a rolling restart
    • Migrate a rack to a new node pool
    • Pass additional ScyllaDB arguments
    • Configure precomputed IO properties
  • Upgrade
    • Upgrading ScyllaDB Operator
    • Upgrading ScyllaDB clusters
  • Troubleshoot
    • Investigate pod restarts
    • Change log level on a live cluster
    • Recover from a failed node replace
    • Troubleshoot performance
    • Collect debugging information
      • Collect data with must-gather
      • must-gather contents
      • Query system tables for debugging
    • Collect core dumps
  • Reference
    • API Reference
      • scylla.scylladb.com
        • NodeConfig (scylla.scylladb.com/v1alpha1)
        • RemoteKubernetesCluster (scylla.scylladb.com/v1alpha1)
        • RemoteOwner (scylla.scylladb.com/v1alpha1)
        • ScyllaCluster (scylla.scylladb.com/v1)
        • ScyllaDBCluster (scylla.scylladb.com/v1alpha1)
        • ScyllaDBDatacenterNodesStatusReport (scylla.scylladb.com/v1alpha1)
        • ScyllaDBDatacenter (scylla.scylladb.com/v1alpha1)
        • ScyllaDBManagerClusterRegistration (scylla.scylladb.com/v1alpha1)
        • ScyllaDBManagerTask (scylla.scylladb.com/v1alpha1)
        • ScyllaDBMonitoring (scylla.scylladb.com/v1alpha1)
        • ScyllaOperatorConfig (scylla.scylladb.com/v1alpha1)
    • Feature gates
    • IPv6 configuration reference
    • Releases
    • Known issues
    • Conditions reference
    • nodetool alternatives
  • Contributing to ScyllaDB Operator
Docs Tutorials University Contact Us About Us
© 2026, ScyllaDB. All rights reserved. | Terms of Service | Privacy Policy | ScyllaDB, and ScyllaDB Cloud, are registered trademarks of ScyllaDB, Inc.
Last updated on 22 May 2026.
Powered by Sphinx 9.1.0 & ScyllaDB Theme 1.9.2