Dedicated machines are a good idea. The main thing is to make sure that ZK 
always has IOPS available for transaction log writes. That's easy to ensure 
when each ZK instance has its own hardware. The standard practice, as far as I 
know, is to have 3 physical boxes spread among racks/datacenters/continents as 
HA needs dictate.

Sharing a machine between Solr and ZK is definitely not ideal. Instead of Solr 
machines and ZK machines, now you have Solr machines and Solr+ZK machines. It 
adds management overhead because now you have to take ZK into account while 
administering your Solr cluster, and unless you give ZK its own disk it will 
have to compete with Solr for I/O.

On Jun 10, 2014, at 2:58 AM, Gili Nachum <gilinac...@gmail.com> wrote:

> Is there a recommended ZooKeeper topology for production Solr environments?
> 
> I was planning: 3 ZK nodes, each on its own dedicated machine.
> 
> Thinking that dedicated machines, separate from Solr servers, would keep ZK
> isolated from resource contention spikes that may occur on Solr. Also, if a
> Solr machine goes down, there would still be 3 ZK nodes to handle the event
> properly.
> 
> If I want to save on resources, placing each ZK instance on the same box as
> Solr instance in considered common practice in production environments?
> 
> Thanks!

Reply via email to