Instala Jboss

De Slacam_Wiki
Revisão de 00h28min de 24 de março de 2010 por Machado (Discussão | contribs)

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
<span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;" class="Apple-style-span"><span style="font-family: sans-serif; font-size: 13px; line-height: 19px;" class="Apple-style-span"><pre style="padding: 1em; border: 1px dashed rgb(47, 111, 171); color: black; background-color: rgb(249, 249, 249); line-height: 1.1em;"> '''# 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"}
  
...
</span></span></pre>

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


É isso aí.

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


Até lá.