Using an EC2 cluster from the outside.

2013-04-17 Thread maillists0
I have a working 3 node cluster in a single ec2 region and I need to hit it
from our datacenter. As you'd expect, the client gets the internal
addresses of the nodes back.

Someone on irc mentioned using the public IP for rpc and binding that
address to the box. I see that mentioned in an old list mail but I don't
get exactly how this is supposed to work. I could really use either a link
to something with explicit directions or a detailed explanation.

Should cassandra use the public IPs for everything -- listen, b'cast, and
rpc? What should cassandra.yaml look like? Is the idea to use the public
addresses for cassandra but route the requests between nodes over the lan
using nat?

Any help or suggestion is appreciated.


Re: Using an EC2 cluster from the outside.

2013-04-17 Thread Robert Coli
On Wed, Apr 17, 2013 at 12:07 PM, maillis...@gmail.com wrote:

 I have a working 3 node cluster in a single ec2 region and I need to hit
 it from our datacenter. As you'd expect, the client gets the internal
 addresses of the nodes back.

 Someone on irc mentioned using the public IP for rpc and binding that
 address to the box. I see that mentioned in an old list mail but I don't
 get exactly how this is supposed to work. I could really use either a link
 to something with explicit directions or a detailed explanation.

 Should cassandra use the public IPs for everything -- listen, b'cast, and
 rpc? What should cassandra.yaml look like? Is the idea to use the public
 addresses for cassandra but route the requests between nodes over the lan
 using nat?

 Any help or suggestion is appreciated.


Google EC2MultiRegionSnitch.

=Rob


Re: Using an EC2 cluster from the outside.

2013-04-17 Thread Ben Bromhead
Depending on your client, disable automatic client discovery and just specify a 
list of all your nodes in your client configuration.

For more details check out 
http://xzheng.net/blogs/problem-when-connecting-to-cassandra-with-ruby/ , 
obviously this deals specifically with a ruby client but it should be 
applicable to others.

Cheers

Ben
Instaclustr | www.instaclustr.com | @instaclustr



On 18/04/2013, at 5:43 AM, Robert Coli rc...@eventbrite.com wrote:

 On Wed, Apr 17, 2013 at 12:07 PM, maillis...@gmail.com wrote:
 I have a working 3 node cluster in a single ec2 region and I need to hit it 
 from our datacenter. As you'd expect, the client gets the internal addresses 
 of the nodes back. 
 
 Someone on irc mentioned using the public IP for rpc and binding that address 
 to the box. I see that mentioned in an old list mail but I don't get exactly 
 how this is supposed to work. I could really use either a link to something 
 with explicit directions or a detailed explanation. 
 
 Should cassandra use the public IPs for everything -- listen, b'cast, and 
 rpc? What should cassandra.yaml look like? Is the idea to use the public 
 addresses for cassandra but route the requests between nodes over the lan 
 using nat? 
 
 Any help or suggestion is appreciated. 
 
 Google EC2MultiRegionSnitch.
 
 =Rob