On 2/17/2014 8:32 AM, Daniel Bryant wrote: > I have a production SolrCloud server which has multiple sharded indexes, > and I need to copy all of the indexes to a (non-cloud) Solr server > within our QA environment. > > Can I ask for advice on the best way to do this please? > > I've searched the web and found solr2solr > (https://github.com/dbashford/solr2solr), but the author states that > this is best for small indexes, and ours are rather large at ~20Gb each. > I've also looked at replication, but can't find a definite reference on > how this should be done between SolrCloud and Solr? > > Any guidance is very much appreciated.
If the master index isn't changing at the time of the copy, and you're on a non-Windows platform, you should be able to copy the index directory directly. On a Windows platform, whether you can copy the index while Solr is using it would depend on how Solr/Lucene opens the files. A typical Windows file open will prevent anything else from opening them, and I do not know whether Lucene is smarter than that. SolrCloud requires the replication handler to be enabled on all configs, but during normal operation, it does not actually use replication. This is a confusing thing for some users. I *think* you can configure the replication handler on slave cores with a non-cloud config that point at the master cores, and it should replicate the main Lucene index, but not the config files. I have no idea whether things will work right if you configure other master options like replicateAfter and config files, and I also don't know if those options might cause problems for SolrCloud itself. Those options shouldn't be necessary for just getting the data into a dev environment, though. Thanks, Shawn