Where are you running the pig script from - your local machine or one of the 
nodes in the cluster or ?  I would think it wouldn't matter which address you 
use, but what interface it's using.  So if the internal and public address are 
both using the same interface, then you should be able to connect to cassandra 
from your local machine using the public address.  That's what I do with EC2.  
I use the internal address to connect when I'm connecting within the region and 
the public address when I'm connecting from my local machine.

I've never done a different address for rpc_address and listen_address for that 
configuration, so there might be peculiarities there that I wouldn't have seen.

On May 6, 2011, at 11:37 AM, Badrinarayanan S wrote:

> Hi,
> 
> 
> 
> I got a cluster with seven Cassandra nodes. The ring is formed using the
> private ips of each of the nodes. The rpc_address of the nodes is set to
> private and listen_address of the nodes set to public mainly to facilitate
> cross data centre ring. When I ring the nodes, it shows all nodes are up
> pointing to private ip.
> 
> 
> 
> However when I setup Hadoop/PIG and try to run a PIG script, I get an
> exception like java.io.IOException: failed connecting to all endpoints
> <ip1>, <ip2>. The ip1 and ip2 are the public ips of nodes part of the ring. 
> 
> 
> 
> Any suggestion on why it is looking for public ip when the rpc_addr of nodes
> and ring is pointing to private ips.
> 
> 
> 
> 
> 
> Regards,
> 
> badri
> 
> 
> 

Reply via email to