Instala Jboss

De Slacam_Wiki
Ir para: navegação, pesquisa

Neste HOWTO, nós estamos usando o  CentOS 5.4, JDK6 e JBoss 5.1.x.

Instalando o Java SE 6

Vamos lá !

Por padrão, CentOS 5.4 contém o pacote  java-1.4.2-gcj-compat-1.4.2.0-40jpp.115.

   [suba@suba-02 downloads]$ java -version
   java version "1.4.2"
   gij (GNU libgcj) version 4.1.2 20080704 (Red Hat 4.1.2-44)
   Copyright (C) 2006 Free Software Foundation, Inc.
   This is free software; see the source for copying conditions.  There is NO
   warranty; not even for MERCHANTABILITY or FITNESS FOR A PART ...

 Primeiro remova todos os pacotes java que estiver na distribuição:

 [root@suba-02 downloads]$ yum remove java*

Agora, você deve instalar a última versão do Java SE Development Kit (JDK). Você pode baixar de  http://java.sun.com/javase/downloads ou pelo repositório do DECEx.

Neste artigo, Eu baixeio Java SE Development Kit 6u18 for Platform Linux x64 (jdk-6u18-linux-x64-rpm.bin).

Para instalar o JDK , você tem de colocar  a permissão de arquivo para execução.


[root@suba-02 downloads]$ wget http://repo.decex.ensino.eb.br/ftp/jboss/java6_jboss51/jdk-6u18-linux-x64-rpm.bin
 
[root@suba-02 downloads]$ chmod 755 jdk-6u18-linux-x64-rpm.bin  
[root@suba-02 downloads]$ ./jdk-6u18-linux-x64-rpm.bin

Você pode verificar se está instalado correntamente o  Java SE em /usr/java/

Eu verifico rodando o comando  Java version no CentOS.

   [root@suba-00 downloads]# java -version
   java version "1.6.0_18"
   Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
   Java HotSpot(TM) 64-Bit Server VM (build 14.2-b01, mixed mode)

Crie links dinâmicos para o java de modo a ficar mais fácil quando for atualizar as versões.

   [root@suba-00 downloads]# mkdir /opt/java
   [root@suba-02 downloads]$ ln -s /usr/java/jdk1.6.0_18 /opt/java/jdk

Próximo, Eu criei as variáveis de ambiente do Java

   [root@suba-02 downloads]$ sudo vi /etc/profile.d/java.sh
  
   #
   # Java 
   #
   
   JAVA_HOME=/opt/java/jdk
   PATH=$PATH:$JAVA_HOME/bin
   CLASSPATH=$JAVA_HOME/lib
   LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/i386
   #JAVA_OPTS="-Djava.awt.headless=true"
   
   export JAVA_HOME PATH CLASSPATH LD_LIBRARY_PATH #JAVA_OPTS

Adiciono a permissão para execução do arquivo.

   [root@suba-02 downloads]$ chmod 755 /etc/profile.d/java.sh 

E executo o arquivo para atualizar as variáveis.

   [root@suba-02 downloads]$ . /etc/profile.d/java.sh 

Esta operação deixará os scripts intactos e quando fizer algum upgrade de versão java basta trocar os links dinâmicos.

Instalando o JBoss AS 5.1.x

Agora vamos instalar o  JBoss AS.

Façao o download do JBoss AS do JBoss.ORG ou então do repositório do DECEx.

Eu escolhi o  JBoss AS 5.1.0.GA (formato zip).

Como eu instalei o  JDK6, eu devo baixar o  jboss-5.1.0.GA-jdk6.zip por causa dos fontes do servidor de aplicação serem compilados com  JDK6. Entretanto, você pode usar o jboss-5.1.0.GA.zip que está compilado com JDK5 (no caso de manter compatibildiade).

Nós descomprimimos o arquivo em /usr/java.

  [root@suba-02 downloads]$ wget http://repo.decex.ensino.eb.br/ftp/jboss/java6_jboss51/jboss-5.1.0.GA-jdk6.zip

 [root@suba-02 downloads]$ unzip jboss-5.1.0.GA-jdk6.zip -d /usr/java/

Aqui também crieir links dinâmicos para o caso de fazer algum upgrade no futuro.

   [root@suba-00 downloads]# ln -s /usr/java/jboss-5.1.0.GA /opt/java/jboss

Criamos as variáveis de ambiente para o JBoss

   [root@suba-02 ~]# vi /etc/profile.d/jboss.sh
   # 
   # JBoss AS
   #
   
   JBOSS_HOME=/opt/java/jboss
   PATH=$PATH:$JBOSS_HOME/bin
   
   export JBOSS_HOME PATH

Adicionamos a permissão de execução do arquivo.

   [root@suba-02 downloads]$ chmod 755 /etc/profile.d/jboss.sh 

E executamos o arquivo para atualizar as nossas variáveis.

   [root@suba-02 downloads]$ . /etc/profile.d/jboss.sh 

Eu criei um novo usuário chamado  jboss e atritibui as permissões dele para as pastas. Cuidado, nunca inicie o  JBoss AS como usuário root !

   [root@suba-02 ~]# adduser jboss
   [root@suba-02 bin]$ chown -Rf jboss.jboss /opt/java/jboss/

Você pode iniciar o  JBoss AS manualmente.

   [root@suba-00 bin]# su - jboss
   [jboss@suba-02 bin]$ /opt/java/jboss/bin/run.sh 

Por padrão, esse mesmo comando pode ser dado com parâmetros

   [jboss@suba-02 bin]$ /opt/java/jboss/bin/run.sh -b 127.0.0.1 -c default

Com a sentença acima, você apenas pode acessar o  JBoss AS da máquina local (localhost).

Se você quiser acessar por um IP remoto, coloque  -b 0.0.0.0 para qualquer endereço IP  (ou -b ip_seu_servidor).

   [root@suba-02 bin]$ /opt/java/jboss/bin/run.sh -b 0.0.0.0

Por padrão, nós usamos a profile default que corresponde a pasta $JBOSS_HOME/server/default que é usado pelo JBoss AS.

Você irá ver o log de inicialização rolando na tela e quando o JBoss carrega normalmente a última linha será mais ou menos igual a essa:

   15:53:50,035 INFO  [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)] Started in 1m:15s:485ms

Uma vez levantado o servidor, você pode acessá-lo pela url http://seu_ip_servidor:8080

Pode-se parar o  JBoss AS com CTRC-L ou usando o comando abaixo por outra console

  [jboss@suba-00 bin]$ ./shutdown.sh -S

Agora, nós iremos criar o serviço do JBoss. Lembre-se de retornar para o usuário de root (exit).

   [root@suba-02 bin]$ cd /opt/java/jboss/bin
   [root@suba-02 bin]$ cp jboss_init_redhat.sh /etc/init.d/jboss
   [root@suba-02 bin]$ chmod +x /etc/init.d/jboss 

Deve-se modificar esse arquivo:

   [root@neodoo-02 bin]$ vi /etc/init.d/jboss

# chkconfig: - 64 36
   # description: Jboss Start|Restart|Stop Application Server
   # pidfile: /var/run/jboss.pid

   ....
  
JBOSS_HOME=${JBOSS_HOME:-"/opt/java/jboss"}

#define the user under which jboss will run, or use 'RUNASIS' to run as the current user
JBOSS_USER=${JBOSS_USER:-"jboss"}

#make sure java is in your path
JAVAPTH=${JAVAPTH:-"/opt/java/jdk"}

#configuration to use, usually one of 'minimal', 'default', 'all'
JBOSS_CONF=${JBOSS_CONF:-"default"}

#if JBOSS_HOST specified, use -b to bind jboss services to that address
JBOSS_HOST="0.0.0.0"
JBOSS_BIND_ADDR=${JBOSS_HOST:+"-b $JBOSS_HOST"}

...



Observe que JBOSS_HOST corresponde para  -c ip_server, JBOSS_CONF para  o -b profile e JBOSS_USER para o usuário que inicia o JBoss AS como um serviço.

Iremos adicionar o  JBoss como um serviço.

    [root@suba-02 init.d]# chkconfig --add jboss

    [root@suba-02 init.d]# chkconfig --list

    [root@suba-02 init.d]# chkconfig jboss --level 3 on

Você pode iniciar  JBoss AS

    [root@suba-02 bin]$ service jboss start

Se você não estiverm tendo acesso verifique se o firewall do linux (iptables) está bloqueando a porta 8080.

    [root@suba-02 bin]$ sudo /etc/init.d/iptables stop

Para parar o  JBoss AS

    [root@suba-02 bin]$ service jboss stop

<br> É isso aí.

Na próxima dica explicaremos como usar o apache para servir de proxy do Jboss

<br>

Até lá.