Return-Path: X-Original-To: apmail-lucene-dev-archive@www.apache.org Delivered-To: apmail-lucene-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 786BAE5C6 for ; Fri, 22 Feb 2013 00:26:14 +0000 (UTC) Received: (qmail 55906 invoked by uid 500); 22 Feb 2013 00:26:13 -0000 Delivered-To: apmail-lucene-dev-archive@lucene.apache.org Received: (qmail 55823 invoked by uid 500); 22 Feb 2013 00:26:13 -0000 Mailing-List: contact dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@lucene.apache.org Delivered-To: mailing list dev@lucene.apache.org Received: (qmail 55812 invoked by uid 99); 22 Feb 2013 00:26:13 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 22 Feb 2013 00:26:13 +0000 Date: Fri, 22 Feb 2013 00:26:13 +0000 (UTC) From: "Shawn Heisey (JIRA)" To: dev@lucene.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (SOLR-4450) Developer Curb Appeal: Need consistent command line arguments for all nodes MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/SOLR-4450?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13583734#comment-13583734 ] Shawn Heisey commented on SOLR-4450: ------------------------------------ Jan, I also think that solr.xml should only contain what's required to talk to zookeeper and properly populate it with information specific to that node. Here's what is in my init script right now: ZKHOST="mbzoo1.REDACTED.com:2181,mbzoo2.REDACTED.com:2181,mbzoo3.REDACTED.com:2181${ZKCHROOT}" STARTARGS="${JMEM_OPTS} ${JGC_OPTS} ${JMX_OPTS} -Dsolr.solr.home=${SOLRHOME} -DzkHost=${ZKHOST} -Djetty.port=${LISTENPORT} -Dlog4j.configuration=file:etc/log4j.properties -DSTOP.PORT=${STOPPORT} -DSTOP.KEY=${STOPKEY}" cd ${SOLRROOT} ${JBIN} ${STARTARGS} -jar ${SOLRROOT}/start.jar >logs/out 2>logs/err & Currently my solr.xml starts with the following: The only thing I am plan to move from init to solr.xml (based on what Mark has said) is zkHost. With this change, the init script will be identical to the one I use for a Solr 4.x install that's not using SolrCloud, which I believe is an extremely important goal. I believe that always including a ZK chroot in example configs and documentation is a good idea. I can envision a semi-common user question of "How can I add another SolrCloud install to my existing zookeeper ensemble?" If we plan from the beginning to utilize a chroot, there will be far less frustration involved in the answer. > Developer Curb Appeal: Need consistent command line arguments for all nodes > --------------------------------------------------------------------------- > > Key: SOLR-4450 > URL: https://issues.apache.org/jira/browse/SOLR-4450 > Project: Solr > Issue Type: Bug > Components: SolrCloud > Affects Versions: 4.1 > Reporter: Mark Bennett > Fix For: 4.2 > > > Suppose you want to create a small 4 node cluster (2x2, two shards, each replicated), each on it's own machine. > It'd be nice to use the same script in /etc/init.d to start them all, but it's hard to come up with a set of arguments that works for both the first and subsequent nodes. > When MANUALLY starting them, the arguments for the first node are different than for subsequent nodes: > Node A like this: > -DzkRun -DnumShards=2 -Dbootstrap_confdir=./solr/collection1/conf -Dcollection.configName=MyConfig -jar start.jar > Vs. the other 3 nodes, B, C, D: > -DzkHost=nodeA:9983 -jar start.jar > But if you combine them, you either still have to rely on Node A being up first, and have all nodes reference it: > -DzkRun -DzkHost=nodeA:9983 -DnumShards=2 -Dbootstrap_confdir=./solr/collection1/conf -Dcollection.configName=MyConfig > OR you can try to specify the address of all 4 machines, in all 4 startup scripts, which seems logical but doesn't work: > -DzkRun -DzkHost=nodeA:9983,nodeB:9983,nodeC:9983,nodeD:9983 -DnumShards=2 -Dbootstrap_confdir=./solr/collection1/conf -Dcollection.configName=MyConfig > This gives an error: > org.apache.solr.common.SolrException log > SEVERE: null:java.lang.IllegalArgumentException: port out of range:-1 > This thread suggests a possible change in syntax, but doesn't seem to work (at least with the embedded ZooKeeper) > Thread: > http://lucene.472066.n3.nabble.com/solr4-0-problem-zkHost-with-multiple-hosts-throws-out-of-range-exception-td4014440.html > Syntax: > -DzkRun -DzkHost=nodeA:9983,nodeB:9983,nodeC:9983,nodeD:9983/solrroot -DnumShards=2 -Dbootstrap_confdir=./solr/collection1/conf -Dcollection.configName=MyConfig > Error: > SEVERE: Could not start Solr. Check solr/home property and the logs > Feb 12, 2013 1:36:49 PM org.apache.solr.common.SolrException log > SEVERE: null:java.lang.NumberFormatException: For input string: "9983/solrroot" > at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) > So: > * There needs to be some syntax that all nodes can run, even if it requires listing addresses (or multicast!) > * And then clear documentation about suggesting external ZooKeeper to be used for production (list being maintained in SOLR-4444) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org For additional commands, e-mail: dev-help@lucene.apache.org