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 Operate Perform a rolling restart

Perform a rolling restart¶

Force a rolling restart of all ScyllaDB nodes in a cluster by changing the forceRedeploymentReason field.

How it works¶

The Operator places forceRedeploymentReason as an annotation on the StatefulSet pod template. When you change the value, the pod template changes, which triggers the StatefulSet controller to perform a rolling update. The Operator orchestrates this update one pod at a time, draining each node before terminating it and waiting for the replacement to become ready before proceeding to the next.

The value itself is arbitrary — it only needs to be different from the previous value. Using a descriptive string (e.g. "config change 2024-01-15") makes it easier to identify why a restart was triggered.

Restart a ScyllaCluster¶

Patch the spec.forceRedeploymentReason field:

kubectl -n scylla patch scyllacluster/scylla --type=merge \
  -p='{"spec": {"forceRedeploymentReason": "restart-2024-01-15"}}'

Wait for the rolling restart to complete:

kubectl -n scylla wait --timeout=30m --for='condition=Progressing=False' scyllaclusters.scylla.scylladb.com/scylla
kubectl -n scylla wait --timeout=30m --for='condition=Degraded=False' scyllaclusters.scylla.scylladb.com/scylla
kubectl -n scylla wait --timeout=30m --for='condition=Available=True' scyllaclusters.scylla.scylladb.com/scylla

Note

In multi-DC clusters using multiple ScyllaCluster resources, restart each datacenter’s ScyllaCluster independently.

Key considerations¶

Consideration

Detail

One at a time

The Operator restarts one node at a time per rack. Each node is drained before termination, and the replacement must be ready before the next node is restarted.

Unique value

The value of forceRedeploymentReason must be different from the current value to trigger a restart. Repeating the same string has no effect.

Impact on availability

A rolling restart temporarily reduces the number of available replicas by one. Ensure your replication factor allows for one node to be unavailable.

PodDisruptionBudget

The PDB (maxUnavailable: 1) ensures that at most one node per datacenter is unavailable at any given time, even during a rolling restart.

Related pages¶

  • StatefulSets and racks — how StatefulSets manage rolling updates with partition-based rollouts

  • Upgrade ScyllaDB — version upgrades that include an automatic rolling restart

  • Back up and restore — schema restores on older ScyllaDB versions require a rolling restart after the restore completes

Was this page helpful?

PREVIOUS
Restore from backup
NEXT
Migrate a rack to a new node pool
  • Create an issue
  • Edit this page

On this page

  • Perform a rolling restart
    • How it works
    • Restart a ScyllaCluster
    • Key considerations
    • Related pages
ScyllaDB Operator
Search Ask AI
  • v1.21
    • 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