You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Alain RODRIGUEZ <ar...@gmail.com> on 2014/04/03 17:38:33 UTC

EC2 zones, snitches and vnodes

Hi,

We are using Cassandra 1.2.11 on AWS EC2 services.

I read that we can use different A-Z to be more "crash tolerant".
Basically, using a RF=3 and placing servers into different zones like
node1-zoneA node2-zoneB node3-zoneC node4-zoneA... As replicas are placed
to the next server in the ring we can manage to have a replica in each zone
and for each replica. So all the data is present in the 3 zones (A, B and
C).

Is there a way to achieve this exact same result using vnodes ? Would it be
possible, using EC2Snitch (or EC2MultiRegionSnitch) and vnodes, to make
sure to spread replicas among available A-Z automatically ?

I know that a second DC would help recovering from a zone outage, but, the
cost is not the same.

Re: EC2 zones, snitches and vnodes

Posted by Robert Coli <rc...@eventbrite.com>.
On Thu, Apr 3, 2014 at 8:38 AM, Alain RODRIGUEZ <ar...@gmail.com> wrote:

> I read that we can use different A-Z to be more "crash tolerant".
> Basically, using a RF=3 and placing servers into different zones like
> node1-zoneA node2-zoneB node3-zoneC node4-zoneA... As replicas are placed
> to the next server in the ring we can manage to have a replica in each zone
> and for each replica. So all the data is present in the 3 zones (A, B and
> C).
>
> Is there a way to achieve this exact same result using vnodes ? Would it
> be possible, using EC2Snitch (or EC2MultiRegionSnitch) and vnodes, to make
> sure to spread replicas among available A-Z automatically ?
>

https://issues.apache.org/jira/browse/CASSANDRA-4658
https://issues.apache.org/jira/browse/CASSANDRA-4123

And especially...

https://issues.apache.org/jira/browse/CASSANDRA-3810

tl;dr - status quo NTS is probably fine and does more or less what you need
it to do, caveated by 3810. But in theory far future versions of cassandra
might have slightly improved functionality.

=Rob