Thanks Patick!

> Giving it a minute between and waiting until each node enters
BOOTSTRAP/STREAMING are good signs to proceed with the next one.
This is great to know!

> When adding nodes to each rack, you just have to worry about the source
node for streaming
Right — I’ve been keeping that in mind and making sure new nodes are added
in a way that avoids having the same source node stream to multiple new
nodes simultaneously.

> Add nodes across each rack at the same time, vs all in one rack at a
time. The source for streaming is where it matters and this will ensure
it's spread out.
Thanks for confirming this!


On Fri, Dec 12, 2025 at 1:52 PM Patrick McFadin <[email protected]> wrote:

> Hi Long,
>
> I'm sure you'll get some debate on if one token range per node is ideal or
> not, but technically it will work just fine. You are responsible for the
> range management, but that's your question about overlap. When you need to
> scale, getting the ranges right will be a manual process.
>
> Your point on starting up. Giving it a minute between and waiting until
> each node enters BOOTSTRAP/STREAMING are good signs to proceed with the
> next one.
>
> When adding nodes to each rack, you just have to worry about the source
> node for streaming. It could create a hotspot you weren't expecting. Add
> nodes across each rack at the same time, vs all in one rack at a time. The
> source for streaming is where it matters and this will ensure it's spread
> out.
>
> -Dcassandra.consistent.simultaneousmoves.allow=true is a good idea. If
> you have the bandwidth then definately consider upping
> stream_throughput_outbound_megabits_per_sec[1]
>
> Patrick
>
> 1-
> https://cassandra.apache.org/doc/4.1/cassandra/configuration/cass_yaml_file.html#stream_throughput_outbound_megabits_per_sec
>
> On Wed, Dec 10, 2025 at 10:24 PM Long Pan <[email protected]> wrote:
>
>> Hi Cassandra Community,
>>
>> I’m on Cassandra *4.1.10*, and I’ve been experimenting with the *single-token
>> setup* (num_tokens = 1, with tokens manually assigned per node).
>>
>> When *concurrently* adding multiple nodes to a cluster, I make sure
>> their bootstrap token ranges do not overlap. Is there anything else I
>> should be aware of?
>>
>> More specifically:
>>
>>    1.
>>
>>    *Is it good to start multiple new nodes at the exact same time*, as
>>    long as their affected token ranges do not overlap?
>>    Or is some sequencing still recommended (e.g., don’t start node B
>>    until node A has *entered* streaming)?
>>    2.
>>
>>    *Is it better to complete node additions rack-by-rack*, or does rack
>>    distribution not matter as long as the token ranges affected by the new
>>    nodes don’t overlap? My understanding is that rack distribution does not
>>    matter.
>>    3.
>>
>>    For large clusters (many nodes and large data volumes), what *Cassandra
>>    parameters or JVM options* are important for successfully adding
>>    multiple nodes simultaneously, beyond enabling
>>    -Dcassandra.consistent.simultaneousmoves.allow=true
>>    and using num_tokens=1?
>>
>>    Are settings like *ring_delay_ms* or the various *streaming
>>    throughput–related parameters* also important in practice? I suspect
>>    they matter quite a bit, but I want to confirm.
>>
>> Thank you so much for your help!
>>
>> Best,
>> Long
>>
>

Reply via email to