SolrCloud Installation

SolrCloud is designed to provide a highly available, fault tolerant environment for distributing your indexed content and query requests across multiple servers. It’s a system in which data is organized into multiple pieces, or shards, that can be hosted on multiple machines, with replicas providing redundancy for both scalability and fault tolerance, and a ZooKeeper server that helps manage the overall structure so that both indexing and search requests can be routed properly.  (Apache Lucene/Solr Project, 2017)

 

icon_cross-reference

More information on this topic can be found on the Solr Website.

 

Technical terms

When distributing the search index to several Solr instances and using Zookeeper to synchronize the individual Solr instances, a large number of technical terms (e.g. Cluster, Ensemble, Node, Collection, Configset, Core, Leader, Replica, Shard etc.) are used, which can be quite confusing. A list and explanation of the most important concepts can be found in the SolrCloud technical terms..

 

Important Ports

icon_comment

All participating Solr or Zookeeper instances must have access to the required ports (Solr Port, Solr Stop Port, Zookeeper ClientPort, Zookeeper Quorum Port und Zookeeper Leader Election Port) of the other participating machines. Therefore, all these ports on the firewall of the respective hosts must be configured as exceptions.

 

SOLR_PORT - Solr Client Port (default value: 8983)

This port can be used to send search queries and data to be indexed, to Solr.

In addition, the admin web interface can also be reached here, e.g. http://localhost:8983/

STOP_PORT - Solr STOP Port (default value: SOLR_PORT -1000, e.g. 7983)

This port can be used to shut down a Solr instance.

To prevent unauthorized persons from terminating the instance, there is a so-called STOP_KEY, which was set to a proprietary value in the case of WebOffice FTS-Index.

The default value for STOP_KEY is solrrocks (without quotes).

Zookeeper client port (default value: 2181)

Zookeeper clients (in our case the SolrCloud instances) use this port to connect to Zookeeper.

Zookeeper is available by default on port 2181, but Solr expects Zookeeper by default on port 9983.

Finally, the value can be freely selected, but the correct number must be configured accordingly for both Zookeeper and Solr.

Zookeeper quorum port (default value: 2888)

Zookeeper instances are informed about current configuration updates by the leader via this port.

Zookeeper leader election port (default value: 3888)

This port is used between zookeeper instances to appoint a new leader (e.g. if the original leader node is no longer available). Important configuration files and where they can be found.

 

Important configuration files

Solr configuration files

WebOffice FTS-Index/bin/solr.in.cmd

contains all configuration values for this Solr server

 

WebOffice FTS-Index/server/etc/jetty-ipfilter.xml

Configuration of all hosts that are allowed to access the FTS index

 

Zookeeper Konfigurationsdateien

Zookeeper/instance{%ID%}/zoo.cfg

describes the client port of the Zookeeper server and also all other servers of the ensemble

 

Zookeeper/instance{%ID%}/wrapper.conf

typically does not need to be adjusted

 

ZookeeperRunner/instance{%ID%}/data/myid

the ID of the server within the ensemble (must match the value %ID%!)

 

Zookeeper/instance1/lib/log4j.properties

defines where Zookeeper creates its logs and at which log level the log is logged