Standalone Solr Server App

Description

The Standalone Solr Server app gives the user an ability to run an Apache Solr instance as a Catalog data store within the distribution. The Standalone Solr Server app contains a Solr Web Application Bundle and preconfigured Solr configuration files. A Solr Web Application Bundle is essentially the Apache Solr war repackaged as a bundle and configured for use within this distribution. 

Usage

Users can use this app to create a data store. Users would use this style of deployment over an embedded Java Solr Server when the user wants to install a Solr Server on a separate, dedicated machine for the sole purpose of isolated data storage or ease of maintenance. The Standalone Solr Server can now run in its own JVM (separate from endpoints and other frameworks) and accept calls with its "REST-like HTTP/XML and JSON API." 

This Standalone Solr Server app  is meant to be used in conjunction with the Solr Catalog Provider for External Solr. The Solr Catalog Provider acts as a client to the Solr Server.

Installation

This application's feature, catalog-solr-server, can be installed and uninstalled using the normal processes described in the Administrator's Guide's Configuration section. This feature is included out of the box in the current distribution. Installing the feature will copy the Solr configuration files in the distribution home directory and then deploy the configured Solr war. You can test that the server started correctly by visiting the Solr Admin interface at http://localhost:8181/solr.

Configuration

This application comes pre-configured to work with Solr Catalog Provider Apps implementations. For most use cases, no other configuration to the Solr Server is necessary with the standard distribution.

Recommended Standalone Configuration

In production environments, it is recommended that Solr Server App be run in isolation on a separate machine in order to maximize the Solr Server performance and use of resources such as RAM and CPU cores. The Standalone Solr Server, as its name suggests, does not require or depend on other apps such as the Catalog API, nor does it require their dependencies either such as Camel, CXF, etc. Therefore it is recommended to have the Solr Server app run on a lightweight

DDF

 distribution such as the 

DDF

 Distribution Kernel. If clustering is necessary, the Solr Server App can run alongside the Platform App for clustering support.

Recommended Steps to Run a Standalone Solr Server (No data clustering)

  1. Obtain and unzip the 

    DDF

     Kernel (ddf-distribution-kernel-<VERSION>.zip). 
  2. Start the distribution.
  3. When the Kernel has loaded up with the 

    DDF

     logo at the command prompt, execute

     la

    which is short for "list all". Verify that all bundles are Active

    Note on Lightweight Kernel

    Since the kernel does not include all apps, if you were to do a "list" instead of "la," a very small number of results would be returned at this point.

  4. Next install the war feature by executing the command

    features:install war

    No output will be shown, but running the la command again will show that Jetty and Pax Web bundles were installed.

  5. Finally, deploy the Standalone Solr Server App by copying the catalog-solr-server-app-<VERSION>.kar into the <DISTRIBUTION_HOME>/deploy directory. Verify the Solr Server is up by checking the Solr Admin Console. If on the same server, the Solr Admin Console is located at http://localhost:8181/solr.

Known Issues

The standalone Solr Server fails to install if it has been previously uninstalled prior to the distribution being restarted.