[
https://issues.apache.org/jira/browse/CASSANDRA-8084?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yuki Morishita updated CASSANDRA-8084:
--------------------------------------
Attachment: 8084-2.0-v3.txt
Attaching v3.
v2 has problems that 1) remote node always create session with broadcast
address and 2) cannot be evicted by gossip since it only uses broadcast address.
In v3, each StreamSession has 'peer' address as an node id the same as before
and 'connecting' address that indicates actual connecting address.
So nodetool nestats now shows both when the two are not the same. I haven't
touched the logs because in those lines 'peer' address is used as a node
identifier, but I added one INFO log that indicates StreamSession is using
private IP.
> GossipFilePropertySnitch and EC2MultiRegionSnitch when used in AWS/GCE
> clusters doesnt use the PRIVATE IPS for Intra-DC communications - When
> running nodetool repair
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-8084
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8084
> Project: Cassandra
> Issue Type: Bug
> Components: Config
> Environment: Tested this in GCE and AWS clusters. Created multi
> region and multi dc cluster once in GCE and once in AWS and ran into the same
> problem.
> DISTRIB_ID=Ubuntu
> DISTRIB_RELEASE=12.04
> DISTRIB_CODENAME=precise
> DISTRIB_DESCRIPTION="Ubuntu 12.04.3 LTS"
> NAME="Ubuntu"
> VERSION="12.04.3 LTS, Precise Pangolin"
> ID=ubuntu
> ID_LIKE=debian
> PRETTY_NAME="Ubuntu precise (12.04.3 LTS)"
> VERSION_ID="12.04"
> Tried to install Apache Cassandra version ReleaseVersion: 2.0.10 and also
> latest DSE version which is 4.5 and which corresponds to 2.0.8.39.
> Reporter: Jana
> Assignee: Yuki Morishita
> Labels: features
> Fix For: 2.0.11
>
> Attachments: 8084-2.0-v2.txt, 8084-2.0-v3.txt, 8084-2.0.txt
>
>
> Neither of these snitches(GossipFilePropertySnitch and EC2MultiRegionSnitch )
> used the PRIVATE IPS for communication between INTRA-DC nodes in my
> multi-region multi-dc cluster in cloud(on both AWS and GCE) when I ran
> "nodetool repair -local". It works fine during regular reads.
> Here are the various cluster flavors I tried and failed-
> AWS + Multi-REGION + Multi-DC + GossipPropertyFileSnitch +
> (Prefer_local=true) in rackdc-properties file.
> AWS + Multi-REGION + Multi-DC + EC2MultiRegionSnitch + (Prefer_local=true) in
> rackdc-properties file.
> GCE + Multi-REGION + Multi-DC + GossipPropertyFileSnitch +
> (Prefer_local=true) in rackdc-properties file.
> GCE + Multi-REGION + Multi-DC + EC2MultiRegionSnitch + (Prefer_local=true) in
> rackdc-properties file.
> I am expecting with the above setup all of my nodes in a given DC all
> communicate via private ips since the cloud providers dont charge us for
> using the private ips and they charge for using public ips.
> But they can use PUBLIC IPs for INTER-DC communications which is working as
> expected.
> Here is a snippet from my log files when I ran the "nodetool repair -local" -
> Node responding to 'node running repair'
> INFO [AntiEntropyStage:1] 2014-10-08 14:47:51,628 Validator.java (line 254)
> [repair #1439f290-4efa-11e4-bf3a-df845ecf54f8] Sending completed merkle tree
> to /54.172.118.222 for system_traces/sessions
> INFO [AntiEntropyStage:1] 2014-10-08 14:47:51,741 Validator.java (line 254)
> [repair #1439f290-4efa-11e4-bf3a-df845ecf54f8] Sending completed merkle tree
> to /54.172.118.222 for system_traces/events
> Node running repair -
> INFO [AntiEntropyStage:1] 2014-10-08 14:47:51,927 RepairSession.java (line
> 166) [repair #1439f290-4efa-11e4-bf3a-df845ecf54f8] Received merkle tree for
> events from /54.172.118.222
> Note: The IPs its communicating is all PUBLIC Ips and it should have used the
> PRIVATE IPs starting with 172.x.x.x
> YAML file values :
> The listen address is set to: PRIVATE IP
> The broadcast address is set to: PUBLIC IP
> The SEEDs address is set to: PUBLIC IPs from both DCs
> The SNITCHES tried: GPFS and EC2MultiRegionSnitch
> RACK-DC: Had prefer_local set to true.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)