Migración del entorno de la aplicación con WebSphere CloudBurst

Protección de la fidelidad de los entornos de las aplicaciones a través de patrones

En este tutorial, los autores muestran como utilizar WebSphere® CloudBurst para construir patrones que se puedan utilizar para representar la configuración tanto de la aplicación como de la infraestructura de la aplicación. Ellos también muestran como utilizar estos patrones para desplegar de manera sistemática el entorno de la aplicación mientras ésta se mueve a través de los cuatro ciclos de vida-— desarrollo, prueba, QA, y producción. El tutorial ofrece un ejemplo completo y paso por paso del uso de patrones para administrar topologías cambiantes, arquitecturas de plataforma subyacente, y propiedades de configuración.

Dustin Amrhein, Technical Evangelist, IBM

Author photoDustin Amrhein se unió a IBM como parte del equipo de desarrollo para WebSphere Application Server. Mientras ocupaba ese cargo, trabajó en el desarrollo de infraestructura para servicios web y modelos de programación para servicios web. Además, lideró el esfuerzo técnico del desarrollo de un marco de servicios RESTful para Java. En su rol actual, Dustin es Technical Evangelist de tecnologías emergentes en la cartera de WebSphere de IBM. Actualmente se concentra en tecnologías WebSphere que ofrecen capacidades de cloud computing, entre ellas WebSphere CloudBurst Appliance.


Nivel de autor profesional en developerWorks

Ruth Willenborg, Senior Technical Staff Member, IBM India Software Lab Services and Solutions

Ruth Willenborg es Miembro Senior del Personal Técnico del WebSphere Technology Institute de IBM donde trabaja actualmente en la computación en nube de WebSphere y en las iniciativas de dispositivos virtuales, es la defensora técnica del nuevo WebSphere CloudBurst Appliance de IBM. Antes de trabajar en la virtualización y en las iniciativas de dispositivos, fue gerente del equipo WebSphere Performance responsable del análisis de la performance de WebSphere Application Server, la comparación de performance y el desarrollo de herramientas de performance. Ruth tiene más de 20 años de experiencia en el desarrollo de software en IBM y es coautora de Performance Analysis for Java Web Sites (Addison-Wesley, 2002) y varios artículos sobre la performance de WebSphere y el uso de WebSphere con tecnologías de virtualización.



29-07-2011

Antes de comenzar

Sobre este tutorial

En este tutorial, los autores muestran como utilizar WebSphere® CloudBurst para crear patrones que se puedan utilizar para representar la configuración tanto de la aplicación como de la infraestructura de la aplicación. Ellos también le muestran como utilizar estos patrones para desplegar de manera sistemática el entorno de la aplicación mientras éste se mueve a través de los cuatro niveles del ciclo de vida — desarrollo, prueba, aseguramiento de calidad, y producción. El tutorial ofrece un ejemplo completo y explicado paso a paso del uso de patrones para administrar las topologías cambiantes, las arquitecturas de plataformas subyacentes y las propiedades de la configuración.

Objetivos

Los objetivos de este tutorial son:

  • Mostrar como utilizar CloudBurst para crear patrones que puedan representar la configuración de su aplicación/infraestructura de aplicación.
  • Mostrar como utilizar estos patrones para desplegar el entorno de la aplicación de manera sistemática, más allá del nivel del ciclo de vida en el que se encuentre (desarrollo, prueba, QA, producción).
  • Familiarizarlo con este tipo de patrones de manera que pueda utilizarlos en tareas similares.

Prerrequisitos

La información contenida en este artículo tendrá sentido para los desarrolladores con algún conocimiento sobre WebSphere CloudBurst Appliance y con algo de experiencia con el mismo, la creación de patrones, y el desarrollo de aplicaciones en la computación en nube; sin embargo, dado que este tutorial describe tanto los pasos específicos para la creación de patrones para colaborar en la migración de aplicaciones/infraestructura de aplicaciones nube, como los conceptos relacionados con estas tareas, aquellos desarrolladores sin experiencia específica con los productos de software que utilizamos pueden sacar provecho del mismo también.

Requisitos de sistema

Para asimilar los conceptos que detallamos en este tutorial, sólo necesita pensar como un buen desarrollador. Sin embargo, si desea repetir estos ejercicios, deberá tener acceso a WebSphere CloudBurst Appliance con permiso para crear contenido de catálogo, crear y desplegar patrones.


En primer lugar, algo de información

¿Por qué definimos las configuraciones sistemáticas?

Las organizaciones deben enfrentar el desafío de desplegar aplicaciones y la infraestructura relacionada a las mismas en diferentes entornos. Por ejemplo, la mayoría de las aplicaciones se mueven a través de una especie de cadena ascendente que incluye el movimiento de la aplicación y la infraestructura de la que ésta depende desde el desarrollo hasta la verificación de la misma y eventualmente su producción. En cada nivel, usted instala y configura la aplicación y la infraestructura de la aplicación, — proceso que por lo general lleva un tiempo considerable y puede incluir elementos manuales.

Aún más importante resulta el hecho de que cada vez que usted reinstala y configura la aplicación y la infraestructura relacionada con ésta para soportar la migración, es posible que se introduzcan virus, particularmente cambios desconocidos o no intencionados son agregados a la configuración de la aplicación o a su plataforma. Cuando este tipo de virus se introducen, la causa es por lo general difícil, o aún imposible, de detectar. Esto resulta en el fenómeno común: "Antes funcionaba; ¿qué cambió?"

El WebSphere CloudBurst Appliance de IBM le proporciona la habilidad de definir de manera sistemática las configuraciones para su infraestructura y sus aplicaciones. WebSphere CloudBurst también soporta el traslado de ellos de un entorno a otro:

  • Usted utilizar el dispositivo para crear patrones que capturen la infraestructura de su aplicación, las aplicaciones, y la configuración.
  • Estos patrones son guardados en el dispositivo y desplegados una y otra vez, proporcionando de manera sistemática los resultados de los entornos de la aplicación.
  • Usted parametriza los patrones para determinar el entorno de aplicación para el nivel que está desplegando.

La combinación única de imágenes y patrones de WebSphere CloudBurst permite un despliegue ágil, que se puede medir en minutos en lugar de días o semanas. El resultado es un entorno de aplicación completamente configurado, repetible, listo para utilizar en poco tiempo.

¿Qué es el ciclo de vida?

La mayoría de las aplicaciones se mueven a través de múltiples etapas que abarcan el desarrollo, la verificación y la producción. Si cada entorno fuera idéntico, obtener entornos sistemáticos y repetibles sería una tarea sencilla; sin embargo, en la mayoría de los locales de venta de IT existen diferencias en el hardware disponible, las configuraciones de software, y los recursos de back-end en uso. Esto provoca cambios necesarios en la configuración en cada nivel del ciclo de vida, lo que hace imposible copiar directamente y dificulta distinguir y rastrear las configuraciones que requieren modificación de aquellas que se desea modificar porque provocan problemas.

Analicemos un conjunto de cambios comunes que podrían sufrir las aplicaciones y su infraestructura de soporte a través del ciclo de vida y veamos como utilizar las características de WebSphere CloudBurst para simplificar la administración de estos cambios y lograr proporcionar despliegues muy repetibles. Entre los cambios típicos podemos incluir:

  • Topologías de infraestructura diferentes.
  • Arquitecturas de plataforma de hardware diferentes.
  • Opciones de configuración diferentes.
  • Recursos diferentes.

Topologías de infraestructura diferentes

A través de la virtualización es posible copiar de manera más fácil la producción de topologías multinodo para el desarrollo y la verificación sin necesidad de demasiado desembolso de capital, muchos todavía prefieren las topologías más sencillas para las etapas más tempranas del ciclo de vida. Por ejemplo, los entornos de desarrollo de WebSphere por lo general consisten de una única máquina virtual que contiene un administrador de despliegue, un servidor Web, y nodos personalizados. Los mismos componentes de infraestructura están presentes mientras la aplicación se mueve a través del ciclo de vida; sin embargo, en los pasos siguientes estos componentes se dispersan entre las múltiples máquinas virtuales.

En la siguiente figura se puede observar una progresión típica con entornos de desarrollo integrado moviéndose a una topología de prueba multinodo con los nodos del servidor de la aplicación separados y en forma de clúster, luego moviéndose para separar los servidores Web en un DMZ para poder realizar el aseguramiento de calidad final y la producción.

Cada topología diferente lleva a un patrón en CloudBurst
Each distinct topology maps to a pattern in CloudBurst

En WebSphere CloudBurst, cada una de las diferentes topologías lleva a un patrón. Por lo tanto, como puede observarse en el ejemplo, el ciclo de vida en la figura posee tres patrones solamente. El proceso de creación de patrones copia el patrón anterior para ayudar a mantener la información de la configuración y específicamente cualquier script en particular.

Topologías de hardware diferentes

Otro cambio en el ciclo de vida puede ser la plataforma de arquitectura de hardware de preferencia. Por varias razones, el desarrollo de WebSphere se encuentra a veces en una plataforma distinta de la producción o existen múltiples desarrollos, pruebas, y plataformas de producción en uso.

Por ejemplo, la figura anterior muestra el desarrollo y los entornos de prueba en VMware, y QA y Produccción en PowerVM. Las definiciones de topologías de WebSphere CloudBurst son independientes de la plataforma, lo que permite la misma definición de patrón para el despliegue de diferentes plataformas.

Las imágenes, por supuesto, tienen una plataforma única; por lo tanto, como podrá apreciarse en el escenario, para mover el mismo patrón desde VMware hasta PowerVM, usted sólo realiza una copia del patrón y elige la imagen correspondiente a la nueva plataforma. Al copiar un patrón para otra plataforma, deberá explicar todo script de plataforma única que haya desarrollado y realizar los cambios necesarios.

Opciones de configuración diferentes

Las opciones de configuración también requieren cambios según los distintos despliegues del ciclo de vida. Una de las promesas de la virtualización — para copiar una máquina virtual y reutilizarla — interrumpe el desafío que representa el hecho de que copias diferentes presenten conflicto. Como mínimo, los nombres, las contraseñas, y otras opciones a menudo necesitan modificarse para evitar problemas.

Los patrones de WebSphere CloudBurst muestran parámetros que permiten cambios en la configuración al comenzar a utiliza una máquina virtual. Durante el proceso de creación de patrones, usted puede encerrar estos valores en patrones o permitir su modificación al momento del despliegue. Por ejemplo, si busca un nombre específico para una celda, usted puede encerrar este valor en un patrón; si desea utilizar el mismo patrón en diferentes nombres de celdas, usted puede dejarlo así para que se especifique luego al momento del despliegue.

Recursos diferentes

La mayoría de las aplicaciones de WebSphere la hablan a algo (como por ejemplo a bases de datos, a servidores de directorios, etc.) y la ubicación de estos recursos es probablemente diferente en los entornos del desarrollo, la verificación, y la producción. Por ejemplo, el entorno del aseguramiento de la calidad por lo general contiene alguna base de datos de verificación, creada o copiada de los datos de producción. Los scripts de WebSphere CloudBurst le permiten definir parámetros. Agregando tal script a un parámetro automáticamente muestra los parámetros como parte de la configuración del patrón o del despliegue. Los parámetros de los script suministran una gran cantidad de flexibilidad para mantener los patrones comunes y al mismo tiempo permitir cambiar la ubicación del recurso.

Al desarrollar los scripts, usted puede agregar parámetros para conexiones de recursos que cambian a través del ciclo de vida. WebSphere CloudBurst automáticamente agrega los parámetros al patrón y usted puede elegir especificar los valores de los parámetros al momento de definir el patrón o mantener la flexibilidad del patrón dejando las especificaciones de los valores del parámetro así hasta el momento del despliegue. Por ejemplo, para reutilizar el mismo patrón para diferentes recursos, sólo haga de la ubicación un parámetro del script y especifique este valor al momento del despliegue.

En el escenario de ejemplo que presentamos a continuación, utilizamos esta técnica tanto para la ubicación de la base de datos como para la ubicación de la aplicación. Esta misma técnica es también útil para cualquier opción de configuración específica de una aplicación.


El mismo escenario

Ahora analizaremos el ejemplo de un escenario en el cual se implementa cada uno de estos conceptos utilizando WebSphere CloudBurst. En este ejemplo, la infraestructura de la aplicación será un entorno de WebSphere Application clusterizado. El entorno consiste en los siguientes nodos y servidores de aplicaciones:

  • Un nodo administrador de despliegue.
  • Dos nodos personalizados al administrador de despliegue. Cada nodo contiene una sola instancia de servidor de aplicación y los servidores de la aplicación pertenecen al clúster.
  • Un nodo de servidor HTTP de IBM.

Además de la topología básica del WebSphere Application Server, también tenemos una aplicación Java™ 2 Platform, Enterprise Edition (J2EE)(a la que denominaremos Administrador de Cuenta) instalada en el clúster del servidor de la aplicación. Esta aplicación tiene una dependencia en la instancia de una base de datos externa DB2® de IBM y la configuración de esa dependencia se encuentra en otras opciones.

La Figura 1 muestra el entorno de la aplicación recién descripto.

Figura 1. Ejemplo de entorno de aplicación
Example application environment

En nuestro escenario, mostraremos de qué modo usted puede utilizar WebSphere CloudBurst para crear y administrar este entorno mientras el mismo se mueve desde el desarrollo hasta la verificación, y de ahí al aseguramiento de la calidad, y finalmente hasta la opción de producción. Esto incluye los siguientes pasos:

  1. Crear los paquetes de script necesarios de WebSphere CloudBurst.
  2. Crear el patrón inicial de WebSphere CloudBurst para las opciones de desarrollo.
  3. Migrar y desplegar el entorno de la aplicación hasta una opción de verificación.
  4. Migrar y desplegar el entorno de la aplicación hasta una opción de QA.
  5. Migrar y desplegar el entorno de la aplicación hasta una opción de producción.

Durante cada migración y su subsecuente despliegue, ilustraremos la facilidad con la cual usted puede realizar pequeños cambios a la configuración sin comprometer la integridad general de cada entorno de aplicación resultante. Estos cambios incluirán alteraciones en la topología del WebSphere Application Server, cambios en la configuración para la integración de la DB2, y hasta modificaciones en la plataforma del sistema operativo subyacente.

Por favor tenga en cuenta que si intenta copiar algunos de los pasos que hemos realizado en el resto del artículo, deberá tener acceso a WebSphere CloudBurst Appliance con permisos para crear contenido de catálogo y patentes, y desplegar patrones.


Creación de paquetes de script

En WebSphere CloudBurst, los paquetes de scripts son el mecanismo a través del cual usted puede proporcionar configuración personalizada al entorno de la aplicación middleware de WebSphere. Un paquete de script está compuesto de un archivo binario que contiene un ejecutable y artefactos de soporte, además de opciones de configuración que le dicen a WebSphere CloudBurst (entre otras cosas) cómo invocar el paquete de scripts.

Por ejemplo, crearemos dos paquetes de scripts diferentes:

  • Uno instalará la aplicación Account Management en el entorno de WebSphere Application Server.
  • El otro configurará una fuente de datos de una DB2 para el uso de la aplicación

Para crear el paquete de scripts para instalar y configurar la aplicación Account Management, primero haga clic en el enlace Catalog -> Script Packages que se encuentra en la barra de herramientas superior en la consola de WebSphere CloudBurst Web. Esto lo llevará a la parte del paquete de scripts del catálogo de WebSphere CloudBurst. Haga clic en la cruz verde en la esquina superior izquierda para crear el nuevo paquete de scripts.

Figura 2. Creación del nuevo paquete de scripts
Creating the new script package

Ahora cargue el archivo binario para este paquete de scripts. El archivo para este paquete de scripts contiene un script wsadmin que recupera el Account Management de la ubicación que se especifique y la instala en el entorno de WebSphere Application Server

Para cargar el archivo, utilice el diálogo de carga de archivo que se encuentra en el campo Script package files ubicado en su página de detalles de paquetes de script Account Management Application. Luego de cargar el archivo, deberá proporcionar más información sobre el paquete de scripts.

Figura 3. Paquete de scripts de Account Management Application
Account Management Application script package

Tenga presente que usted define una variable en la sección Environment denominada APPLICATION_URL: Esto le permite especificar el valor de esta variable al momento del despliegue para los patrones que contienen su paquete de scripts.El valor especificado será accesible a su script de instalación, permitiendo que el script recupere los binarios de aplicación desde la ubicación especificada.

Además de esta variable, usted puede proporcionar la información que dirige WebSphere CloudBurst en cuanto a la invocación de su paquete de script. Específicamente, usted le dirá a WebSphere CloudBurst que utilice la herramienta wsadmin incluida en la instalación de WebSphere Application Server para invocar el script installApp.jy que se encuentra en el archivo de su paquete de script. A través del campo Executes, WebSphere CloudBurst invocará automáticamente este script casi al final del despliegue de patrones, lo que significará que el resultado del proceso de despliegue será un entorno WebSphere Application Server que incluye la aplicación Account Management.

Usted deberá también crear un paquete de scripts que configure una fuente de datos de la DB2 en el entorno de WebSphere Application Server. La aplicación Account Management utilizará esta fuente de datos para interactuar con la instancia de la DB2. Llamemos a este paquete de scripts "Create DB2 data source." Sus archivos contienen un script de shell que coordina la ejecución de múltiples scripts wsadmin para configurar los recursos apropiados en el entorno de WebSphere Application Server.

Figura 4. Paquete de scripts para crear la fuente de datos de la DB2
Script package to create a DB2 data source

Particularmente, existen múltiples variables de entorno que permiten proporcionar información para la configuración de fuentes de datos al momento del despliegue para los patrones que contienen este paquete de scripts. Esto incluye información como el nombre de la fuente de datos, el nombre de la base de datos, la ubicación de la base de datos, etc. Siguiendo esta propuesta, usted puede utilizar el mismo paquete de scripts para configurar la fuente de datos de la DB2 en diferentes entornos (el desarrollo, la verificación, la producción), y para varias instancias de la base de datos DB2.

Tras definir los dos paquetes de scripts necesarios, usted puede crear patrones utilizando estos recursos.


Creación del patrón inicial de desarrollo

Una vez que los paquetes de scripts necesarios existen en el catálogo de WebSphere CloudBurst, usted puede crear un patrón de WebSphere CloudBurst que represente el entorno de la aplicación detallado anteriormente.

En primer lugar, cree un patrón que represente este entorno de la aplicación en un escenario de desarrollo. Para esto, haga clic en el enlace Patterns de la barra de herramientas superior. Dado que usted desplegará este patrón en entornos de desarrollo, deseará utilizar la menor cantidad de recursos informáticos posible. Con esto en mente, cree un patrón con resultados desplegados en una celda de WebSphere Application Server completa que se ejecute en una única máquina virtual.

Primero haga clic en la cruz verde para crear un nuevo patrón. Cuando aparezca el panel de diálogo, ingrese el nombre del nuevo patrón y una descripción corta, y elija la imagen virtual en la cual basar este patrón.

Figura 5. Diálogo del nuevo patrón
New pattern dialog

Luego, navegue hasta el Pattern Editor para crear el nuevo patrón haciendo clic con el ícono del lápizen la esquina superior derecha. Una vez que se encuentre en el editor de patrones, arrastre y suelte una sola parte del administrador de despliegue desde la parte izquierda de la página hasta el lienzo vacío que se encuentra a la derecha.

Figura 6. Inclusión de la parte del administrador de despliegue
Including the deployment manager part

Ignore el mensaje de advertencia sobre la ausencia de nodos personalizados federados al administrador de despliegue, porque en este caso, usted creará la celda completa en la máquina virtual representada por la parte del administrador de despliegue.

En el menú desplegable en el lado izquierdo, seleccione Script Packages. Ahora elija los paquetes de scripts que desea utilizar en este patrón. Además de los dos creados anteriormente:

  • también incluya un paquete de scripts para colocar toda la celda en una única máquina virtual, e
  • incluya un paquete de scripts para crear un clúster de servidor de aplicación dentro de la celda.
Figura 7. Patrón con paquetes de scripts
Pattern with script packages

Mediante la ubicación de estos paquetes de scripts en la parte del administrador de despliegue, usted se asegura de que estos se ejecuten desde la máquina virtual que contiene el nodo del administrador de despliegue.

Los paquetes de scripts podrán completar con éxito sus tareas utilizando una combinación de la información que le suministró durante el despliegue y la información que le facilitó WebSphere CloudBurst en el archivo /etc/virtualimage.properties de cada máquina virtual que crea.

Una vez que termina de editar el nuevo patrón, haga clic en el enlace Done editing que se encuentra en la esquina superior derecha de la página del editor de patrones. Esto lo llevará nuevamente a la página de los detalles del patrón Account Management Cluster — Development. Aquí usted encerrará el patrón haciendo clic en el ícono encerrar que se encuentra en la esquina superior derecha de la página.

Ahora usted puede comenzar el proceso de despliegue haciendo clic en Deploy. Proporcione el nombre para el nuevo sistema virtual (en nuestro caso, "AcctMgmt Cluster — Dev"). Luego, haga clic en Configure virtual parts y luego en el enlace Deployment manager para configurar la parte del administrador de despliegue.

Además de contener información sobre la configuración del tiempo de despliegue, que es común en la mayoría de las partes de los patrones:

  • Asignación de la máquina CPU y de la memoria virtuales
  • Nombre del nodo del WebSphere Application Server y de la celda, e
  • Información de contraseña

sus patrones incluyen cuatro paquetes de scripts, cada uno de los cuales posee su propio conjunto de configuración por medio de variables que ellos mismos definen. La Figura 8 muestra la información de la configuración para los paquetes de scripts Create cell y Create cluster .

Figura 8. Configuración de la celda y creación de clúster
Configuration for cell and cluster creation

Para crear la celda, especifique un prefijo de nombre de nodo ("AcctMgmtNode"), la cantidad de nodos que va a crear (2), y la cantidad de instancias de Servidor HTTP de IBM que va a crear (1). Para crear el clúster de WebSphere Application Server, simplemente especifique el nombre del clúster ("AcctMgmtCluster") y el prefijo del nombre del miembro ("amServer").

El resto de la información de configuración que suministre será para los paquetes de scripts que instalan la aplicación Account Management y crean la fuente de datos de la DB2 para la aplicación.

Figura 9. Configuración de la aplicación y la fuente de datos
Configuration for the application and data source

Todos los valores mostrados en las Figuras 8 y 9 pueden ser utilizados en sus scripts cuando sean invocados por WebSphere CloudBurst.

Luego de terminar de especificar la configuración del tiempo de despliegue, haga clic en OK para comenzar el proceso de despliegue. WebSphere CloudBurst lo dirige a la página del sistema virtual donde usted puede monitorear el estado del despliegue. Cuando el proceso de despliegue esté completo, el estado del sistema virtual reflejará que se encuentra en el estado de inicio.

En ese momento, expanda la sección Virtual machines, luego expanda la sección para la máquina virtual del administrador de despliegue. Cerca del botón de la sección de la VM del administrador de despliegue, utilice el enlace WebSphere que se observa en la Figura 10 para iniciar sesión en la consola de administración de WebSphere Application Server.

Figura 10. Iniciando sesión en la consola de administración de WebSphere Application Server
Logging into the WebSphere Application Server admin console

Una vez que se encuentre en la consola de administración, puede verificar si se ha establecido la configuración correcta. Además de verificar que los nodos y el clúster de WebSphere Application Server existen, quizá desee verificar que la configuración de la fuente de datos de la DB2 y la aplicación Account Management sean correctas.

Para verificar la fuente de datos de la DB2, expanda la sección Resources, luego la sección JDBC y haga clic en el enlace Data sources. Usted debería consultar el amDataSource que especificamos durante el despliegue.

Figura 11. La fuente de datos de la DB2 en la consola de administración
The DB2 data source in the administration console

Además, la aplicación Account Management debería aparecer en el listado de aplicaciones empresariales de la consola.

Figura 12. Aplicación Account Management en la consola de administración
Account Management application in the administration console

En este punto, el entorno de WebSphere Application Server se encuentra configurado por completo y listo para ser utilizado para el desarrollo.


Migración desde el entorno de Account Management hasta el de la verificación

Sus esfuerzos de desarrollo de la aplicación Account Management finalizarán ahora, de manera que estará listo para comenzar a probar el entorno. Nosotros proponemos los siguientes objetivos para la migración:

  1. Los nodos personalizados deberían ejecutarse cada uno en su propio host y no ser colocados con el administrador de despliegue.
  2. Los binarios de aplicación deberían ser recuperados de un depósito diferente.
  3. La fuente de datos debería ser configurada para consultar a la instancia de una base de datos diferente.

Para comenzar a realizar los cambios, ir a la página de patrones y seleccionar el patrón Account Management Cluster — Development creado anteriormente. Clonar este patrón para crear uno nuevo denominado Account Management Cluster — Test y luego navegar hasta la página del editor de patrones para obtener los nuevos patrones.

Una vez que se encuentre en el editor de patrones, borre todos los paquetes de scripts de la parte del administrador de despliegue. Usted volverá a agregar algunos de los paquetes de scripts, pero deberá asegurarse de agregarlos en el orden correcto.

Luego, ingrese la nueva topología arrastrando y soltando un nodo personalizado desde la lista de la parte que se encuentra en el lado izquierdo hasta el lienzo de la derecha. La cantidad de la parte del nodo personalizado aumentará de uno a dos.

Ahora vuelva a agregar los paquetes de scripts a la parte del administrador de despliegue. Esta vez comience agregando el paquete de scripts Add IBM HTTP Server node que se encuentra en el dispositivo. Este paquete de scripts establece un IBM HTTP Server en la misma máquina virtual donde se encuentra el administrador de despliegue, lo cual permite conservar los recursos de su entorno de verificación. Finalmente, vuelva a agregar los paquetes de scripts para instalar la aplicación Account Management y crear la fuente de datos necesaria de la DB2 .

Figura 13. El nuevo patrón de verificación
The new test pattern

WebSphere CloudBurst invoca paquetes de scripts para que aparezcan en una parte del patrón. En este caso, es importante crear la instancia del servidor HTTP de IBM antes de instalar la aplicación ya que éste permite a la aplicación incluir al servidor entre sus objetivos de despliegue, permitiendo así solicitar que la aplicación recorra la instancia de nuestro Servidor HTTP de IBM.

La edición no está completa aún porque usted debe colocar un clúster de WebSphere Application Server En este caso, no necesitará un paquete de scripts. Dado que está utilizando partes de nodos personalizados, usted puede apalancar la habilidad de definir los clústeres como una opción avanzada para el patrón. Para esto, haga clic en Advanced Options y seleccione la opción Define clusters .

Figura 14. Definición de un clúster de WebSphere Application Server
Defining a WebSphere Application Server cluster

Como resultado de la selección de esta opción, WebSphere CloudBurst automáticamente creará uno o más clústeres en WebSphere Application Server durante el despliegue de este patrón. Usted proporcionará la información de configuración que le dice a WebSphere CloudBurst cuantos clústeres desea y cuantos miembros clústeres desea crear en cada uno de los nodos personalizados. Esto se realiza en el patrón o durante el despliegue.

Luego de configurar el patrón para incluir clústeres a WebSphere Application Server, usted ha terminado de realizar los cambios necesarios; haga clic en el enlace Done editing para volver a la página de detalle del patrón. En este punto, usted puede encerrar el patrón de manera opcional. Usted está preparado para desplegar.

El despliegue es muy parecido al último ya que los patrones contienen dos partes. Al configurar la parte del administrador de despliegue, todavía necesita proporcionar la configuración para la instalación de la aplicación y la creación de los scripts de la fuente de datos. En este caso, cambie los valores para estos datos de configuración para reflejar los valores correctos para el entorno de la verificación.

Figura 15. Nuevos datos de configuración para el entorno de la verificación
New configuration data for test environment

En particular, cambie la ubicación de los binarios de la aplicación, el nombre de usuario de la base de datos, y los valores del host de la base de datos (pero usted podría necesitar cambiar otros valores para asegurarse un despliegue exitoso en su entorno de verificación).

A diferencia del despliegue anterior, usted no necesita proporcionar información para crear nodos administrados en la celda porque ha incluido partes de nodos personalizados en su patrón. Como resultado, WebSphere CloudBurst automáticamente creará los nodos y se encargará de federarlos en la celda. Usted tendrá que proporcionar la información relacionada con el WebSphere Application Cluster que desea crear: La única diferencia es que en este despliegue, WebSphere CloudBurst creará el clúster en lugar de usted, incluyendo un paquete de scripts para llevar adelante la acción de configuración.

Figura 16. Configuración del clúster de WebSphere Application Server
Configuring the WebSphere Application Server cluster

Los valores presentados en la Figura 16 resultan en la creación de un único clúster que contiene un miembro en cada nodo. En este caso, esto significa que el clúster de WebSphere Application Server tendrá dos miembros porque su patrón contiene dos partes de nodos personalizados.

En este patrón, usted también debe configurar las partes de los nodos personalizados antes de desplegar. En esta parte no hay paquetes de scripts, por lo tanto deberá proporcionar información de contraseña. Despliegue el patrón haciendo clic en el botón OK del diálogo de despliegue. Nuevamente, esto lo llevará a la página Virtual Systems y cuando el proceso de despliegue esté completo y el sistema virtual esté en estado de inicio, inicie sesión en la consola de administración de WebSphere Application Server tal como lo hizo la última vez. La única diferencia en este despliegue es que además de que la aplicación y la configuración de la fuente de datos han sido modificadas, los nodos personalizados se encuentran en hosts diferentes al del administrador de despliegue.

Figura 17. Listado de nodos para la celda del WebSphere Application Server
Node listing for WebSphere Application Server cell

Los nodos CloudBurstNode and CloudBurstNode1 que se observan en la Figura 17 fueron creados a partir de dos partes de nodos personalizados en nuestro patrón. Los nodos CloudBurstNode0 y cbmv-112.rtp.raleigh.IBM.com-node representan al administrador de despliegue y a la instancia del Servidor HTTP de IBM respectivamente.

El punto clave en la migración de su entorno de desarrollo hasta el de verificación no es muy diferente — , sino que la clave realmente es que el resultado neto de estos dos despliegues es el mismo. En ambos entornos se ejecuta la aplicación Account Management en el clúster de WebSphere Application Server, y además la aplicación tiene acceso a una fuente de datos para la base de datos de la DB2. Además, usted logró esta migración simplemente haciendo pequeños cambios en la interfaz arrastar y soltar, y proporcionando una pequeña cantidad de configuración de tiempo de despliegue.

La migración de un entorno al otro lleva sólo unos minutos.


Progresando hacia el aseguramiento de la calidad

La aplicación Account Management no permanecerá en el entorno de verificación para siempre. Su destino final es la ejecución directamente en la producción de manera que esté disponible para las empresas más grandes, pero usted no puede saltar desde la verificación hasta la producción.

En primer lugar, usted desea mover el entorno de la aplicación Account Management probado y verificado hasta la ubicación del aseguramiento de la calidad (QA). Específicamente, esto significa cinco cambios:

  1. El entorno del WebSphere Application Server debe ejecutarse en la plataforma AIX®.
  2. El Servidor HTTP de IBM debería ejecutarse en su propio host y no ser colocado con el administrador de despliegue.
  3. El entorno de la aplicación Account Management debería utilizar recursos informáticos dedicados a QA y a propósitos de recuperación de desastres.
  4. Los binarios de la aplicación deberían ser recuperados desde un depósito diferente.
  5. La fuente de datos debería configurarse para consultar la instancia de una base de datos diferente.

Como en el traslado desde el desarrollo hasta la verificación, los cambios comienzan con la clonación de un patrón. Como parte de esta transición, debe asegurarse de que el entorno del WebSphere Application Server se ejecute en la plataforma AIX. Tradicionalmente, el traslado de un entorno de aplicación completo y de la infraestructura de la aplicación relacionada a la misma pasa de una plataforma (en este caso SUSE Linux® ejecutándose en VMware) a una completamente diferente(AIX running on PowerVM) puede ser complejo, llevar tiempo, y ser propenso a errores. Con WebSphere CloudBurst, ya no es así.

Para volver a basar el entorno de su aplicación en AIX for PowerVM, simplemente clone el patrón Account Management Cluster — Test y elija una imagen diferente en la cual basar el patrón. Haga esto en el panel de diálogo inicial durante el proceso de clonación del patrón como se observa en la Figura 18.

Figura 18. Creación del patrón de QA del Account Management
Creating the Account Management QA pattern

Seleccione la imagen WebSphere Application Server 7.0.0.7 (PowerVM) como base para su patrón de QA. Esta imagen se ejecuta en la plataforma del hipervisor PowerVM de IBM e incluye un sistema operativo AIX. ¡En cuestión de segundos y con sólo unos clics, usted volverá a basar el entorno de su aplicación Account Management en un entorno operativo completamente nuevo! Además, todas las personalizaciones realizadas en el patrón, como la topología de la celda, la instalación de la aplicación Account Management, y la configuración de la fuente de datos de la DB2, son conservadas.

Luego de crear el nuevo patrón, ingrese en la interfaz del editor de patrones. Una vez allí, borre el paquete de scripts Add IBM HTTP Server node de la parte del administrador de despliegue y arrastre y suelte una parte de los servidores HTTP de IBM desde la lista de la izquierda hasta el lienzo de los patrones.

Figura 19. Clúster de Account Management: patrón de QA
Account Management cluster: QA pattern

Vale la pena señalar que al modificar un patrón que contiene opciones avanzadas, aquellas opciones avanzadas pueden restaurarse. En este caso, luego de borrar el paquete de scripts de la parte del administrador de despliegue, los paquetes Cluster configuration y JVM tuning (creados porque las opciones avanzadas Define clusters fueron seleccionadas) desaparecen. Para restaurar estas opciones, simplemente haga clic en Advanced Options y vuelva a seleccionar la opción para definir los clústeres.

Después de hacer los cambios necesarios en el editor de patrones, está listo para comenzar con el proceso de despliegue.

Aunque no hemos analizado este punto, cada vez que despliega un patrón en WebSphere CloudBurst, selecciona un grupo de nubes específico. Un grupo de nubes es una colección de hipervisores utilizados por WebSphere CloudBurst para hospedar máquinas virtuales creadas durante el despliegue. Se requiere al menos un grupo de nubes, pero usted puede definir varios grupos para distribuir los recursos de manera más eficaz a través de la organización, como puede observarse en la Figura 19.

Figura 20. Grupos de nubes en WebSphere CloudBurst
WebSphere CloudBurst cloud groups

En cada grupo en particular, todos los hipervisores deben ser del mismo tipo (como por ejemplo, todos los hosts VMware ESX o todos los hosts PowerVM). Cree su nuevo patrón utilizando WebSphere Application Server Hypervisor Edition empaquetado para la plataforma PowerVM. Debe asegurarse de desplegar a un grupo de nubes que está administrando una colección de hosts PowerVM. Con esa necesidad en mente, es un buen momento para señalar que no solamente WebSphere CloudBurst puede administrar múltiples grupos de nubes, sino que además un dispositivo puede administrar múltiples grupos de nubes que administran una a una las distintas plataformas del hipervisor.

Figura 21. Administración de una nube heterogénea
Managing a heterogeneous cloud

Como puede observarse en la Figura 21, WebSphere CloudBurst resume efectivamente la infraestructura subyacente de manera que la experiencia de usuario final al desplegar los patrones sea la misma. Para desplegar su nuevo patrón para la plataforma PowerVM, simplemente elija el QA Cloud Group que sea un grupo de nubes de PowerVM. Además, configure el patrón para el despliegue exactamente de la misma forma, probablemente cambiando cierta información sobre la configuración de la aplicación y la fuente de datos como se ha hecho en despliegues anteriores.

Figura 22. Selección del grupo de nubes de QA
Selecting the QA cloud group

Luego, configure las partes virtuales similares de la forma que lo hizo para el despliegue anterior del patrón Account Management Cluster — Test. El único cambio en este despliegue es que la especificación de información en la configuración de la aplicación y en la fuente de datos es diferente.

Figura 23. Configuración de la aplicación y de la fuente de datos para QA
Application and data source configuration for QA

Como en el paso anterior de la migración, cambie los valores de los binarios de la aplicación, el nombre de usuario de la base de datos, y el nombre del host de la base de datos. Nuevamente, usted podría modificar todo los valores, o sólo uno, según sea necesario. Después de configurar la parte del administrador del despliegue, configure las partes del nodo personalizado y la parte del Servidor HTTP de IBM (porque usted incluyó aquella como una parte distinta de su patrón) con la información de contraseña necesaria.

Ahora usted puede desplegar a nuestra nube de aseguramiento de calidad; una vez que el sistema virtual se esté ejecutando, inicie sesión en la consola de administración del WebSphere Application Server como hizo anteriormente. Si lo desea, puede confirmar el carácter correcto de su celda dirigiéndose al listado de nodos. Esta vez debería consultar los diferentes hosts para cada una de los nodos en su celda.

Figura 24. Listado de nodos para los entornos de QA
Node listing for QA environment

Más allá de los hosts diferentes para cada uno de los nodos, el entorno resultante es muy similar. Usted todavía posee su aplicación Account Management configurada para ejecutar un clúster de WebSphere Application Server y utiliza una fuente de base de datos de la DB2.

De nuevo, usted ha logrado el proceso de migración a través de cambios realizados en una interfaz de arrastre y suelte, y pequeñas modificaciones en el tiempo de despliegue. Y usted puede medir todo el proceso en minutos en vez de tener que hacerlo en días (o peor aún, en semanas).


¡Hora del espectáculo! Avanzando hacia la producción

Usted se encuentra en el momento de colocar su nueva aplicación Account Management en la etapa de producción y prepararla para su uso en la empresa. Para lograr esto usted puede utilizar el mismo patrón Account Management Cluster — QA creado más temprano o si el proceso organizativo así lo requiere, usted puede simplemente clonarlo y crear un nuevo patrón con un nuevo nombre. Nada cambiará en la presentación del patrón. De hecho, para desplegar el entorno de clúster Account Management en producción, usted sólo necesita hacer dos cambios similares:

  1. Los binarios de la aplicación deberían recuperarse desde un depósito diferente.
  2. La fuente de datos debería configurarse para consultar la instancia de una base de datos diferente.

Esto significa que usted simplemente modifica los datos de configuración en el tiempo de despliegue del mismo modo en el que lo hizo anteriormente.

Figura 25. Despliegue del patrón para la producción
Deploying the pattern to production

Esto es todo lo que se necesita para mover su entorno de aplicación desde el aseguramiento de calidad hasta un entorno de producción! Una vez que el proceso de despliegue se encuentra completo y el sistema virtual ha sido iniciado, usted puede acceder a la consola de administración de WebSphere Application Server simplemente como lo hizo en los despliegues anteriores y administrar el sistema virtual en WebSphere CloudBurst de la misma manera en la que administró los sistemas virtuales desplegados en la plataforma VMware ESX.

La experiencia de usuario final no sólo es coherente en lo que respecta a la creación y el despliegue de patrones para diferentes plataformas, la experiencia es la misma cuando se administran los sistemas virtuales resultantes más allá del tipo de infraestructura en la cual son hospedadas las máquinas virtuales.

¿Cómo se siente? Ha hecho avanzar una aplicación Account Management desde el desarrollo hasta la verificación, y de allí hasta el aseguramiento de la calidad, y finalmente hasta la producción. Cada acción de migración fue algo más que una combinación de acciones de arrastre y suelte junto con ajustes a los datos de la configuración de los tiempos de despliegue. Además, cada vez que realice tareas relacionadas con la migración tardará minutos.


En conclusión

La verdad es que pocos desarrolladores, verificadores y administradores buscan la migración de un entorno de aplicación. Generalmente se trata de un proceso que lleva largas horas, que produce frustración, y en el cual es difícil encontrar errores, y por lo general no se logran los objetivos deseados.

Como hemos demostrado aquí, usted puede eliminar algunos de estos problemas, sino todos, mediante la adopción de enfoques basados en patrones proporcionados por WebSphere CloudBurst.

Los patrones de WebSphere CloudBurst le proporcionan la habilidad de capturar y guardar su entorno de aplicación middleware y la configuración del mismo. Estos patrones pueden desplegarse reiteradamente con pequeños ajustes cada vez que sea necesario, asegurándose de este modo resultados de calidad. Agregue a esto la habilidad de clonar y modificar rápidamente la topología o la plataforma de un patrón sin afectar la calidad de sus aplicaciones y de sus configuraciones, y el equilibrio perfecto entre la estabilidad y la flexibilidad. Simplemente, en lugar de que el proceso de migración de la aplicación sea una complicación para su empresa, WebSphere CloudBurst hace del mismo una ventaja competitiva.

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

  • El grupo Developer Cloud en My developerWorks es la comunidad para el Smart Business Development and Test en el Cloud de IBM.
  • Participe en la comunidad developerWorks (blogs de desarrolladores, grupos, foros, transmisiones pod, perfiles, boletines informativos, wikis, y temas comunitarios) a través de My developerWorks, un sistema de redes profesional y unificado de herramientas comunitarias para la conexión, la distribución, y la colaboración.

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Cloud computing, WebSphere
ArticleID=499451
ArticleTitle=Migración del entorno de la aplicación con WebSphere CloudBurst
publish-date=07292011