【问题标题】:SolrCloud: round-robin replicas not working when using Collections APISolrCloud:使用 Collections API 时循环副本不起作用
【发布时间】:2014-08-03 02:58:44
【问题描述】:

我遵循了“Getting Started Guide”、两个碎片/两个副本的secnario,一切都很完美。 然后我开始使用 Collections API,这是管理集合、分片和复制的首选方式。

我在本地启动了两个实例(之后使用 AWS,同样的问题) 我使用以下命令创建了一个包含两个分片的新集合: /admin/collections?action=CREATE&name=collection1&numShards=2&collection.configName=collection 这成功地创建了两个分片,每个实例上一个。 然后我启动了另一个实例,期望它自动将自己设置为第一个分片的副本,就像在示例中一样。那没有发生。

我有什么遗漏吗?

我有两种方法可以做到这一点:

  1. 我使用 Collections API 手动将副本添加到 shard1,然后将另一个副本添加到 shard2。 这还不够好,因为我需要使用 Auto Scaling 自动完成这项工作,所以我需要对每个服务器“角色”进行微观管理——哪些副本的哪些集合收集它的处理,这会使事情复杂化很多

  2. 第二种方法(我找不到文档)是在名为 core.properties 的文件中启动一个包含名为“collectionX”的文件夹的实例。在其中以下行: 收藏=收藏1 我以这种方式启动的每个实例都会以循环方式自动添加为副本。 (也与几个集合一起工作) 这实际上一点也不坏,因为我可以在 AWS 中启动 AMI/实例时传递参数。

谢谢大家。

阿米尔

【问题讨论】:

    标签: amazon-web-services autoscaling solrcloud


    【解决方案1】:

    1) 你运行了错误的命令;完整的命令如下:

    curl 'http://localhost:8080/solr/admin/collections?action=CREATE&name=corename&numShards=2&replicationFactor=2&maxShardsPerNode=10'
    

    这里我给出了复制因子,因此它将为您的分片创建副本。

    【讨论】:

    • 这在设置期间是正确的,而不是在您想要动态添加副本或在自动恢复期间(不使用 addreplica 命令)
    • 嗨,Amir,我的评论对您解决问题有帮助吗?如果没有,请告诉我们您面临的确切问题是什么?
    猜你喜欢
    • 1970-01-01
    • 2014-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    • 2012-01-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多