scylladb / scylla-cluster-tests

Tests for Scylla Clusters
GNU Affero General Public License v3.0
54 stars 93 forks source link

Grow/shrink nemesis - growth improvements (For serverlessv2) #8071

Open mykaul opened 1 month ago

mykaul commented 1 month ago

The growth of a cluster should be done in different (random / pre-determined ways)

  1. Double the cluster. You have X nodes now (in some topology - multi-DC, etc.) - you'd have the same topology, with 2X nodes. Addition of nodes will be done in parallel [Raft based topology only]
  2. Grow in the minimal step - you have X nodes of i4i.8xlarge, you'd add (1 node per AZ ,etc.) i4i.xlarge nodes to it - in parallel. [Raft based topology only + Tablets enabled only]
  3. Grow with the same instance type plus 1 node (I believe this is the current functionality).

There should be a way for the user to choose which policy to use for growth (or randomize between them). We'll need similar support for shrink.

CC @dani-tweig

fruch commented 1 month ago

SCT isn't gonna do any of those calculation on it's own.

user would need to configure the test to it's needs.

we are gonna supply a configuration for the instance type that would be used in grow-shrink nemesis the amount of nodes in this nemesis is already configurable.

a user would be able to configure both of those base on it's needed and logic he want to test

fruch commented 1 month ago

we wrote it down in QA tasks, few weeks back: