viernes, 23 de agosto de 2013

Creación de un dominio WebLogic para SOA, OSB, BPM y BAM

En nuestra máquina con sistema operativo Oracle Linux 64 bits se creará un dominio WebLogic con la siguiente configuración:

  • Se usará JRockit como JVM, no el JDK de Sun, para asemejarlo a un entorno de producción.
  • La base de datos del repositorio de la SOA estará instalada en otra máquina: soa11db.
  • Un servidor para el administrador del dominio: AdminServer.
  • Un servidor administrado para la SOA Suite, BPM Suite y Oracle Service Bus: soa_osb_server1.
  • Un servidor administrado para el BAM: bam_server1.

Para conseguir lo anterior, primero se crea el dominio para el OSB y luego se extiende ese dominio para la SOA, BPM y el BAM.

Antes de poder crear el dominio se deben realizar las siguientes acciones:

a) Tener instalados los esquemas RCU en el servidor de Base de Datos soa11db.
b) Instalar JRockit 6
c) Instalar WebLogic Server 10.3.6.0
d) Instalar Oracle Service Bus 11.1.1.7.0

e) Instalar Oracle SOA Suite 11.1.1.7.0

 

Indice


1. Creación de un dominio WebLogic para OSB
2. Extensión del dominio para agregar SOA y BPM
3. Extensión del dominio para agregar BAM
4. Subir toda la plataforma SOA 


Creación de un dominio WebLogic para OSB


1. Configurar IP y nombre de host:
se cambia el nombre de la máquina por soa11 y se setea IP fija. 

Ejecutar como root:
vi /etc/sysconfig/network 
Cambiar HOSTNAME a soa11.

vi /etc/hosts 

Se agregan las líneas:
172.16.1.132 soa11   soa11.localdomain
172.16.1.135 soa11db soa11db.localdomain

Notar que también se agrega el servidor soa11db donde está la BD. También se debe cambiar la IP en las propiedades de red (Network Connections). Reiniciar. 

2. Crear directorio de instalación: creamos el directorio donde instalaremos nuestro dominio SOA. 

Ejecutar como usuario root:
cd /
mkdir app
chown oracle:oracle app

 

Ejecutar como usuario oracle:
cd /app
mkdir oracle

 

3. Setear variable de entorno CONFIG_JVM_ARGS: ejecutar como usuario oracle:
CONFIG_JVM_ARGS=-Djava.security.egd=file:/dev/./urandom

Según el manual oficial, este seteo mejora el tiempo de creación del dominio.

4. Ejecutar Configuration Wizard
cd /home/oracle/Oracle/Middleware/wlserver_10.3/common/bin
sh config.sh


5. Ventana Welcome: elegir Crear un nuevo dominio WebLogic (opción default).
 

6. Select Domain Source: se hace click en los siguientes productos:
 - Oracle Service Bus
    Dependencia:

  - WebLogic Advanced Web Services for JAX-RPC Extension
- Oracle Service Bus OWSM Extension
    Dependencias:
  - Oracle WSM Policy Manager

  - Oracle JRF

NOTA: JRF = Java Required Files: componentes requeridas por la SOA que no vienen en la instalación de WebLogic Server.

NOTA: la primera componente Basic WebLogic Server Domain, siempre viene seleccionada.

7. Specify Domain Name and Location
Nombre dominio : soadomain
Domain location  : /app/oracle/admin/domains
 

NOTA: el valor default de Domain Location es MW_HOME\user_projects\domains, pero no se debe usar ese valor. Oracle recomienda que todos los dominios que se creen, se hagan fuera del directorio del Middleware Home. Eso hace más fácil borrar una instalación de WebLogic o instalar una versión más nueva de WebLogic Server sin tener que recrear los dominios.

8. Configure Administrator username and password
Name        : weblogic
Password : welcome1
 

9. Configure Server Start Mode and JDK
WebLogic Domain Startup Mode: Production Mode
Available JDKs: JRockit SDK (es el que se instaló previamente, lo reconoce por default). 

10. Configure JDBC Component Schema: la BD en soa11db debe estar arriba (instancia y listener). Seleccionar el checkbox de todos los esquemas asociados.

Vendor: Oracle
DBMS/Service: dbora11
 
Driver: Oracle's Driver (Thin) for Service connections. Se elige esta opción cuando se usa el service name en el valor anterior (no el SID) aunque en nuestro caso tienen el mismo valor.
Hostname: soa11db
Port: 1521
Schema Password: oracle (para todos los esquemas es la misma).

NOTA: el campo Schema Owner no se toca.

11. Test JDBC Component Schema: se pasa la prueba exitosamente.
 

12. Select Optional Configuration: se selecciona: "Managed Servers, Clusters and Machines".
- Configure Managed Servers: se cambia el nombre del servidor osb_server1 por soa_osb_server1
- Configure Clusters: click Next.
- Configure Machines: click Next.

- Click Create.

13. Validando la instalación:
- Subir el AdminServer:
cd /app/oracle/admin/domains/soadomain
. ./startWebLogic.sh

- Se debe ingresar el user/password: weblogic/welcome1
- Conectarse a la consola: http://soa11:7001/console


NOTA: En una ocasión me apareció el siguiente error al tratar de iniciar el AdminServer:

<Jul 27, 2013 7:28:43 PM CLT> <Error> <Deployer> <BEA-149205> <Failed to initialize the application 'consoleapp' due to error weblogic.application.ModuleException: Failed to load webapp: 'console'.
weblogic.application.ModuleException: Failed to load webapp: 'console'
...
Caused By: java.util.zip.ZipException: Could not read zip file
    at java.util.zip.ZipFile.open(Native Method)

 

Este error apareció, probablemente, porque durante el arranque del AdminServer mi computador estaba quedando con poca memoria y virtualbox me envió un mensaje de error: Unable to allocate and lock memory (Error ID: HostMemoryLow).


Extensión del dominio para agregar SOA y BPM


Ejecutar como usuario oracle:

1. Setear variable de entorno
CONFIG_JVM_ARGS=-Djava.security.egd=file:/dev/./urandom

2. Ejecutar Configuration Wizard
cd /home/oracle/Oracle/Middleware/wlserver_10.3/common/bin
sh config.sh


NOTA: el AdminServer debe estar arriba.

- Click en Extend an existing WebLogic domain.

- Click Next.

3. Select a WebLogic Domain Directory: /app/oracle/admin/domains/soadomain

4. Select Extension Source: hacer clik en:
- Oracle BPM Suite
    Dependencia:

  - Oracle SOA Suite 
- Oracle Enterprise Manager

5. Specify Domain Name and Location
Application location: /app/oracle/admin/applications
 

6. Configure JDBC Component Schema: sólo seleccionar los que no están bien configurados.

Vendor: Oracle
DBMS/Service: dbora11
 
Driver: Oracle's Driver (Thin) for Service connections.
Hostname: soa11db
Port: 1521
Schema Password: oracle


7. Select Optional Configuration: seleccionar Managed Servers, Clusters and Machines.

- Configure Managed Servers: se debe hacer el siguiente "enjuague" para que la aplicación soa-infra quede deployada en soa_osb_server1 y no en AdminServer:

  - Seleccionar soa_osb_server1 y borrarla: click Delete.
  - Cambiar el nombre de soa_server1 a soa_osb_server1
  - Click Next.
 

- Assign Servers to Machines: para asignar el servidor AdminServer a la máquina LocalMachine hacer click en la flecha ->
- Click Next.
- Click Extend.
- Reiniciar.



Extensión del dominio para agregar BAM 


Ejecutar como usuario oracle:

1. Setear variable de entorno
CONFIG_JVM_ARGS=-Djava.security.egd=file:/dev/./urandom

2. Ejecutar Configuration Wizard
cd /home/oracle/Oracle/Middleware/wlserver_10.3/common/bin
sh config.sh


NOTA: el AdminServer debe estar arriba. No subir soa_osb_server1.

- Click en Extend an existing WebLogic domain.

- Click Next.

3. Select a WebLogic Domain Directory: /app/oracle/admin/domains/soadomain

4. Select Extension Source: hacer clik en:
 
Oracle Business Activity Monitoring

Aparece un mensaje de Conflict Detected. Esto se debe a que BAM también necesita de Oracle WSM Policy Manager y de Oracle JRF, que son componentes ya instaladas. Se selecciona Keep existing component.

5. Configure JDBC Component Schema: sólo seleccionar BAM Schema.
Vendor: Oracle
DBMS/Service: dbora11
 
Driver: Oracle's Driver (Thin) for Service connections.
Hostname: soa11db
Port: 1521
Schema Password: oracle


6. Select Optional Configuration: seleccionar Managed Servers, Clusters and Machines.

- Configure Managed Servers: sólo se revisa para validar que tendremos 2 servidores administrados.

NOTA: si se cambia el puerto default para BAM (9001) habría que realizar algunas configuraciones post-instalación, de acuerdo al manual oficial.

- Click Next.
- Click Extend.
- Reiniciar.



Subir toda la plataforma SOA


1. Subir la Base de Datos y el listener: conectarse a soa11db como usuario oracle.
[oracle@soa11db ~]$ sqlplus "/ as sysdba"
SQL> startup
SQL> exit
[oracle@soa11db ~]$ lsnrctl start

2. Subir el AdminServer: conectarse a la máquina soa11 como usuario oracle.
cd /app/oracle/admin/domains/soadomain
. ./startWebLogic.sh
 


Conectarse a la consola de administración: http://soa11:7001/console 

Hacer click en Environment > Servers (menú de la izquierda). Validar que hay 2 servidores administrados en estado SHUTDOWN. 

Conectarse a la consola del OSB: http://soa11:7001/sbconsole. Validar que muestra un mensaje de error porque el OSB todavía no se ha iniciado: "Unable to obtain metrics data from the server".

Conectarse a la consola del enterprise manager: http://soa11:7001/em. Validar que no muestra la SOA en el menú de la izquierda (Farm_soadomain).

Conectarse a la consola de BAM: http://soa11:9001/OracleBAM. Validar que muestra un mensaje de error de conexión porque el BAM todavía no se ha iniciado.

3. Subir la SOA Suite y el OSB 
cd /app/oracle/admin/domains/soadomain/bin
. ./startManagedWebLogic.sh soa_osb_server1 http://soa11:7001 -Dweblogic.management.username=weblogic -Dweblogic.management.password=welcome1

Conectarse a la consola del OSB: http://soa11:7001/sbconsole. Validar que ya no muestra el mensaje de error.

Conectarse a la consola del enterprise manager: http://soa11:7001/em. Validar que sí muestra la SOA en el menú de la izquierda (Farm_soadomain).

4. Subir BAM 
NOTA: La primera vez que se inicie bam_server1 hay que asegurarse de haber iniciado completamente la SOA (servidor soa_osb_server1 en estado RUNNING), como se menciona en el manual oficial.

cd /app/oracle/admin/domains/soadomain/bin
. ./startManagedWebLogic.sh bam_server1 http://soa11:7001 -Dweblogic.management.username=weblogic -Dweblogic.management.password=welcome1
 


Conectarse a la consola del BAM (desde IExplorer):  
http://soa11:9001/OracleBAM

Y ahora...

...opcionalmente, podemos configurar el Node Manager en nuestro dominio.

---
EOF
---

No hay comentarios:

Publicar un comentario