Usually, it’s a good practice to resemble the real datacenter in the Cassandra topology, thus nodes mounted to distinct racks are know with different rack names to Cassandra. This is due to the usual datacenter infrastructure, having a single point of failure in each rack - e.g. a network switch. In that sense a rack can be considered a failure domain within the datacenter. Cassandra is making efforts to distribute its token ranges among the available nodes to minimize intersections within a singe rack. In the best case you can lose a whole rack without loosing more than a single replica of the affected partitions. (Note: this is just best effort) In some cases you can experience issues, e.g. if the number of nodes is very small, if nodes share some other resources that behave as single point of failure - like VMs do, etc. In such a case it might be better to configure each Cassandra node with the same rack.
> On 3. Apr 2023, at 17:11, David Tinker <david.tin...@gmail.com> wrote: > > I have a 3 node cluster using the GossipingPropertyFileSnitch and replication > factor of 3. All nodes are leased hardware and more or less the same. The > cassandra-rackdc.properties files look like this: > > dc=dc1 > rack=rack1 > (rack2 and rack3 for the other nodes) > > Now I need to expand the cluster. I was going to use rack4 for the next node, > then rack5 and rack6 because the nodes are physically all on different racks. > Elsewhere on this list someone mentioned that I should use rack1, rack2 and > rack3 again. > > Why is that? > > Thanks > David >