We're testing SolrCloud of Solr 4.6.0 with external ZooKeeper on Amazon AWS instances (virtual machines). Amazon virtual machine's private IP addresses of SolrCloud machines are different every time we create virtual machines (AWS terminology "instances"). I found after these start/terminates of Amazon AWS instances (virtual machines), SolrCloud (or ZooKeeper ) would, as expected, clear "core_nodes" for most collections of previous instances/virtual machines. ZooKeeper zkCli.sh command get /clusterstate.json returns this (only copy-paste collection "samplecollection1")
"samplecollection1":{ "shards":{"shard1":{ "range":"80000000-7fffffff", "state":"active", "replicas":{ "core_node1":{ "state":"active", "base_url":"http://172.31.15.5:8983/solr", "core":"samplecollection1_shard1_replica2", "node_name":"172.31.15.5:8983_solr", "leader":"true"}, "core_node2":{ "state":"active", "base_url":"http://172.31.42.34:8983/solr", "core":"samplecollection1_shard1_replica1", "node_name":"172.31.42.34:8983_solr"}}}}, "maxShardsPerNode":"1", "router":{"name":"compositeId"}, "replicationFactor":"2"}, However, SolrCloud didn't clear "core_nodes" for collection "collection1" of previous instances/virtual machines. ZooKeeper zkCli.sh command get /clusterstate.json returns this from collection : "collection1":{ "shards":{"shard1":{ "range":null, "state":"active", "parent":null, "replicas":{ "core_node1":{ "state":"down", "base_url":"http://172.31.14.244:8983/solr", "core":"collection1", "node_name":"172.31.14.244:8983_solr"}, "core_node2":{ "state":"down", "base_url":"http://172.31.0.89:8983/solr", "core":"collection1", "node_name":"172.31.0.89:8983_solr"}, "core_node3":{ "state":"down", "base_url":"http://172.31.75.155:8983/solr", "core":"collection1", "node_name":"54.213.175.155:8983_solr"}, "core_node4":{ "state":"down", "base_url":"http://172.31.7.30:8983/solr", "core":"collection1", "node_name":"54.213.207.30:8983_solr"}, "core_node5":{ "state":"down", "base_url":"http://172.31.13.107:8983/solr", "core":"collection1", "node_name":"172.31.13.107:8983_solr"}, "core_node6":{ "state":"down", "base_url":"http://172.31.8.219:8983/solr", "core":"collection1", "node_name":"172.31.8.219:8983_solr"}, "core_node7":{ "state":"down", "base_url":"http://172.31.22.88:8983/solr", "core":"collection1", "node_name":"172.31.22.88:8983_solr"}, "core_node8":{ "state":"active", "base_url":"http://172.31.10.141:8983/solr", "core":"collection1", "node_name":"172.31.10.141:8983_solr"}, "core_node9":{ "state":"active", "base_url":"http://172.31.3.230:8983/solr", "core":"collection1", "node_name":"172.31.3.230:8983_solr"}, "core_node10":{ "state":"active", "base_url":"http://172.31.4.86:8983/solr", "core":"collection1", "node_name":"172.31.4.86:8983_solr"}, "core_node11":{ "state":"active", "base_url":"http://172.31.9.191:8983/solr", "core":"collection1", "node_name":"172.31.9.191:8983_solr"}, "core_node12":{ "state":"down", "base_url":"http://172.31.35.113:8983/solr", "core":"collection1", "node_name":"172.31.35.113:8983_solr"}, "core_node13":{ "state":"active", "base_url":"http://172.31.37.142:8983/solr", "core":"collection1", "node_name":"172.31.37.142:8983_solr"}, "core_node14":{ "state":"down", "base_url":"http://172.31.47.68:8983/solr", "core":"collection1", "node_name":"172.31.47.68:8983_solr"}, "core_node15":{ "state":"down", "base_url":"http://172.31.14.233:8983/solr", "core":"collection1", "node_name":"172.31.14.233:8983_solr"}, "core_node16":{ "state":"active", "base_url":"http://172.31.0.246:8983/solr", "core":"collection1", "node_name":"172.31.0.246:8983_solr", "leader":"true"}, "core_node17":{ "state":"active", "base_url":"http://172.31.45.97:8983/solr", "core":"collection1", "node_name":"172.31.45.97:8983_solr"}}}}, "router":{"name":"implicit"}}, Is this a user error or could it be a bug in SolrCloud? ( We start SolrCloud leader like this: (I modified the public IP addresses for security reason.) /usr/bin/java -Djetty.port=8983 -DnumShards=1 -Dbootstrap_confdir=/opt/indexer/solr/example/solr/collection1/conf -Dcollection.configName=commonsolrconfig -DzkHost=ec2-53-100-173-46.us-west-2.compute.amazonaws.com:2181,ec2-53-212-53-31.us-west-2.compute.amazonaws.com:2181,ec2-53-101-64-48.us-west-2.compute.amazonaws.com:2181 -Djetty.state=/opt/indexer/solr/example/jetty.state -Djetty.logs=/opt/log -Djetty.home=/opt/indexer/solr/example -Djava.io.tmpdir=/tmp -jar /opt/indexer/solr/example/start.jar So, "collection1" is a special collection from where we load conf/ directory to ZooKeeper. The core.properties file contains only "name=collection1". We create other collections on the fly. During tests we terminated and started Amazon AWS instances several times (and got different private IP's every time). ) Thanks, Ray