2016-07-14 26 views
0

Ich versuche, eine Solr-Cloud einzurichten, die mit einem externen Tierpfleger-Ensemble auf drei separaten VMs verbunden ist. Die VMs betreiben ein Ubuntu 16.04 innerhalb einer VirtualBox mit einem überbrückten Netzwerk.Solr mit externem Tierpfleger-Ensemble auf drei separaten VMs, die nicht im Cloud-Modus laufen (nur 1 Live-Knoten gezeigt)

Zur Vereinfachung zugewiesen ich die Namen zoo1, zoo2 und zoo3 zu jeder VM jeweils in der Datei/etc/hosts-Dateien jeden VM.

Ich habe zookeeper 3.4.8-1 auf jeder VM über Repositiory installiert.

Nachdem ich die Dateien 'myid' und 'zoo.conf' auf jeder VM bearbeitet habe, kann ich das Zoowärter-Ensemble starten. Vorstellung für den Status der zkServer.sh Skript ich dieses Ergebnis auf zoo1 und zoo2 erhalten:

$ /usr/share/zookeeper/bin/zkServer.sh status 
ZooKeeper JMX enabled by default 
Using config: /etc/zookeeper/conf/zoo.cfg 
Mode: follower 

Das Ergebnis für zoo3 gleich aussieht mit Ausnahme des Modus: ‚Mode: leader‘

Ich bin auch in der Lage, Dateien auf Tierpfleger hochzuladen, auf die ich von allen drei VMs zugreifen kann, nachdem ich sie zu einer Tierpflegerinstanz gedrängt habe.

So scheint Zoowäscher gut zu laufen, denke ich.


I installiert Solr auf jeder VM (zoo1, zoo2 und zoo3) Nach dieser Vorgehensweise: Taking Solr to Production (I den chroot Teil weggelassen)

Nach solr als Dienst auf jeder Maschine, beginnend mit

$ sudo service solr start 

oder mit dem Startskript

$ sudo /opt/solr/bin/solr start -c -z "zoo1:2181,zoo2:2181,zoo3:2181" 

kann ich den Admin-Panel auf jedem Rechner zugreifen, aber ich denke, solr nicht in Cloud-Modus nicht ausgeführt werden, weil der Status mir nur eine Live-Knoten gibt:

$ bin/solr status 

Found 1 Solr nodes: 

Solr process 10642 running on port 8983 
{ 
    "solr_home":"/var/solr/data", 
    "version":"6.1.0 4726c5b2d2efa9ba160b608d46a977d0a6b83f94 - jpountz - 2016-06-13 09:46:58", 
    "startTime":"2016-07-14T12:44:45.509Z", 
    "uptime":"0 days, 0 hours, 23 minutes, 14 seconds", 
    "memory":"40.6 MB (%8.3) of 490.7 MB", 
    "cloud":{ 
    "ZooKeeper":"zoo1:2181,zoo2:2181,zoo3:2181", 
    "liveNodes":"1", 
    "collections":"0"}} 

I 'SOLR_MODE = solrcloud' versuchte, indem meinen solr.in.sh aber es machte keinen Unterschied.

Wenn ich eine Sammlung auf einer VM mithilfe des Admin-Steuerfelds erstelle, kann ich die Sammlung unter "Cloud" im Admin-Steuerfeld jeder VM sehen. Aber es wird nicht an zoo1, zoo2 und zoo3 verteilt. Stattdessen zeigt es nur auf 127.0.0.1.

Jede Hilfe wird sehr geschätzt! Danke im Voraus. Gerrit

Antwort

0

Kurz nach meiner Frage Entsendung ich es gefunden:

Nach dem auf jeder VM SOLR_HOST Variable zu zoo1, zoo2 und zoo3 Einstellung bzw. hat es funktioniert. Mein solr.in.sh sieht nun wie folgt aus:

[...] 
SOLR_MODE=solrcloud 
ZK_HOST="zoo1,zoo2,zoo3" 

# By default the start script uses "localhost"; override the hostname here 
# for production SolrCloud environments to control the hostname exposed to cluster state 
SOLR_HOST="zoo2" 
[...] 

für zoo2.

Bevor SOLR_HOST auskommentiert wurde.