我们有三个虚拟机: 在前两个系统上我们安装了Tomcat 6,Zookeeper 3.4.6和Solr 4.10。 在第三个节点上安装了TOmcat 6和Zookeeper 3.4.6 所以我们有两个节点的solrcloud集群和一个三节点的zookeeper集群。
前两个虚拟机是srvmsolr01和srvmsolr02。
我们可以毫无错误地创建集合和分片。我们无法添加副本。
例如以下命令:
<i>http://srvmsolr01.test.com:8080/solr/admin/collections?action=CREATE&name=mycollection3&numShards=2&replicationFactor=2&maxShardsPerNode=2</i>
给我们错误:
<i>Caused by: org.apache.solr.common.SolrException: Unable to create core
[shard2_replica2]
at org.apache.solr.core.CoreContainer.create(CoreContainer.java:507)
at org.apache.solr.core.CoreContainer.create(CoreContainer.java:466)
at org.apache.solr.handler.admin.CoreAdminHandler.handleCreateAction(CoreAdminHandler.java:575)
... 18 more
Caused by: org.apache.solr.common.SolrException: Error opening new searcher
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:873)
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:646)
at org.apache.solr.core.CoreContainer.create(CoreContainer.java:491)
... 20 more
Caused by: org.apache.solr.common.SolrException: Error opening new searcher
at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1565)
at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1677)
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:845)
... 22 more
Caused by: org.apache.lucene.store.LockObtainFailedException: Lock
obtain timed out: NativeFSLock@/app/zookeeper/data/index/write.lock
at org.apache.lucene.store.Lock.obtain(Lock.java:89)
at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:755)
at org.apache.solr.update.SolrIndexWriter.<init>(SolrIndexWriter.java:77)
at org.apache.solr.update.SolrIndexWriter.create(SolrIndexWriter.java:64)
at org.apache.solr.update.DefaultSolrCoreState.createMainIndexWriter(DefaultSolrCoreState.java:279)
at org.apache.solr.update.DefaultSolrCoreState.getIndexWriter(DefaultSolrCoreState.java:111)
at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1528)
... 24 more </i>
如果我们创建一个包含两个分片的集合,然后我们尝试单独添加每个副本,也会发生同样的情况:
<i>http://srvmsolr02.test.com:8080/solr/admin/cores?action=CREATE&name=shard1_replica2&collection=collection1&shard=shard1
http://srvmsolr01.test.com:8080/solr/admin/cores?action=CREATE&name=shard2_replica1&collection=collection1&shard=shard2</i>
我们仔细检查了配置,但是我们无法理解如何实现我们的目标:两个solrcloud节点,其中一个集合由两个碎片和两个副本组成,每个碎片一个
此致 Giova
答案 0 :(得分:3)
我发现了问题。 由于SolrConfig.xml中的datadir参数引发了错误 使用此参数,Solr在同一目录中创建所有核心,并且每个核心都有一个锁定文件,因此在特定时刻只锁定了一个核心。
此致 Giova