Reputation: 3014
I have been working on a project where the Zookeepers are colocated on the same server as my Accumulo cluster / HDFS. Everything works in regards to them communicating, but now I am going to begin to rework some of the other infrastructure and might look more into this.
I am wondering is this the best practice, because I had a thought where maintenance might be easier if things are broken up. I know HDFS/Accumulo need to be together, but as far as the Zookeepers go, should the remain on the same machine, or be placed on another, or separate ones for each (probably no reason to do this)? Are there any benefits in terms of autoscaling where if HDFS/Accumulo are by themselves and are 'uninterrupted' by the Zookeepers you could say could perform better?
Upvotes: 2
Views: 98
Reputation: 2181
I assume you're talking about the master nodes (Namenode, AccumuloMaster, etc). If so, then theres no problem (with 2 caveats). If you're talking about datanodes, then its pretty bad practice and ZooKeeper should be moved to (at least) the master nodes.
There are two things that absolutely kill ZooKeeper performance: swapping and seeking. So, as long as theres enough memory and a dedicated device (not mount) for ZooKeeper you should be fine.
Upvotes: 1