SolrCloudで面白い状況になっています。基本的に理由はわかりませんが、通常はクラウドにないSolrインスタンスがSolrCloudページに表示され、Zookepeerのlive_nodesパスにも表示されます。
状況の詳細は次のとおりです。
削除マシン上にある仮想マシン上でスタンドアロンアプリケーションとして実行されているSolrインスタンスが1つあります。これから呼びますvirtual1。
これを実行するためのスクリプトは次のとおりです。
java
-server
-XX:+UnlockExperimentalVMOptions
-XX:+UseG1GC
-XX:+UseCompressedStrings
-Dcom.sun.management.jmxremote
-d64
-Xmx4096m
-Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=remotehost -jar start.jar
このインスタンスはポート8983で実行されているため、に移動するとvirtual1:8983、solrの従来の管理ページが表示されます。残りの構成は、solrディストリビューションに付属している例solrとすべて同じです。
次に、ローカルマシン(これから呼び出されます)で、ポートでlocalzookeeperサーバーを実行しています。21812182
次に、solrインスタンスをクラウドに追加するために、ローカルマシンで1つのインスタンスを実行し、さらに2つのインスタンスを実行し、virtual1それらを起動するためのスクリプトを次のように実行します。
ローカルのSolrインスタンス:
java -Dbootstrap_conf=true -DzkHost=zkhost:2181 -Djetty.port=8984 -jar start.jar
リモート上のSolrインスタンス:
java -DzkHost=zkhost:2181 -Djetty.port=8985 -jar start.jar
java -DzkHost=zkhost:2182 -Djetty.port=8986 -jar start.jar
ここまで、SolrログまたはZookeeperログのいずれにも例外やエラーはありません。
それらがすべて実行されていることを確認するvirtual1:8985 and virtual1:8986と、ローカルのインスタンスも同様です。
しかし、クラウドをチェックすると(Solr管理ページとzookeeper CLIの両方から)。私はクラウドでlocal:8983しか見ることができませんが、まったく追加されていません...奇妙な点は、上記の開始スクリプトからわかるように、Zookeeperサーバーについて何も知らないということです。virtual1:8983virtual1:8985 and virtual1:8986virtual1:8983
上記の事実に加えて、私は別のことを試みました。virtual2と同じハードマシンで実行されている別の仮想マシン( )でvirtual1
、次のコマンドを使用してSolrインスタンスを作成しました。
java -DzkHost=zkhost:2181 -Djetty.port=8985 -jar start.jar
java -DzkHost=zkhost:2182 -Djetty.port=8986 -jar start.jar
したがって、この場合、インスタンスvirtual2:8985 and virtual2:8986はとしてクラウドにあるはずです。しかし、それは起こりません...私はvirtual2:8983、実際には存在しない、しか見ることができません。で実行されているスタンドアロンのSolrのポートを示しているだけvirtual1です。
なぜこれが起こっているのか誰かが説明できますか?