jboss 7 como servicio en ubuntu 11.04

jboss 7

Para que el jboss 7 pueda iniciar como servicio cuando tu maquina con ubuntu prenda no es tan dificil solo que no hay documentacion adecuada, la documentacion que encontre era para configurar el jboss 4 o 5 y como cambiaron los los arvhivos entonces se complica poquito la cosa, ademas de que los scripts que vienen en el jboss 7 son para redhat y suse, bueno entonces pasamos a nuestro problema de como hacer para iniciar jboss 7 al iniciar ubuntu 11.04, bueno encontre en el foro de stackoverflow informacion acerca de esto y ahi esta la solucion facil y rapida y es la siguiente:

[cc lang=”bash”]
#!/bin/sh
### BEGIN INIT INFO
# Provides: jboss
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start/Stop JBoss AS v7.0.0
### END INIT INFO
#
#source some script files in order to set and export environmental variables
#as well as add the appropriate executables to $PATH
[ -r /etc/profile.d/java.sh ] && . /etc/profile.d/java.sh
[ -r /etc/profile.d/jboss.sh ] && . /etc/profile.d/jboss.sh

case “$1” in
start)
echo “Starting JBoss AS 7.0.0”
sudo -u jboss sh ${JBOSS_HOME}/bin/standalone.sh
;;
stop)
echo “Stopping JBoss AS 7.0.0”
sudo -u jboss sh ${JBOSS_HOME}/bin/jboss-admin.sh –connect command=:shutdown
;;
*)
echo “Usage: /etc/init.d/jboss {start|stop}”
exit 1
;;
esac

exit 0[/cc]

Solo copian ese codigo en archivo y le ponen de nombre jboss, luego lo guardan en la siguiente ruta:
[cc lang=”bash”] /etc/init.d/ [/cc]

Una vez que lo haz copiado en ese ruta ahora lo que tienes que hacer es correr las siguiente linea de codigo:

[cc lang=”bash”]sudo chmod 755 /etc/init.d/jboss
sudo update-rc.d jboss defaults[/cc]

OJO algo importante es crear una variable de entorno llamada JBOSS_HOME para crearla hay 3 formas

  • Editando el archivo /etc/environmen y agregar la linea [cc lang=”bash”]JBOSS_HOME=mirutadondetengoeljboss[/cc]
  • Otra forma es editar el archivo /etc/profile y agregar la misma linea.
  • Otra es usando la instruccion export [cc lang=”bash”]export JBOSS_HOME=mirutadejboss[/cc]

Tambien tienen que crear un usuario llamado jboss pero esto es opcional ya que puedes usar tu usuario u otro usuario.

Y si no quieres agregar las variables de entorno entonces puedes hacer lo siguiente con la siguientes lineas
[cc lang=”bash”] sudo -u jboss sh ${JBOSS_HOME}/bin/standalone.sh[/cc]
Puedes cambiarlo por
[cc lang=”bash”]sudo -u jboss sh /home/godie/jboss/bin/standalone.sh [/cc]
En mi caso tenia el jboss en mi carpeta personal /home/godie/jboss solo cambia esa ruta en donde tu tengas el jboss.

y tambien esta linea
[cc lang=”bash”]sudo -u jboss sh ${JBOSS_HOME}/bin/jboss-admin.sh –connect command=:shutdown[/cc]
La cambias igual que la de arriba asi:
[cc lang=”bash”]sudo -u jboss sh /home/godie/jboss/bin/jboss-admin.sh –connect command=:shutdown[/cc]

Con respecto asi no quieres crear el usuario jboss, y quieres usar el tuyo default por ejemplo en mi caso mi usuario es godie entonces las lineas quedarian asi:

[cc lang=”bash”]sudo -u godie sh /home/godie/jboss/bin/standalone.sh [/cc]
[cc lang=”bash”]sudo -u godie sh /home/godie/jboss/bin/jboss-admin.sh –connect command=:shutdown[/cc]

Pero para agregar el usuario jboss es muy sencillo solo ejecutas:

[cc lang=”bash”]useradd jboss[/cc]

Listo ya creaste el usuario.

para asignmarle un password ejecutas:
[cc lang=”bash”]passwd jboss[/cc]
Te pedira que escribas el password para el usuario jboss.

Un momento acabo de encontrar que puedo poner variables en los archivos bash entonces el script quedaria de la siguiente forma ojo que estoy usundo mi usuario godie:
[cc lang=”bash”]
#!/bin/sh
### BEGIN INIT INFO
# Provides: jboss
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start/Stop JBoss AS v7.0.0
### END INIT INFO
#
#source some script files in order to set and export environmental variables
#as well as add the appropriate executables to $PATH
[ -r /etc/profile.d/java.sh ] && . /etc/profile.d/java.sh
[ -r /etc/profile.d/jboss.sh ] && . /etc/profile.d/jboss.sh
#esta linea es nueva y agregamos nuesrtro path donde se encuentra el jboss y listo
JBOSS_HOME=”/home/godie/jboss”
case “$1” in
start)
echo “Starting JBoss AS 7.0.0”
sudo -u godie sh ${JBOSS_HOME}/bin/standalone.sh
;;
stop)
echo “Stopping JBoss AS 7.0.0”
sudo -u godie sh ${JBOSS_HOME}/bin/jboss-admin.sh –connect command=:shutdown
;;
*)
echo “Usage: /etc/init.d/jboss {start|stop}”
exit 1
;;
esac

exit 0
[/cc]

Espero que le sirva a alguien. Alguna duda o sugerencia en los comentarios.

La informacion para agregar el jboss as service en ubuntu fue obtenida de stackoverflow en este post el autor de la solucion es Andrey

Para agregar variables de entorno http://ubuntuforums.org/archive/index.php/t-466520.html y tambien por aqui https://help.ubuntu.com/community/EnvironmentVariables
Para agregar usuarios nuevos http://www.linuxparatodos.net/portal/staticpages/index.php?page=02-cuentas-usuario

Artículos Relacionados

Comentarios

  1. Información Bitacoras.com…

    Valora en Bitacoras.com: Para que el jboss 7 pueda iniciar como servicio cuando tu maquina con ubuntu prenda no es tan dificil solo que no hay documentacion adecuada, la documentacion que encontre era para configurar el jboss 4 o 5 y como cambiaron l…..