I have a small ring of two nodes running successfully on aws.

In order to understand cassandra support for NAT I have tried to add another
node outside aws on a machine behind NAT.
When I try to join the ring, there is a 30s pause after starting the
messaging service and  then it fails, unable to find other nodes.

 12:16:29,834 Starting Messaging Service on port 7000
 INFO 12:16:29,848 JOINING: waiting for ring and schema information
 INFO 12:16:59,849 JOINING: schema complete, ready to bootstrap
 INFO 12:16:59,850 JOINING: getting bootstrap token
ERROR 12:16:59,853 Exception encountered during startup
java.lang.RuntimeException: No other nodes seen!  Unable to bootstrap.If you
intended to start a single-node cluster, you should make sure your
broadcast_address (or listen_address) is listed as a seed.  Otherwise, you
need to determine why the seed being contacted has no knowledge of the rest
of the cluster.  Usually, this can be solved by giving all nodes the same
seed list.
at 
org.apache.cassandra.dht.BootStrapper.getBootstrapSource(BootStrapper.java:1
68)
at 
org.apache.cassandra.dht.BootStrapper.getBalancedToken(BootStrapper.java:150
)

The new node config
seed_provider:
 - seeds: <awsNode1 external address>

listen_address: <newNode internal address>
broadcast_address: <newNode external address>

The AWS security group config..
Admits traffic from <newNode external address> on ports 7000, 7001, 8080

Netwok paths
When the new node was attempting to start, I proved the paths between the
seed and the new node. I could Š.
 - telnet from awsNode1 to newNode 7000
 - telnet from newNode to awsNode1 7000

Can anyone spot my beginner's mistake?
Thanks,
Richard



Reply via email to