当前位置: 首页 > 知识库问答 >
问题:

AWS EC2机器上的Solrcloud配置

楚泳
2023-03-14

我在AWS EC2机器上设置SolrCloud时遇到问题。场景如下,

我有三个服务器动物园管理员和索尔。

每台服务器上都有zookeeper。当我使用zookeeper主机信息启动Solr时,它会按预期启动并工作。

问题是动物园管理员在生成集群信息时使用服务器的私有IP,因此我无法使用无法识别私有IP的Solrj查询它。对于服务器1。私有IP ip-a、b、c、d公共IP:u、v、w、x动物园管理员通过私有IP识别solr实例(显然这在外部EC2机器上不可见)

The cluster information looks something like this:
live nodes:[10.165.15.104:8983_solr] collections:{vicon=DocCollection(vicon)={
  "shards":{"shard1":{
      "range":"80000000-7fffffff",
      "state":"active",
      "replicas":{"10.165.15.104:8983_solr_vicon":{
          "shard":"shard1",
          "state":"down",
          "core":"vicon",
          "collection":"vicon",
          "node_name":"10.165.15.104:8983_solr",
          "base_url":"http://10.165.15.104:8983/solr",
          "leader":"true"}}}},
  "router":"compositeId"}, collection1=DocCollection(collection1)={
  "shards":{"shard1":{
      "range":"80000000-7fffffff",
      "state":"active",
      "replicas":{"10.165.15.104:8983_solr_collection1":{
          "shard":"shard1",
          "state":"down",
          "core":"collection1",
          "collection":"collection1",
          "node_name":"10.165.15.104:8983_solr",
          "base_url":"http://10.165.15.104:8983/solr",
          "leader":"true"}}}},
  "router":"compositeId"}, collections=DocCollection(collections)={
  "shards":{"shard1":{
      "range":"80000000-7fffffff",
      "state":"active",
      "replicas":{
        "10.165.15.104:8983_solr_collections":{
          "shard":"shard1",
          "state":"active",
          "core":"collections",
          "collection":"collections",
          "node_name":"10.165.15.104:8983_solr",
          "base_url":"http://10.165.15.104:8983/solr",
          "leader":"true"},
        "10.147.129.56:8983_solr_collections":{
          "shard":"shard1",
          "state":"down",
          "core":"collections",
          "collection":"collections",
          "node_name":"10.147.129.56:8983_solr",
          "base_url":"http://10.147.129.56:8983/solr"}}}},
  "router":"compositeId"}}

活动节点IP是私有IP而不是公共IP

有没有什么html" target="_blank">方法可以让zoomaster将集群信息存储为主机名而不是ip。如果无法做到这一点,我如何在AWS EC2机器上运行solr Cloud?

共有1个答案

满勇军
2023-03-14

我想出了解决办法。我们可以用zookeeper将使用的主机名启动solr服务器

只要在启动solr实例时给出一个-Dhost=x.y.com,它就会正常工作

 类似资料:
  • 我希望能够动态地将新集合添加到我的SolrCloud。但是要添加集合,我必须先将配置文件上传到ZooKeeper,对吗?但是我如何在不重新启动ZooKeeper和我的Solr实例的情况下做到这一点?

  • 由于以下异常,此代码失败 这是异常的完整stacktrace。我刚刚从一个Solr独立安装“升级”到一个SolrCloud(使用一个外部Zookeeper实例,而不是嵌入式实例)。在独立的Solr中,相同的代码(只是有一些小的区别,比如主机URL)可以很好地工作。 NPE让我进入SolrJ库,我不知道。

  • 我们希望将SolrCloud与单独的ZooKeeper实例一起使用,但需要一些建议。我们的情况是-多个集合,每个集合都有多个分片在Ubuntu 13、Solr 4.7.0、单独的ZooKeeper 3.4.5、AWS中的OpenJDK 7上运行 Jetty还是Tomcat?Jetty是内置的,需要更少的配置,但是除非指定“nohup”,否则当您退出运行SolrCloud的java命令或断开SSH会

  • 问题内容: 我正在尝试建立一个PHP网站,并且想要测试我的PHP文件而不将其上传到主机。在上载它们之前,基本上在我自己的机器上对其进行测试。我怎么做? 问题答案: 安装并运行XAMPP:http : //www.apachefriends.org/en/xampp.html

  • 我有一个centos机器/服务器,我想在其中运行多个docker容器实例,其中有docker-machines和virtualbox驱动程序,用于测试目的。这是可行的吗? 我有一张最新Centos7的docker图像。然后我跑了

  • 我正在尝试使用SolrCloud使用SolR 4.2(在Tomcat 7实例上)部署一个由3个VM组成的集群,每个实例中都有一个外部ZooKeeper(3.4.5)(我使用的是Windows Server 2008 R2)但是出了问题,我没有特定的错误,但是当我在一个实例上发送文档时,它们总是在该实例上被索引,而其他实例看不到它。简而言之,看起来它们不会相互通信,即使ZooKeeper实例会这样做