Shared Cluster Deployments
In the context of a SearchStax Managed Search service Shared Cluster deployment, modifying your Solr config files could not be easier. Managed Search gives you direct editing access to the configs.
Dedicated Deployments
Clients frequently ask us how to make changes in their Solr configuration files of Dedicated Deployments. These files cannot be directly edited. We need to download them from Zookeeper, edit them locally, and then upload them again.
Security Best Practices
Be sure to see our page on securing Zookeeper.
This is easily accomplished using the downconfig and upconfig commands of the .zkcli script. (See zkcli download instructions.)
zkcli requires Java
To run zkcli, you will need Java. See What if zkcli returns an error? for more information.
Download Configset
First, open the Solr dashboard of your deployment. Drill down through Cloud > Tree > /configs to find the name of the configuration you want to modify.
Run zkcli in a terminal window:
./zkcli.sh -zkhost <zookeeper URL> -cmd downconfig -confdir <local directory> -confname <config name>
where <zookeeper URL> is the URL of one of the Zookeeper servers from the deployment page; <local directory> is the directory where the files should be written after downloading; and <config name> is the name of the configuration as stored in Zookeeper.
Edit the files locally until you are satisfied with the changes.
Upload Configset
Then upload the config files again:
./zkcli.sh -zkhost <zookeeper URLs> -cmd upconfig -confdir <local directory> -confname <config name>
where <zookeeper URLs> is the URL(s) of the Zookeeper server(s) in your deployment:
<local directory> is the location of the files to upload; and <config name> is the name of the configuration as stored in Zookeeper.
Reload the Collection
Once the new configset is safely in Zookeeper, you must “reload the collection,” which means to have Zookeeper copy the configset to the Solr servers of the deployment. (This is not the same thing as reloading/rebuilding the index.)
To reload the collection, you can use this command from the Solr API:
curl 'https:/<load_balancer_URL>/solr/admin/collections?action=RELOAD&name=<collection_name>'
where <load_balancer_URL> is the Solr HTTP Endpoint URL from the Managed Search dashboard, and <collection_name> is the name of the Solr collection.
Note that you can perform this step directly from the Solr Dashboard.
Optional: Reload Indexes
If you made changes to the Solr schema, you will have to discard your index files and reload all of your data. See How Do I Update the Solr Schema? for more information.
SearchStax provides a Zookeeper API!
The SearchStax Zookeeper API provides secure, password-protected access to Zookeeper. You can list, create, read, delete, and download config files using this API.
Questions?
Do not hesitate to contact the SearchStax Support Desk.