Preparación para Certificación WebMethods ESB.


1.   webMethods Overview

1.1   Components of the ESB

1.1.1       IntegrationServer

Es un servicio administrado y consumido mediante peticiones web (interfaz gráfica) donde su principal función es la ejecución de servicios. En otras palabras, es donde se ejecuta todo el BackEnd de los flujos que son consumidos por los usuarios y/o aplicaciones de terceros.
Sus actividades se pueden englobar en 3 puntos:

                           I.          Recibe peticiones por parte de aplicaciones clientes y autentifica y autoriza las peticiones de los usuarios.
                         II.          Invoca y ejecuta los servicios de acuerdo a las entradas que son enviadas en las  peticiones de los usuarios.
                        III.          Recibe el resultado de la ejecución de los servicios y envía el resultado a los usuarios.

1.1.1.1    Enterprise Gateway

Es una configuración especial al Integration Server, el cual es con la finalidad de poder llevar a cabo peticiones y comunicación con Aplicaciones Externas (fuera de la red segura), ya que su ubicación a nivel arquitectura empresarial, se localiza en DMZ permitiendo así un puente seguro para llevar a cabo peticiones entre Cliente Externo <-> EG (DMZ) <-> IS(MZ).

1.1.2       MywebMethods Server.

Es un servicio administrado y consumido mediante peticiones web (interfaz gráfica) donde su principal función es la ejecución FrontEnd de los flujos de procesos y el acceso para los usuarios finales.
Almacena las tareas creadas por los desarrolladores y permiten la ejecución de las mismas para poder ser manejadas por los usuarios finales.
En este servicio se definen los Roles, Grupos, permisos, consumo de usuarios externos (LDAP), creación de usuarios locales, monitoreo de flujos (BAM), administración B2B y demás actividades para permitir el acceso a los usuarios finales.

1.1.3       Broker

1.1.4       Universal Messaging

Es una herramienta JAVA la cual está orientada en la mensajería multilenguajes (C+, C#, .net, Bytes, Java, Python), es la encargada de realizar las peticiones y envió del archivo que da inicio a los flujos de procesos, almacenando las QUEUE, SUBQUEUES de los flujos.
 

1.1.5       JDBC

Es un adaptador que esta añadido en Integration Server, el cual permite el intercambio (comunicación) de información con Bases de datos las cuales pueden ser de distintos proveedores (Oracle, SQL, DB2, ADABAS, IBM Informix, MySQL)

1.1.6       BPM/BAM

1.1.6.1    Business Process Model

Es el diseño final grafico del proceso que contempla todas las actividades de usuario, de servicio, comunicación con aplicaciones de terceros, BD, que serán necesarios para poder llevar a cabo el cumplimiento de un objetivo en específico.

1.1.6.2 Business Activity Monitoring

Es un complemento el cual permite a la empresa el monitoreo del funcionamiento, rendimiento y costo de los procesos que se encuentran ejecutándose. Este monitoreo es realizado mediante KPIs que son definidas durante el diseño del flujo.
También nos permite monitorear el tiempo que dura cada tarea del flujo, tiempo de transición, número de tareas creadas para cada paso del flujo, etc.

1.2   What are the administration and monitoring tolos

Los principales productos que son utilizados para la administración de procesos de negocio, tareas de aplicación y dueños de procesos, son Monitor, Task Engine y Mobile Monitor.

1.2.1       Administering Business Processes

Monitor es un servicio web el cual muestra información obtenida por Integration Server y Optimize (procesos de servicios, documentos y procesos de negocio)
Podemos utilizarlo para:
  • Ø  Habilitar o deshabilitar la ejecución de uno o más procesos.
  • Ø  Re-enviar actividades de algún proceso, la cual presento alguna falla durante la primer ejecución.
  • Ø  Definir alertas cuando una tarea o actividad de algún proceso tarde demasiado.
  • Ø  Habilitar y configurar “audit logging”
  • Ø  Eliminar Procesos.
  • Task Engine lo podemos utilizar para:
  • Ø  Asignar tarea a un usuario o rol.
  • Ø  Habilitar o prevenir que se ejecuten instancias.
  • Ø  Iniciar tareas de forma manual.
  • Ø  Eliminar Tareas

1.2.2       Monitoring Business Process Instances

Monitor puede ser utilizado en términos de monitoreo para:
  • Ø  Ver instancias de procesos, localizar problemas y determinar el motivo del error.
  • Ø  Suspender, continuar o detener instancias de procesos que causen problemas y modificar información (canónico) para reenviar la instancia.
  • Ø  Crear, modificar y eliminar etapas del proceso, ver el estado de las etapas del proceso.
  • Mobile Monitor es una aplicación móvil que nos proporciona información en tiempo real sobre el estado de ejecución de los procesos
  • Task Engine puede ser utilizado en términos de monitoreo para:
  • Ø  Asignar tarea a usuario o rol.
  • Ø  Suspender, continuar o eliminar tarea de instancia.
  • Ø  Ver estatus de tarea y “audit log”.

1.3 Role of the webMethods Database

Es un grupo de objetos que son utilizados por los distintos productos que corresponden al ESB (IS, MWS, Trading Network, Optimize, Task Engine, Process Engine, Monitor, etc)
Los componentes más importantes y por consiguiente la información más valiosa que se almacena en BD son los datos que son enviados y/o consumidos por IS y MWS, mediante Task Engine, Process Engine.
Cada componente de BD es llamado de acuerdo a los datos que va almacenar. Los productos se comunican a través de Java Database Conectivity (JDBC).

1.2.2.1    Integration Server (IS)

Nombre
Contenido
ISInternal
Tareas programadas, mapeos de certificados de clientes, datos en tiempo de ejecución para pub.storageservice, audit log, disparadores, configuraciones y datos en tiempo de ejecución para OAuth.
ISCoreAuditeLog
Logs de: Error, servicios, seguridad, datos de monitoreo de sesión.
CrossReference
Cross-referencing data para “publish-and-suscribe solutions.
Document History
Históricos para cada proceso publicado y en ejecución. La información es utilizada para evitar duplicación de información.
Distributed Locking
Información que coordina el acceso a recursos a través de la distribución de servicios y procesos.

1.2.2.2    My webMethods Server (MWS)

Se engloba información de MWS y Task Engine, donde se almacena información de:
  • Ø  Despliegue.
  • Ø  Configuración de Tareas, Procesos.
  • Ø  Seguridad.
  • Ø  Portal Page.
  • Ø  Operaciones de ejecución.
  • Esta información es compartida para IS y Optimize.
  • Task Engine guarda información de:
  • Ø  Estatus de Tarea.
  • Ø  Distribución de tareas
  • Ø  Datos de Negocio.
  • Esta información es mostrada en MWS Interface.

1.2.2.3    Optimize

Al instalar Optimize se crea el componente “Analysis database”, el cual almacena datos analíticos, datos de proceso y monitoreo.
Nombre
Contenido
Central Configuration
Instalado al seleccionar componente MWS.
Almacena la configuración de Optimize
Process Audit
Datos de Procesos de Negocio.
Datos de auditoria
Productos de terceros pueden almacenar datos de generación del proceso.

1.2.2.4    BPM

Business Rules, Es instalado en el mismo esquema de Process Audit, registrando:
  • Ø  Inicio de Instancias.
  • Ø  Información relacionada a despliegues.
  • Ø  Estado de reglas de negocio.
Process Engine, guarda datos de ejecución de los procesos.

1.4 Role of Command Central

Es una herramienta diseñada para llevar a cabo tareas administrativas desde un solo lugar (gestionar distintos servicios desde un mismo punto)
Actividades que se pueden llevar a cabo:
  • Ø  Revisar fixes instalados en los servicios administrados (IS,MWS,UM,Broker)
  • Ø  Comparar instalaciones para localizar discrepancias.
  • Ø  Monitorear estatus y salud de los servicios (JVM,Threads, sesiones)
  • Ø  Activar y desactivar servicios.
  • Ø  Configurar Alertas.

La configuración default de este servicio, indica que para poder acceder a la herramienta es necesario ejecutar el servicio llamada “Command Central” y para acceder mediante web es necesario utilizar el puerto 8090. Otro punto importante es que para poder monitorear los servicios IS, es necesario ejecutar los mismos desde el archivo common de IS, es decir <Software AG_directory>\profiles\IS_instance_name\bin

2.   Installing the ESB.

2.1 Use of Installer

Software AG Installer, es una herramienta proporcionada por Software AG para llevar a cabo la instalación de todos los elementos necesarios por el cliente.
Existen 2 métodos para llevar a cabo tal instalación los cuales se describen a continuación

2.1.1 Empower

Para utilizar este método es necesario contar con nuestro usuario y password con el cual nos autentificamos en la página web de Empower.
Este método es utilizado cuando:
  •        I.          Se está instalando o se desea instalar la última versión.
  •      II.          Se instala en un solo equipo.
  •     III.         El equipo donde se va a instalar el ambiente tiene salida a internet.

Cuando instalamos desde empower, el instalador cuestiona las características del equipo donde se llevara a cabo la instalación, automáticamente el instalador selecciona las dependencias entre servicios a instalar, las cuales no pueden des-seleccionarse.

2.1.2 Image

Para poder obtener una imagen de instalador es necesario ingresar a la página web de empower.

Este método es utilizado cuando:

  •        I.          Los servicios que corresponden a la suite van a ser instalados de forma distribuida en distintos equipos.
  •      II.          El equipo donde se llevara a cabo la instalación no cuenta con salida a internet.
  •     III.         Se va a instalar una versión(es) anterior(es) a la más reciente.


Utilizando este método, el instalador no cuestiona las especificaciones del equipo donde se llevara a cabo la instalación.

Se tiene el poder para seleccionar exactamente los servicios que se van a instalar en los distintos equipos, se pueden omitir dependencias.

2.2 Installer command line usage

Este método es utilizado para instalar en todos aquellos Sistemas Operativos (SO) que no cuentan con interfaz gráfica que no están soportados por SoftwareAG
Los pasos para llevar a cabo la instalación es la siguiente:
  •        I.          Log on en el sistema donde se instalara.
  •      II.          Desactivar todos los servicios correspondientes a productos SoftwareAG.
  •     III.          Si se llevara a cabo una instalación en un servidor donde ya existe registros de otra instalación
    • a.      Revisar que exista el archivo afterInstallAsRootLog.txt y si no existe ejecutar <SoftwareAG_directory>\bin\beforeInstallAsRootScript
  •     IV.          Si no existe, Instalar JDK (32 o 64 bytes)
  •      V.          Revisar JRE
  •     VI.          Ejecutar el siguiente comando para iniciar la instalación: java –jar SoftwareAGInstalleryyyymm.(jar|zip) –console
    • a.      Para enlistar todos los comandos: java –jar SoftwareAGInstalleryyyymm.(jar|zip) -help –console

Mientras nos movemos en el instalador se guarda cierta información de forma temporal por si reiniciamos la instalación, esta pueda usar la información ya almacenada y trabajar más ágil.

Para instalar desde imagen:

Java –jar SoftwareAGInstalleryyyymm.(jar|zip) –readImage [nombredeimagen] –console
Ejemplo: -readImage /opt/myImagenes/SGIM.zip

2.3 Use of Database Component Configurator (options)

Para iniciar el componente: <SoftwareAG_directory>\common\db\bin y ejecutar dbConfiguration
La instalación se puede hacer por dos métodos:
Tipo de Instalación
Descripción
Componentes
Los elementos que deseamos instalar para el funcionamiento correcto de los productos a instalar
Producto
Al seleccionar el producto, automáticamente la herramienta identifica cuales componentes son necesarios para el funcionamiento del producto seleccionado.

Acciones que se pueden realizar:
Acción
Descripción
Créate
Crear los componentes de BD de acuerdo a nuestras necesidades.
Recreate
Eliminar y re crear los componentes que seleccionamos
Catalog
Muestra los componentes instalados
checkEncoding
Revisa que nuestro RDBMS (Sistema de Gestión de Base de Datos Relacionales) tenga habilitado Unicode y regresa el resultado
Drop / migrate
Eliminar componente o migrar a otra versión

2.4 How to view installation history

Este archivo almacena información puntual de todos los productos instalados, versiones, complementos, lenguaje y paquetes.

Este archivo en complemento con InstallLog.txt nos da más información de lo que se ha estado instalado en el servidor y directorio. Estos archivos se mantienen aun después de una desinstalación <SoftwareAG_directory>/install/history/history
InstallLog.txt, guarda errores e información que surge durante la actividad de instalación y desinstalación.

History/, history.txt y audit.txt. En estos archivos se guarda información de los productos instalados, versiones e información histórica de lo que se ha llevado a cabo después de cada instalación (en el mismo directorio).

3.   ESB Startup and Shutdown

3.1.   Start and Stop the webMethods ESB components

La mayoría de los servicios pueden ser iniciados o desactivados desde:
  •        I.          Servicio Windows : services.msc
  •      II.          Aplicación (Windows)
  •     III.          Línea de comandos

a.      Desde CMD nos ubicamos en la carpeta correspondiente del aplicativo y se busca el archivo .bat -> Windows | .sh -> Unix

3.1.1       Broker

Esta herramienta por default se activa al iniciar Broker Monitor:

  •      Servicio: Se ejecuta “services.msc” y se localiza  Broker Monitor y Broker Server. (Activación y desactivación)
  • b      Línea de Comando: <Broker_directory>\bin à startup (.bat|.sh) // stop

3.1.2       Universal Messaging

  • a)      Servicio: Se ejecuta “services.msc” y se localiza nserver.
  • Previamente se tiene que registrar como servicio, ejecutando desde CMD: <UM_directory>\server\<name>\bin à registerService | unregisterService
  • b)      Línea de Comando: <UM_directory>\server\<name>\bin à nserver // nstopserver

3.1.3       Integration Server

Para registrar el servicio: <SoftwareAG_directory>/profile/IS_instance_name/bin à service.bat –install
  • a)      Servicio: Se ejecuta “services.msc” y se localiza: SoftwareAG Integration Server
  • b)      Línea de comando: <SoftwareAG_directory>/profile/IS_instance_name/bin à startup(.bat|.sh) // shutdown (.bat|.sh)

NOTA: SoftwareAG recomienda utilizar esta ubicación lo cual también nos permite monitorear el servicio desde CommandCentral

3.1.4       My webMethods Server

Para registrar el servicio: <SoftwareAG_directory>/MWS/bin à mws.bat  -installservice

  • 1.      Servicio: Se ejecuta “services.msc” y se localiza SoftwareAG My webMethods Server
  • 2.      Línea de comando:
  • 2.1. Cuando se inicia MWS por primera vez: <SoftwareAG_directory>/MWS/bin à mws(.bat|.sh) –s [servername] init
  • Si no queremos indicar [servername] ejecutamos el mws del servicio a iniciar, es decir, navegamos entre carpetas al bin de un MWS en específico.
  • 2.2. Cuando ya se ha iniciado por primera vez: <SoftwareAG_directory>/MWS/bin à run (Para una nueva consoloa CMD) //startup (En misma consola CMD) // shutdown.


3.2.    Quiesce Mode

Es utilizado cuando queremos realizar un mantenimiento mayor ya que:
  • Ø  Se deshabilitan puertos y solo se puede acceder por puerto de diagnóstico 9999
  • Ø  No se conecta con ningún servicio (paquete, BD) externo, con excepción de conexión LDAP.
  • Ø  Se deshabilita JMS messagin y SOAP-JMS.
  • Ø  Se suspende comunicación con UM / Broker.
  • Ø  Los únicos paquetes activos son: WmRoot, WmPublic.
  • Ø  Se pausan Scheduled.
  • Ø  Se deshabilita Cluster.
  • Las Actividades que se pueden llevar a cabo son:
  • v  Crear, modificar y desplegar paquetes.
  • v  Modificar configuraciones de servicio.
  • v  Cambiar estados de puertos, conexiones JMS, “webMehtods messaging connection aliases” paquetes y tareas de usuario.
  • v  Modificaciones de configuración de Cluster (terracotta Array)
  • v  Instalación de fixes.
  • v  Debug de servicios.


Comentarios