wiki:apachesolr

Version 7 (modified by Jamie McClelland, 10 years ago) (diff)

--

Apache Solr on mirabal.mayfirst.org

Apache Solr is an indexing and searching program that can replace the Drupal core search engine with a much improved system.

mirabal.mayfirst.org is a dedicated Apache Solr Server that is available for use by any May First/People Link member.

Web site Administrators

If you run a Drupal web site, you can use Solr. The first step is to determine if you primary host is connected to our Solr server. The following hosts are currently connected:

  • lucy.mayfirst.org

If your primary server is not listed, please open a ticket or contact the support team to request having your primary host added.

Once your host is solr-enabled then you can then connect to the Apache Solr server with:

Solr host name: localhost
Solr port: 9080
Solr path: /solr/<sitename>

Administrators

Below are the steps administrators must take to provide solr access.

On the primary server

Create a new user on the server and add mirabal's public ssh key to the new user's ./ssh/authorized_keys file. mirabal will connect to the host server and provide an ssh tunnel to the Apache Solr server.

On Mirabal

There are two things to do on mirabal.mayfirst.org: add a ssh tunnel to the host server and create a new Apache Solr site in Apache Tomcat.

Create SSH tunnel

To add a SSH tunnel simply add the login credentials to

/etc/default/solr-autossh

Restart the script with

service solr-autossh restart

Test SSH tunnel

Check with

service solr-autossh status

that the tunnel exists.

Log into the server running the website (as solr user) and download with

wget localhost:9080

the Apache Tomcat welcome page from mirabal.mayfirst.org.

Create new Solr configuration

Copy the configuration directory

cp -a /etc/solr/conf /etc/solr/<sitename>/conf

If you need a different configuration than Apache Solr Drupal you probably have to change at least schema.xml and solrconfig.xml.

Create new Solr site

Copy an existing Solr core

cp -a /usr/share/solr/testsite /usr/share/solr/<sitename>

Change the symbolic link to the new configuration directory

ln -sf /etc/solr/<sitename>/conf /usr/share/solr/<sitename>/conf

Create a new data directory

mkdir /var/lib/solr/data/<sitename>

Change ownership to tomcat6

chown -R tomcat6:tomcat6 /var/lib/solr/data

Change the symbolic link to the new data directory

ln -sf /var/lib/solr/data/<sitename> /usr/share/solr/<sitename>/data

Create new Solr core

Add a new core

<core name="<sitename>" instanceDir="<sitename>" />

to Apache Solr

/etc/solr/solr-multicore.xml

Restart Apache Tomcat

Restart Apache Tomcat with

service tomcat6 restart

Test new Solr site

Check that the new core is accessible at

http://localhost:8080/solr/<sitename>/admin