Preparando o Fedora 17 64 bits para instalar o Oracle Service Bus 11g
Autor: zero-2 | Publicado: 2012-09-21T13:33:00-07:00



Nesta postagem, instalaremos todos os componentes necessários para, futuramente, o Ofacle Fusion Middleware OSB 11.1.1. Este procedimento também instala os softwares necessários para gerar um ambiente de desenvolvimento baseado em Oracle Weblogic Server e Oracle Database. Inicialmente necessitamos instalar alguns softwares/Middlewares que serão referenciados ou utilizados pelo OSB, que são:

- JDK 1.6.0_35
- Oracle Database XE 11g
- Oracle Enterprise Pack for Eclipse
- Oracle Weblogic Server 11g (10.36)

Após instalarmos e e configurarmos estes softwares, partiremos para a instalação do OSB.

Para executar esses comandos, precisamos adicionar nosso usuário no grupo dos sudoers. Para isso basta executar o seguinte comando como root:

echo 'loginname ALL=(ALL) ALL' >> /etc/sudoers

Lembre-se de substituir "loginname" pelo nome do usuário que deseja adicionar.

Configurando a JDK 1.6.0_35

Baixe o instalador (no meu caso, usei o arquivo jdk-6u35-linux-x64.bin) do site da Oracle. Abra um terminal, vá até a pasta de download e execute os seguintes comandos:

chmod +x jdk-6u35-linux-x64.bin
./jdk-6u35-linux-x64.bin

Após executar estes comandos, uma pasta contendo a JDK será gerada no diretório corrente. Vamos movê-la para a pasta /usr/java e então configurar o sistema para utilizar a JDK:

sudo mkdir /usr/java
sudo mv jdk1.6.0_35 /usr/java

Agora vamos configurar o JDK no sistema. Inicialmente temos que exportar as variáveis de CLASSPATH e JAVA_HOME, porém, para que estas sejam exportadas automaticamente na inicialização do sistema, adicionaremos estas variáveis ao arquivo /etc/environment:

sudo vi /etc/environemt

Insira o seguinte conteúdo no arquivo:

CLASSPATH=/usr/java/jdk1.6.0_35/lib/
JAVA_HOME=/usr/java/jdk1.6.0_35/

Salve o arquivo (ESC, wq) e então execute o seguinte comando para disponibilizar as variáveis no ambiente:

source /etc/environment

Agora execute os seguintes comandos para criar diretórios necessários, links simbólicos e adicionar a JDK como alternativa java para o sistema:

sudo mkdir -p /usr/lib/jvm /usr/lib/jvm-exports

sudo alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_35/bin/java 15000 \
--slave /usr/lib/jvm/jre jre /usr/java/jdk1.6.0_35/jre \
--slave /usr/lib/jvm-exports/jre jre_exports /usr/java/jdk1.6.0_35/jre/lib \
--slave /usr/bin/keytool keytool /usr/java/jdk1.6.0_35/jre/bin/keytool \
--slave /usr/bin/orbd orbd /usr/java/jdk1.6.0_35/jre/bin/orbd \
--slave /usr/bin/pack200 pack200 /usr/java/jdk1.6.0_35/jre/bin/pack200 \
--slave /usr/bin/rmid rmid /usr/java/jdk1.6.0_35/jre/bin/rmid \
--slave /usr/bin/rmiregistry rmiregistry /usr/java/jdk1.6.0_35/jre/bin/rmiregistry \
--slave /usr/bin/servertool servertool /usr/java/jdk1.6.0_35/jre/bin/servertool \
--slave /usr/bin/tnameserv tnameserv /usr/java/jdk1.6.0_35/jre/bin/tnameserv \
--slave /usr/bin/unpack200 unpack200 /usr/java/jdk1.6.0_35/jre/bin/unpack200 \
--slave /usr/share/man/man1/java.1 java.1 /usr/java/jdk1.6.0_35/man/man1/java.1 \
--slave /usr/share/man/man1/keytool.1 keytool.1 /usr/java/jdk1.6.0_35/man/man1/keytool.1 \
--slave /usr/share/man/man1/orbd.1 orbd.1 /usr/java/jdk1.6.0_35/man/man1/orbd.1 \
--slave /usr/share/man/man1/pack200.1 pack200.1 /usr/java/jdk1.6.0_35/man/man1/pack200.1 \
--slave /usr/share/man/man1/rmid.1.gz rmid.1 /usr/java/jdk1.6.0_35/man/man1/rmid.1 \
--slave /usr/share/man/man1/rmiregistry.1 rmiregistry.1 /usr/java/jdk1.6.0_35/man/man1/rmiregistry.1 \
--slave /usr/share/man/man1/servertool.1 servertool.1 /usr/java/jdk1.6.0_35/man/man1/servertool.1 \
--slave /usr/share/man/man1/tnameserv.1 tnameserv.1 /usr/java/jdk1.6.0_35/man/man1/tnameserv.1 \
--slave /usr/share/man/man1/unpack200.1 unpack200.1 /usr/java/jdk1.6.0_35/man/man1/unpack200.1

sudo alternatives --install /usr/bin/javac javac /usr/java/latest/bin/javac 15000 \
--slave /usr/lib/jvm/java java_sdk /usr/java/jdk1.6.0_35 \
--slave /usr/lib/jvm-exports/java java_sdk_exports /usr/java/jdk1.6.0_35/lib \
--slave /usr/bin/appletviewer appletviewer /usr/java/jdk1.6.0_35/bin/appletviewer \
--slave /usr/bin/apt apt /usr/java/jdk1.6.0_35/bin/apt \
--slave /usr/bin/extcheck extcheck /usr/java/jdk1.6.0_35/bin/extcheck \
--slave /usr/bin/jar jar /usr/java/jdk1.6.0_35/bin/jar \
--slave /usr/bin/jarsigner jarsigner /usr/java/jdk1.6.0_35/bin/jarsigner \
--slave /usr/bin/javadoc javadoc /usr/java/jdk1.6.0_35/bin/javadoc \
--slave /usr/bin/javah javah /usr/java/jdk1.6.0_35/bin/javah \
--slave /usr/bin/javap javap /usr/java/jdk1.6.0_35/bin/javap \
--slave /usr/bin/jconsole jconsole /usr/java/jdk1.6.0_35/bin/jconsole \
--slave /usr/bin/jdb jdb /usr/java/jdk1.6.0_35/bin/jdb \
--slave /usr/bin/jhat jhat /usr/java/jdk1.6.0_35/bin/jhat \
--slave /usr/bin/jinfo jinfo /usr/java/jdk1.6.0_35/bin/jinfo \
--slave /usr/bin/jmap jmap /usr/java/jdk1.6.0_35/bin/jmap \
--slave /usr/bin/jps jps /usr/java/jdk1.6.0_35/bin/jps \
--slave /usr/bin/jrunscript jrunscript /usr/java/jdk1.6.0_35/bin/jrunscript \
--slave /usr/bin/jsadebugd jsadebugd /usr/java/jdk1.6.0_35/bin/jsadebugd \
--slave /usr/bin/jstack jstack /usr/java/jdk1.6.0_35/bin/jstack \
--slave /usr/bin/jstat jstat /usr/java/jdk1.6.0_35/bin/jstat \
--slave /usr/bin/jstatd jstatd /usr/java/jdk1.6.0_35/bin/jstatd \
--slave /usr/bin/native2ascii native2ascii /usr/java/jdk1.6.0_35/bin/native2ascii \
--slave /usr/bin/policytool policytool /usr/java/jdk1.6.0_35/bin/policytool \
--slave /usr/bin/rmic rmic /usr/java/jdk1.6.0_35/bin/rmic \
--slave /usr/bin/schemagen schemagen /usr/java/jdk1.6.0_35/bin/schemagen \
--slave /usr/bin/serialver serialver /usr/java/jdk1.6.0_35/bin/serialver \
--slave /usr/bin/wsgen wsgen /usr/java/jdk1.6.0_35/bin/wsgen \
--slave /usr/bin/wsimport wsimport /usr/java/jdk1.6.0_35/bin/wsimport \
--slave /usr/bin/xjc xjc /usr/java/jdk1.6.0_35/bin/xjc

Para confirmar que o comando foi executado corretamente, verifique através da execução dos seguintes comandos:

java -version
javac -version

Seu sistema Fedora está configurado para trabalhar com a JDK 1.6.0_35 da Oracle.

Configurando o Oracle Database 11g XE

Primeiramente devemos baixar o Oracle Database Express Edition 11g Release 2 for Linux x64. Após o fim do download, devemos abrir um terminal e navegar para a pasta na qual o arquivo oracle-xe-11.2.0-1.0.x86_64.rpm.zip foi armazenado e executar os seguintes comandos:

unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
sudo rpm -iv oracle-xe-11.2.0-1.0.x86_64.rpm

Após finalizar a instalação, o seguinte comando deve ser executado como root:

/etc/init.d/oracle-xe configure

Um processo de configuração da database será inicializado e solicitará uma porta para execução do Oracle Application Express. A porta padrão é a 8080, e eu gosto de mudar (por exemplo, 7787) pois esta porta é amplamente utilizada por servidores java. Depois o processo solicitará uma porta para rodar o listener do oracle, e nesse caso, mantenho a porta padrão (basta não inserir nenhum valor e pressionar enter para que seja mantida a porta 1521). O sistema solicitará uma senha para o usuário SYS e SYSTEM. Digite a senha, digite novamente para confirmar e pressione enter. O processo de configuração, perguntará então, se você deseja inicialiar o Oracle XE durante o boot da máquina, eu costumo deixar na inicialização, então digito "y". Finalmente seu oracle express está instalado e configurado. 
Agora é necessário adicionar um script para exportar as variáveis de ambiente do Oracle, e para isso devemos alterar o .bashrc. Para isso lembre de não estar logado como root. Você deve abrir o .bashrc com seu usuário.

cd ~
vi bashrc


E insira o seguinte código no final do arquivo:

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
 
ORACLE_HOSTNAME=localhost.localdomain; export ORACLE_HOSTNAME
ORACLE_UNQNAME=DB11G; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/xe; export ORACLE_HOME
ORACLE_SID=XE; export ORACLE_SID
NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`; export NLS_LANG
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
 
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
 
if [ $USER = "oracle" ]; then
&nbsp;&nbsp;&nbsp;&nbsp; if [ $SHELL = "/bin/ksh" ]; then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ulimit -p 16384
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ulimit -n 65536
&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ulimit -u 16384 -n 65536
&nbsp;&nbsp;&nbsp;&nbsp;fi
fi

Para testar basta digitar no terminal: 

sqlplus system

e abrir um browser (firefox ou chrome) e entrar na tela inicial do Oracle Application Express através do endereço:

http://localhost:7787/apex

Instalando o Oracle Enterprise Pack for Eclipse

Efetue o download do OEPE, e neste caso é muito importante que sua versão do OEPE seja a mesma do Oracle Service Bus a ser instalado. Eu estou usando o OEPE Indigo 11.1.1.8.0 64 bits nesta instalação. Após o término do download, descompacte o arquivo em uma pasta de sua vontade. Eu costumo criar uma estrutura que considero intuitiva para minhas ferramentas Oracle Fusion Middleware, conforme demonstrada a seguir:

mkdir /home/meuusario/Oracle/Tools/oepe-indigo-11.1.1

E descompacto lá dentro.

Instalando o Oracle Weblogic Server

Para instalar o Oracle Weblogic Server 11g em uma máquina contendo SO Linux 64 bits (com uma vm 64 bits, como é o nosso caso), devemos baixar o arquivo de instalação generic, empacotado em um JAR. Este arquivo está disponível em uma tabela, abaixo das releases atuais (Oracle WebLogic Server Previous Releases). A coluna que contém o arquivo é denominada "Additional Platforms (For 64-bit JVM Support, See Note Above)" e a linha possui o rótulo "Oracle WebLogic Server 11gR1 (10.3.6) + Coherence - Package Installer". O nome do arquivo que será baixado é wls1036_generic.jar. Após o término do download, abra um terminal, navegue para a pasta na qual o arquivo foi salvo e execute o seguinte comando:

java -jar wls1036_generic.jar

Siga o wizard de instalação com os valores padrões e, quando este processo for terminado, você possuirá o Oracle Weblogic Server 11g instalado em seu sistema (em artigos posteriores cobriremos a execução do RCU para criar os objetos necessários na base de dados, instalação do Oracle Service Bus e a criação de um domínio para utilização).

Referências:

http://blog.mclaughlinsoftware.com/2011/09/27/oracle-11g-xe-on-fedora/
http://www.rackspace.com/knowledge_center/article/how-to-install-the-oracle-jdk-on-fedora-15-16
http://www.mjmwired.net/resources/mjm-fedora-fc6.html#sudo