ScyllaDB University Live | Free Virtual Training Event
Learn more
ScyllaDB Documentation Logo Documentation
  • Server
  • Cloud
  • Tools
    • ScyllaDB Manager
    • ScyllaDB Monitoring Stack
    • ScyllaDB Operator
  • Drivers
    • CQL Drivers
    • DynamoDB Drivers
  • Resources
    • ScyllaDB University
    • Community Forum
    • Tutorials
Download
ScyllaDB Docs Scylla Operator Resources NodeConfigs

NodeConfigs¶

NodeConfig is an API object that helps you set up and tune the nodes.

 1apiVersion: scylla.scylladb.com/v1alpha1
 2kind: NodeConfig
 3metadata:
 4  name: scylladb-pool-1
 5spec:
 6  localDiskSetup:
 7    raids:
 8    - name: nvmes
 9      type: RAID0
10      RAID0:
11        devices:
12          nameRegex: ^/dev/nvme\d+n\d+$
13    filesystems:
14    - device: /dev/md/nvmes
15      type: xfs
16    mounts:
17    - device: /dev/md/nvmes
18      mountPoint: /var/lib/persistent-volumes
19      unsupportedOptions:
20      - prjquota
21  placement:
22    nodeSelector:
23      scylla.scylladb.com/node-type: scylla
24    tolerations:
25    - effect: NoSchedule
26      key: scylla-operator.scylladb.com/dedicated
27      operator: Equal
28      value: scyllaclusters

Disk setup¶

NodeConfig can set up the disks into a RAID array, create a filesystem and mount it somewhere, so it can be consumed by the Local CSI Driver

Performance tuning¶

Unless you explicitly disable tuning on a NodeConfig, all matching Kubernetes nodes are subject to tuning. You can learn more about tuning in a dedicated architecture section

Warning

We recommend that you first try out the performance tuning on a pre-production instance. Given the nature of the underlying tuning script, undoing the changes requires rebooting the Kubernetes node(s).

Status¶

Given NodeConfig specification needs to reference local disk by names or that the referenced storage can be already used / mounted by something else, you should pay special attention to verifying that everything succeeded. NodeConfig have the standard aggregated conditions to easily check whether everything went fine:

kubectl get nodeconfigs.scylla.scylladb.com/scylladb-pool-1
NAME              AVAILABLE   PROGRESSING   DEGRADED   AGE
scylladb-pool-1   True        False         False      37d

or programmatically wait for it:

kubectl wait --timeout=10m --for='condition=Progressing=False' nodeconfigs.scylla.scylladb.com/scylladb-pool-1
kubectl wait --timeout=10m --for='condition=Degraded=False' nodeconfigs.scylla.scylladb.com/scylladb-pool-1
kubectl wait --timeout=10m --for='condition=Available=True' nodeconfigs.scylla.scylladb.com/scylladb-pool-1

If the NodeConfig doesn’t reach the expected state, look at the fine-grained conditions in its status to find the cause.

Was this page helpful?

PREVIOUS
ScyllaDBMonitorings
NEXT
ScyllaOperatorConfigs
  • Create an issue
  • Edit this page

On this page

  • NodeConfigs
    • Disk setup
    • Performance tuning
    • Status
Scylla Operator
  • v1.17
    • v1.17
    • v1.16
    • v1.15
    • master
  • Architecture
    • Overview
    • Storage
      • Overview
      • Local CSI Driver
    • Tuning
    • ScyllaDB Manager
  • Installation
    • Overview
    • Kubernetes
      • Generic
      • EKS
      • GKE
    • GitOps (kubectl)
    • Helm
  • Resources
    • Overview
    • ScyllaClusters
      • ScyllaClusters
      • ScyllaDB clients
        • Discovering ScyllaDB Nodes
        • Using CQL
        • Using Alternator (DynamoDB)
      • Node operations using Scylla Operator
        • Upgrading version of Scylla
        • Replacing a Scylla node
        • Automatic cleanup and replacement in case when k8s node is lost
        • Maintenance mode
        • Restore from backup
      • Deploying multi-datacenter ScyllaDB clusters in Kubernetes
        • Build multiple Amazon EKS clusters with inter-Kubernetes networking
        • Build multiple GKE clusters with inter-Kubernetes networking
        • Deploy a multi-datacenter ScyllaDB cluster in multiple interconnected Kubernetes clusters
      • Exposing ScyllaDB cluster
    • ScyllaDBClusters
      • ScyllaDBClusters
      • Exposing ScyllaDB cluster
    • ScyllaDBMonitorings
    • NodeConfigs
    • ScyllaOperatorConfigs
    • RemoteKubernetesCluster
  • Quickstarts
    • Deploying ScyllaDB on GKE
    • Deploying ScyllaDB on EKS
  • Support
    • Support overview
    • Known issues
    • Troubleshooting
      • Troubleshooting installation issues
    • Gathering data with must-gather
    • Releases
  • 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)
      • ScyllaDBDatacenter (scylla.scylladb.com/v1alpha1)
      • ScyllaDBMonitoring (scylla.scylladb.com/v1alpha1)
      • ScyllaOperatorConfig (scylla.scylladb.com/v1alpha1)
Docs Tutorials University Contact Us About Us
© 2025, ScyllaDB. All rights reserved. | Terms of Service | Privacy Policy | ScyllaDB, and ScyllaDB Cloud, are registered trademarks of ScyllaDB, Inc.
Last updated on 13 May 2025.
Powered by Sphinx 8.1.3 & ScyllaDB Theme 1.8.6