I wrote a Python tool to do this. I use the kazoo package to talk to Zookeeper. It starts with the load balancer URL to Solr.
1. Get cluster status. 2. Parse out the Zookeeper config string including chroot. 3. Connect to Zookeeper. 4. Copy the config to the location described in Shawn’s message. 5. Send linkconfig command to the cluster, just to be sure. 6. Reload the collection with an async command. 7. Ping the cluster until the reload is successful on every node. 8. Optionally, rebuild the suggester on each node. The actual location of the config in Zookeeper is undocumented, as far as I could tell. I used the Solr ZK CLI, then reverse engineered where it put stuff. The docs need a “Zookeeper file organization” chapter with this info. Also, it would be nice if the ZKHOST info was available pre-parsed in cluster status. wunder Walter Underwood wun...@wunderwood.org http://observer.wunderwood.org/ (my blog) > On Apr 17, 2018, at 8:20 PM, Shawn Heisey <apa...@elyograg.org> wrote: > > On 4/17/2018 8:54 PM, Aristedes Maniatis wrote: >> Is there any difference between using the tools supplied with Solr to write >> configuration to Zookeeper or just writing directly to our Zookeeper cluster? >> >> We have tooling that makes it much easier to write directly to ZK rather >> than having to use yet another tool to do it. > > As long as it ends up in the correct path in the ZK structure, it doesn't > matter how it gets there. > > The /configs/XXXX location (where XXXX is the config name) should have the > same contents that would normally be found in a conf directory if it were > standalone Solr and not using the standalone configsets feature. > > Thanks, > Shawn >