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 Troubleshoot Investigate pod restarts

Caution

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

Investigate pod restarts¶

Determine why a ScyllaDB pod or container restarted and collect the evidence needed for diagnosis or a support ticket.

Identify that a restart occurred¶

Check the restart count:

kubectl -n scylla get pods -l scylla-operator.scylladb.com/pod-type=scylladb-node

A non-zero RESTARTS column indicates that one or more containers in the pod have restarted.

You can also compare the container start time against the pod creation time. If the container started significantly later than the pod was created, the container has restarted:

kubectl -n scylla get pod <pod-name> -o jsonpath='Pod created: {.metadata.creationTimestamp}{"\n"}Container started: {.status.containerStatuses[?(@.name=="scylla")].state.running.startedAt}{"\n"}'

Determine the restart reason¶

Container status¶

kubectl -n scylla get pod <pod-name> -o jsonpath='{.status.containerStatuses}' | jq .

Key fields:

Field

Description

restartCount

Total number of restarts for this container

lastState.terminated.reason

Why the container stopped (OOMKilled, Error, Completed)

lastState.terminated.exitCode

Process exit code (137 = SIGKILL / OOMKilled, 1 = error)

lastState.terminated.finishedAt

Timestamp of the last termination

Pod events¶

kubectl -n scylla describe pod <pod-name>

Look for these events in the Events section:

Event

Meaning

Killing

Container was killed (by kubelet or OOM killer)

BackOff

Container is in CrashLoopBackOff — restarting repeatedly

OOMKilling

Container exceeded its memory limit

Unhealthy

Liveness probe failed — kubelet killed the container

FailedScheduling

Pod cannot be placed on any node

Distinguish restart causes¶

OOMKilled¶

Indicators:

  • lastState.terminated.reason: OOMKilled

  • lastState.terminated.exitCode: 137

Common causes:

  • Memory limit too low for the workload.

  • ScyllaDB memory allocation exceeds the container limit.

Resolution:

  • Increase the memory limit in the ScyllaCluster spec.

  • Review ScyllaDB memory usage via monitoring dashboards.

Liveness probe failure¶

Indicators:

  • Event: Unhealthy with Liveness probe failed

  • Container restarted without OOMKilled reason.

Common causes:

  • ScyllaDB unresponsive due to long GC pauses or compaction stalls.

  • Node overloaded — too many concurrent operations.

Resolution:

  • Check ScyllaDB logs for compaction or GC warnings.

  • Review resource allocation (CPU, memory).

  • Check for large partition warnings in logs.

CrashLoopBackOff¶

Indicators:

  • Pod status: CrashLoopBackOff

  • Event: BackOff

Common causes:

  • ScyllaDB fails to start — corrupt SSTables, invalid configuration, wrong seeds.

  • Disk permission issues.

  • Missing or invalid io_properties.yaml.

Resolution:

  • Check previous container logs: kubectl -n scylla logs <pod-name> -c scylla --previous

  • Verify configuration with kubectl -n scylla describe scyllacluster <cluster-name>

Node eviction¶

Indicators:

  • Pod event: Evicted

  • Node conditions show MemoryPressure or DiskPressure.

Cause: The Kubernetes node is under resource pressure and the kubelet evicted the pod.

Resolution:

  • Check node conditions: kubectl describe node <node-name>

  • Ensure dedicated node pools with appropriate taints prevent co-scheduling with other workloads.

  • See Set up dedicated node pools.

Collect evidence¶

When filing a support ticket or investigating further, collect a must-gather archive. It includes previous container logs, full pod status, and events needed to diagnose restarts.

See Collect debugging information for instructions.

Related pages¶

  • Collecting debugging information

Was this page helpful?

PREVIOUS
Troubleshoot
NEXT
Change log level on a live cluster
  • Create an issue
  • Edit this page

On this page

  • Investigate pod restarts
    • Identify that a restart occurred
    • Determine the restart reason
      • Container status
      • Pod events
    • Distinguish restart causes
      • OOMKilled
      • Liveness probe failure
      • CrashLoopBackOff
      • Node eviction
    • Collect evidence
    • 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