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