PropertyFileSnitch
Determines the location of nodes by rack and data center.
This snitch determines proximity as determined by rack and data center. It uses the network details located in the cassandra-topology.properties file. When using this snitch, you can define your data center names to be whatever you want. Make sure that the data center names correlate to the name of your data centers in the keyspace definition. Every node in the cluster should be described in the cassandra-topology.properties file, and this file should be exactly the same on every node in the cluster.
The location of the
cassandra-topology.properties file depends on the type of installation:
Package installations | /etc/cassandra/cassandra-topology.properties |
Tarball installations | install_location/conf/cassandra-topology.properties |
Windows installations | C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra-topology.properties |
Procedure
If you had non-uniform IPs and two physical data centers with two racks in
each, and a third logical data center for replicating analytics data, the
cassandra-topology.properties file might look like
this:
Note: Data center and rack names are
case-sensitive.
# Data Center One
175.56.12.105=DC1:RAC1
175.50.13.200=DC1:RAC1
175.54.35.197=DC1:RAC1
120.53.24.101=DC1:RAC2
120.55.16.200=DC1:RAC2
120.57.102.103=DC1:RAC2
# Data Center Two
110.56.12.120=DC2:RAC1
110.50.13.201=DC2:RAC1
110.54.35.184=DC2:RAC1
50.33.23.120=DC2:RAC2
50.45.14.220=DC2:RAC2
50.17.10.203=DC2:RAC2
# Analytics Replication Group
172.106.12.120=DC3:RAC1
172.106.12.121=DC3:RAC1
172.106.12.122=DC3:RAC1
# default for unknown nodes
default =DC3:RAC1