< Anterior | Siguiente >

Lección 2: Creación de procesos de componentes

Los procesos de componentes describen tareas automatizadas que se ejecutan en los componentes. Los procesos de componentes pueden desplegar, instalar, desinstalar, actualizar o ejecutar otras tareas en un componente.
Hay tres tipos de procesos:
  • Procesos genéricos, que se ejecutan fuera del contexto de componentes o aplicaciones.
  • Procesos de aplicaciones, que se ejecutan en el contexto de aplicaciones. En muchos casos, los procesos de aplicaciones llaman a procesos de componentes. Por ejemplo, un proceso de aplicaciones puede llamar a los procesos de componente que despliegan esos componentes.
  • Los procesos de componente se ejecutan en un solo componente; por ejemplo, lo despliegan, lo desinstalan o ejecutan tareas de configuración en él.

Los procesos consisten en una lista de pasos y conexiones entre esos pasos. Cada paso es un mandato individual que se ejecuta en un equipo de destino. Los pasos pueden manipular archivos, ejecutar mandatos del sistema, descargar archivos y ejecutar programas. Los plug-ins contribuyen a estos pasos: hay plug-ins que funcionan con muchos tipos distintos de software.

Cada componente debe tener al menos un proceso de componentes para desplegar o instalar el componente. En esta lección, creará un proceso de despliegue para cada uno de los tres componentes. Más tarde, creará un proceso de aplicaciones que llama a estos procesos de componentes para desplegar cada uno de los componentes.

Creación de un proceso de componentes para el componente web

El proceso de componentes para el componente web descarga la versión más reciente de los artefactos del componente y los coloca en la carpeta correcta.
Siga estos pasos para crear el proceso de componentes que despliega el componente web:
  1. En la pestaña Componentes, pulse el componente JPetStore-WEB.
  2. Pulse Procesos y, a continuación, pulse Crear nuevo proceso.
  3. En la ventana Crear nuevo proceso, especifique el nombre para que sea Desplegar componente web.
  4. En la lista Tipo de proceso, seleccione Despliegue. Esta lista tiene otras opciones para los procesos que desinstalan o configuran componentes.
  5. Acepte los valores predeterminados para el resto de propiedades y pulse Guardar.
  6. En la lista de procesos, pulse el nuevo proceso. El proceso se abre en el editor de procesos. Este editor muestra los pasos del proceso en una forma gráfica, como un diagrama de flujo. Los recuadrosIniciar y Finalizar representan el principio y el final del proceso. Desde aquí, puede añadir pasos al proceso y enlazarlos entre los pasos Iniciar y Finalizar para mostrar el orden de los pasos.
  7. Añada un paso para borrar los archivos del directorio de trabajo. El proceso se ejecuta dentro de un directorio de trabajo. Para asegurarse de que está utilizando la versión más reciente de los archivos del componente web, ejecute un mandato para borrar el directorio de trabajo:
    1. En la parte izquierda del editor de procesos, en Pasos del plug-in disponibles, expandaProgramas de utilidad > FileUtils. El menú Pasos del plug-in disponibles muestra los pasos disponibles. Puede explorar los árboles para encontrar pasos, o puede escribir en el cuadro de búsqueda de la parte superior de la ventana.
    2. En el elemento de árbol FileUtils, pulse y arrastre el paso Suprimir archivos y directorios al editor de procesos. Se abre la ventana Editar propiedades mostrando las propiedades para el paso. Algunas de estas propiedades son exclusivas para el paso y otras son las mismas para todos los pasos.
    3. En el campo Nombre, especifique un nombre para que sea Borrar directorio de trabajo.
    4. En el campo Directorio base, especifique un punto (.).
    5. En el campo Incluir, especifique un asterisco (*).
    6. Acepte los valores predeterminados para el resto de propiedades y, a continuación, pulse Guardar.
    El siguiente paso aparece como un cuadro en el editor de procesos. Más tarde, conectará este paso con otros pasos del proceso. El editor de procesos se parece a la siguiente figura:
    El nuevo proceso con un paso en el flujo
  8. Añada un paso para descargar la versión más reciente de los artefactos del componente. El paso Download Artifacts se utiliza en la mayoría de los procesos de despliegue. Este paso descarga la versión especificada de los artefactos del componente al sistema de destino. Cuando ejecute el proceso, especificará si utilizar la versión más reciente de los artefactos del componente o una versión específica.
    1. En Pasos del plug-in disponibles, expanda Repositorios > Artefacto > IBM UrbanCode Deploy y arrastre el paso Descargar artefactos al editor de procesos.
    2. En la ventana Editar propiedades, acepte los valores predeterminados y, a continuación, pulse Guardar.
  9. Añada un paso para eliminar el contenido web antiguo del servidor:
    1. Expanda Programas de utilidad > FileUtils y arrastre otro paso Suprimir archivos y directorios al editor de procesos.
    2. En la ventana Editar propiedades, especifique el nombre para que sea Eliminar contenido antiguo.
    3. En el campo Directorio base, especifique el siguiente directorio:
      webapps/JPetStore
    4. En el campo Incluir, especifique el siguiente directorio:
      images
    5. En el campo Directorio de trabajo, especifique la siguiente variable:
      ${p:environment/tomcat.home}
      Esta variable representa la carpeta principal del servidor web Tomcat. Especificará un valor para esta variable más tarde.
    6. Acepte los valores predeterminados para el resto de campos y pulse Guardar.
  10. Añada un paso para desplegar el nuevo contenido para el servidor. Este paso copia los artefactos del componente al servidor de aplicaciones.
    1. Expanda Programas de utilidad > FileUtils y arrastre el paso mover directorio al editor de procesos.
    2. En la ventana Editar propiedades, especifique el nombre para que sea Desplegar nuevo contenido.
    3. En el campo Directorio de origen, especifique un punto (.).
    4. En el campo Directorio de destino, especifique el siguiente directorio:
      ${p:environment/tomcat.home}/webapps/JPetStore/
    5. En el campo Incluir archivos, especifique el siguiente código:
      images/*
    6. Acepte los valores predeterminados para el resto de campos y pulse Guardar.
    Ahora el proceso tiene cuatro pasos, como en la figura siguiente:
    Los cuatro pasos del proceso, que se ponen en orden entre los pasos Iniciar y Finalizar

Cada paso tiene dos iconos en la esquina superior derecha del paso. El icono Editar verde abre la misma ventana Editar propiedades que se abre cuando crea el paso. El icono X suprime el paso.

Además, si mueve el ratón sobre un paso, aparece un icono de flecha sobre el centro del paso. Este icono se utiliza para crear enlaces entre pasos.

Pulsando el botón de flecha en el centro del paso

  1. Conecte los pasos en el orden en el que se ejecutan:
    1. Mueva el ratón sobre el paso Iniciar, y pulse y arrastre el icono de flecha al paso Clean working directory. La flecha entre estos pasos representa el flujo de actividad de un paso a otro, como en la siguiente figura:
      El enlace que conecta el paso Iniciar al paso Borrar directorio de trabajo
    2. De manera similar, arrastre una flecha desde el paso Clean working directory al paso Download Artifacts.
    3. Arrastre una flecha desde el paso Download Artifacts al paso Remove old content.
    4. Arrastre una flecha desde el paso Remove old content al paso Deploy new content.
    5. Arrastre una flecha desde el paso Deploy new content al paso Finish.
    Puede conectar pasos en una secuencia como estos pasos, o puede ejecutar pasos en paralelo uno con otro creando más enlaces. Sin embargo, los procesos siempre empiezan con el paso Inicio y terminan con el paso Fin. La secuencia de pasos de este proceso es la siguiente:
    1. Start
    2. Clean working directory
    3. Download Artifacts
    4. Remove old content
    5. Deploy new content
    6. Finish
  2. Guarde el proceso pulsando el icono Guardar en Herramientas.
El proceso de componentes completo para el componente web se parece a la siguiente figura:
El proceso de componentes completo, que elimina la versión antigua de los artefactos y despliega la nueva versión al servidor de aplicaciones

Creación de un proceso de componentes para el componente de la aplicación

El componente de la aplicación consta de un único archivo WAR. Este proceso de componentes descarga la versión más reciente del archivo WAR, actualiza valores del archivo y despliega el archivo en el servidor de aplicaciones.
  1. En la pestaña Componentes, pulse el componente JPetStore-APP.
  2. Pulse Procesos y, a continuación, pulse Crear nuevo proceso.
  3. En la ventana Crear nuevo proceso, especifique el nombre para que sea Desplegar componente de la aplicación.
  4. En la lista Tipo de proceso, seleccione Despliegue.
  5. Acepte los valores predeterminados para el resto de propiedades y pulse Guardar.
  6. En la lista de procesos, pulse el nuevo proceso para abrirlo en el editor de procesos.
  7. Añada un paso para borrar el directorio de trabajo. Como ha hecho para el componente web, añada un paso Suprimir archivos y directorios denominado Borrar directorio de trabajo y especifique un punto en el campo Directorio base y un asterisco en el campo Incluir.
  8. Añada un paso para descargar los artefactos. Como ha hecho para el componente web, añada un paso Download Artifacts y acepte las propiedades predeterminadas.
  9. Añada un paso para extraer el archivo WAR. Debe extraer el archivo WAR para poder actualizar un archivo de propiedades con la información de conexión de base de datos.
    1. En la lista de pasos, expanda la carpeta Programas de utilidad > FileUtils y arrastre un pasoDescomprimir al editor de procesos.
    2. Especifique el nombre para que sea Expandir WAR.
    3. En el campo Extraer directorio, especifique el siguiente código:
      ./JPetStore_expanded
    4. En el campo archivos .zip, especifique el siguiente archivo:
      JPetStore.war
    5. Pulse Guardar.
  10. Añada un paso para actualizar el archivo de propiedad con la ubicación de la base de datos:
    1. En la lista de pasos, expanda la carpeta Programas de utilidad > FileUtils y añada un paso Actualizar archivo de propiedades al editor de procesos.
    2. Especifique el nombre para que sea Actualizar archivo de propiedades.
    3. En el campo Desplazamiento de directorio, especifique la siguiente carpeta:
      ./JPetStore_expanded/WEB-INF/classes/properties
    4. En el campo Archivo de propiedades, especifique el siguiente archivo:
      database.properties
    5. En el campo Añadir/actualizar propiedades, especifique el siguiente código:
      url=${p:environment/db.url}
      Este campo actualiza la propiedad url del archivo de propiedades con la ubicación de la base de datos. El código ${p:environment/db.url} es una variable que representa la ubicación del componente de base de datos cuando se despliega la aplicación.
    6. Pulse Guardar.
  11. Añada un paso para actualizar el archivo WAR con el nuevo archivo de propiedades.
    1. En la lista de pasos, expanda la carpeta Programas de utilidad > FileUtils y añada un paso Crear archivo .zip al editor de procesos.
    2. Especifique el nombre para que sea Actualizar WAR.
    3. En el campo Nombre de archivo .zip, especifique el archivo JPetStore.war.
    4. En el campo Directorio base, especifique la siguiente carpeta:
      ./JPetStore_expanded
    5. En el campo Incluir, especifique el siguiente código:
      **/*
    6. Seleccione la casilla de verificación Actualizar existente.
    7. Pulse Guardar.
  12. Añada un paso para iniciar Tomcat:
    1. En la lista de pasos, expanda la carpeta Servidor de aplicaciones > Java > Tomcat y añada un paso Iniciar Tomcat al editor de procesos. Si este paso no está en el árbol, instale el plug-in de Tomcat como se describe en Requisitos previos para este tutorial.
    2. Acepte el nombre predeterminado Iniciar Tomcat.
    3. En el campo Lanzador, especifique el siguiente código:
      ${p:environment/tomcat.start}
      Este código es otra variable que representa el mandato para iniciar Tomcat.
    4. En el campo Tiempo de espera de inicio (en segundos), especifique 60 segundos.
    5. En el campo Puerto, especifique el puerto 8080.
    6. Pulse Guardar.
  13. Añada un paso para eliminarlas versiones anteriores de la aplicación:
    1. En la lista de pasos, expanda la carpeta Servidor de aplicaciones > Java > Tomcat y añada un paso Retirar el despliegue de la aplicación al editor de procesos.
    2. Acepte el nombre predeterminado Retirar el despliegue de la aplicación.
    3. En el campo URL del gestor de Tomcat, especifique el siguiente código:
      ${p:environment/tomcat.manager.url}
    4. En el campo Nombre de usuario del gestor de Tomcat, especifique el nombre de usuario para el servidor Tomcat. Ha especificado este nombre de usuario y la contraseña en Configuración del agente y del sistema de destino. Si ha utilizado los ejemplos de código de este tema, el nombre de usuario y la contraseña son tomcatmanager.
    5. En el campo Contraseña del gestor de Tomcat, especifique la contraseña para el servidor Tomcat.
    6. En el campo Nombre de contexto, especifique el siguiente nombre de contexto, incluida la barra diagonal precedente:
      /JPetStore
    7. Pulse Guardar.
  14. Añada un paso para desplegar el archivo WAR actualizado para el servidor de aplicaciones:
    1. En la lista de pasos, expanda la carpeta Servidor de aplicaciones > Java > Tomcat y añada un paso Desplegar al editor de procesos.
    2. Acepte el nombre predeterminado Desplegar aplicación.
    3. En el campo URL del gestor de Tomcat, especifique el siguiente código:
      ${p:environment/tomcat.manager.url}
    4. En el campo Nombre de usuario del gestor de Tomcat, especifique el nombre de usuario para el servidor Tomcat.
    5. En el campo Contraseña del gestor de Tomcat, especifique la contraseña para el servidor Tomcat.
    6. En el campo Nombre de contexto, especifique el siguiente nombre de contexto:
      /JPetStore
    7. En el campo Vía de acceso al archivo WAR, especifique la siguiente vía de acceso:
      ./JPetStore.war
    8. Pulse Guardar.
  15. Conecte los pasos en el orden siguiente:
    1. Start
    2. Clean working directory
    3. Download Artifacts
    4. Expand WAR
    5. Update Property File
    6. Update WAR
    7. Start Tomcat
    8. Undeploy Application
    9. Deploy Application
    10. Finish
  16. Cambie el distintivo condicional en el enlace entre los pasos Undeploy Application y Deploy Application a both pulsando la marca de verificación verde en la conexión hasta que cambie a un círculo gris, como se muestra en la siguiente figura:
    Pulsando la marca de verificación verde entre los pasos Undeploy Application y Deploy Application para cambiarla a un círculo gris
    Cada conexión de un paso a otro tiene un distintivo condicional. El distintivo condicional especifica una condición para la conexión. Hay tres distintivos condicionales disponibles:
    • De forma predeterminada, el distintivo condicional en cada una de las conexiones se establece en success, que se representa mediante una marca de selección verde. El proceso sigue estas tres conexiones cuando el paso tiene éxito.
    • El distintivo condicional fail está representado por un guión rojo (-). El proceso sigue estas tres conexiones cuando el paso falla.
    • El distintivo condicional both está representado por un círculo gris. El proceso sigue estas conexiones independientemente de si el paso tiene éxito o falla.
    El paso Undeploy Application falla si no hay instaladas versiones anteriores de la aplicación. En este caso, establecer el distintivo condicional en la conexión en both especifica que el proceso sigue ejecutándose tanto si el paso falla como si tiene éxito.
  17. Guarde el proceso.
El proceso de componentes completo para el componente de la aplicación se parece a la siguiente figura:
El proceso de componentes completo que despliega la aplicación

Creación de un proceso de componentes para el componente de base de datos

El proceso de despliegue para el componente de base de datos actualiza la base de datos con valores de muestra.
  1. En la pestaña Componentes, pulse el componente JPetStore-DB.
  2. Pulse Procesos y, a continuación, pulse Crear nuevo proceso.
  3. En la ventana Crear nuevo proceso, especifique el nombre para que sea Desplegar componente de base de datos.
  4. En la lista Tipo de proceso, seleccione Despliegue.
  5. Acepte los valores predeterminados para el resto de propiedades y pulse Guardar.
  6. En la lista de procesos, pulse el nuevo proceso para abrirlo en el editor de procesos.
  7. Añada un paso para descargar los artefactos. Como ha hecho para el componente web, añada un paso Download Artifacts y acepte las propiedades predeterminadas.
  8. Añada un paso para actualizar la base de datos:
    1. En la lista de pasos, expanda la carpeta Base de datos > DBUpgrader y añada un paso Actualizar BD al editor de procesos. Si este paso no está en el árbol, instale el plug-in de actualización de base de datos como se describe en Requisitos previos para este tutorial.
    2. En la ventana Editar propiedades, en el campo Nombre, acepte el valor predeterminado de Actualizar BD.
    3. En el campo Nombre de clase del controlador, especifique la siguiente clase:
      com.mysql.jdbc.Driver
    4. En el campo Controlador jar de BD, especifique la siguiente vía de acceso:
      lib/mysql-connector-java-5.1.20-bin.jar
      Este campo se proporciona en el código fuente para el componente.
    5. En el campo URL, especifique la siguiente variable:
      ${p:environment/db.url}
    6. En el campo Usuario, especifique el ID de usuario del usuario de base de datos. Si ha utilizado estos ejemplos en Configuración del agente y del sistema de destino, el ID de usuario es jpetstore.
    7. En el campo Contraseña, especifique la contraseña del usuario de base de datos. Si ha utilizado estos ejemplos en Configuración del agente y del sistema de destino, la contraseña es jppwd.
    8. En el campo Vía de acceso de archivos SQL, especifique un punto :.).
    9. En el campo Inclusión de archivos SQL, especifique la extensión *.xml .
    10. En el campo SQL de versión actual, especifique el siguiente código SQL:
      SELECT VER FROM DB_VERSION WHERE RELEASE_NAME = ?
    11. En el campo Suprimir versión de SQL, especifique el siguiente código SQL:
      DELETE FROM DB_VERSION WHERE RELEASE_NAME = ?
    12. En el campo Actualizar versión de SQL, especifique el siguiente código SQL:
      INSERT INTO DB_VERSION (RELEASE_NAME,VER) VALUES(?,?)
    13. Pulse Guardar.
  9. Conecte los pasos en el orden siguiente:
    1. Start
    2. Download Artifacts
    3. Upgrade DB
    4. Finish
  10. Guarde el proceso.
El proceso de componentes completo para el componente de base de datos se parece a la siguiente figura:
El proceso de componentes completo que despliega la base de datos

Punto de control de la lección

En esta lección, ha creado procesos de componentes para desplegar los componentes.

Puede utilizar procesos de componentes para automatizar muchas tareas distintas en los componentes. Sin embargo, no puede ejecutar procesos de componentes directamente; en la mayoría de los casos, los añade a procesos de aplicaciones. Más adelante en este tutorial, creará un proceso de aplicaciones para estos tres procesos de componentes.

Los procesos constan de pasos, proporcionados por los plug-ins. Para ver una lista de los plug-ins que están disponibles y para obtener documentación sobre esos plug-ins y pasos, consulte IBM developerWorks: UrbanCode Deploy Plug-ins.

< Anterior | Siguiente >

Comentarios