Linux com Java 1.7 + JBoss 7
Recebi, a pouco tempo, a 'missão' de habilitar um Servidor com JBoss 7 no trabalho. E como bom analista que sou,
"missão dada é missão cumprida". Por isso, após um bom levantamento e disponibilizar o Servidor para produção,
resolvi compartilhar com vocês.
"missão dada é missão cumprida". Por isso, após um bom levantamento e disponibilizar o Servidor para produção,
resolvi compartilhar com vocês.
Parte 3: Criando um Controle para o Servidor JBoss
Bom, temos o nosso JBoss instalado.
Já podemos executar o Deploy em nossas aplicações, porém, como bom analistas que somos, não podemos deixar que o Servidor fique 'jogado'.
Toda vez que precisar iniciar o Servidor, vou ter que entrar na pasta BIN e executar o "standanlone.sh"? Não.
Vamos criar uma espécie de Demond do Servidor para verificar o status e deixar o PID salvo em um lugar, onde podemos encontrar rapidamente.
Obs.: Vou disponibilizar o Script de inicialização, o mesmo pode ser usado e modificado, porém, não pode ser alterado o seu cabeçalho.
1º Passo - Salve o seu Script dentro da pasta "bin" do JBoss e crie um link para a pasta "init.d":
# ln -s /usr/local/jboss/bin/jbossd /etc/init.d/jbossd
Feito isto, teste o seu Script:
# service jbossd status
* NAO EXISTE NENHUM SERVIDOR JBOSS RODANDO.
# service jbossd start
# service jboosd status
2º Passo - Feito o Script de inicialização, vamos utilizá-lo de maneira simples para chamar o JBoss quando o seu Servidor executar o reboot, ou precisar ser desligado.
# cd /usr/local/jboss/bin
# touch MTjboss
# echo -E ". /usr/local/jboss/bin/jbossd start" > MTjboss
Verifique em qual nível de execução sua máquina está:
# runlevel
# ln -s MTjboss /etc/rc.<SEU RUNLEVEL>/S96jbossd
# ln -s MTjboss /etc/rc.<SEU RUNLEVEL>/K96jbossd
Feito isso, já temos nosso ambiente 'amarrado'.
Já podemos executar o Deploy em nossas aplicações, porém, como bom analistas que somos, não podemos deixar que o Servidor fique 'jogado'.
Toda vez que precisar iniciar o Servidor, vou ter que entrar na pasta BIN e executar o "standanlone.sh"? Não.
Vamos criar uma espécie de Demond do Servidor para verificar o status e deixar o PID salvo em um lugar, onde podemos encontrar rapidamente.
Obs.: Vou disponibilizar o Script de inicialização, o mesmo pode ser usado e modificado, porém, não pode ser alterado o seu cabeçalho.
#
#SCRIPT RESPONSAVEL POR INICIALIZAR O SERVIDOR DO JBOSS
#
#AUTOR : LUCAS COSTA
#DATA 1 - ABR - 2012
#E-MAIL: mxsolucoes@gmail.com
#
#
export TERM=vt100
STAT=$1
if [ -e /var/log/servidorjboss.log ]
then
sleep 0
else
touch /var/log/servidorjboss.log
fi
if [ -e /var/run/jboss/jboss.pid ]
then
sleep 0
else
touch /var/run/jboss/jboss.pid
chmod 750 /var/run/jboss/jboss.pid
fi
LOGFILE="/var/log/servidorjboss.log"
STANDALONE="/usr/local/jboss/bin/standalone.sh"
PIDFILE="/var/run/jboss/jboss.pid"
VAR(){
VERPID=`cat $PIDFILE | xargs`
CONF=`cat $PIDFILE | wc -l`
}
chamajboss() {
VAR
[ $CONF -gt 0 ] && verjboss
if [ $CONF = 0 ]
then
MSG01="INICIANDO SERVIDOR JBOSS"
$STANDALONE >/dev/null &
JBOSS_PID01=$!
sleep 2
echo $JBOSS_PID01 >> $PIDFILE
MSG02="SERVIDOR JBOS INICIADO"
echo $MSG01 >> $LOGFILE
echo $MSG02 >> $LOGFILE
else
MSGERRO="ERRO DESCONHECIDO AO INICIAR O SERVIDOR JBOSS"
echo $MSGERRO >> $LOGFILE
fi
}
#
#
#
#
#FUNCAO DE PARAR O JBOSS
parajboss() {
VAR
if [ $CONF = 0 ]
then
echo "NAO EXISTE NENHUM SERVIDOR JBOSS RODANDO"
exit 0
else
echo -E "Localizando servico Jboss"
echo -E "Servidor Jboss encontrado, parando o servico"
for i in $VERPID; do kill -9 $i;done
echo -E "Servidor parado"
rm -rf $PIDFILE
MSG001="PARANDO SERVIDOR JBOSS"
MSG001="SERVIDOR JBOSS PARADO"
echo $MSG001 >> $LOGFILE
echo $MSG001 >> $LOGFILE
exit 0
fi
}
#
#
#
#FUCAO DE VERIFICA STATUS DO JBOSS
verjboss() {
VAR
if [ $CONF = 0 ]
then
echo "NAO EXISTE NENHUM SERVIDOR JBOSS RODANDO"
exit 0
else
echo "JA EXISTE SERVIDOR JBOSS RODANDO NOS PIDS: $VERPID" | xargs
exit 0
fi
}
case $STAT in
start ) chamajboss ;;
stop ) parajboss ;;
status ) verjboss ;;
*) echo "OPCAO INCORRETA UTILIZE (start|stop|status)" ;;
esac
1º Passo - Salve o seu Script dentro da pasta "bin" do JBoss e crie um link para a pasta "init.d":
# ln -s /usr/local/jboss/bin/jbossd /etc/init.d/jbossd
Feito isto, teste o seu Script:
# service jbossd status
* NAO EXISTE NENHUM SERVIDOR JBOSS RODANDO.
# service jbossd start
INICIANDO SERVIDOR JBOSS
SERVIDOR JBOSS INICIADO
# service jboosd status
JA EXISTE SERVIDOR JBOSS RODANDO NOS PIDS: <PID DO SEU PORCESSO>
2º Passo - Feito o Script de inicialização, vamos utilizá-lo de maneira simples para chamar o JBoss quando o seu Servidor executar o reboot, ou precisar ser desligado.
# cd /usr/local/jboss/bin
# touch MTjboss
# echo -E ". /usr/local/jboss/bin/jbossd start" > MTjboss
Verifique em qual nível de execução sua máquina está:
# runlevel
# ln -s MTjboss /etc/rc.<SEU RUNLEVEL>/S96jbossd
# ln -s MTjboss /etc/rc.<SEU RUNLEVEL>/K96jbossd
Feito isso, já temos nosso ambiente 'amarrado'.
$ su
(inserir senha do super usuario solicitada)
# vim /etc/profile
ou
# nano /etc/profile
ou
$ sudo vim /etc/profile
ou
$ sudo nano /etc/profile
DICA #2 - Ao Adicionar o seguinte texto ao aquivo /etc/profile, tomar cuidado com o "export PATH JAVA_HOME" que estava sendo passado junto na segunda linha, dê ENTER para ele cair para terceira linha, igual ao texto abaixo:
JAVA_HOME=/usr/lib/jvm/jdk1.7
PATH=$JAVA_HOME/bin:$PATH
export PATH JAVA_HOME
CLASSPATH=$JAVA_HOME/lib/tools.jar
CLASSPATH=.:$CLASSPATH
export PATH JAVA_HOME CLASSPATH
-------
Há o mesmo erro no meu artigo (http://vivaolinux.com.br/artigo/Instalacao-e-Configuracao-do-JDK-7/?pagina=2). Enviei email ao pessoal do VoL, até agora não corrigiram. FIKDIK
=D
Ótimo artigo, sempre tive curiosidade de testar o JBOSS, mas jamais tive interesse nessa ferramenta pois, nem sempre está claro como instalá-la e botá-la para funcionar. VLEW... ABRAÇO..