I have the luxury of JMS in my environment, so that may be a simple way to solve this...
Sent from my iPhone On Oct 13, 2011, at 4:02 PM, "Robert Stewart" <bstewart...@gmail.com> wrote: > Yes that is a good point. Thanks. > > I think I will avoid using NAS/SAN and use two masters, one setup as a > repeater (slave and master). In case of very rare master failure, some minor > manual intervention will be required to re-configure remaining master or > bring other one back up. > > My only concern in that case is losing new documents from solrj client since > there is no broker/buffer/queue between solrj client and SOLR master. It > would be nice if there was some open source broker/queue which could sit > between solrj and SOLR and queue up messages (publish/subscribe). > > Bob > > On Oct 13, 2011, at 3:56 PM, Jaeger, Jay - DOT wrote: > >> One thing to consider is the case where the JVM is up, but the system is >> otherwise unavailable (say, a NIC failure, firewall failure, load balancer >> failure) - especially if you use a SAN (whose connection is different from >> the normal network). >> >> In such a case the old master might have uncommitted updates. >> >> JRJ >> >> -----Original Message----- >> From: Otis Gospodnetic [mailto:otis_gospodne...@yahoo.com] >> Sent: Tuesday, October 11, 2011 3:17 PM >> To: solr-user@lucene.apache.org >> Subject: Re: Replication with an HA master >> >> Hello, >> ----- Original Message ----- >> >>> From: Robert Stewart <bstewart...@gmail.com> >>> To: solr-user@lucene.apache.org >>> Cc: >>> Sent: Tuesday, October 11, 2011 3:37 PM >>> Subject: Re: Replication with an HA master >>> >>> In the case of using a shared (SAN) index between 2 masters, what happens >>> if the >>> live master fails in such a way that the index remains "locked" (such >>> as if some hardware failure and it did not unlock/close index). Will the >>> other >>> master be able to open/write to the index as new documents are added? >> >> >> You'd use native locks, which should disappear if the JVM dies. If it does >> not, then I'm not 100% sure what happens, but in the worst case there would >> be a need for a quick manual (or scripted) intervention. But your index >> would be up to date! >> >>> Also, if that can work ok, would it work if you have a LB (VIP) from both >>> indexing and replication sides of the 2 masters, such that some VIP used by >>> solrj for indexing new documents via HTTP, and the same VIP used by slave >>> searchers for replication? That sounds like it would work. >> >> >> Precisely what you should do. e.g. "master-vip" is the "hostname" that both >> SolrJ would post new docs to and the master "server" slaves would poll for >> index changes. >> >> Otis >> ---- >> >> Sematext :: http://sematext.com/ :: Solr - Lucene - Nutch >> Lucene ecosystem search :: http://search-lucene.com/ >> >> >> >> >>> On Oct 11, 2011, at 3:16 PM, Otis Gospodnetic wrote: >>> >>>> Hello, >>>> >>>> Yes, you've read about NFS, which is why I gave the example of a SAN >>> (which can have multiple power supplies, controllers, etc.) >>>> >>>> Yes, should be OK to have multiple Solr instances have the same index >>>> open, >>> since only one of them will actually be writing to it, thanks to LB. >>>> >>>> Otis >>>> ---- >>>> Sematext :: http://sematext.com/ :: Solr - Lucene - Nutch >>>> Lucene ecosystem search :: http://search-lucene.com/ >>>> >>>> >>>>> ________________________________ >>>>> From: Brandon Ramirez <brandon_rami...@elementk.com> >>>>> To: "solr-user@lucene.apache.org" >>> <solr-user@lucene.apache.org> >>>>> Sent: Tuesday, October 11, 2011 2:55 PM >>>>> Subject: RE: Replication with an HA master >>>>> >>>>> Using a shared volume crossed my mind too, but I discarded the idea >>> because of literature I have read about Lucene performing poorly against >>> remote >>> file systems. But then I suppose a SAN wouldn't be a remote file system in >>> the same sense as an NFS-mounted NAS or similar. >>>>> >>>>> Should I be concerned about two solr instances on two machines having >>> the same SAN-based index open, as long as only one of them is receiving >>> requests? I would think in theory it would work, but I don't have any >>> production-level experience with Solr yet, only textbook knowledge. >>>>> >>>>> >>>>> Brandon Ramirez | Office: 585.214.5413 | Fax: 585.295.4848 >>>>> Software Engineer II | Element K | www.elementk.com >>>>> >>>>> >>>>> -----Original Message----- >>>>> From: Otis Gospodnetic [mailto:otis_gospodne...@yahoo.com] >>>>> Sent: Tuesday, October 11, 2011 2:28 PM >>>>> To: solr-user@lucene.apache.org >>>>> Subject: Re: Replication with an HA master >>>>> >>>>> A few alternatives: >>>>> * Have the master keep the index on a shared disk (e.g. SAN) >>>>> * Use LB to easily switch to between masters, potentially even >>> automatically if LB can detect the primary is down >>>>> >>>>> Otis >>>>> ---- >>>>> Sematext :: http://sematext.com/ :: Solr - Lucene - Nutch Lucene >>> ecosystem search :: http://search-lucene.com/ >>>>> >>>>> >>>>>> ________________________________ >>>>>> From: Robert Stewart <bstewart...@gmail.com> >>>>>> To: solr-user@lucene.apache.org >>>>>> Sent: Friday, October 7, 2011 10:22 AM >>>>>> Subject: Re: Replication with an HA master >>>>>> >>>>>> Your idea sounds like the correct path. Setup 2 masters, one >>> running >>>>>> in "slave" mode which pulls replicas from the live >>> master. When/if live master goes down, you just reconfigure and restart >>> the >>> backup master to be the live master. You'd also need to then start data >>> import on the backup master (enable/start cron job?), and redirect slave >>> searchers to pull replicas from the new live master. All that could be >>> done >>> using scripts or something like puppet possibly. >>>>>> >>>>>> Another solution maybe is to run 2 "live" masters, which >>> both index the same content from the same data source. If one goes down, >>> then >>> you just need to redirect slave searchers to the backup master for >>> replication. >>>>>> >>>>>> I am also starting a similar project which needs some disaster >>> recovery processes in place, so any other info would be useful to me as >>> well. >>>>>> >>>>>> Bob >>>>>> >>>>>> On Oct 7, 2011, at 9:53 AM, Brandon Ramirez wrote: >>>>>> >>>>>>> We are getting ready to start a project using Solr as our >>> backend search engine and I am trying to devise a deployment architecture >>> that >>> works for us. We definitely need a master/slave replication strategy, >>> that's for sure, but my concern is the master becomes a single point of >>> failure. >>>>>>> >>>>>>> Fortunately, real-time search is not a requirement for us. If >>> search results are a few minutes out of sync with our database, it's not a >>> big deal. >>>>>>> >>>>>>> So what I would like to do is have a set of query servers >>> (slaves) that are only used for querying, no indexing and have them use >>> Solr's HTTP replication mechanism on a 2 or 3 minute interval. To get HA >>> indexing, I'd like to have 2 masters: a primary and a standby. All >>> indexing >>> requests go to the primary unless it's taken out of service. To keep the >>> standby ready to takeover if it needs to, it needs to be more up to date >>> than >>> the slaves. I'd like to have it replicate every 30 seconds or so. >>>>>>> >>>>>>> The reason I'm asking about it on this list is that I >>> haven't seen any Solr documentation or even anything that talks about this. >>> >>> I can't be the only one concerned about having a single point of failure, >>> so >>> I'm reaching out to see what others have done in this case before I go with >>> my own solution. >>>>>>> >>>>>>> >>>>>>> Brandon Ramirez | Office: 585.214.5413 | Fax: 585.295.4848 >>> Software >>>>>>> Engineer II | Element K | >>> www.elementk.com<http://www.elementk.com/> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>> > >