incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Faraaz Sareshwala <fsareshw...@quantcast.com>
Subject Re: Populating seeds dynamically
Date Tue, 04 Jun 2013 00:06:10 GMT
All the documentation that I have read about cassanrda always says to keep the
same list of seeds on every node in the cluster. Without this, you can end up
with fragmentation within your cluster where nodes don't know about other nodes
in the cluster. In your case, sure the nodes will be in the cluster for 10
minutes but what about sporadic failures that cause them to leave the ring and
then re-enter it? At that point, you might reach the network fragmentation
issue.

I also use puppet to push out the cassandra.yaml file. I've defined the list of
seeds in my puppet class and have puppet generate the cassandra.yaml file from
an erb template.

Hopefully that helps a bit :).

Faraaz

On Mon, Jun 03, 2013 at 04:59:23PM -0700, Aiman Parvaiz wrote:
> Hi all
> I am using puppet to push cassandra.yaml file which has seeds node hardcoded, going forward
I don't want to hard code the seed nodes and I plan to maintain a list of seed nodes. Since
I have a cluster in place I would populate this list for now to start with and next time when
I add a node this list would be referred and three nodes would be read and populated as seeds
in the yaml file.
> 
> This implementation can lead to different nodes running different seeds I know that this
is not a ideal situation but I believe that if a node has been in the ring for long enough(say
10 minutes, it knows about other nodes in the ring) then it  can be used as a seed node.
> 
> What do you guys think of populating seeds this way and also please throw some light
on why running different seeds is not a best practice(assuming that all potential seed candidates
have been in ring long enough)
> 
> Thanks

Mime
View raw message