воскресенье, 28 октября 2012 г.

Запуск Apache Solr автоматически. Регистрация процесса как сервис.

Продолжаю позновать IT по мере необходимости. Apache Solr Server использую только в целях тэтирования. Занимаюсь разработкой сайтов,  интеграцией Apache Solr Server c сайтами на базе Drupal.  В одной статье-перевод выложил инструкцию по интеграции. Теперь стала делема того, что бы автоматизировать запуск  Apache Solr Server. Там же я нашёл скрипт который регистрирует сервис. Он достаточно простой. Это bash скрипт который использует определение переменный, конструкцию switch и запуск команд.


Создаем файл.
vi /etc/init.d/solr
Содержимое скрипта.
#!/bin/sh 
# Starts, stops, and restarts Apache Solr.
#
# chkconfig: 35 92 08
# description: Starts and stops Apache Solr

SOLR_DIR="/usr/local/share/apache-solr/example"
JAVA_OPTIONS="-Xmx2048m -DSTOP.PORT=8079 -DSTOP.KEY=mustard -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/solr 

Работаем в стиле
sudo service solr start
и
sudo service solr stop

Также появиться необходимость добавить в автозагрузку.

1 комментарий: