Currently cluster.prepare supports 2 flavors of the nodes parameter:
An integer - specifying the number of nodes in a single datacenter cluster
A list of integers - specifying the number of nodes in each datacenter in a multi-dc cluster
For testing multi-rack datacenter I suggest adding a third notation:
A dictionary in the form of { dc{i}: nodes, ... }
where nodes, like today, could specify the number of nodes in that dc as an integer (compatible with today's [x, y, z, ...] notation)
or they could be a list, where the would specify the number of nodes in each rack (racks automatically named as RAC{i} for backward compatibility)
or they could be a dictionary with { rac{i}: num_nodes, ... } specifying the number of nodes in each named rack (integer only in this case)
Currently cluster.prepare supports 2 flavors of the
nodes
parameter:For testing multi-rack datacenter I suggest adding a third notation: A dictionary in the form of
{ dc{i}: nodes, ... }
where nodes, like today, could specify the number of nodes in that dc as an integer (compatible with today's[x, y, z, ...]
notation) or they could be a list, where the would specify the number of nodes in each rack (racks automatically named asRAC{i}
for backward compatibility) or they could be a dictionary with{ rac{i}: num_nodes, ... }
specifying the number of nodes in each named rack (integer only in this case)