Return-Path: Delivered-To: apmail-lucene-solr-user-archive@minotaur.apache.org Received: (qmail 29803 invoked from network); 16 Feb 2010 10:01:52 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 16 Feb 2010 10:01:52 -0000 Received: (qmail 95376 invoked by uid 500); 16 Feb 2010 10:01:50 -0000 Delivered-To: apmail-lucene-solr-user-archive@lucene.apache.org Received: (qmail 95301 invoked by uid 500); 16 Feb 2010 10:01:49 -0000 Mailing-List: contact solr-user-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: solr-user@lucene.apache.org Delivered-To: mailing list solr-user@lucene.apache.org Received: (qmail 95291 invoked by uid 99); 16 Feb 2010 10:01:49 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 16 Feb 2010 10:01:49 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [62.138.167.130] (HELO guildo.signal7.de) (62.138.167.130) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 16 Feb 2010 10:01:41 +0000 Received: (qmail 5953 invoked from network); 16 Feb 2010 10:01:20 -0000 Received: from unknown (HELO ?10.7.7.249?) (krueger@signal7.de@10.7.7.249) by guildo.signal7.de with ESMTPA; 16 Feb 2010 10:01:20 -0000 From: =?iso-8859-1?Q?Robert_Kr=FCger?= Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Subject: Pragmatic more or less high availability option on 2 servers Date: Tue, 16 Feb 2010 11:01:21 +0100 Message-Id: <91D61ED8-C773-40E5-8D41-609F54FD793F@signal7.de> To: solr-user@lucene.apache.org Mime-Version: 1.0 (Apple Message framework v1077) X-Mailer: Apple Mail (2.1077) X-Virus-Checked: Checked by ClamAV on apache.org Hi, I have to set up a SOLR cluster with some availability concept (is = allowed to require manual interaction on fault, however, if there is a = better way, I'd be interested in recommendations). I have two servers (A and B for the example) at my disposal. What I was thinking about was the following setup: Set up 2 SOLR Instances on each server, i.e. on A) - One master (active) - One slave (always active) replicating index from the master using the = mechanisms described in http://wiki.apache.org/solr/SolrReplication on B) - One master (active but not used for index updates) replicating index = form the master on A - One slave (always active) replicating index from the master on A I'll write the configs with placeholders for properties for the address = of the master server so I can start the slaves with the master on A or = on B as the master to replicate from. When B goes down, nothing happens as the slave on A is still there to = serve queries as well as the master to serve update requests. When A goes down updates will begin to fail but queries will still be = served from the slave on B. A restart of B with the until then inactive = master as master will bring index update functionality up again. For simplicity's sake I did not mention any load-balancing or IP address = switching stuff. I assume that I have to load-balance the access to the = two slaves and make sure that when the master is switched to B that = either it assumes the IP address or the clients updating the index need = to be changed )the forme probably being simpler). Now, my questions are: - Will this work? - Can this be simplified, i.e. does it make sense to have separate = master/slave instances when they are on the same hardware or is it = enough or even better to write the config of the slave on B so that it = can be restarted in "master mode" based on the same index? Thanks in advance, Robert