Package org.apache.cassandra.locator
Class AlibabaCloudSnitch
- java.lang.Object
-
- org.apache.cassandra.locator.AbstractEndpointSnitch
-
- org.apache.cassandra.locator.AbstractNetworkTopologySnitch
-
- org.apache.cassandra.locator.AlibabaCloudSnitch
-
- All Implemented Interfaces:
IEndpointSnitch
public class AlibabaCloudSnitch extends AbstractNetworkTopologySnitch
A snitch that assumes an ECS region is a DC and an ECS availability_zone is a rack. This information is available in the config for the node. the format of the zone-id is like 'cn-hangzhou-a' where cn means china, hangzhou means the hangzhou region, a means the az id. We use 'cn-hangzhou' as the dc, and 'a' as the zone-id.
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.cassandra.locator.AbstractCloudMetadataServiceConnector
connector
-
Constructor Summary
Constructors Constructor Description AlibabaCloudSnitch()
AlibabaCloudSnitch(org.apache.cassandra.locator.AbstractCloudMetadataServiceConnector connector)
AlibabaCloudSnitch(SnitchProperties properties)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getDatacenter(InetAddressAndPort endpoint)
Return the data center for which an endpoint resides injava.lang.String
getLocalDatacenter()
returns a String representing the datacenter current endpoint belongs tojava.lang.String
getLocalRack()
returns a String representing the rack current endpoint belongs tojava.lang.String
getRack(InetAddressAndPort endpoint)
Return the rack for which an endpoint resides in-
Methods inherited from class org.apache.cassandra.locator.AbstractNetworkTopologySnitch
compareEndpoints
-
Methods inherited from class org.apache.cassandra.locator.AbstractEndpointSnitch
gossiperStarting, isWorthMergingForRangeQuery, sortedByProximity
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.cassandra.locator.IEndpointSnitch
getDatacenter, getDatacenter, validate
-
-
-
-
Constructor Detail
-
AlibabaCloudSnitch
public AlibabaCloudSnitch() throws java.io.IOException
- Throws:
java.io.IOException
-
AlibabaCloudSnitch
public AlibabaCloudSnitch(SnitchProperties properties) throws java.io.IOException
- Throws:
java.io.IOException
-
AlibabaCloudSnitch
public AlibabaCloudSnitch(org.apache.cassandra.locator.AbstractCloudMetadataServiceConnector connector) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
getLocalRack
public final java.lang.String getLocalRack()
Description copied from interface:IEndpointSnitch
returns a String representing the rack current endpoint belongs to
-
getLocalDatacenter
public final java.lang.String getLocalDatacenter()
Description copied from interface:IEndpointSnitch
returns a String representing the datacenter current endpoint belongs to
-
getRack
public final java.lang.String getRack(InetAddressAndPort endpoint)
Description copied from class:AbstractNetworkTopologySnitch
Return the rack for which an endpoint resides in- Specified by:
getRack
in interfaceIEndpointSnitch
- Specified by:
getRack
in classAbstractNetworkTopologySnitch
- Parameters:
endpoint
- a specified endpoint- Returns:
- string of rack
-
getDatacenter
public final java.lang.String getDatacenter(InetAddressAndPort endpoint)
Description copied from class:AbstractNetworkTopologySnitch
Return the data center for which an endpoint resides in- Specified by:
getDatacenter
in interfaceIEndpointSnitch
- Specified by:
getDatacenter
in classAbstractNetworkTopologySnitch
- Parameters:
endpoint
- a specified endpoint- Returns:
- string of data center
-
-