Solr添加副本:ADDREPLICA
将副本添加到集合中的分片。如果副本将在特定节点中创建,则可以指定节点名称。
/admin/collections?action=ADDREPLICA&collection=collection&shard=shard&node=nodeName
ADDREPLICA参数
- collection
应该创建副本的集合的名称。该参数是必需的。
- shard
要添加副本的分片的名称。
如果没有指定
shard
,那么一定是_route_
。 - _route_
如果确切的分片名称是未知的,则用户可以传递该
_route_
值,并且系统将识别分片的名称。如果
shard
参数也被指定,则忽略该参数。 - node
应该创建副本的节点的名称。
- instanceDir
将被创建的核心的instanceDir。
- dataDir
应在其中创建核心的目录。
- type
要创建的副本的类型。以下这些可能的值是允许的:
-
nrt
:NRT类型维护事务日志并在本地更新其索引。这是默认和最常用的。 -
tlog
:TLOG类型维护事务日志,但只通过复制更新其索引。 -
pull
:PULL类型不维护事务日志,只通过复制更新其索引。这种类型没有资格成为领导者。
有关副本类型选项的更多信息,请参阅副本类型一节。
-
- property.name=value
将核心属性name设置为value。有关支持的属性和值的详细信息,请参阅定义core.properties。
- async
使用ADDREPLICA的例子
在本次实例中,输入如下:
http://localhost:8983/solr/admin/collections?action=ADDREPLICA&collection=test2&shard=shard2&node=192.167.1.2:8983_solr
将得到的输出:
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">3764</int>
</lst>
<lst name="success">
<lst>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">3450</int>
</lst>
<str name="core">test2_shard2_replica4</str>
</lst>
</lst>
</response>