Hey,

I have a few of VM host (bare metal) machines with varying amounts of free hard 
drive space on them. For simplicity let’s say I have three machine like so:
 * Machine 1
  - Harddrive 1: 150 GB available.
 * Machine 2:
  - Harddrive 1: 150 GB available.
  - Harddrive 2: 150 GB available.
 * Machine 3.
  - Harddrive 1: 150 GB available.

I am setting up a Cassandra cluster between them and as I see it I have two 
options:


1. I set up one Cassandra node/VM per bare metal machine. I assign all free 
hard drive space to each Cassandra node and I balance the cluster using vnodes 
proportionally to the amount of free hard drive space (CPU/RAM is not going to 
be a bottle neck here).


2. I set up four VMs, each running a Cassandra node with equal amount of hard 
drive space and equal amount of vnodes. Machine 2 runs two VMs.



General question: Is any of these preferable to the other? I understand 1) 
yields lower high-availability (since nodes are on the same hardware).


Question about alternative 1: With varying vnodes, can I always be sure that 
replicas are never put on the same virtual machine? Or is varying vnodes really 
only useful/recommended when migrating from machines with varying hardware 
(like mentioned in [1])?


[1] http://www.datastax.com/dev/blog/virtual-nodes-in-cassandra-1-2


Thanks,
Jens
———
Jens Rantil
Backend engineer
Tink AB

Email: jens.ran...@tink.se
Phone: +46 708 84 18 32
Web: www.tink.se

Facebook Linkedin Twitter

Reply via email to