You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Asher Newcomer <as...@gmail.com> on 2016/01/12 16:51:45 UTC

Seed Private / Public Broadcast IP

HI All,

I am currently running a multi-region setup in AWS. I have a single cluster
across two datacenters in different regions.

In order to communicate cross-region in AWS, I have my broadcast_address
set to public IPs and my listen_address set to the instance's private IP. I
believe that this is the recommended setup and everything works great.

Now I want to expand my cluster to include my company's office as a third
datacenter. I have VPN tunnels established to both AWS datacenters, and I
need to exclusively use private IP addresses to communicate from our office
to AWS. If I connect via the AWS instance's public IP, then my traffic gets
NAT through my office firewall - which then cannot connect and I cannot
provide local instances with public IPs.

On my new nodes, I've tried setting the seeds entry in cassandra.yaml to
the private IP of the seeds in AWS. Cassandra can initially connect to the
seed nodes via the private IP, but then the seeds provide my local instance
with their brodcast_address - the public ip - and this causes problems.

Is there any way to change that behavior, such that my new, local nodes
ignore the broadcast_address provided to them?

How else might I accomplish the above?

Outside of configuring the two AWS regions to connect via private IP, which
is no small task, I don't see any workaround. Any help is most appreciated.

Thanks,

Asher