我正在尝试使用3台服务器的外部zookeeper集合和2台服务器上的复制solr建立solrCloud.
假设外部zookeeper应独立于其他存储,我无法找到如何设置-solrhome参数.zookeeper是否应该从工作节点读取数据?
如何上传配置并将其与目标集合链接?
我们期待从SolrCloud 4.10.3升级到SolrCloud 6.1.Solr 6.1的文档在向后兼容性方面不是很清楚.
我在LucidWorks网站上看过这篇文章.
索引格式在两个连续的主要Solr版本之间向后兼容.所以Solr 3.x索引与Solr 4.x索引兼容.但是,如果您有Solr 1.x索引并希望升级到Solr 4.x,则需要先升级到Solr 3.x.
它是在Solr 6.x出局之前编写的,"两个连续的主要Solr版本之间"的措辞不清楚.该示例跳过我感兴趣的确切场景(正好跳过1个主要版本).
我是否必须首先升级到Solr 5.x然后转到Solr 6.1?
我已经使用 Solr 6.6.0 和 Zookeeper 3.4.10 设置了 SolrCloud。我正在尝试根据 https://cwiki.apache.org/confluence/display/solr/Basic+Authentication+Plugin的最新文档设置基本身份验证
问题是身份验证不起作用。设置后,我无法访问 Solr 管理控制台,因为它不接受设置的用户名/密码。
以下是包含详细信息的步骤:
1)启动Zookeeper监听2181端口
2)启动Solr云模式连接Zookeeper
solr start -c -s C:/solr-6.6.0_VM1/server/solr/cores -p 8983 -z
"localhost:2181";
Run Code Online (Sandbox Code Playgroud)
3)创建 security.json 文件(根据文档):
{
"authentication":{
"blockUnknown": true,
"class":"solr.BasicAuthPlugin",
"credentials":{"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0=
Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="}
},
"authorization":{
"class":"solr.RuleBasedAuthorizationPlugin",
"permissions":[{"name":"security-edit",
"role":"admin"}],
"user-role":{"solr":"admin"}
}}
Run Code Online (Sandbox Code Playgroud)
4)更新了 solr.in.cmd 以在 SOLR 上启用身份验证:
set SOLR_AUTH_TYPE=basic
set SOLR_AUTHENTICATION_OPTS="-Dbasicauth=solr:SolrRocks"
Run Code Online (Sandbox Code Playgroud)
5) **上传 security.json 文件到 Zookeeper:*
server\scripts\cloud-scripts\zkcli -z localhost:2181 -cmd putfile
/security.json security.json
Run Code Online (Sandbox Code Playgroud)
6)重新启动SOLR服务器
7)打开SOLR管理控制台:http://localhost:8983/solr/#/
我被问到用户名/密码。我输入 solr/SolrRocks 管理员不接受密码。当我关闭登录窗口时,它显示“HTTP 错误 401,凭据错误”
知道为什么身份验证在 Solr 上不起作用吗?我已经完全按照记录尝试了这些步骤。感谢你的帮助! …
我正在开发一个全新的SolrCloud - ZooKeeper基础设施。
一些背景信息:
我有一个 SolrCloud 和一个正在运行的 ZooKeeper 整体。在这个级别上的实施是好的。
但我想知道如何分发我的 ZooKeeper 服务器。我必须有奇数台服务器,但我只有两个数据中心。如果失败,我有 50-50 的机会失去多数席位。
我应该怎么办?到目前为止我已经想到:
请求第三个数据中心(不太可能发生,$$$!)
每个数据中心托管两个,外部云提供商(亚马逊或......?)上托管两个。再次$$$
在数据中心 1 设置奇数并在站点 2 使用观察者。如果站点 1 出现故障,会发生什么情况?SolrCloud 只能与一个观察者一起工作吗?
我正在尝试创建一个需要更改这些模式的新集合.我无法弄清楚他们到底在哪里.任何方向的帮助将不胜感激.
PS:我没有管理员权限.我正在使用solrctl访问
我有8个节点的solr云集群与外部zookeeper连接。每个节点:30 Gb,4 核。我已经创建了大约 100 个集合,每个集合都有大约。30 个碎片。(为什么我需要它,让我们有一个不同的故事,业务隔离,业务需求可以是任何东西)。
现在,我同时将数据提取到 30 个集合的集群中。我发现少数集合的摄取失败。在 solr 日志中,我可以看到发生了“连接重置”异常。总体摄入时间约为 10 小时。
有什么建议吗?即使是由于资源匮乏,我如何证明由于缺乏资源而导致连接重置。
====异常======
2015-01-30 09:16:14,454 ERROR [updateExecutor-1-thread-8151] ? (:) - error
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:196) ~[?:1.7.0_55]
at java.net.SocketInputStream.read(SocketInputStream.java:122) ~[?:1.7.0_55]
at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:160) ~[httpcore-4.3.jar:4.3]
at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:84) ~[httpcore-4.3.jar:4.3]
at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:273) ~[httpcore-4.3.jar:4.3]
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:140) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:260) ~[httpcore-4.3.jar:4.3]
at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:283) ~[httpcore-4.3.jar:4.3]
at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:251) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:197) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:271) ~[httpcore-4.3.jar:4.3]
at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:123) ~[httpcore-4.3.jar:4.3]
at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:682) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:486) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82) ~[httpclient-4.3.1.jar:4.3.1]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106) ~[httpclient-4.3.1.jar:4.3.1] …Run Code Online (Sandbox Code Playgroud) 我正在使用查询(Solr Admin)通过我的HDFS中的两个文本文档搜索单词.如何检索找到该单词的文档的名称.我正在使用此项目https://github.com/lucidworks/hadoop-solr
我使用创建集合bin/solr -e cloud,我使用"data_driven_schema_configs"从服务器/ Solr的/ configsets /目录.
我tryied增加<field name="fileName" type="string" indexed="true" stored="true" /> 内部管理型模式在 〜/ Solr的-6.1.0 /服务器/ Solr的/ configsets/data_driven_schema_configs/conf目录,并改变它的名字到schema.xml中,但该目录中没有任何dataConfig文件添加<field column="file" name="fileName"/>为我在其他一些有类似问题的帖子中看到它,但不是SolrCloud,所以我不知道我的尝试是否正确.我需要做些什么改变,以及在哪些目录中能够实现它.
示例:我正在搜索两个文档中可以找到的"最大"一词.我怎样才能看到每个结果中的文件,sample1.txt或sample2.txt
我使用 zkClient 将 Solr 核心的配置文件夹上传到 Apache zookeeper。当我删除本地配置中的文件并将其再次更新到 Zookeeper 时,我看不到 Solr 管理页面中反映的更改。有人可以解释一下如何从zookeeper更新/删除文件吗?还有在哪里可以找到zookeeper文件夹中的物理文件?
使用Solr版本7.3.1
从3个节点开始:
我创建了这样的集合:
wget "localhost:8983/solr/admin/collections?action=CREATE&autoAddReplicas=true&collection.configName=my_col_config&maxShardsPerNode=1&name=my_col&numShards=1&replicationFactor=3&router.name=compositeId&wt=json" -O /dev/null
Run Code Online (Sandbox Code Playgroud)
这样,我在每个节点上都有一个副本。
目标:
我知道使用新的AutoScalling API应该可以实现,但是我很难找到正确的语法。该API非常新,我只能找到文档。这还不错,但我错过了更多示例。
今天就是这样。有许多小分片,每个小分片的复制因子都与节点数相匹配。现在有3个节点。

该视频昨天(2018-06-13)和大约30分钟上传了。视频中有一个Solr.HttpTriggerListener的示例,可用于调用任何类型的服务,例如,用于添加新节点的AWS Lamda。
我正在尝试备份 solr 云集合。Solr 和 Zookeeper 在 Docker 容器中运行。有3个solr(使用端口:8981,8982,8983)和3个ZKs容器正在运行。我将 docker 卷传递给 solr 容器
volumes:
- solr_backups:/solr-backups/storage
Run Code Online (Sandbox Code Playgroud)
在 Dockerfile 中,构建并给出了文件夹chmod 777。因此,所有 solr 容器都会将该文件夹视为网络共享(我假设)。
执行中
$ curl "localhost:8981/solr/admin/collections?action=BACKUP&name=test1&collection=myColl&location=/solr-backups/storage"
Run Code Online (Sandbox Code Playgroud)
返回以下内容
...
"failure":{
"172.19.0.22:8983_solr":"org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:
Error from server at http://172.19.0.22:8983/solr:
Failed to backup core=myColl_shard1_replica_n1 because org.apache.solr.common.SolrException:
Path /solr-backups/storage/test1 must be relative to SOLR_HOME, SOLR_DATA_HOME coreRootDirectory.
Set system property 'solr.allowPaths' to add other allowed paths."},
"Operation backup caused exception:":"org.apache.solr.common.SolrException:org.apache.solr.common.SolrException:
Could not backup all shards",
"exception":{
"msg":"Could not backup all shards",
"rspCode":500},
"error":{
"metadata":[
"error-class","org.apache.solr.common.SolrException",
"root-error-class","org.apache.solr.common.SolrException"], …Run Code Online (Sandbox Code Playgroud) solrcloud ×10
solr ×8
lucene ×2
autoscaling ×1
backups ×1
cloudera ×1
docker ×1
java ×1
lucidworks ×1
solrj ×1