jueves, 8 de octubre de 2009

Error al arrancar mongrel en redmine

Hola, redmine es un administrador de proyectos y tareas open source, escrito en ruby onrail's, implementa mongrel.
Mongrel es un servidor HTTP para aplicaciones escritas en Ruby cuya principal característica es la velocidad, por defecto redmine utiliza dos procesos mongrel para el servicio http, pudiendo agregar otros process id mongrel para mejorar el rendimiento de la aplicación.

algunas veces cuando queremos arrancar redmine por consola ocurre lo siguiente:

slack@zion:~/programas/redmine-0.8.1-2$ ./ctlscript.sh start
nohup: redirecting stderr to stdout
Starting mysqld.bin daemon with databases from /home/slack/programas/redmine-0.8.1-2/mysql/data
/home/slack/programas/redmine-0.8.1-2/mysql/scripts/ctl.sh : mysql started at port 3307
starting port 3001
** !!! PID file tmp/pids/mongrel.3001.pid already exists. Mongrel could be running already. Check your log/mongrel.3001.log for errors. ** !!! Exiting with error. You must stop mongrel and clear the .pid before I'll attempt a start.

starting port 3002
** !!! PID file tmp/pids/mongrel.3002.pid already exists. Mongrel could be running already. Check your log/mongrel.3002.log for errors. ** !!! Exiting with error. You must stop mongrel and clear the .pid before I'll attempt a start.
Syntax OK
/home/slack/programas/redmine-0.8.1-2/apache2/scripts/ctl.sh : httpd started at port 8080
/home/slack/programas/redmine-0.8.1-2/subversion/scripts/ctl.sh : subversion started at port 3690

El log nos indica que el servicio mongrel no pudo arrancar porque ya existen pids corriendo para este servicio, sin embargo redmine esta abajo. para solucionar este problema debemos asegurarnos que los servicios utilizados esten abajo, para lo cual bajamos en modo comando redmine y sus servicios, como se indica:

slack@zion:~/programas/redmine-0.8.1-2$ ./ctlscript.sh stop
/home/slack/programas/redmine-0.8.1-2/subversion/scripts/ctl.sh : subversion stopped
Syntax OK
/home/slack/programas/redmine-0.8.1-2/apache2/scripts/ctl.sh : httpd stopped
already stopped port 3001
already stopped port 3002
/home/slack/programas/redmine-0.8.1-2/mysql/scripts/ctl.sh : mysql stopped

Ahora debemos eliminar los pids relacionados al error anterior, debemos ir a la siguiente ruta, ejecutar el comando ls, para listar los pids que debemos eliminar:

slack@zion:~/programas/redmine-0.8.1-2/apps/redmine/tmp/pids$ ls
mongrel.3001.pid mongrel.3002.pid

slack@zion:~/programas/redmine-0.8.1-2/apps/redmine/tmp/pids$ rm *.*

Ahora volvemos a arrancar Redmine, con comandos y vemos que el log ya no nos impide levantar correctamente los servicios.

slack@zion:~/programas/redmine-0.8.1-2$ ./ctlscript.sh start
nohup: redirecting stderr to stdout
Starting mysqld.bin daemon with databases from /home/slack/programas/redmine-0.8.1-2/mysql/data
/home/slack/programas/redmine-0.8.1-2/mysql/scripts/ctl.sh : mysql started at port 3307
starting port 3001
starting port 3002
Syntax OK
/home/slack/programas/redmine-0.8.1-2/apache2/scripts/ctl.sh : httpd started at port 8080
/home/slack/programas/redmine-0.8.1-2/subversion/scripts/ctl.sh : subversion started at port 3690

Ingresamos por el browser, http://localhost:8089/redmine (en mi caso lo tengo configurado en el puerto 8089)

nos debe despliegar una pagina similar a la siguiente,




Saludos y suerte !!