solr amazon-web-services amazon-ec2 apache-zookeeper solrcloud

Configuración de Solrcloud en la máquina AWS EC2



amazon-web-services amazon-ec2 (1)

Estoy enfrentando un problema con la configuración de SolrCloud en la máquina AWS EC2. El escenario es el siguiente

Tengo tres servidores para zookeeper y solr.

Cada servidor tiene un zookeeper ejecutándose en él. Cuando inicio Solr con la información de los hosts zookeeper, se inicia y funciona como se esperaba.

El problema es que el cuidador de zoos cuando se genera la información del clúster usa una IP privada de los servidores y, por lo tanto, no puedo consultarlo usando el Solrj que no puede reconocer la IP privada. Por ejemplo server1. IP privada IP-a, b, c, d IP pública: u, v, w, x El cuidador del zoo reconoce la instancia de solr por la IP privada (Obviamente, no será visible desde las máquinas EC2 externas)

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"}}

Nodos vivos IP es la IP privada y no la pública

¿Hay alguna manera en la que podamos guardar el zoo para almacenar la información del clúster como el nombre de host en lugar de IP? Si eso no se puede hacer, ¿cómo puedo ejecutar Solr Cloud en la máquina AWS EC2?


Pensé la solución. Podemos iniciar un servidor de solr con un nombre de host que el cuidador del zoológico usará

Solo dale un -Dhost = xycom cuando comiences la instancia de solr y funcionaría bien