Join us at Scylla Summit 2022 on Feb 9-10 Register for Free
Learn More

Upscale a Cluster

Upcaling your cluster involves moving the cluster to a larger instance. With this procedure, it can be done without downtime.

Scylla was designed with big servers and multi-cores in mind. In most cases, it is better to run a smaller cluster on a bigger machine instance than a larger cluster on a small machine instance. However, there may be cases where you started with a small cluster, and you now you want to upscale.

There are a few alternatives to do this:

Add Bigger Nodes to a Cluster

This procedure can be used to either upscale an entire cluster or to upscale a single node.

  1. Add new bigger nodes to the cluster. Confirm Streaming has completed before continuing.

  2. Remove the old smaller nodes. Confirm Streaming has completed before continuing.

  3. Repeat steps 1 and 2 until the entire cluster is using bigger nodes.


The cluster is only as strong as its weakest node. Do not overload the cluster before all nodes are as upscaled.

Upscale Nodes by Adding CPUs

This procedure is only useful for entire clusters, not individual nodes. Do the following on each node in the cluster:

  1. Run nodetool drain to stop traffic to the node.

  2. Stop the service

    sudo systemctl stop scylla-server
  3. Add cores

  4. Run scylla_setup to set Scylla to the new HW configuration.

  5. Start the service

    sudo systemctl start scylla-server


Updating the number of cores will cause Scylla to reshard the SSTables to match the new core number. This is done by compacting all of the data on disk at startup.