Hi all:

I've cobbled together a couple of sources, and I think I have a valid set of 
instructions for configuring solr in a separate space, as proof of concept for 
getting it onto a separate node. If someone more knowledgeable spots an error, 
please do correct me.

Separating Solr

You want this, it makes everything searchable. And faster. Put it on another 
machine.

Fire up a subdomain and name it solr.example.edu. 

Shut down any nakamura you might have running before you get started, so you're 
in a clean state. 

Download the OAE specific build of pre-release Solr version 4 from 
http://source.sakaiproject.
org/release/oae/solr/solr-example.tar.gz

Create a solr directory on your solr.example.edu server, and unzip the tarball 
there, to generate a directory named 'example' within the solr directory. This 
'example' directory structure is drawn directly from the Apache solr suggested 
setup, and is going to be our actual solr setup, not merely an example one.

mkdir -p source/solr
mv solr-example.tar.gz solr
cd solr
gunzip solr-example.tar.gz
tar -xvf solr-example.tar

There, now you have a directory structure like:
   source/
               solr/
                     example/

Retrieve the configuration files from the OAE 1.2 release link at 
https://github.com/sakaiproject/solr/tree/org.sakaiproject.nakamura.solr-1.4.2. 
Click the ZIP button at that location to retrieve the configuration files. This 
will get you a zip file: 
sakaiproject-solr-org.sakaiproject.nakamura.solr-1.4.2-0-g23dfa59.zip. 

Unzip this one in your source directory and move just the resources folder into 
your solr direcotry:

cd source
unzip sakaiproject-solr-org.sakaiproject.nakamura.solr-1.4.2-0-g23dfa59.zip

make the configuration directory:
mkdir -p solr/conf

copy the configuration files into your solr conf directory
cp -pr sakaiproject-solr-7404157/src/main/resources/* solr/conf

Now, you'll have a directory structure like:
   source/
               solr/
                     example/
                     conf/

>From the example directory, as a non-root user start it up. Note that the 
>solr.solr.home value is the directory where you just unzipped the 
>configuration files.

cd solr/example
java -Dsolr.solr.home=/home/whitney/source/solr -Djetty.port=8983 -jar 
start.jar 1> run.log 2>&1 &


The solr service creates a data directory once it starts up. Now, you'll have a 
directory structure like:
   source/
               solr/
                     example/
                     conf/
                    data/
The run.log is in the example directory, where you kicked off the java process

Good output looks like this:
=== system out extract ====
INFO: SolrDispatchFilter.init() done
2012-04-30 01:41:50.896:INFO::Started [email protected]:8983
Apr 30, 2012 1:41:50 AM org.apache.solr.core.SolrCore execute
INFO: [] webapp=null path=null params={start=0&event=firstSearcher&q=solr
+rocks&rows=10} hits=0 status=0 QTime=53
Apr 30, 2012 1:41:50 AM org.apache.solr.core.SolrCore execute
INFO: [] webapp=null path=null 
params={event=firstSearcher&q=static+firstSearcher
+warming+query+from+solrconfig.xml} hits=0 status=0 QTime=5
Apr 30, 2012 1:41:50 AM org.apache.solr.core.QuerySenderListener newSearcher
INFO: QuerySenderListener done.
Apr 30, 2012 1:41:50 AM org.apache.solr.core.SolrCore registerSearcher
INFO: [] Registered new searcher Searcher@f102d3 main
=== end system out extract ====

Certify the solr setup via a web browser by accessing 
http://solr.example.edu:8983/solr. You should get a nice solr interface at that 
url.

Next is to configure your nakamura to reach out to the remote solr indexer 
before starting OAE up to use the new, offboard solr.

Create a file named org.sakaiproject.nakamura.solr.RemoteSolrClient.cfg in the 
nakamura load directory with the single line:

remoteurl = http://solr.example.edu:8983/solr

Create a file named org.sakaiproject.nakamura.solr.SolrServerServiceImpl.cfg in 
the nakamura load directory with the single line:

solr-impl = remote

And start up your nakamura

cd nakamura
./tools/run_productions.sh &

Solr indexing will now occur on the solr.example.edu host, while the 
application work occurs on your main host. 


_______________________________________________
oae-dev mailing list
[email protected]
http://collab.sakaiproject.org/mailman/listinfo/oae-dev

Reply via email to