First, make a list of the ip addresses (or better yet, hostnames) of your servers. You’ll need this for the ZooKeeper bit of the solr configuration.
Download a copy of Solr 4.3 or greater. Extract it somewhere reasonable on your first server. For simplicity we’ll assume C:\SolrCloud, if not find/replace in your favorite editor will be handy.
Next, grab the Apache Commons daemon for Windows. Unzip it somewhere off to the side. Inside you’ll find two executables: prunmgr and prunsrv. Copy prunmgr.exe to C:\SolrCloud and rename it to solrCloudw.exe. Do the same for prunsrv.exe, but name it solrCloud.exe (no “w” at the end of the name).
Open a command prompt (Start->Run then “cmd.exe” and enter).
A couple things to note here.
Make sure to edit the line with “++JvmOptions=-DzkHost=10.5.0.1:9983;10.5.0.2:9983″. This should be a list of your servers with “:9983″ on the end of each. And, yes, you could supply a custom ZooKeeper root here by doing something like “:9983/myroot”. No need since we are running the embedded ZooKeeper, but who wants to do that forever?
Check all the paths and make sure they reflect your setup. As mentioned, we are using “c:\SolrCloud” for simplicity.
Don’t forget that we are writing logs to the C:\SolrCloud\example\logs directory. These can be very handy for trouble shooting.
This setup will reset the the Solr config in ZooKeeper every time this server is restarted. You could remove this behavior by reregistering the service without the last line after it has run once. For now, I’d recommend keeping it until you are comfortable managing your own ZooKeeper servers. At that point you can drop the last for lines, and manage Zk as it’s on server/service.
Start the service:
Repeat the above on the rest of your servers, with one change. Remove the last line of the service setup, “++JvmOptions=-Dbootstrap_confdir=c:\SolrCloud\example\solr\conf”.
You now have a SolrCloud cluster running on Windows!
Thanks to Alexandre Rafalovitch and his article on Solr as a Windows Service. Have a look there if you want to run Solr on Windows, but not SolrCloud.