1.- Crear estructura de directorio:
1.1.- APPS
shell> cd /
shell> mkdir solr
shell> cd solr
shell> mkdir apps
shell> mkdir tu_apps
1.2.- INDEX
shell> cd solr
shell> mkdir index
shell> mkdir index/tu_apps
Siempre en “minúsculas” que el amigo Linux es Key-Sensity
Tenemos que modificar los permisos de las carpetas, pero lo haremos más
2.- Copiar la aplicación:
Con el SSH, copiamos la aplicación...aqui necesitas los conocimientos de algún programador que tenga desarrollado la aplicacion de solr. Puesdes encontrar mas información http://lucene.apache.org/solr/
3.- Modificar los ficheros de configuración adecuándola a nuestra estructura de ficheros.
Los ficheros que tenemos que configurar están en la carpeta:
Configurarnos la carpeta de destino del índice
shell> solr/conf/advert/conf/solrconfig.xml
Configuramos los puertos de escuha y la memoria a utilizar por el WS:
shell> solr/apps/tu_apps/jetty.xml
El fichero jettyReindx.xml se configura el puerto del reindexador.
4.- Creamos el usuario que ejecutara el “solr” tiene que ser en nuestro caso el usuario de Windows “usuario” (tiene que ser el mismo usuario generar el índice en Windows, de momento no tenemos la posibilidad de generar el índice en Linux)
shell> groupadd usuario
shell> useradd –n –g migrupo miusuario
Le ponemos la misma contraseña que Windows: H8
shell> passwd usrsvrc
5.- Cambiamos los permisos de la carpeta “solr” para que sea este usuario el propietario de dicha carpeta, también le damos permisos de escritura/lectura sobre la carpeta y subcarpetas.
Desde la raid /
shell> chown –R usuario:usuario /solr
shell> chmod –R 777 /solr
6.- Instalamos SAMBA, para poder copiar los índices desde Windows.
shell> yum install samba
Configuramos el fichero de configuración, adecuándolo a nuestras necesidades:
shell> vi /etc/samba/smb.conf
Si queréis tener una copiar del fichero original, podemos hacer:
shell> mv /etc/samba/smb.conf /etc/samba/smb.old
Y creamos un smb.conf nuevo:
#======================= Global Settings =====================================
[global]
workgroup = DOMINO
server string = SOLR
netbios name = SERVER_NAME
interfaces = lo eth1 eth0 192.168.100.0/24
hosts allow = 127. 192.168.100.
# --------------------------- Logging Options -----------------------------
# logs split per machine
log file = /var/log/samba/%m.log
# max 50KB per log file, then rotate
max log size = 50
# ----------------------- Standalone Server Options ------------------------
security = user
passdb backend = tdbsam
#============================ Share Definitions ==============================
[solr]
comment = Directorio SOLR
path = /solr
browseable = yes
writable = yes
valid users = DOMINIO\usuario DOMINIO\usurio1 root
admin users = root
#======================================================================
Hay que darle una contraseña en SAMBA para poder acceder a los recursos, esta contraseña tiene que ser la misma que la de Windows.
shell> smbpasswd –a usuario
Hay que hacerlo votable en el inicio, mediante el setup y arrancar el servicio:
shell> /etc/init.d/smb start
Hay que activar el servicio para que sea “botable” en el menú del setup
7.- Instalamos la herramienta “start-stop-daemon”, la utilizamos a la hora de crear el daemon del SOLR.
Necesitaríamos la utilidad gcc, si no la tenemos instalada -> yum install gcc
Descomprimir el fichero de instalación, el fichero lo podemos descargar:
shell> tar zxvf apps-sys-utils-start-stop-daemon-IR1_9_18-2.tar.tar
shell> cd apps
shell> cd sys-utils/
shell> cd start-stop-daemon-IR1_9_18-2/
shell> gcc start-stop-daemon.c -o start-stop-daemon
Una vez hecho esto, tenemos que copiar la aplicación copilada en el path
shell> mv start-stop-daemon /usr/sbin/
8.- Tenemos que configurar el daemon de SOLR, para que sea un servicio.
Tenemos que crear el script del daemon en la carpeta /etc/init.d/
Hay que darle permisos 755 sobre eso script
shell> vi /etc/init.d/solr_tu_apps
El código es este:
#####################################################################
#! /bin/sh
#
# Solr init script, copied from red5 one from G. Giunta. 2007.11.29
#
# red5 red5 initscript
#
# Author: Simon Eisenmann <simon@struktur.de>.
#
# chkconfig: 345 20 80
# description: Solr Indexer Server
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="Solr TU_APPS"
NAME=solr_tu_apps
SOLR_HOME=/solr/apps
DAEMON=$SOLR_HOME/$NAME.sh
PIDFILE=/solr/apps/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
SOLR_USER=usuario
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
# Read config file if it is present.
if [ -r /etc/default/$NAME ]
then
. /etc/default/$NAME
fi
#
# Function that starts the daemon/service.
#
d_start() {
cd $SOLR_HOME
start-stop-daemon --chuid $SOLR_USER --user $SOLR_USER --quiet --background --exec $DAEMON --start --pidfile $PIDFILE --make-pidfile
}
#
# Function that stops the daemon/service.
#
d_stop() {
start-stop-daemon --stop --quiet --pidfile $PIDFILE \
--name java
rm -f $PIDFILE
}
case "$1" in
start)
echo -n "Starting $DESC:.....OK"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC:.....OK"
d_stop
echo "."
;;
restart|force-reload)
echo -n "Restarting $DESC:.....OK"
d_stop
sleep 1
d_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
#####################################################################
Ahora tenemos que añadir el daemon al sistema
shell> cd /etc/init.d/
shell> chkconfig -–add solr_tu_apps
Podemos comprobar que se arranca después de un reinicio, mirando el setup
9.- Como vemos en el script, en la carpeta de la aplicación, tenemos que tener otro script que lanza el propio WS de SOLR. Este lo hemos copiado con la aplicación pero igualmente este es el código
shell> vi /solr/apps/solr_tu_apps.sh
#####################################################################
#!/bin/bash
chkconfig: 345 20 80
description: Solr Indexer Server
for JAVA in "$JAVA_HOME/bin/java" "/usr/bin/java" "/usr/local/bin/java"
do
if [ -x $JAVA ]
then
break
fi
done
if [ ! -x $JAVA ]
then
echo "Unable to locate java. Please set JAVA_HOME environment variable."
exit
fi
# start solr
cd /solr/apps/sgmbra
exec $JAVA -Xms1024m -Xmx1024M -Dsolr.solr.home=/solr/apps/solr/conf -jar /solr/apps/start.jar
#####################################################################
10.- Instalar JAVA
shell> yum install java
11.- Solo queda comprobar que funciona todo, hay que arrancar el servicio
shell> /etc/init.d/solr_tu_apps start
Y desde un navegador acceder a la URL http://servername:8895/solr/
Acordaros de general una reindexado para tener un INDICE!!!
12.- Tenemos que añadir dos líneas en el contrab para realizar la limpieza de los LOG de SOLR
1 2 * * * root find /var/log/ -ctime +15|grep '\.log'|xargs rm -rf
1 3 * * * root find /solr/apps/ -ctime +5|grep '\.log'|xargs rm -rf
No hay comentarios:
Publicar un comentario