Puede configurar servidores de contenedor de
WebSphere eXtreme
Scale utilizando
un archivo XML de OSGi Blueprint, lo que permite simplificar el empaquetado y
el desarrollo de paquetes de servidor autocontenidos.
Antes de empezar
En este tema se supone que se han completado las tareas siguientes:
- Se ha instalado e iniciado la infraestructura OSGi de Eclipse Equinox
con el contenedor Eclipse Gemini o Apache Aries Blueprint.
- Se ha instalado e iniciado el paquete de servidor de
eXtreme Scale.
- Se ha creado el paquete de plug-ins dinámicos de
eXtreme Scale.
- Se han creado el archivo XML de política de despliegue y el archivo XML de
descriptor de ObjectGrid de eXtreme Scale.
Acerca de esta tarea
Esta tarea describe cómo configurar un servidor
de eXtreme Scale con un contenedor
utilizando un archivo XML Blueprint. El resultado del procedimiento es
paquete de contenedor. Cuando se inicie el paquete de contenedor, el paquete de
el servidor eXtreme Scale realizará un seguimiento del paquete, analizará el XML de servidor
e iniciará un servidor y contenedor.
Un paquete de contenedor se puede combinar de
manera opcional con la aplicación y los plug-ins de eXtreme Scale cuando no son
necesarias actualizaciones de plug-in dinámicas o los plug-ins no soportan
la actualización dinámica.
Procedimiento
- Cree un archivo XML Blueprint con el espacio de nombres objectgrid
incluido. Puede utilizar el nombre que desee para el archivo. No obstante, debe
incluir el espacio de nombres blueprint:
<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
xmlns:objectgrid="http://www.ibm.com/schema/objectgrid"
xsi:schemaLocation="http://www.ibm.com/schema/objectgrid
http://www.ibm.com/schema/objectgrid/objectgrid.xsd">
...
</blueprint>
- Añada la definición XML para el servidor de
eXtreme Scale con las propiedades de servidor
adecuadas. Consulte el archivo XML de descriptor Spring para obtener
detalles sobre todas las propiedades de configuración disponibles. Consulte el ejemplo
siguiente de la definición XML:
<objectgrid:server id="xsServer" tracespec="ObjectGridOSGi=all=enabled"
tracefile="logs/osgi/wxsserver/trace.log" jmxport="1199" listenerPort="2909">
<objectgrid:catalog host="catserver1.mycompany.com" port="2809" />
<objectgrid:catalog host="catserver2.mycompany.com" port="2809" />
</objectgrid:server>
- Añadir la definición XML para el contenedor de
eXtreme Scale con la referencia a la definición
de servidor y a los archivos XML de descriptor ObjectGrid y
XML de despliegue ObjectGrid incorporados en el paquete; por ejemplo:
<objectgrid:container id="container"
objectgridxml="/META-INF/objectGrid.xml"
deploymentxml="/META-INF/objectGridDeployment.xml"
server="xsServer" />
- Almacene el archivo XML Blueprint en el paquete de contenedor. El XML Blueprint se debe almacenar en el directorio OSGI-INF/blueprint
para que se encuentre el contenedor Blueprint.
Para almacenar el archivo XML Blueprint en un directorio diferente,
debe especificar la cabecera de manifiesto Bundle-Blueprint; por ejemplo:
Bundle-Blueprint: OSGI-INF/blueprint.xml
- Empaquete los archivos en un solo archivo JAR de paquete. Consulte el ejemplo siguiente de una jerarquía de directorios de paquete:
MyBundle.jar
/META-INF/manifest.mf
/META-INF/objectGrid.xml
/META-INF/objectGridDeployment.xml
/OSGI-INF/blueprint/blueprint.xml
Resultados
Ya se ha creado un paquete de contenedor de
eXtreme Scale
y ahora se puede instalar en Eclipse Equinox. Cuando se inicia el paquete de contenedor,
el entorno de ejecución de servidor de
eXtreme Scale
del paquete de servidor de
eXtreme Scale inicia
automáticamente el servidor de
eXtreme Scale
de singleton utilizando los parámetros definidos en el paquete e inicia un servidor de
contenedor. El paquete se puede detener e iniciar, lo que hace que el contenedor
se detenga y se inicie. El servidor es un singleton y no se detiene
cuando el paquete se inicia por primera vez.