Tema 2: Instalación del servidor Bea WebLogic

Los pasos a seguir en la instalación de un servidor de aplicaciones es la siguiente:

  1. Instalación del software. Esta acción copia los ficheros necesarios y crea la estructura inicial de directorios.
  2. Configuración de dominios. Debemos configurar el o los dominios necesarios y todos los componentes dentro de cada dominio (servidores, cluster, máquinas, etc.).

2.1. Instalación del servidor de aplicaciones

Vamos a instalar el servidor de aplicaciones Bea WebLogic. La instalación descrita aquí es para la versión 7.0 y bajo el sistema operativo Linux. Los requerimientos del sistema para la instalación de esta versión son:

Ejecutamos el fichero platform701_linux.bin (no es necesario ser superusuario para instalar el servidor de aplicaciones). Esperamos hasta que nos aparezca la siguiente pantalla.

 

Pinchamos en Next. Si ya disponemos de un directorio creado lo podemos elegir de la lista. Si no podemos dejar el mostrado por defecto.

En la pantalla siguiente elegimos la instalación típica y después el directorio por defecto (weblogic700). Empezará la instalación que durará unos minutos. Cuando finalice nos aparecerá la ventana siguiente. Deseleccionamos la opción Run QuickStart y pinchamos en Done. Hemos finalizado la instalación del servidor.

La estructura de directorios creada en la instalación es la siguiente:

El directorio jdk131_03 contiene la distribución 1.3.1 de J2SE de Sun. Si tenemos una versión actualizada de Java simplemente la añadiremos al CLASSPATH. En este punto debemos tener un cuidado especial y comprobar si la versión de Java es soportada por la versión del servidor de aplicaciones. Para comprobarlo visitar la página de Bea. El directorio de logs contiene el fichero log de instalación. El directorio utils contiene algunas utilidades que iremos viendo conforme las utilicemos. El siguiente directorio, weblogic700, es el que contiene todas las librerías, clases y herramientas adicionales para el funcionamiento de nuestro servidor. El fichero license.bea contiene la información de nuestra licencia en formato XML. Contendrá información de la fecha de expiración de la licencia, de qué características disponemos (número de puestos, número de IPs, etc.), y toda la información necesaria para la ejecución del servidor.

A su vez, el directorio weblogic700 contiene los siguientes subdirectorios:

Nos interesan, de momento, el directorio common y el server. Common contiene los subdirectorios mostrados en la siguiente figura. En el directorio bin tenemos una herramienta para crear dominios. El directorio nodemanager contiene ficheros de configuración para el Node Manager.

El directorio server contiene datos y utilidades relacionadas con el servidor de aplicaciones. En el directorio bin (mostrado en la siguiente figura) tenemos varias aplicaciones y los scripts para arrancar el servidor de aplicaciones y el Node Manager. El ejecutable para arrancar un servidor que se crea en nuestro dominio llama a estos ejecutables. En otro directorio dentro de server, el subdirectorio lib, tenemos el fichero weblogic.jar que tendremos que incluir en el classpath cuando queramos realizar una aplicación que utilice los recursos de WebLogic. También disponemos en este directorio de los ficheros que gestionan las políticas de seguridad.

2.2. Arranque del dominio y consola de administración

Antes de empezar a definir los elementos que soportan la ejecución del servidor de aplicaciones vamos a comentar algunos conceptos sobre los distintos tipos de servidores.

Como ya hemos comentado, nuestra principal unidad de trabajo es el dominio. El dominio no es más que una agrupación de todos los componentes que utilizamos para nuestro trabajo (servidores, máquinas, aplicaciones, etc.). Un ejemplo de uso de dominios es el siguiente. Cuando se desarrolla una aplicación se suele separar la fase de desarrollo de una aplicación con la fase de producción (cuando la aplicación ya está funcionando hacia el usuario y dando servicio). Para manejar esta situación podemos tener creados dos dominios, uno para desarrollo y otro para producción. A pesar de contener exactamente los mismos componentes funcionan de forma independiente.

Dentro de un dominio vamos a tener máquinas y servidores. Al menos debemos tener un servidor en nuestro dominio, que llamaremos de administración. El servidor de administración es único en el dominio y va a realizar, como su nombre indica, tareas administrativas. Podemos tener más servidores, que llamaremos administrados (managed). De este tipo de servidor podemos tener tantos como queramos.

Vamos a empezar a crear nuestro primer dominio. Vamos a llamarlo MiDominio y contendrá dos servidores alojados en la misma máquina: Servidor1 y Servidor2. El servidor 1 será el de administración. Utilizaremos un asistente que incorpora Weblogic para crear el dominio y los servidores. Nos situamos en $HOME_BEA/weblogic700/common/bin ($HOME_BEA es el directorio donde hemos instalado Weblogic, en mi máquina /home/miguel/bea) y ejecutamos ./dmwiz.sh

Nos aparecerá la ventana que se muestra en la siguiente figura, en la que selecionaremos WLS domain y le damos el nombre que queramos, en nuestro caso MiDominio. Pulsamos en el botón Next.

Ahora debemos seleccionar si queremos instalar sólo un servidor, un servidor de administración con servidores administrados, lo mismo en cluster o un servidor administrado. Vamos a seleccionar la opción mostrada: un servidor de administración con servidores administrados.

Pulsamos Next y nos indica que introduzcamos el directorio de instalación (dejamos el que viene por defecto). Pulsamos Next.

En la siguiente pantalla nos pide que creemos los servidores administrados. Pinchamos en Add y nos aparecerá la siguiente figura en la que introducimos los datos del servidor. Fijaros que vamos a utilizar el puerto 4001 y el 4002. Debéis cambiar la dirección de escucha para poner la dirección de vuestra máquina.

Podemos añadir tantos servidores como queramos.

Al pinchar en Next nos aparece la configuración del servidor de administración. También aquí debéis poner la dirección de vuestra máquina. Fijaros que hemos puesto un puerto distinto al anterior, porque estamos en la misma máquina.

Por último, debemos crear un usuario de administración y asignarle una contraseña. Vamos a utilizar system y weblogic como contraseña.

El último paso es confirmar los datos introducidos y pinchar en Create para crear el dominio.

Una vez creado el dominio la estructura de directorios creada es la siguiente:

Tenemos un directorio por cada servidor creado, donde se guardan datos específicos del servidor (por ejemplo el fichero log). En esta figura tenemos cuatro servidores: adminServer, proxy,Servidor1 y Servidor2. El fichero config.xml contiene los datos del dominio (nombre de los servidores, máquinas, dominio, etc., nombre de las aplicaciones y su configuración, etc.). Los ficheros .pem sirven para la seguridad. Los ficheros startWebLogic.sh y startManagedWebLogic.sh sirven para arrancar al servidor de administración y a los administrados.

2.3. Arranque y configuración

Para poner en marcha los servidores debemos utilizar unos ejecutables que se encuentran en $HOME_BEA/user_projects/MiDominio. Primero debemos arrancar el servidor de administración. Para ello ejecutamos desde línea de comandos: ./startWebLogic.sh Nos pedirá el usuario y la contraseña que hemos definido antes. Cuando nos aparezca el siguiente mensaje ya está arrancado el servidor:

<Server started in RUNNING mode>

En este momento podemos arrancar los servidores administrados. Para ponerlos en marcha debemos utilizar el siguiente comando con los parámetros indicados:

./startManagedServer.sh nombre_servidor dirección_servidor_administración

Por ejemplo, para arrancar el servidor administrado creado anteriormente debemos ejecutar el siguiente comando:

./startManagedServer.sh servidor2 http://localhost:7001

El servidor de administración nos facilita una aplicación que permite administrar nuestro dominio. Con la consola podemos configurar los atributos de los distintos recursos, hacer despliegues de aplicaciones, monitorizar el uso de recursos, ver mensajes de log y poner en marcha o parar los distintos servidores de nuestro dominio. La consola se gestiona con un navegador en la siguiente dirección: http://localhost:7001/console. Nos aparecerá una página donde se nos solicita el usuario y la contraseña. Una vez introducida nos aparecerá la siguiente página.

 

La parte de la izquierda es una applet en forma de árbol jerárquico que nos muestra todas las opciones que podemos configurar en el dominio. En la parte superior del árbol tenemos el nombre del dominio. Dentro del dominio, las primeras opciones nos permiten configurar los elementos del dominio (servidores, máquinas, cluster, etc.). A continuación podemos realizar despliegues de aplicaciones, aplicaciones web, EJBs, etc. La última opción contiene los servicios configurables (JDBC, JMS, Virtual Hosts, etc.). Los elementos de la parte izquierda disponen de un menú adicional que se obtiene pinchando con el botón derecho sobre un elemento del árbol, como el mostrado en la siguiente figura:

Las opciones varían dependiendo del elemento seleccionado.

En la parte derecha tenemos las mismas opciones a las que podemos acceder mediante el applet. También nos irán apareciendo las detalles de configuración para un servicio o característica concreta elegida en la parte izquierda.

Vamos a ver las opciones más generales. Si pinchamos en el elemento console nos permite configurar opciones generales a todos los dominios. Nos aparecerá una página como la mostrada a continuación donde podemos:

En la otra solapa simplemente nos da información de versión.

Pasamos a las opciones para el dominio. Pinchamos en el nombre de nuestro dominio y nos aparece una ventana como la siguiente. Los símbolos que aparecen a la izquierda de las opciones significan lo siguiente: nos da información sobre la opción y nos indica que es necesario reiniciar uno o varios servidores si cambiamos esa opción. En la configuración general (la solapa actual) podemos configurar las siguientes opciones:

En la solapa de Logging (las opciones JTA y SNMP las veremos más adelante) podemos configurar el fichero log del dominio. El fichero log almacena toda la información y mensajes del dominio. Las opciones son las siguientes:

Visualización del fichero de log.

Si pinchamos en Customize this view se nos permite configurar los mensajes, mostrando las opciones que queremos que se vean en el fichero de log.

En la siguiente figura, si activamos la primera opción, Auto Deployed Enabled, el sistema se encarga de comprobar si existen aplicaciones nuevas. Estas aplicaciones se pueden crear como subdirectorios del directorio de aplicaciones. La siguiente opción indica cada cuantos milisegundos se comprueba si existe una aplicación nueva. En modo producción se deshabilita esta comprobación.

Pasamos a la solapa de seguridad. Todo lo referente a realm lo explicaremos más adelante. Si activamos la opción Guest Disabled no permitiremos que entre el usuario invitado.

En el apartado de FileRealm podemos configurar opciones específicas de seguridad como: número máximo de usuarios, grupos y ACL.

La siguiente solapa tiene que ver con características de la contraseña de acceso y el bloqueo de una cuenta por haber intentado acceder con una contraseña incorrecta. Si un usuario intenta acceder al sistema e introduce una contraseña incorrecta, cuando realice un determinado número de intentos la cuenta será deshabilitada. Las opciones son:

El resto de opciones de seguridad se detallarán en el apartado de seguridad.

Cuando seleccionamos la solapa Monitoring nos aparece un enlace que nos permite monitorizar los cluster y servidores de nuestro dominio. Si pinchamos en el enlace nos aparece la siguiente figura. Tenemos los servidores creados en nuestro dominio y se nos indica la dirección de escucha, los puertos de escucha y el estado del servidor. También tenemos dos enlaces, uno para parar o poner en marcha el servidor y otro para monitorizarlo (veremos más adelante estas opciones). Los iconos de la parte derecha nos permiten: crear un nuevo servidor con las mismas características que éste y eliminar este servidor.

La última solapa, Notes, nos permite introducir notas asociadas a la configuración actual. Esto es común en la mayoría de opciones de configuración. Tienen un carácter informativo.