Шери

Установка и настройка apachesolr 4 multicore для drupal в ubuntu 12.04

Перво-наперво проверяем версию JAVA java -version Для SOLR => 4 должна быть JAVA 7 (1.7.0_60) или выше.

java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) Client VM (build 24.60-b09, mixed mode)

Качаем отсюда http://archive.apache.org/dist/lucene/solr/ или отсюда http://www.eu.apache.org/dist/lucene/solr/ любую версию solr

wget http://archive.apache.org/dist/lucene/solr/4.9.0/solr-4.9.0.tgz
tar zvxf solr-4.9.0.tgz
cp -R solr-4.9.0/ /opt/solr
cp solr-4.9.0/example/webapps/solr.war /opt/solr/
mv /opt/solr/example /opt/solr/yourCOMPANYorCUSTOMERname
rm -r /opt/solr/yourCOMPANYorCUSTOMERname/example-DIH
rm -r /opt/solr/yourCOMPANYorCUSTOMERname/exampledocs/
rm -r /opt/solr/yourCOMPANYorCUSTOMERname/solr-webapp/

Кратко: качаем, распаковываем, копируем туда, где он будет работать, переименовываем папку example, удаляем лишнее (можно не удалять).

Работать будем с папкой yourCOMPANYorCUSTOMERname/solr, скрипт start.jar будем запускать из папки yourCOMPANYorCUSTOMERname. В папке yourCOMPANYorCUSTOMERname/solr находится папка collection1 и файл solr.xml. Они-то нам и нужны для того, чтобы сделать multicore. Папку collection1 копируем в drupal

cp -r yourCOMPANYorCUSTOMERname/solr/collection1 yourCOMPANYorCUSTOMERname/solr/drupal

Открываем solr.xml

cd yourCOMPANYorCUSTOMERname/solr
nano solr.xml

Добавляем туда строку для нового ядра



${urlScheme:}



Потом правим название ядра

grep -rl collection1 drupal/* | xargs sed -i 's/collection1/drupal/g'

Проверяем

cd /opt/solr/yourCOMPANYorCUSTOMERname/
java -jar start.jar

После этого в браузере переходим по адресу http://SERVERIPADDRESS:8983/solr/ ... Всё должно работать.

Для автоматизации запуска создаём скрипт

nano /etc/init.d/apachesolr


#!/bin/sh
### BEGIN INIT INFO
# Provides:            apachesolr
# Required-Start:    $local_fs $remote_fs $network $syslog $named
# Required-Stop:    $local_fs $remote_fs $network $syslog $named
# Default-Start:      2 3 4 5
# Default-Stop:      0 1 6
# X-Interactive:     true
# Short-Description: Start/stop apache sole search framework
### END INIT INFO

SOLR_DIR="/opt/solr/yourCOMPANYorCUSTOMERname/"
JAVA_OPTIONS="-Xmx1024m -DSTOP.PORT=8079 -DSTOP.KEY=stopkey -jar start.jar"
LOG_FILE="/var/log/solr.log"
JAVA="/usr/bin/java"

case $1 in
    start)
        echo "Starting Solr"
        cd $SOLR_DIR
        $JAVA $JAVA_OPTIONS 2> $LOG_FILE &
        ;;
    stop)
        echo "Stopping Solr"
        cd $SOLR_DIR
        $JAVA $JAVA_OPTIONS --stop
        ;;
    restart)
        $0 stop
        sleep 1
        $0 start
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}" >&2
        exit 1
        ;;
esac

Сохраняем и добавляем в автозапуск

chmod 755 /etc/init.d/apachesolr
/etc/init.d/apachesolr start
apt-get install sysv-rc-conf
sysv-rc-conf --level 2345 apachesolr on


reboot now

Всё!

Помощь в написании материала оказали статьи:
http://www.arborisoft.com/how-to-install-multicore-apache-solr-4-7-on-de...
http://webikon.com/cases/installing-apache-solr-4-7-multicore-on-ubuntu-...
http://linuxdev.dk/articles/apache-solr-multicore-drupal-7