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 Reference Conditions reference

Caution

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

Conditions reference¶

The ScyllaDB Operator uses Kubernetes status conditions to communicate health and progress of managed resources. This page documents the top-level condition types, their semantics, and aggregation rules.

These conditions apply to all Operator-managed custom resources that report status conditions (e.g. ScyllaCluster, ScyllaDBDatacenter, NodeConfig).

Top-level conditions¶

Every condition-reporting resource exposes three top-level conditions:

Condition type

Meaning when True

Meaning when False

Meaning when Unknown

Available

The resource is functional and can serve its purpose

The resource is not functional

Availability cannot yet be determined

Progressing

The Operator is actively reconciling (rolling update, scaling, version change)

Either completed or stuck

Reconciliation state cannot yet be determined

Degraded

Something is unhealthy or an error occurred during reconciliation

Resource is healthy

Health cannot yet be determined

A fully healthy, quiescent resource shows: Available=True, Progressing=False, Degraded=False.

A resource can be Available=True and Degraded=True simultaneously — for example, a ScyllaCluster where two of three nodes are healthy can still serve traffic but is not fully healthy. Available reflects whether the resource can serve its purpose, not whether it is in a fully healthy state.

Aggregation rules¶

The top-level conditions are computed from per-controller sub-conditions. Each internal controller contributes a condition whose type is prefixed with the controller name and ends with Available, Progressing, or Degraded (e.g. StatefulSetControllerDegraded, JobControllerProgressing).

The aggregation logic is:

  • Available=True requires all *Available sub-conditions to be True.

  • Progressing=True when any *Progressing sub-condition is True.

  • Degraded=True when any *Degraded sub-condition is True.

To inspect all conditions on a ScyllaCluster (including sub-conditions), run:

kubectl -n scylla get scyllacluster <cluster-name> \
  -o jsonpath='{range .status.conditions[*]}{.type}: {.status} — {.reason}: {.message}{"\n"}{end}'

Condition fields¶

Each condition object contains:

Field

Description

type

Condition name (e.g. Available, StatefulSetControllerDegraded)

status

True, False, or Unknown

reason

A CamelCase machine-readable reason string

message

A human-readable description of the current state

lastTransitionTime

When the condition last changed

observedGeneration

The metadata.generation the condition was computed from

Related pages¶

  • Investigate restarts — using conditions alongside pod events

Was this page helpful?

PREVIOUS
Known issues
NEXT
nodetool alternatives
  • Create an issue
  • Edit this page

On this page

  • Conditions reference
    • Top-level conditions
    • Aggregation rules
    • Condition fields
    • 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