Libro Blanco System z

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Libro Blanco System z"

Transcripción

1 Libro Blanco System z

2 Tabla de contenido 1 Introducción Objetivo del documento Organización del documento 5 2 Características de la plataforma Capacidad Qué entendemos por capacidad Elementos que integran la capacidad de un sistema Pocos o muchos servidores? Cargas mixtas Gestión de Sistemas basado en SLAs Virtualización de recursos Virtualización de CP Virtualización de memoria Virtualización de E/S Virtualización de comunicaciones Donde IBM System z triunfa sobre la virtualización de la arquitectura x IBM System z puede tener mucho sentido para determinadas aplicaciones e iniciativas Escalabilidad Introducción (conceptos de vertical, horizontal y aprovisionamiento) Escalabilidad del hardware Escalabilidad de los S/O. z/os z/vm y Linux for System z Sysplex Paralelo Capacidad bajo demanda (lo nuevo de z/os de aprovisionamiento) Integridad y Seguridad Integridad Seguridad Rendimiento Disponibilidad Construido para los negocios Una solución para la operación continúa de los negocios Disponibilidad y fiabilidad de primera clase Fortalezas del corazón del hardware Mas allá del hardware Gestión de Sistemas Revisión de la administración de sistemas El valor de la administración de sistemas en el z/os Iniciativa del ordenador autónomo de IBM Tecnologías auto-configuradoras Tecnologías auto-reparadoras Tecnologías auto-optimizadoras Tecnologías auto-protectoras Administración de los sistemas End-to-end 29 3 Arquitectura System z. Plataforma HW Conceptos de la arquitectura System z Multiprogramación/Multiproceso/Multithreading Mecanismo de interrupciones Virtualización Otras características importantes del HW Componentes y sus características 36 IBM Corporation 21/02/ de 131

3 3.2.1 Z Procesadores Memoria E/S Time-of-Day clock CP Assist for Cryptographic HiperSockets Hardware Management Console (HMC) Detalles de virtualización del HW Hiperdispatch 43 4 Arquitectura System z. Plataforma SW- SW Base IBM z/os y componentes Gestión de la Memoria Gestión y reparto del Procesador- Workload Manager (WLM) Resource Recovery Services (RRS) Gestión de los datos DFP(Data Facility Program) Gestión del Almacenamiento Gestión de los bloqueos -Global resource serialization (GRS) Entorno de programación/ejecución Soporte de Runtime- Language environment Compiladores de los lenguajes de programación tradicionales Soporte de Java Lenguajes de reciente incorporación Herramientas de desarrollo de SW XML Services UNIX System Services Security Server Técnicas de clustering. Sysplex Paralelo Clustering básico Anillo GRS Sysplex Paralelo (Resource sharing y Datasharing) Coupling Facility z/vm Linux en System z 60 5 Arquitectura System z. Plataforma SW-Middleware Transaccional CICS El CICS y el z/os Programas, transacciones y tareas CICS Programación conversacional y pseudo-conversacional Comandos CICS Servicios CICS para los programas de aplicación Objetos de datos CICS Acceso a datos externos Topología CICS Intercomunicación CICS a CICS Conectividad con sistemas no-cics Configuración CICS Seguridad Herramientas para depuración y de determinación de problemas IMS IMS Database Manager (IMS DM) IMS Transaction Manager Servicios de sistema IMS Estructura de los subsistemas IMS WAS Nodo de servidor base de aplicaciones: Network Deployment Manager: 81 IBM Corporation 21/02/ de 131

4 5.5 MQ Tipos de mensajes Gestor de Colas Tipos de colas de mensajes Qué es un canal? Cómo queda asegurada la integridad transaccional? Un ejemplo de mensajería y encolamiento Interfaz con CICS, IMS, Batch, o TSO/E Middleware Bases de Datos DB SW de gestión Gestión de almacenamiento Gestión de la operación (Tivoli SA y Netview) Gestión del Batch Monitorización y rendimiento Integración en los modelos IT más usados en la actualidad SOA Introducción Estándares en SOA Construyendo las TI con nuevos parámetros Mejores prácticas SOA Proceso en nube (Cloud computing). 117 La evolución del IBM System z: zenterprise 122 Modernización empresarial en zenterprise 122 Transformar sus activos de TI para proteger sus inversiones 124 Modernice su empresa para maximizar la agilidad 124 Consolidación de servidores 126 Introducción 126 Tipos de Consolidación. 127 Consolidación en System z Bibliografía 130 IBM Corporation 21/02/ de 131

5 1 Introducción 1.1 Objetivo del documento El objetivo de este documento es describir la plataforma System z en sus componentes más importantes. Intentamos establecer las características de la plataforma en relación con el tipo de necesidades a las que va dirigida, así como documentar la tecnología que soporta dichas características. El mundo System z avanza y por lo tanto este documento quedará obsoleto en cuanto se anuncie la siguiente máquina. No obstante el paradigma System z se ha mantenido a lo largo de los más de 40 años de existencia de la plataforma y esperamos que se mantenga muchos más. Si bien los detalles pueden cambiar, el contenido de este libro es general de la plataforma. 1.2 Organización del documento Hemos dividido el documento en tres partes: 1. Una primera (Capítulo 2) que habla de las características que son importante en una plataforma. Las características que todas las plataformas tienen pero cada una en su medida. Esta diferente manera de ser escalable, o los distintos límites de capacidad, o lo que en cada plataforma se define como alta disponibilidad, es lo que hemos querido reflejar en este primer capítulo. 2. Hay una segunda parte compuesta por los capítulos 3, 4 y 5 que intenta dar una descripción técnica tanto del HW como el SW más usado en el Mainframe. Esta parte complementa la primera, dotándola de mas profundidad. 3. Y, por último hay un capitulo dedicado al papel e System z en los paradigmas de negocio que están apareciendo a fecha de Estos paradigmas están basados en características de la infraestructura que para System z son características de nacimiento, como por ejemplo la seguridad, la integridad, la virtualización, etc. Este capítulo pretende solo dar unas pinceladas sobre este papel. IBM Corporation 21/02/ de 131

6 2 Características de la plataforma 2.1 Capacidad Qué entendemos por capacidad Mirando en el diccionario de la Real Academia de la Lengua, encontramos las siguientes definiciones: 1. Propiedad de una cosa de contener otras dentro de ciertos límites. 2. Oportunidad, lugar o medio para ejecutar algo. En el Webster encontramos como definición nº 5: 5. La facilidad o poder para producir, ejecutar o utilizar. Como vemos se trata de un potencial. Algo que puede llegar a realizarse o no, pero que está a nuestra disposición. Una vez dicho esto, me gustaría definir la capacidad con un ejemplo de la vida cotidiana: Un litro de leche. Qué es un litro de leche? La leche que cabe en una jarra de un litro. Pensemos en el ordenador como la jarra. Ahora bien, si la jarra la llenamos de agua, vino o leche, los resultados de bebernos dicha jarra no son los mismos, y ya no digamos si la jarra la llenamos de ambrosía La capacidad de los ordenadores se suele medir por el número de instrucciones que pueden realizar en determinado tiempo. Funciones o peticiones tales como abrir un fichero o leer un registro, dependiendo de en qué lenguaje de programación estén escritas, si es un lenguaje compilado o interpretado, de lo buen o mal programador que seas, del método de acceso utilizado, pueden requerir 10 ó 300 ó instrucciones. Una de las características fundamentales del sistema z es su habilidad para utilizar el 100% de su capacidad sin merma en su rendimiento. El System z dispone de elaboradas utilidades en cuanto a rendimiento, que facilitan la labor a la hora de conocer los consumos de cada recurso. El CMG (Computer Measurement Group), fundado en 1974, es una organización sin ánimo de lucro de profesionales de la informática dedicada a compartir información y normas de buen uso para asegurar la eficacia y escalabilidad de los sistemas de IT, a través de la medición, el análisis cuantitativo y la predicción. Dispone de una base de datos de artículos en la siguiente página web: Elementos que integran la capacidad de un sistema Para poder conseguir ese potencial debemos basarnos en los elementos que configuran dicho sistema y las interrelaciones entre ellos. Como elementos fundamentales tenemos: los procesadores, su arquitectura, el juego de instrucciones que dicho procesador es capaz de ejecutar, los elementos de entrada/salida para acceder a los datos, la memoria, los tipos de caché, el direccionamiento y la virtualización. (Esto se verá con más detalle en el capítulo 3º) Como interrelaciones el elemento más importante del que disponemos es el sistema operativo que permite acceder a los recursos anteriores sin las complejidades de la programación de chips. IBM Corporation 21/02/ de 131

7 Esto en cuanto a elementos que operan a nivel de servidor. Si necesitamos correr varios servidores en una sola máquina tenemos que tener en cuenta otros elementos que influirán a la hora de la capacidad de la máquina, como por ejemplo la compartición de recursos o su imposibilidad, y el nivel de dicha compartición en el caso de que sea posible. Esto también exige la seguridad de que compartimos lo que necesitamos y al nivel requerido, sin intrusiones de un servidor en otro o machaque de áreas privativas. Más adelante hablaremos de cada una de estas áreas con más detalle. Sólo señalar aquí que el sistema z dispone de las más altas certificaciones de seguridad Pocos o muchos servidores? La evolución del paradigma de sistemas distribuidos una aplicación, un servidor, ha llevado al crecimiento desmesurado del número de servidores en una instalación. Baste un ejemplo: Un centro con sólo dos aplicaciones corriendo contra una base de datos. Esto no parece muy complicado: 4 servidores para los servidores de aplicación (dos por aplicación por redundancia), 2 para la base de datos (activo/activo o activo/pasivo), total 6 sistemas. Pero hay que contar con 3 más para el desarrollo y otros 3 para QoS. Si además necesitamos garantizar el servicio ante un desastre necesitamos 6 más para producción y otros 3 para desarrollo, En total ya tenemos 21 servidores/máquinas que manejar. Y esto sólo para dos aplicaciones y sin tener en cuenta el posible crecimiento de la aplicación, que, en general, se solventa con la adición de nuevos servidores. Cuántos más servidores haya que administrar más complicada es la tarea, más problemas a resolver con más puntos de fallo, más tiempo perdido en tareas puramente administrativas (como el cambio de sistemas operativos o su mantenimiento) y más difíciles de controlar la seguridad y las comunicaciones. El Mainframe tiene un paradigma diferente: todas las aplicaciones compartiendo un sistema. A simple vista esto parece más sencillo de manejar, y en realidad lo es si el sistema es capaz de priorizar las tareas importantes y serializar las peticiones a los recursos para evitar que tareas intrascendentes monopolicen la máquina y para garantizar la integridad de las operaciones Muchos servidores Como resumen, muchos servidores dificultan las tareas administrativas, aumentan el tiempo de la resolución de problemas (sobre todo si los sistemas pertenecen a distintas organizaciones), complican los procedimientos de pruebas y de recuperación ante un desastre y generan conflictos de propiedad entre departamentos. Y además, gastan más energía (hay entidades que han tenido problemas de suministro e incluso en determinados países se está publicando legislación para impedir que se consuma más allá de un máximo de energía) y utilizan más espacio, cableado y conectores Pocos servidores. Como contrapartida, cuantos menos servidores, se utiliza menos energía, menos espacio, se tarda menos tiempo en la resolución de problemas y la administración de los sistemas es más sencilla, es decir, se mejoran todos los aspectos anteriores Cargas mixtas El concepto de carga mixta va emparejado con el paradigma del Mainframe. Es el tipo de trabajo que se realiza cuando todo tipo de aplicaciones corren en un solo servidor, así tenemos transacciones on-line que se generan a través de middleware del tipo CICS/WAS/IMS, manejo de datos ya sea a través de ficheros, secuenciales o de IBM Corporation 21/02/ de 131

8 acceso directo, o de bases de datos, comunicaciones con los distintos tipos de terminales, tareas en lotes, gestión de seguridad, etc. El sistema z, gracias a su arquitectura y características únicas, es capaz de combinar un gran número de cargas priorizando las tareas importantes, asignando los recursos necesarios y ofreciendo seguridad a medida, compartiendo al mismo tiempo todos los recursos del sistema de una forma segura. Un factor importante en este punto es el WLM, (Work Load Manager), elemento integrado en el sistema operativo, que permite definir las prioridades del sistema a través de políticas, con un lenguaje igual al utilizado en los compromisos de niveles de servicio. Dicho componente, además de priorizar las tareas, asigna los recursos necesarios para conseguir el rendimiento deseado según los SLA s y balancea la carga a lo largo de un Sysplex para conseguir los máximos beneficios de capacidad y rendimiento que ofrece el System z Gestión de Sistemas basado en SLAs En una instalación se manejan muchos tipos de trabajo: producción, desarrollo, test, administración, pruebas de calidad, etc. También se dispone de muchos tipos de aplicaciones, algunas de las cuales son prioritarias y requieren inmediatez en su ejecución, mientras que otras pueden esperar incluso minutos, sin que por ello pierdan efectividad. Generalmente, este tipo de conocimiento escapa a la gente que administra los sistemas, ya que éste pertenece al ámbito del negocio. Por eso se establecen compromisos de SLA s (Service Level Agreement). En este tipo de acuerdos se establecen niveles de servicio tales como tiempo de respuesta, disponibilidad de la aplicación, requerimientos de recuperación, etc. Este tipo de acuerdos también sirve para una posible facturación interna de los servicios prestados. El sistema z permite la definición de la importancia de las tareas con políticas basadas directamente en los SLA s. Estas políticas se actualizan on-line, 2.2 Virtualización de recursos La virtualización hace referencia a la técnica de ocultar las características físicas de los recursos informáticos a los usuarios de dichos recursos. El hecho es que la virtualización no es de ninguna manera un concepto nuevo o un nuevo invento de la tecnología, aunque ahora se aplique también a la informática distribuida, ya que la plataforma System z de IBM la ha soportado durante mucho tiempo y la ha ido perfeccionado a lo largo de décadas. No olvidemos que MVS, el nombre antiguo del z/os, significa Multiple Virtual System y VM, el nombre que desde los 70 ha llevado el nuevo z/vm significa Virtual Machine. Algunos expertos de la industria sostienen que la virtualización de los servidores está convirtiendo el centro de datos a una arquitectura que imita al Mainframe. Esto es relativamente cierto aunque un poco simplista ya que esta teoría ignora el hecho de que la arquitectura x86 tiene unos límites de escalabilidad, fiabilidad y rendimiento que constituyen la quintaesencia de la plataforma System z de IBM. Y la simple virtualización no incorpora la gestión integrada en la plataforma System z. IBM Corporation 21/02/ de 131

9 2.2.1 Virtualización de CP Processor Resource/Systems Manager (PR/SM ) es un hipervisor integrado en todos los System z que correlaciona los recursos físicos de la máquina con recursos virtuales. Esto permite que muchas particiones lógicas puedan compartir dichos recursos físicos. Los CP s quedan integrados en un pool y a cada partición se le asocia un número lógico de ellos. El PR/SM proporciona los procesadores físicos y en caso de necesitar más CP s de los que haya físicamente disponibles, decide dar los recursos de acuerdo al peso otorgado a cada partición. En el z10, para evitar pérdidas de rendimiento debidas a los movimientos de cache entre los procesadores físicos, surge el hiperdispatch Virtualización de memoria La memoria no se puede ser compartir entre particiones. Cosa lógica porque ahí es donde están los datos de cada aplicación. Sin embargo en el sistema z existen varias opciones que permiten una mejor utilización de la memoria. En primer lugar se pueden pasar trozos de memoria de unas particiones a otras por medio de comandos. Así nos aseguramos que se han salvado los datos pertinentes y que éstos no están en uso por alguna aplicación. En segundo lugar, dentro de cada partición, la memoria se virtualiza dependiendo del sistema operativo. Tanto z/os como z/vm son capaces de virtualizar la memoria hasta conseguir un alto rendimiento en su utilización. El z/os dispone de tablas de direccionamiento de memoria que permiten que cada espacio de direcciones pueda funcionar como si dispusiera de toda la memoria, no sólo la existente realmente, sino toda la que pueda direccionar. Para ello dispone de ficheros de paginación, en los que se puede respaldar memoria que no esté en uso, permitiendo así que dicha memoria pueda ser usada por otra aplicación. El z/vm se encarga de distribuir la memoria entre sus huéspedes. Puede obtener un over-commit de hasta dos veces su capacidad Virtualización de E/S El sistema z es el único en el mercado que dispone de un subsistema de canales encargado de realizar la E/S para todas las particiones, convirtiéndose así en el paradigma de la virtualización. Este subsistema de canales distribuye su inteligencia entre un procesador especializado (SAP) y los canales, que también disponen de procesadores. Por otro lado también dispone del EMIF, que permite compartir canales entre las distintas particiones, sin necesidad de disponer de cableados adicionales para cada sistema Virtualización de comunicaciones. Puede compartir tarjetas de comunicación IP entre varias particiones. IBM Corporation 21/02/ de 131

10 Dispone de un mecanismo de comunicación entre particiones denominado HiperSockets que permite comunicaciones IP entre particiones sin necesidad de cableado, a velocidad de memoria. Dentro del z/vm dispone de mecanismos tales como la guest LAN, que es una red LAN virtualizada, y el virtual switch Donde IBM System z triunfa sobre la virtualización de la arquitectura x86. La llegada de la virtualización de los servidores x86 está proporcionando grandes avances dentro de los departamentos de IT, pero aún tiene defectos y fallos cuando lo que las organizaciones buscan es ejecutar modernas aplicaciones de empresa. La tecnología de virtualización de servidor es realmente buena al hacer un uso más eficiente del hardware con la ventaja añadida de una mejora en la recuperación ante un desastre. Por otra parte, IBM System z se ha construido desde el principio para ejecutar aplicaciones empresariales críticas que demandan una plataforma de hardware flexible, escalable y de una alta disponibilidad. Mientras que la virtualización del x86 puede gestionar bien tareas sencillas, la virtualización del Mainframe se aprovecha de más de 30 años de innovaciones tales como: Un hardware tolerante al fallo que excede en mucho cualquier cosa que la virtualización x86 pueda ofrecer. El System z de IBM se ha diseñado para tolerar fallos de hardware sin comprometer la disponibilidad o el rendimiento del sistema. Capacidad bajo demanda (CoD), donde las necesidades de capacidad de proceso y de memoria se acceden bajo petición. El System z de IBM se entrega con capacidad integrada que se puede activar cuando las cargas excedan los requerimientos de la capacidad original. Virtualización de E/S para ofrecer un rendimiento predecible que escala fácilmente cuando la aplicación lo requiera. Los cuellos de botella en la E/S son uno de los obstáculos fundamentales en las soluciones de virtualización del x86. Seguridad e integridad, reforzadas ambas dentro de la arquitectura del System z de IBM y probadas fehacientemente en los más exigentes entornos de aplicación. Mientras que las plataformas de virtualización x86 son relativamente nuevas y aún tienen que demostrar su valor en entornos que requieran las más altas medidas de seguridad. Elegir la solución de virtualización no es tan blanco o negro como pueda parecer. Las ventajas básicas de la virtualización incluyen la consolidación y la mejora en la utilización de recursos, beneficios que son bienvenidos en todas las organizaciones. Se necesitan otras consideraciones para comprender las aplicaciones y el impacto positivo que la virtualización tendrá a varios niveles en los tier de infraestructura subyacente. IBM Corporation 21/02/ de 131

11 2.2.6 IBM System z puede tener mucho sentido para determinadas aplicaciones e iniciativas La tecnología Mainframe de IBM, tal vez injustamente, ha llevado el sambenito de unidades de proceso caras (MIPS) y un historial de excelente rendimiento para cargas específicas en sectores específicos. Por ejemplo, si desea implementar SOA y WebSphere para optimizar el beneficio del proveedor y para investigar la elegibilidad de proceso en el sector sanitario, el IBM System z es el camino a seguir. Sin embargo, estos conceptos están cambiando a la vez que grandes entornos Linux se consolidan en Mainframe con un TCO mejorado en comparación con el despliegue del mismo entorno en arquitectura x86. La arquitectura de IBM System z es satisfactoria en mercados que: Tengan cargas antiguas de UNIX que requieran actualizaciones de software y de hardware o hayan llegado al final de su vida útil. El System z de IBM puede ser la plataforma ideal para la consolidación de estos entornos. Requieran capacidad bajo demanda para escalar hasta la potencia de proceso requerida para cargas que experimenten un pico en su actividad. Los clientes sólo tienen que pagar por la potencia adicional cuando la necesiten. Deban desplegar nuevas cargas y aplicaciones desde el principio que hayan sido específicamente diseñadas para el Mainframe o destinadas a una infraestructura, que como el Mainframe, pueda ofrecer rendimiento, fiabilidad y estabilidad sin parangón. Tengan implementaciones grandes de Linux, Oracle, WebSphere y DB2. Estos entornos operativos han probado su éxito y consiguen todas las ventajas que la arquitectura del Mainframe proporciona. Qué pasa con las cargas de Microsoft Windows? La mayoría de los entornos virtualizados x86 ejecutan cargas de trabajo basadas en aplicaciones típicas de Microsoft (es decir, Exchange, SQL Server, SharePoint), Oracle y SAP. Se soportan otros sistemas operativos, que incluyen Linux y Solaris, pero son una porción muy pequeña del total de entornos virtualizados x86. Las plataformas Windows no se pueden ejecutar como máquinas virtuales en IBM System z, al menos no hoy. Para ello, IBM tendría que emular el hardware x86, algo que podría funcionar en teoría, pero que puede no ser el camino más económico a seguir por el cliente. IBM Corporation 21/02/ de 131

12 2.3 Escalabilidad En telecomunicaciones y en ingeniería informática, la escalabilidad es la propiedad deseable de un sistema, red o proceso, que indica su habilidad para extender el margen de operaciones sin perder calidad, o bien manejar el crecimiento continuo de trabajo de manera fluida, o bien para estar preparado para hacerse más grande sin perder calidad en los servicios ofrecidos. En general, también se podría definir como la capacidad del sistema informático de modificar su tamaño o configuración para adaptarse a las circunstancias cambiantes. La escalabilidad como propiedad de los sistemas es generalmente difícil de definir, en particular es necesario definir los requerimientos específicos para la escalabilidad en esos proyectos donde se crea que son importantes. Es una característica altamente significativa en sistemas electrónicos, bases de datos, ordenadores, routers y redes. Un sistema escalable es aquél cuyo rendimiento mejora, después de haberle añadido más capacidad de hardware, proporcionalmente a la capacidad añadida Introducción (conceptos de vertical, horizontal y aprovisionamiento) Hablamos de escalabilidad horizontal cuando para ampliar la capacidad de un sistema lo que añadimos es otro sistema similar. Nos referimos a escalabilidad vertical cuando lo que hacemos es aumentar la capacidad dentro de la misma máquina, por ejemplo aumentando el número de procesadores. IBM Corporation 21/02/ de 131

13 Aprovisionamiento es el proceso de preparar y configurar cualquier sistema requerido, proveer a los usuarios del acceso a datos y recursos tecnológicos, y en particular se refiere a todo el proceso de administración de los recursos requeridos Escalabilidad del hardware Nos referimos a la escalabilidad del hardware cuando hablamos de escalabilidad vertical. Dentro del System z se obtiene la más alta escalabilidad debido a los múltiples modelos de máquinas que pueden ir de un solo procesador corriendo en modo de subcapacidad a 64 que permiten correr hasta 60 imágenes de z/os. Como vimos en la parte dedicada a capacidad, éste es un concepto ambiguo cuya medición depende realmente de lo que se esté haciendo. Por eso es complicado comparar distintas máquinas corriendo distintos tipos de aplicaciones. Aún así comparar máquinas puede ser interesante. IBM realiza comparaciones con distintos tipos de trabajos para sus máquinas del System z y publica los resultados en Si vemos una gráfica comparativa de la familia z10 nos encontramos con lo siguiente para los modelos z10 BC: Es decir de 26 a 2760 PCI s (Procesor Capacity Index). Para los modelos z10 EC nos encontramos con lo siguiente: Es decir con una capacidad de 216 a 5848 PCI s para los modelos en subcapacidad y de 920 a PCI s para los que no corren en subcapacidad. Con esto vemos que podemos ir de 26 a PCI s dentro de la misma familia. Se pueden realizar IBM Corporation 21/02/ de 131

14 cambios de modelo se forma sencilla, algunos incluso sin necesidad de parar la máquina Escalabilidad de los S/O. z/os z/vm y Linux for System z La escalabilidad, obviamente, no depende sólo del hardware, el sistema operativo debe poder administrar esa capacidad. Dentro de la plataforma System z es habitual que en una misma máquina corran varias imágenes, debido a los distintos tipos de entorno, como pueden ser producción, desarrollo, test, sistemas, etc. El sistema operativo z/os puede administrar miles de millones de transacciones al año, con su habitual rendimiento y disponibilidad, además de la seguridad implícita El sistema z/vm funciona generalmente como un programa hipervisor, pudiendo arrancar huéspedes variopintos, desde z/os hasta Linux pasando por z/vse. El Linux para System z corre habitualmente como un huésped del z/vm, pudiendo generarse miles de instancias en una sola partición Sysplex Paralelo El Sysplex paralelo nació como una técnica para aumentar la disponibilidad del MVS. Permite utilizar varias imágenes de z/os como si fuera un único sistema operativo, compartiendo entre todas ellas recursos tales como los datos, las impresoras, las cintas, la base de datos de RACF, etc. Ésta sigue siendo la característica más importante del Sysplex paralelo, pero como resultado añadido nos encontramos con que dicha técnica permite una escalabilidad horizontal con unas propiedades únicas dentro de dicha posibilidad. El Sysplex paralelo permite unir hasta 32 imágenes de z/os compartiendo los datos y actuando como una única imagen sin pérdida de la integridad de los datos. Esto es lo que no ocurre con el resto de sistemas que se decantan por una escalabilidad horizontal: cada sistema es responsable de sus propios recursos y estos no se comparten con el resto. Un esquema de Sysplex paralelo podría ser el siguiente: IBM Corporation 21/02/ de 131

15 Como característica importante vemos la importancia de tener una única hora en todas las máquinas, pieza clave a la hora de conseguir integridad en los datos. Hasta ahora esto venía dado por una máquina especial, el Sysplex timer, ahora se consigue con un acoplamiento especial y un protocolo propio, que es similar aunque no igual al SNTP, el STP Capacidad bajo demanda (lo nuevo de z/os de aprovisionamiento) Acontecimientos inesperados, tales como incrementos impredecibles en la carga, o desastres naturales pueden requerir que la capacidad del IT se incremente de forma inesperada. IBM puede proporcionar la capacidad necesaria sencilla y rápidamente. Capacity on Demand es el dispositivo clave que permite ajustar la memoria y la capacidad de proceso a necesidades específicas sin necesidad de apagar o reiniciar el servidor, y sin tener que realizar un IPL al sistema operativo. Capacity on Demand (CoD) puede proporcionar subidas de capacidad temporales o permanentes. CIU (Customer initiated upgrade), es la propuesta de CoD que permite realizar una subida de capacidad definitiva en el momento más conveniente para el cliente. Sólo permite subidas de LICCC, no proporciona subidas de dispositivos de entrada/salida. Los cambios de capacidad temporales pueden ser de varias clases: CBU (Capacity Back-up upgrade) es una activación concurrente de capacidad de proceso para reemplazar la capacidad perdida en una instalación a consecuencia de un desastre. Esta opción no se puede utilizar para un pico en la carga de trabajo. Puede utilizarse hasta 90 días después de que el desastre ocurra. También permite realizar 5 pruebas de 10 días al año. CPE (Capacity for planned events) permite un incremento de capacidad temporal para reemplazar capacidad perdida temporalmente debida a paradas planificadas, por ejemplo para realizar cambios en el centro de procesos. No se puede utilizar para picos de carga o para situaciones de desastre. Puede estar activado durante 72 horas. ON/OFF Capacity on Demand (On/off CoD) permite subidas temporales de capacidad. Se trata de la oferta de CoD que permite dirigir los incrementos en la capacidad debida a picos en la carga de trabajo. z/os Capacity Provisionig (CP) ayuda a manejar la capacidad de los procesadores de System z que corran z/os. Utilizando la On/Off CoD, se puede activar y desactivar capacidad temporal basándose en los requerimientos actuales de la carga. z/os CP también simplifica la monitorización de cargas críticas y sus posibilidades de automatización permiten activar recursos adicionales más rápidamente que si se tuviera que realizar manualmente. 2.4 Integridad y Seguridad Los programas y los datos de una instalación se deben proteger de accesos no autorizados tanto internos (empleados) como externos (clientes, proveedores, hackers, etc.). Para entender el z/os, se necesita comprender la importancia de la seguridad y las funciones que el z/os utiliza para implementarla Integridad Se define como integridad de un sistema a la capacidad del sistema de protegerse a sí mismo contra accesos no autorizados hasta el punto en que no se puedan comprometer los controles de seguridad. IBM Corporation 21/02/ de 131

16 Emitido primero en 1973, el compromiso de integridad del sistema de IBM para el MVS TM (IBM s MVS TM System Integrity Statement), y subsecuentemente para el OS/390 y el z/os, se ha mantenido a lo largo de tres décadas como un símbolo de la confianza y el compromiso de IBM hacia el sistema operativo z/os. IBM reafirma su compromiso con la integridad del sistema z/os. El compromiso de IBM incluye prácticas de diseño y desarrollo que pretenden evitar que programas de aplicación, subsistemas y usuarios no autorizados traspasen la seguridad del z/os esto es, evitar que accedan, eludan, inhabiliten, alteren o consigan control de procesos claves y recursos del z/os a menos que tengan permiso de la instalación-. Específicamente, z/os System Integrity se define como la incapacidad de cualquier programa no autorizado por un mecanismo bajo el control de la instalación a eludir o inhabilitar memoria o adquirir protección o acceder a un recurso protegido por RACF u obtener control de forma autorizada; esto es, en estado supervisor, con una clave de protección menor de 8, o autorizado APF (Authorized Program Facility). En el caso en que se reporte un problema en la integridad del sistema, IBM siempre tomará medidas para solucionarlo. El largo compromiso de IBM con la integridad del sistema es único en la industria, y constituye la base del liderazgo del z/os en la seguridad del sistema. z/os está diseñado para ayudar a los clientes a proteger su sistema, sus datos y transacciones de modificaciones accidentales o maliciosas. Esta es una de las muchas razones que hacen que el System z siga siendo líder como servidor de cargas de trabajo críticas para la empresa Serialización Es el mecanismo que impide que varios procesos modifiquen a la vez un recurso, comprometiendo así la integridad de la operación. GRS (Global Resource Serialization) es el mecanismo que se encarga de serializar los recursos dentro del z/os, y puede hacerlo tanto dentro de un único sistema, como a lo largo de un conjunto de ellos conectados en un GRS (generalmente coincidente con un SYSPLEX Paralelo) RRS Resource recovery services (RRS) proporciona un gestor global de sincronización que cualquier gestor de recursos en el z/os puede utilizar. Permite a las transacciones modificar recursos protegidos administrados por diversos gestores de recursos sin pérdida de integridad. El RRS se está convirtiendo cada vez más en un prerrequisito para los nuevos gestores de recursos y para nuevas funcionalidades en los existentes. Más que implementar su propio protocolo de commit en dos fases, estos productos pueden utilizar el soporte que proporciona el RRS Backups Para proporcionar una integridad en los datos tener copias de back-up de los ficheros, no es condición suficiente, aunque sí necesaria. Para poder asegurar la integridad ante un fallo, es necesario recurrir a técnicas de apunte de las transacciones ejecutadas entre puntos de sincronismo. Tanto el DB2, como el CICS, como el resto de gestores que hagan uso del RRS, disponen de dichas técnicas, que permiten recuperar los datos a un punto de sincronismos, es decir, sin pérdida de integridad, IBM Corporation 21/02/ de 131

17 2.4.2 Seguridad Acceder y crear información computerizada se ha hecho más fácil a lo largo del tiempo. El acceso a los sistemas hace tiempo que dejó de estar limitado a un pequeño grupo de programadores especializados. Cualquier persona que se tome la molestia de familiarizarse con los nuevos lenguajes de búsqueda, puede tener acceso a la información, contenida en los modernos medios puestos a su alcance, e incluso puede crearla en dichos medios. La gente depende cada vez más de los ordenadores y de la información que se guarda en ellos. A medida que la alfabetización informática y el número de gente que usa los ordenadores se incrementan, la necesidad de la seguridad de los datos ha adoptado un nuevo y dramático cariz. Las empresas ya no pueden confiar en que tienen sus datos seguros simplemente porque nadie sabe como llegar a ellos. Proteger los datos es algo más que hacer inaccesible la información confidencial a aquéllos que no debieran verla. También incluye la prevención de la destrucción inadvertida de ficheros por gente que puede incluso no ser consciente de que estén manipulando datos incorrectamente. Las buenas prácticas de seguridad reducen los riesgos de que personas no autorizadas puedan acceder a los datos, modificarlos o destruirlos, tanto de forma inadvertida o como deliberada. El acceso, en un entorno informático significa la habilidad para realizar algo con un recurso del ordenador (por ejemplo, utilizar, cambiar o ver un fichero). El control de accesos es el método por el cual se permite o prohíbe expresamente dicha capacidad. Este tipo de acceso se denomina acceso de control lógico. Estos son mecanismos de control que permiten a los usuarios acceder sólo a aquello que es apropiado para ellos... Los accesos de control lógicos se construyen generalmente dentro del propio sistema operativo, aunque también pueden ser parte de la lógica de la aplicación o de determinadas utilidades, tales como los sistemas gestores de bases de datos. También se puede implementar a través de paquetes de seguridad que se instalan sobre el sistema operativo, dichos paquetes están disponibles para una gran variedad de sistemas, incluyendo los PC s y los Mainframe. Además, los controles lógicos de acceso pueden estar presentes en componentes especializadas que regulan las comunicaciones entre ordenadores y redes. Las facilidades que incorpora el z/os proveen de su alto nivel de seguridad e integridad. El System z es el único en poseer la calificación EAL5 de seguridad. Los datos acerca de los clientes son una información vital dentro de los activos de una empresa. Dicha información podría ser vendida a los competidores con grave trastorno para el funcionamiento de dicha empresa. Así el objetivo de cualquier política de seguridad es dar a los usuarios sólo el requerido nivel de acceso y denegar los accesos no autorizados. Esta es una de las razones por las cuales los auditores de seguridad prefieren que se otorgue a los usuarios o grupos un acceso específico, más que utilizar facilidades de acceso universal. El objetivo tradicional en la seguridad del Mainframe era el impedir a personas no autorizadas el acceso al sistema, y después conseguir darles permiso únicamente a los datos pertinentes a su trabajo. A medida que los Mainframe se están convirtiendo en servidores de Internet se requieren medidas adicionales de seguridad. Existen peligros externos tales como hackers, virus y caballos de Toya; el servidor de seguridad debe incluir herramientas para enfrentarse a dichos problemas. Sin embargo, frecuentemente el mayor riesgo paro los datos de la compañía viene de dentro. Un empleado dentro de una empresa tiene muchas más oportunidades de obtener datos que alguien externo. Una política de seguridad bien implementada es siempre la primera línea de defensa. IBM Corporation 21/02/ de 131

18 El z/os contiene un conjunto de características de integridad del sistema que minimizan los daños intencionados o accidentales de otros programas. Por ejemplo, muchas instalaciones tienen diversas imágenes de z/os y frecuentemente no permiten el acceso de usuarios de TSO/ISPF a los sistemas de producción. En cualquier caso los controles de seguridad del z/os pueden proteger los entornos de producción si se configuran convenientemente y prevenir que usuarios de TOS/ISPF (accidental o maliciosamente) Impacten el importante trabajo de producción Control de programas con privilegios (APF) APF (authorized program facility) se emplea para permitir a la instalación la identificación de programas, ya sean de usuario o de sistemas, que puedan utilizar funciones sensitivas del sistema. Para mantener la integridad y seguridad del sistema, un programa debe estar autorizado por el APF antes de que pueda acceder a funciones restringidas, tales como ejecutarse en modo sistema. Ayuda a evitar riesgos de la integridad; siendo la instalación la que identifica qué librerías contienen funciones especiales. A estas librerías se les denomina librerías APF. Un programa autorizado puede hacer virtualmente cualquier cosa que quiera. Es esencialmente una extensión del sistema operativo. Se puede poner en estado supervisor o con clave de sistema. Puede modificar los bloques de control del sistema. Puede ejecutar instrucciones privilegiadas (mientras esté en estado supervisor). Puede suspender el diario para cubrir sus trazas. Claramente esta autorización debe darse con moderación y monitorizarse cuidadosamente. Una instalación puede utilizar el APF para identificar programas de usuario o sistema que puedan ejecutar funciones sensitivas de sistema. Por ejemplo, APF permite a una instalación restringir la utilización de rutinas sensitivas de SVC, a programas APF. También permite al sistema que cargue todos los módulos en un trabajo autorizado sólo de librerías autorizadas, para prevenir que programas puedan cargar módulos que no sean los correctos Control del acceso a memoria (Claves de protección de la memoria) El hardware del System z tiene una función de protección de memoria, que se emplea generalmente para evitar la modificación no autorizada de la memoria. La protección de memoria también se usa para prevenir la lectura no autorizada de áreas de memoria, aunque el z/os protege sólo pequeñas áreas de memoria de esta forma. La protección de memoria trabaja con páginas de 4K. Trata sólo con memoria real, no virtual. Cuando una página de memoria virtual se copia del disco a una página libre de la memoria principal, z/os aplica la adecuada clave de protección en dicha página. La protección de memoria era mucho más importante cuando no existían los múltiples espacios de direcciones. Cuando varios usuarios y trabajos compartían un único espacio de direcciones (o estaban todos en memoria real antes aún), proteger la memoria del usuario para evitar la corrupción (o la lectura inapropiada) era esencial. Con el z/os, la primera protección para la memoria de cada usuario es el aislamiento proporcionado por los múltiples espacios de direcciones. Los programas de aplicación no pueden alterar las claves de protección de la memoria. No existe forma, utilizando la función de protección de memoria, de que un programa de aplicación normal (no un programa autorizado) pueda proteger parte de su memoria virtual de otras partes de la aplicación corriendo en el mismo espacio de direcciones. Un bit adicional de protección de memoria (para cada página de 4K de memoria real) es el bit de protección de página. Este previene que incluso las rutinas del sistema (que corren con clave 0, lo que habitualmente les permite escribir en cualquier sitio) puedan IBM Corporation 21/02/ de 131

19 almacenar datos en esa página. Este bit se utiliza generalmente para proteger páginas de la LPA de daños inadvertidos causados por las rutinas del sistema Control del uso de instrucciones privilegiadas (Llamadas al Supervisor (SVCs)) La ejecución de instrucciones en el sistema, está protegido por un mecanismo al que llamamos estados de ejecución. Existen dos posibles estados: Estado problema y estado supervisor. La mayoría de las instrucciones se pueden ejecutar en estado problema, aunque hay algunas (referentes al uso de de registros de control, al uso de E/S, etc. ) que exigen estado supervisor. Para evitar el uso indiscriminado del estado supervisor (por los riesgos que acarrea) existen unos APIs llamados SVC (Supervisor Calls) que fuerzan a los programas a utilizar las operaciones restringidas de manera controlada SAF SAF (System authorization facility) es una interfaz definida por el MVS que permite a los programas utilizar servicios de autorización del sistema para controlar el acceso a recursos, tales como ficheros y comandos de MVS. SAF o bien procesa las autorizaciones de seguridad directamente o trabaja en conjunto con el RACF, u otro producto de seguridad, para llevarlas a cabo. 2.5 Rendimiento Según la Real Academia de la Lengua, rendimiento es el producto o utilidad que rinde o da alguien o algo, o la proporción entre el producto o el resultado obtenido y los medios utilizados. Como siempre, en el lenguaje de los ordenadores estas definiciones no son exactas. Como rendimiento entendemos lo afinado que está un sistema, si las expectativas que tenemos acerca de lo que puede proporcionar, se corresponden con la realidad, o más exactamente, si el tiempo de respuesta que conseguimos es el adecuado. En un sistema operativo como el z/os, que realiza múltiples aplicaciones, cada una con sus expectativas dispares, afinar el sistema no parece una tarea simple. Pero las facilidades que ha ido incorporando el z/os a lo largo de los años hacen que cada día resulte más sencillo disponer de un sistema con un rendimiento inigualable. Entre estas facilidades destaca el WLM, (Work Load Manager), que permite definir los objetivos de las aplicaciones en un lenguaje acorde con los compromisos de servicio pedidos por los usuarios (SLA s). El WLM se encarga de proporcionar los recursos necesarios para conseguir los objetivos acordados. También se dispone del RMF, que permite obtener informes, e incorporarlos a hojas de cálculo, para comprobar que se cumplen los objetivos y detectar posibles fuentes de problemas si es que se incumplen. IBM Corporation 21/02/ de 131

20 2.6 Disponibilidad La solidez 1 se considera como una de las propuestas de valor más importantes de la plataforma, y los estrategas del negocio generalmente consideran System z como la plataforma más robusta. Este apartado comienza con el debate sobre el coste del tiempo de parada y la necesidad de flexibilidad para luego continuar detallando las ventajas intrínsecas que convierten la plataforma System z en resistente, que incluyen: Las características fundamentales del hardware que hacen del System z una máquina capaz de proporcionar una disponibilidad fuera de clase. Funciones que ayudan a la empresa a eliminar las interrupciones planificadas tanto para los cambios de hardware como de software. Características de diseño del z/os, Sysplex paralelo y GDPS, y cómo éstas mejoran la flexibilidad de la plataforma System z Construido para los negocios. El coste de inactividad es alto, lo cual obliga a las empresas a intentar evitar cualquier tipo de paradas. Una empresa debe recuperarse rápidamente de todas las interrupciones, ya sean planificadas o no. Casi nada es peor que ser sorprendido por una caída del sistema, incluso si la duración de ésta son sólo algunos minutos. Considere cómo una interrupción inesperada, provocada quizás por una catástrofe natural o un fallo menor en el software, puede poner en juego las relaciones con los clientes, la productividad, y posiblemente millones de dólares, si aplicaciones y datos vitales quedan desprotegidos. La resiliencia de los negocios, que se puede considerar como la capacidad de una empresa para seguir funcionando eficazmente ante errores informáticos o humanos y desastres que afecten a su IT, ha sido una de las tres propuestas de valor más importantes del centro de procesos, junto con la competitividad y el ahorro de costes. Los estrategas empresariales normalmente consideran el entorno System z como la plataforma más robusta, con cuya solidez se puede contar. Actualmente dicha solidez debe estar integrada con el resto de sistemas de la empresa para lograr los objetivos de resiliencia de los negocios. La plataforma System z, con sus características de disponibilidad y fiabilidad, es una plataforma ideal a partir de la cual construir una infraestructura robusta y desde la cual probar nuevas tecnologías y estrategias de resistencia. Algunas plataformas pueden haberse diseñado originalmente para fines académicos u otros propósitos, pero la plataforma System z fue creada como una solución para las empresas. Durante los años, las tecnologías de resiliencia han evolucionado y se han ido incorporando al diseño fundamental del sistema z. Hoy, la plataforma z continúa innovando y mejorando su tecnología de resiliencia. La solidez es imprescindible para la línea de negocios de una empresa y el sistema z es la mejor plataforma para garantizar que los sistemas comerciales se mantendrán funcionando a lo largo de una recuperación ante un desastre, de una reparación o actualización, y también ante cambios en el software y las aplicaciones. 1 Solidez flexibilidad y resistencia se emplean como la traducción del término inglés resiliency, de difícil traducción en este contexto. Es la capacidad que tiene un sistema de recuperarse ante fallos imprevistos. IBM Corporation 21/02/ de 131

21 2.6.2 Una solución para la operación continúa de los negocios. La inactividad es costosa. El coste de las paradas es tan grande que muchas de las empresas de hoy ya no pueden permitirse las interrupciones, planificadas o no. Las estadísticas dicen que las empresas pueden perder entre decenas de miles a varios millones de dólares por hora de inactividad. Incluso más allá de los aspectos financieros, la inactividad también puede afectar a áreas clave como la fidelidad de los clientes, la competitividad en el mercado, y la conformidad legislativa. Por ejemplo, si un sitio Web no está accesible, los clientes de Internet irán a otra parte. La operación continua es un imperativo empresarial, y requiere tener lo mejor en tecnología robusta. Algunas empresas deben parar sus sistemas para realizar actualizaciones planificadas, aplicar mantenimiento, o renovar sus servidores. Características incorporadas en la plataforma System z, sin embargo, permiten a las empresas evitar estas interrupciones planificadas. Además de ser una solución excelente para la eliminación de las paradas planificadas, System z es también una excelente plataforma para evitar interrupciones no planificadas. Con tecnologías tales como el Sysplex paralelo y GDPS, el System z proporciona una cobertura ante un desastre única en el mercado, pudiendo recuperar sus sistemas con un RTO y RPO preestablecidos, y ofreciendo procedimientos estándar ante fallos generales y la posibilidad de crear sus propios escenarios de una forma sencilla y comprobable Disponibilidad y fiabilidad de primera clase Cada minuto, el ritmo de crecimiento de los negocios mundiales aumenta y el volumen de datos crece. Las empresas necesitan mantenerse operando 24x7 y superar problemas tales como un mayor tráfico en la red, picos de carga imprevisibles, y bases de datos difíciles de controlar. Los componentes del System z, hardware, firmware, middleware y los sistemas operativos están diseñados, y estrechamente integrados, para proporcionar un entorno de aplicación, con un nivel único en el mercado, para la alta disponibilidad. System z proporciona las mejores tecnologías para asegurar la disponibilidad y fiabilidad. La disponibilidad del sistema puede medirse en distintos contextos. Una medida común es la disponibilidad de hardware contra las interrupciones no planificadas. Una medida más estricta de la disponibilidad examina las aplicaciones a nivel de usuario, incluyendo las interrupciones planificadas. Medir la disponibilidad desde la perspectiva del usuario requiere la consideración del hardware, OS, middleware y aplicaciones. El Sistema z se mantiene en las más estrictas medidas y puede lograr una disponibilidad de primera clase a nivel de usuario. IBM Corporation 21/02/ de 131

22 2.6.4 Fortalezas del corazón del hardware. El Sistema z, construido para la recuperación y la operación continuas, es un servidor de alta disponibilidad. El resultado de la atención a la solidez es un punto de diseño llamado tiempo medio entre fallos (MTBF). El sistema z está diseñado para ofrecer capa sobre capa de tolerancia a los fallos y puntos de comprobación de errores. Si se produce una anomalía, la redundancia construida en la plataforma cambia el trabajo desde el componente anómalo a otro operativo para evitar que la aplicación o el servicio de usuario queden interrumpidos. Además, los componentes que hayan fallado se pueden reemplazar mientras las aplicaciones están activas y siguen funcionando, eliminando tiempo de parada. Los errores se pueden producir por muchas causas. Hay errores transitorios, debidos a las condiciones del medio ambiente como ruido o partículas cósmicas, y errores más permanentes, como fallos de hardware. Los productos de System z están diseñados para enfrentarse a estas diversas circunstancias. La detección y corrección de errores está construida dentro de la lógica para detectar errores en memoria y corregirlos. Tecnologías similares ayudan a encontrar los problemas en el primer momento posible y habilitan el entorno System z para que adopte las acciones necesarias para corregirlos, ayudando así a minimizar el impacto que puedan causar en las aplicaciones. La estrategia de System z también se centra en un diseño de recuperación de errores que los enmascare y los haga transparente a las operaciones del cliente. Una amplia tecnología de la recuperación está incorporada en el hardware. A lo largo de los años, más y más dispositivos se han ido añadiendo para mejorar la solidez y flexibilidad el la plataforma System z. Las versiones más recientes, el hardware del sistema z9 y z10, incorporan tecnologías únicas que aplican las más modernas innovaciones en la tecnología de la resiliencia Redundancia La redundancia es quizás el mecanismo más frecuente para garantizar la solidez, y es un tema clave en toda la plataforma System z. Los diseñadores del sistema z han trabajado a lo largo de los años para eliminar cualquier punto único de fallo. La plataforma tiene muchos componentes redundantes. Por ejemplo, hay dos tomas de corriente que permiten al sistema sobrevivir a la pérdida de uno de ellos. Hay dos MRUs (Módulo De Refrigeración de Unidades). El subsistema de servicios, la batería interna, el oscilador y todos los procesadores son redundantes. Considere un sistema z9 completamente lleno: 54 procesadores centrales, ocho SAP, dos CP de respaldo y 336 PowerPC para los canales FICON, Suman un total de 400 procesadores. Después de tener en cuenta la redundancia, ese mismo sistema podría tener 800 procesadores Eliminación de paradas planificadas mediante cambios concurrentes en el hardware En el pasado, frecuentemente las empresas tenían que cerrar un sistema las noches de los sábados para realizar cambios o mantenimiento en el hardware. Hoy la plataforma System z elimina dichas paradas planificadas con su capacidad para cambiar el hardware sin que afecte a la aplicación. La capacidad de realizar cambios concurrentes ayuda al System z a dar servicio a sus usuarios en cualquier momento, 24x7, sin paradas planificadas para mantenimiento de los datos o del sistema. En el mundo de los negocios actuales, los backups y el mantenimiento de los sistemas, tales como subidas de nivel o cambios, se deben realizar sin interrumpir las operaciones. Muchos componentes del System z se pueden mantener y subir de nivel de concurrentemente, incluyendo los procesadores, books, memoria, tarjetas criptográficas y canales de la CF. Incluso elementos no redundantes como las tarjetas IBM Corporation 21/02/ de 131

23 de canal se pueden enchufar en caliente, y reemplazar sin ningún impacto en la aplicación Mas allá del hardware La solidez del System z va mucho mas allá del hardware. El punto focal del diseño de la flexibilidad del System z son las aplicaciones, esto da como resultado un entorno integrado donde el hardware, firmware, sistema operativo y middleware trabajan en conjunto para proveer de disponibilidad a la aplicación y a los datos z/os El sistema operativo z/os incluye un comprensivo conjunto de capacidades que provee, junto al hardware del System z, una calidad de servicio única. Con z/os, la mayoría de los problemas quedan enmascarados totalmente de las aplicaciones, y en los casos en que el daño sea severo resulta en una degradación paulatina más que en una completa parada. z/os tiene una disponibilidad, fiabilidad, escalabilidad, flexibilidad e integridad sin parangón. Más aún, lleva mucho tiempo siendo el servidor de referencia para servidores de datos y transaccionales, y también uno de los preferidos para aplicaciones Web que requieran la más alta calidad de servicio. La filosofía del diseño del z/os requiere un aislamiento, identificación y recuperación de los errores comprensible. Todos los componentes y subsistemas del z/os disponen de rutinas de error. Más aún, todo el código del z/os sigue unas guías que contienen un conjunto de normas para la disponibilidad y el servicio. Por diseño, si una aplicación falla, el trabajo puede continuar en un backup de la aplicación corriendo en el mismo hardware físico. Además, el z/os provee de un dispositivo basado en políticas predefinidas por la instalación que permite la recuperación automática y el arranque de los servicios transaccionales. El software del z/os también tiene un compromiso total con la integridad. Utilizando técnicas tales como claves de memoria y múltiples espacios de direcciones, los datos y las funciones del sistema están protegidos contra accesos no autorizados. Con un twophase-commit a nivel sistema, los datos de la aplicación del cliente se pueden recuperar incluso cuando ocurran fallos a nivel de hardware o software. Algunas funciones se diseñan además para soportar middleware clave, como el CICS, lo cual permite altos niveles de disponibilidad para la ejecución de transacciones z/vm Además del principal sistema operativo, z/os, el sistema operativo z/vm tiene muchas componentes internas para la solidez. Aquéllos familiarizados con el Linux para el System z probablemente hayan oído la historia de ese usuario que arrancó, como ejercicio de prueba de concepto, miles de instancias de Linux en un procesador de z9. Este hecho demuestra la gran escalabilidad de System z (número de máquinas de Linux es impresionante) y también, aunque sea menos espectacular, la fiabilidad demostrada por el z/vm: Cuándo el z/vm se queda sin recursos (cosa que, evidentemente ocurre al arrancar miles de instancias), no se cae, sigue funcionando a un nivel aceptable de rendimiento, repartiendo sus recursos de la mejor manera posible Eliminación de paradas planificadas. Además de los numerosos métodos para evitar las paradas no planificadas, El System z tiene métodos para eliminar las pardas planificadas debidas a las subidas de firmware y a las reconfiguraciones. IBM Corporation 21/02/ de 131

24 Clientes que tienen aplicaciones críticas, generalmente aquéllos que no disponen de un entorno Sysplex, tienen dificultades para encontrar el tiempo necesario para añadir nuevas funcionalidades. En el System z, un dispositivo conocido como Enhanced Driver Maintenance (o Concurrent Driver Upgrade ) permite a los clientes subir el firmware hasta el siguiente nivel sin impactar en el trabajo. El Enhanced Driver Maintenance permite subidas del LIC para CP s, IFL s, ICF s, zaap s, ziip s, memoria y adaptadores de E/S de forma transparente para la aplicación. También es posible realizar reconfiguraciones de la E/S sin tener que planificar una parada. Esta capacidad de reconfiguración se denomina Dynamic I/O Reconfiguration, y permite añadir, borrar o modificar definiciones de canales, unidades de control y dispositivos de E/S a las configuraciones hardware y software Sysplex paralelo El Sysplex paralelo se basa en la fortaleza del Systems z para dar incluso una mayor disponibilidad y flexibilidad a la hora de las paradas tanto planificadas como imprevistas. El Sysplex paralelo no es un producto, sino una serie de colaboración entre distintos sistemas z/os. El enfoque único de cluster del Sysplex paralelo permite que la topología de escala de múltiples servidores parezca una única y masiva configuración de SMP (Symmetric Multiprocessing). La arquitectura de Sysplex paralelo permite a un conjunto de System z s la compartición de recursos, el balanceo de cargas y la compartición de datos para centros de datos a la carta, ofreciendo lo último en flexibilidad y soportando a la vez diferentes topologías de aplicación. Podemos pensar en el Sysplex paralelo como si fuera una orquesta sinfónica, con cada clase de instrumento representando un producto distinto en el Sysplex. Hay varias de cada instrumento, igual que puede haber varias imágenes del mismo producto en un Sysplex. Todos los violines, por ejemplo, suenan igual y tocan la misma parte. Hay suficientes violinistas para que en caso de que uno caiga enfermo, no se vea afectado el concierto. Y si dicho violinista dimite, pueda ser reemplazado. De modo similar en un Sysplex, todos los sistemas, o un subconjunto de ellos, son similares y realizan el mismo trabajo. Un Sysplex exhibe análogas características de disponibilidad: un fallo o una desconexión planificada de un sistema del Sysplex no resultará en la pérdida de la aplicación o en la disponibilidad de los datos, sólo en una pérdida temporal de capacidad. Otra ventaja de la tecnología del Sysplex paralelo es su capacidad para instalar o mantener hardware o software sin interrupciones. Se pueden quitar o añadir servidores mientras la aplicación continúa corriendo en otros sistemas. Diferentes sistemas pueden estar corriendo a distintos niveles de software, haciendo de este modo las modificaciones de software más fáciles. El software se puede modificar en un sistema mientras el resto permanece disponible. Los cambios más importantes de software se pueden realizar utilizando la técnica del rolling IPL durante la etapa de los cambios sin necesidad de interrumpir la disponibilidad de la aplicación. Con la técnica de cluster del Sysplex paralelo y su habilidad para soportar la compartición de datos entre servidores, los arquitectos de IT pueden diseñar y desarrollar aplicaciones que tengan una vista integrada de los datos, eliminando efectivamente la necesidad de dividir las bases de datos. La compartición de datos del Sysplex paralelo ofrece la ventaja única de permitir el crecimiento de la base de datos sin interrupciones y con balanceo de cargas automático. En un entorno de bases de datos particionadas, el crecimiento de la base de datos o de la aplicación requeriría un tiempo de parada largo y un trabajo de re-particionado complejo. Las capacidades del Sysplex paralelo ayudan a evitar los obstáculos que se encuentran con la arquitectura de las bases de datos particionadas. IBM Corporation 21/02/ de 131

25 El middleware del System z explota las capacidades del Sysplex paralelo para proporcionar una operación continua de las aplicaciones. CICS Transaccion Server, DB2 for z/os, WebSphere MQ, WebSphere Application Server, IMS Transaction Manager, TCP/IP, VTAM, APPC/MVS, RACF son algunos de los productos de IBM que explotan la tecnología de Sysplex paralelo GDPS Imagina por un momento una sala de operaciones de un centro medio inmediatamente después de un fallo básico del sistema. Los teléfonos suenan, los directores merodean para saber cuándo estará todo recuperado, los operadores buscan procedimientos, y los técnicos de sistemas se pelean con los operadores por el control de las consolas. Ahora imagina en su lugar un escenario donde la única operación manual requerida es confirmar si se debe continuar con un procedimiento de recuperación ya probado. Este escenario de recuperación suave, requiere una solución de negocio tal como la proporciona el GDPS. GDPS, la solución principal de IBM para la alta disponibilidad, ofrece soluciones de continuidad tanto para fallos de sistema como para situaciones de recuperación ante desastres. Basado en la separación geográfica y en técnicas de automatización avanzadas, el GDPS es una aplicación multi-centros que ofrece la capacidad de manejar de forma remota la configuración de subsistemas de almacenamiento, automatizar tareas de operación del Sysplex paralelo y realizar la recuperación desde un único punto de control. Extiende la compartición de recursos, el balanceo de cargas y la disponibilidad continua del Sysplex paralelo. También mejora significativamente la capacidad de una empresa de recuperarse ante un desastre y otros fallos y mejorar las excepciones a los cambios planificados. GDPS es una solución para entornos que necesiten proteger y minimizar los riesgos operacionales. Dos requerimientos de negocio claves que se deben tener en cuenta a la hora de analizar el GDPS son: Recovery Time Objetive (RTO), el tiempo que un negocio puede permitirse esperar para que sus servicios de IT se recuperen después de que haya ocurrido un desastre. Recovery Point Objective (RPO) que representa la cantidad de datos que un negocio debe recuperar en el caso de un desastre. Por ejemplo, para un RPO de seis horas, el objetivo podría ser restaurar los sistemas al estado en el que estaban seis horas antes. Ambos, el RTO y el RPO son factores importantes a la hora de diseñar una solución de GDPS. Cualquier recurso que no pueda ser reemplazado en el RTO debería estar disponible en varias localizaciones, y esto no significa sólo edificios y hardware sino también empleados y datos. Clientes que desean un RPO de cero, es decir, que no se pierdan datos, requerirá una solución de copia remota síncrona, como la que provee el GDPS/PPRC, una de las diferentes soluciones del GDPS. Además la tecnología de GDPS puede administrar un entorno heterogéneo de datos de z/os y entornos abiertos. Esto es importante para la solución habitual de aplicaciones multi-tier que tienen dependencias de distintas arquitecturas de sistemas. 2.7 Gestión de Sistemas Vamos a ver los principios de la administración de sistemas y su evolución desde un proceso casi manual hasta uno donde el ordenador se puede auto-adaptar y cambiar el sistema de acuerdo con políticas de negocio. IBM Corporation 21/02/ de 131

26 2.7.1 Revisión de la administración de sistemas. El entorno de IT es más complejo que nunca y los recursos que se requieren para administrar esos sistemas son cada vez más difíciles de encontrar. La creciente complejidad del hardware y el software de los sistemas modernos han alcanzado un punto en el que las personas no pueden, razonablemente, gestionarlos con los métodos tradicionales. Administración de sistemas es la administración a lo largo de la compañía de los sistemas de ordenadores, incluyendo el hardware, los sistemas operativos, el middleware, las aplicaciones y los subsistemas de almacenamiento. La administración de sistemas consiste en los procesos, técnicas y herramientas que se requieren para manejar dichos sistemas. El hardware y software del System z ofrece un conjunto robusto de herramientas de administración para ayudar a los profesionales de IT a monitorizar, administrar y automatizar sus sistemas. La administración de sistemas, una de las fortalezas del z/os, proporciona uno de los pilares fundamentales que dan el valor añadido del z/os. En el entorno de mezcla de tipos de trabajo que soporta el System z, los recursos del sistema se utilizan en una alta capacidad, eliminando recursos inactivos tales como CPU s sin uso o memoria infrautilizada a la espera de que lleguen los datos. El objetivo del sistema z/os es que sea cada vez más fácil de utilizar, incrementar la disponibilidad de las aplicaciones y reducir los requerimientos y el coste de la administración del sistema proporcionando una solución end-to-end El valor de la administración de sistemas en el z/os z/os tiene una larga historia en la administración de sistemas y esta es una de las fortalezas más valoradas del System z. Aparte el System z tiene la habilidad de realizar el mantenimiento y la instalación tanto de hardware como de software de forma ininterrumpida en un entorno de Sysplex paralelo Alta disponibilidad y subidas de nivel Con los sistemas configurados como un Sysplex paralelo, se pueden añadir o eliminar sistemas dinámicamente al conjunto, permitiendo la instalación de un nuevo hardware o el mantenimiento del existente. Mientras tanto, el resto de sistemas continúa el trabajo. IBM también tiene una política de co-existencia que permite las subidas de hardware y software con hasta tres versiones previas de z/os. Esto permite a los clientes añadir nuevo hardware sin necesidad de subir de nivel el sistema operativo en todas las máquinas del Sysplex. El middleware de IBM también co-existe con la versión previa, dando a los arquitectos de software la oportunidad de decidir cuando cambiar el middleware basándose en las políticas de negocio y no en el momento del cambio del hardware. z/os también permite realizar mantenimiento de hardware y software de una manera escalonada, denominada rolling, de forma ininterrumpida. Esto permite a las empresas implementar funciones críticas para el negocio y reaccionar a un crecimiento rápido sin afectar a la disponibilidad del sistema Datos contables integrados. Un centro de datos debe mantener un registro de sus recursos para poder determinar así sus gastos y que éstos puedan ser atribuidos a las distintas unidades de negocio. IBM Corporation 21/02/ de 131

27 En el entorno distribuido se suele mantener el ratio aplicación/servidor uno a uno para que el centro de proceso pueda mantener este registro de gastos. Este modelo puede llegar a ser muy caro a causa de la baja utilización de los recursos de los sistemas, el aumento del espacio requerido, el crecimiento en la utilización de energía, etc. En el z/os, si una aplicación está ociosa, los recursos se pueden dar a otra. El System Management Facility (SMF) proporciona un registro a nivel de sistema que permite distintas funciones. Entre ella destaca la de contabilidad, que permite atribuir a cada tarea la cantidad de recursos consumida. Cualquier componente del sistema, o programa que lo desee, puede hacer uso de la facilidad del SMF La información que mantiene el SMF se puede utilizar para: Facturar a los usuarios. Informes de fiabilidad Análisis de la configuración Informes de la actividad de los discos Analizar el uso de los recursos del sistema. Auditar la seguridad del sistema. Etc. Para más información acerca del SMF, véase z/os VxRx MVS System Management Facilities, SA Administración de recursos El Resource Measurement Facility (RMF) es el administrador y calibrador de los recursos estándar del z/os. El RMF está diseñado para simplificar el manejo de uno o varios tipos de cargas. Con el RMF, se puede detectar un potencial cuello de botella antes y se pueden evitar o minimizar los retrasos que pudiera llegar a producir. El RMF utiliza los registros del SMF para realizar medidas de rendimiento y adaptar recursos tales como CPU, memoria, paginación, dispositivos de E/S, CF, cintas, memoria virtual, contenedores de XCF, colas del sistema. El RMF proporciona los informes que se necesitan para entender el rendimiento de un Sysplex desde un único punto de vista. Utiliza objetivos integrados con los negocios para determinar si el sistema está alcanzando sus objetivos de rendimiento. El RMF permite cargar sus informes en aplicaciones de hojas de cálculo e integrar datos históricos de rendimiento Iniciativa del ordenador autónomo de IBM Los ordenadores no se convierten en autónomos de la noche a la mañana. Este es un proceso que evoluciona a lo largo del tiempo. Prueba y error van conformando las mejores estrategias. Para que un ordenador pueda ser autónomo, la lógica de estas estrategias debe estar incluida en la lógica del software. Los sistemas autónomos evolucionan a lo largo del tiempo a medida que los diseñadores de sistemas aprenden a predecir y arreglar los problemas. Los negocios incorporan los principios autónomos despacio en su infraestructura de IT. La madurez autónoma es un continuo de las propiedades auto-administrativas de un sistema. Existen cinco niveles de madurez autónoma: básico, administrado, predictivo, adaptativo y autónomo. IBM Corporation 21/02/ de 131

28 Básico-Los profesionales de IP administran cada elemento de la infraestructura independientemente. Administrado-Se utilizan técnicas de administración de sistemas para reunir información en menos consolas. Predictivo-Se introducen procesos analíticos en el sistema para monitorizar las situaciones que surjan y se analizan éstas para proporcionar posibles cursos de acción, pero el profesional de IT decide lo que hay que hacer. Adaptativo-El entorno de IT puede ejecutar acciones basadas en la información disponible y el conocimiento de lo que está sucediendo en el sistema. Autónomo-Políticas de negocio y objetivos gobiernan la operación de la infraestructura de IT. Los profesionales de IT monitorizan los procesos de negocio, no los procesos de IT, y alteran los objetivos del sistema basados en las políticas de negocio. En el mercado actual hay ejemplos de sistemas predictivos y adaptativos, pero la mayoría continúan en un nivel básico o administrado. z/os está continuamente reforzando sus capacidades autónomas con el objetivo de llegar a un sistema totalmente autónomo. Actualmente los productos de System z incorporan una amplia variedad de capacidades autónomas basadas en las cuatro características de los sistemas auto-administrados: auto-configurado, auto-reparador, auto-optimizante y auto-protegido Tecnologías auto-configuradoras. z/os no es todavía totalmente auto-configurado, pero sí dispone de dynamic configuration lo cual significa que se puede cambiar la configuración mientras el sistema está activo. Con la plataforma System z, un centro de procesos no tiene que subir de nivel el sistema operativo cuando añade una máquina nueva. El hardware de System z siempre podrá correr la release actual y las tres anteriores de z/os. (Para el middleware es la actual y la anterior) Esto permite a los centros de procesos reducir la complejidad de las modificaciones pudiendo elegir actualizar primero el hardware y más tarde el software y el middleware. El z/os no requiere paradas para realizar cambios en la configuración incluso aunque haya más de una imagen en el sistema. Las tecnologías de auto-configuración no intentan simplificar la complejidad del z/os, solo simplificar su configuración. El z/os dispone de herramientas para ayudar en la configuración dinámica de los sistemas. Las siguientes herramientas son algunas de las que sirven para ayudar a configurar el z/os: Ayudas del z/os (z/os wizards): Ayudantes que se encuentran en la web, pensados para dar consejos a la hora de parametrizar el sistema, basados en reglas de uso y prácticas reconocidas. Configuración del hardware: Hardware Configuration Definition (HCD) es una parte integrada del sistema operativo. Proporciona una interfaz para configurar el subsistema de canales y los dispositivos conectados al hardware y al software. IBM Corporation 21/02/ de 131

29 2.7.5 Tecnologías auto-reparadoras Desde su concepción el z/os ha incorporado filosofías auto-reparadoras y características de disponibilidad, fiabilidad y servicio. Los nuevos desarrollos en el z/os tratan de mejorar estas características continuamente. Entre estas técnicas podemos citar la automatización del Sysplex paralelo, basada en el IBM Tivoli System Automation for z/os que proporciona elementos auto-reparadores para aplicaciones, sistema y recursos del Sysplex. También podemos hablar del IBM Health Checker for z/os que ayuda a simplificar y automatizar la identificación de problemas potenciales de configuración antes de que afecten a la disponibilidad del sistema o causen una caída. Compara los parámetros y valores del sistema activo con valores sugeridos por IBM o definidos previamente por la instalación. Es una herramienta preventiva que se está ejecutando continuamente, y alerta cuando parámetros y valores críticos varían. Provee al z/os de capacidades predictivas Tecnologías auto-optimizadoras Una de las ventajas fundamentales del z/os es su habilidad para priorizar las cargas corriendo en el sistema para poder utilizar plenamente los recursos del sistema. El z/os dispone de una larga historia en el área de auto-optimización en el manejo de cargas y virtualización. La virtualización de recursos en el z/os significa que éstos se pueden dirigir a dónde quiera que éstos se necesiten, no a dónde estén conectados físicamente. El Workload Manager y el DFSMS, son productos que proporcionan estas características de optimización al z/os, así como el Intelligent Resource Director Tecnologías auto-protectoras. El aislamiento proporcionado a las aplicaciones por el z/os es un factor diferenciador clave. Este aislamiento permite que las aplicaciones corriendo en el mismo sistema no se dañen unas a otras. El z/os no es vulnerable a la sobreescritura de los búferes debido a dicho aislamiento. Intrusion Detection Services es un ejemplo de las nuevas tecnologías que mejoran las características auto-protectoras del z/os Administración de los sistemas End-to-end IBM Tivoli System Automation para z/os (SA z/os) juega un papel importante en la automatización end-to-end dentro de la iniciativa de lbm de computación autónoma: aúna las cuatro caras del automatismo para proporcionar una infraestructura autoadministrada para el z/os. SA z/os puede ayudar a los clientes a manejar sistemas de z/os aislados o en Sysplex paralelo, reduciendo la frecuencia y duración de los incidentes que puedan tener un impacto en la disponibilidad del IT. SA z/os ayuda a los clientes a simplificar la administración, minimizar los costes y maximizar la disponibilidad de las aplicaciones. SA z/os es una solución de alta disponibilidad para aplicaciones críticas, proporcionando procesos auto-reparadores y automatización para la E/S, los procesadores y la operación del sistema. Los administradores del sistema definen el estado deseado y el software monitorizará y aplicará la respuesta apropiada en el sistema si se desvía del estado deseado. SA z/os trae más de 40 plug-and-play módulos de políticas de automatización incluyendo IMS, CICS, Tivoli Workload Scheduler, DB2, mysap, GDPS y WebSphere. IBM Corporation 21/02/ de 131

30 Estos módulos se basan en las prácticas aconsejadas, experiencias de clientes y el conocimiento profundo de cada aplicación. Muchas aplicaciones comerciales y componentes del z/os proporcionan una administración automática de mensajes lista para usar que requieren un esfuerzo mínimo para su puesta en marcha y ayudan a conseguir una instalación de primer nivel. Esta poderosa política de mensajes soporta diferentes tipos de automatización para diferentes tipos de códigos de mensajes. SA z/os se puede usar como base para desarrollar una solución automática end-to-end para la administración de sistemas El valor del SA z/os La automatización en el entorno z/os es importante hasta el punto de ser casi un requerimiento. Una ventaja de SA z/os es que convierte la automatización del Sysplex paralelo en una realidad. Maneja cualquier número de sistemas individuales y clusters desde un único punto de control, dispone de una interfaz amigable basada en Java, que permite agrupar los recursos, definir las dependencias y los objetivos a un nivel de Sysplex. Otra ventaja de SA z/os es que es auto-reparadora de acuerdo con políticas definidas. Reduce la complejidad, el tiempo de implantación, el código y el esfuerzo requerido para el mantenimiento a través de políticas de automatización que se pueden compartir o clonar a lo largo de todo el entorno. El beneficio de esto es que las políticas se construyen fácilmente usando variables de clonación y predefiniendo normas autoconfigurables de los mensajes. Con AS z/os se puede monitorizar el sistema a la búsqueda de señales de daños y aliviar dichas condiciones antes de que el daño pase a mayores. SA z/os incluye información sobre rendimiento proporcionada por el IBM Tivoli OMEGAMON en el marco del proceso de automatización. Este marco permite informar proactivamente al técnico responsable de problemas con el rendimiento en el sistema y finalizar Jobs o mover cargas de acuerdo con las acciones apropiadas definidas en la política antes de que ocurra el daño. SA z/os se integra con otros productos de Tivoli incluyendo IBM Tivoli Enterprise Console y IBM Tivoli Business System Manager para proporcionar un complejo de automatización tanto para el sistema como para las comunicaciones Administración de los sistemas a nivel de empresa IBM Tivoli System Automation for Multiplatforms utiliza un adaptador de infraestructura para integrarse con SA z/os, permitiendo automatizar efectivamente aplicaciones compuestas que se expanden a través de distintos sistemas. Este es un punto único de alta disponibilidad para z/os, Linux y IBM AIX. Permite consultar el estado, agregado y detallado, de los componentes de la aplicación, manejar todos los componentes de la aplicación con una única interfaz e incrementar la disponibilidad ayudando a resolver las dependencias cruzadas entre plataformas. SA z/os en conjunto con SA for Multiplatforms permite establecer un equipo único para la operación y automatización de aplicaciones en z/os, Linux y AIX. Esto simplifica en gran medida la determinación y resolución de problemas. IBM Corporation 21/02/ de 131

31 3 Arquitectura System z. Plataforma HW 3.1 Conceptos de la arquitectura System z La arquitectura System z se diseñó, desde su origen, con un concepto clave: COMPARTIR. Esto compartir empezó en los componentes HW (primero la CPU, a continuación la memoria y por último la E/S y la red) y ha terminando compartiendo hasta los datos usados por los distintos sistemas de la plataforma. Otra característica importante es la existencia de múltiples procesadores adicionales a los que figuran como tales. Cuando se dispone de un procesador de 6 vías que accede a la red IP, que tienen acceso a dos baterías de discos y a un robot, estamos, no se dispone solo de las 6 vías del nombre, si no que se dispone de 12 procesadores mas para la E/S, otros dos para el acceso a la red y 4 o 6 mas para las tareas de cifrado y compresión. Antes de ver un esquema más general, vamos a describir algunos conceptos clave en esta arquitectura. Son conceptos con significados diferentes según la arquitectura de que se trate. Esta ambigüedad puede llevar a error y eso se pretende evitar aquí Multiprogramación/Multiproceso/Multithreading Los primeros sistemas operativos en los predecesores de System z eran mono programa. Sin embargo muy pronto apareció la necesidad de compartir la CPU entre más de un usuario y en la actualidad todos los sistemas son multiprograma, es decir son capaces de ejecutar más de un programa simultáneamente. Cuando un trabajo no puede usar el procesador por la razón que sea (porque esta esperando por una operación de E/S asíncrona, por ejemplo) la multiprogramación, permite suspender el trabajo y liberar, por tanto, el procesador para ejecutar instrucciones de otro trabajo. Cuando la operación asíncrona de E/S termina, el segundo trabajo se interrumpe y el primero vuelve a estar listo para usar la CPU. Los sistemas operativos pueden repartir de este modo la CPU porque capturan y salvan toda la información de estado del programa que se interrumpe antes de quitarle el control. De esta manera, son capaces de restaurar al punto exacto de ejecución en que se quedó. EL rendimiento de la multiprogramación está muy relacionado con el como y el donde se salva el estado del programa interrumpido. El como es con una mezcla de HW/SW llamado PSW Switch que será descrito más adelante. El donde es en los distintos niveles de Cache del sistema. Cuanto mas memoria cache haya y mas próxima esté al procesador, mas posibilidad hay de que los datos de una ejecución, se restauren con un consumo mínimo de ciclos de CPU. Cuando una máquina tiene múltiples procesadores, el sistema operativo soporta multiproceso que es la capacidad de que múltiples procesadores procesen instrucciones de de varios programas simultáneamente. IBM Corporation 21/02/ de 131

32 Para que esto sea posible, tiene que ocurrir que los procesadores compartan los distintos recursos HW necesarios, como memoria y disco externo. El multiproceso permite tanto la multiprogramación (un procesador ejecuta varios programas simultáneamente), como la ejecución en paralelo (un único programa puede utilizar distintos procesadores a la vez para hacer trabajo en paralelo). El entorno System z soporta multiprogramación y multiproceso desde hace muchos años, prácticamente desde sus orígenes. La carga típica de un Mainframe es una mezcla de gestores de BBDD (que son tareas long running ) y que actualizan millones de registros mezclado con programas batch y con aplicaciones online usadas por miles de usuarios Multiproceso en z/architecture z/architecture define que un procesador puede procesar una corriente de instrucciones, y solo una, en cada instante de tiempo. z/architecture está documentada en el manual: Principles of Operation, A Este manual define el HW System z incluyendo las instrucciones y los recursos requeridos para usarlo. Cuando se añaden mas procesadores a un servidor, cada procesador comparte la memoria del mismo y procesa su corriente de instrucciones simultáneamente, y de forma independiente, de los otros procesadores. Hay instrucciones de z/architecture diseñadas específicamente para asegurar la integridad en un entorno multiproceso; estas instrucciones pueden ser usadas por los sistemas operativos (por ejemplo z/os) para implementar el mecanismo de locking que protege, entre otras cosas, el acceso a ciertos campos de memoria compartida externa. Una única instancia del sistema operativo maneja todos los procesadores, y es el responsable de asignar trabajo a un procesador disponible. Si un procesador falla, el HW de z10 asignará uno de reserva y el trabajo continuará sin interrupción Mecanismo de interrupciones La multiprogramación en System z está basado en un esquema de interrupciones. La multiprogramación requiere que exista alguna técnica para cambiar el control de un programa a otro para que, por ejemplo, cuando el programa A esté esperando a que una petición de E/S se complete, el programa B pueda ejecutarse. En el z/os esto se consigue a través de las interrupciones, que son eventos que alteran la secuencia en la cual el procesador ejecuta las instrucciones. Cuando ocurre una interrupción, el sistema salva el estado de la rutina interrumpida y analiza el proceso de interrupción. Una interrupción puede ser planificada, es decir solicitada por un programa en ejecución, o no planificada, es decir causada por un evento que no necesariamente tiene relación con el programa en ejecución. Como ejemplo de las planificadas están las que necesitan la ejecución de rutinas especiales del sistema. Bien para operaciones especiales (llamadas al supervisor o IBM Corporation 21/02/ de 131

33 SVC) o para intentar solucionar o al menos recopilar datos cuando hay algún error. Estas últimas se llaman interrupciones de programa. Son no-planificadas, las de E/S que se producen cuando ha terminado una operación de E/S asíncrona, las de Restart que se produce cuando el operador selecciona la opción Restart, y las Externas que incluyen diversos eventos externos, como una llamada desde otra CPU o la expiración de un intervalo de tiempo. También son no-planificadas las que se producen cuando hay un error de máquina. A modo de anexo se incluye una descripción de los distintos tipos de interrupciones El z/os utiliza los siguientes tipos de interrupciones: 1. Llamadas al supervisor o interrupciones SVC. Estas interrupciones ocurren cuando el programa lanza una SVC para pedir un determinado servicio del sistema. Una SVC interrumpe el programa que se está ejecutando y da el control al supervisor para que pueda realizar el servicio requerido. Los programas piden estos servicios a través de macros tales como OPEN (abrir un fichero), GETMAIN (obtener memoria), o WTO (escribir un mensaje al operador del sistema). 2. Interrupciones de E/S. Estas interrupciones ocurren cuando el subsistema de canales señala un cambio de estado, tal como la finalización de una operación de E/S, la ocurrencia de un error, o que un dispositivo de E/S, tal como una impresora, está listo para empezar a trabajar. 3. Interrupciones externas. Estas interrupciones pueden indicar varios acontecimientos, tales como la expiración de un intervalo de tiempo, una interrupción desde la consola, o que el procesador reciba una señal desde otro procesador. 4. Interrupciones de reinicio (Restart interrupts). Esta interrupción ocurre cuando el operador selecciona la función RESTART en la consola o cuando la instrucción restart SIGP se recibe desde otro procesador. 5. Interrupciones de programa. Estas interrupciones son causadas por errores de programa (por ejemplo que el programa intente ejecutar una operación inválida), page faults (el programa referencia una página que no está en la memoria central), o pide monitorizar un suceso. 6. Interrupciones de error máquina. Estas interrupciones las causa un error del procesador y su resolución termina en asignación de un procesador de reserva en sustitución del que ha fallado Uso de las interrupciones para controlar la secuencia de ejecución Para identificar y mantener un registro de su trabajo, el z/os representa cada unidad de control con un bloque de control. Existen dos tipos de bloques de control: Task control blocks o TCB s, que representan tareas ejecutándose dentro de los espacios de direcciones y service request blocks o SRB s que representan servicios de sistema cuyo ámbito no se restringe a un solo A.S.. Después de que se ejecute la interrupción, el sistema operativo determina qué unidad de control (de entre todas las presentes en el sistema) está lista para ejecutarse y tiene la prioridad más alta, entonces le pasa el control. IBM Corporation 21/02/ de 131

34 En la arquitectura System z, y cuando el sistema operativo es z/os, el control del procesador esta implementado con el uso de una zona de memoria en la que se indica la siguiente instrucción a ejecutar y las direcciones donde se encuentran los datos, así como información de control. Esta zona de memoria se llama PSW (Program Status Word) y existe una por cada procesador. Es un área de 128 bits en la que además de la siguiente instrucción a ejecutar, indica las condiciones de ejecución, por medio de diversos bits. Indican, por ejemplo si la secuencia de instrucciones puede ser interrumpida o no o incluso que tipo de interrupciones se admiten y cuales no. La siguiente tabla indica los bits más representativos: 6 Habilita las interrupciones de E/S 7 Habilita las interrupciones externas 8-11 Clave de memoria 15 Estado privilegiado o de usuario Modo de direccionamiento: 16, 31 o 64 bits Cada tipo de interrupción tiene una zona de memoria asociada que consta de dos partes: La llamada PSW vieja que es donde se guarda el contexto (la PSW) del programa que se estaba ejecutando cuando la interrupción se produjo. La llamada PSW nueva que es la que se carga como activa cuando se produce la interrupción. Esta contiene la dirección y las condiciones de ejecución de la rutina asociada con la interrupción. En un sistema de multiprogramación, casi cualquier secuencia de instrucciones puede ser interrumpida para ejecutarse más tarde. Si dicho conjunto de instrucciones está manipulando o modificando un recurso (por ejemplo, un bloque de control o un fichero), el sistema operativo debe impedir que otros programas usen ese recurso hasta que el programa interrumpido haya completado su proceso sobre dicho recurso. El z/os asegura la integridad mediante los métodos de serialización de encolamiento (GRS) bloqueo (lock) y una tercera técnica llamada latching. Todos los usuarios pueden usar el encolado pero sólo rutinas autorizadas pueden usar el bloqueo para la serialización de los recursos Virtualización Como se ha visto en el capítulo anterior, la capacidad de compartir todos los recursos esta basada en una de las características más importantes y básicas del diseño de System z. System z es una arquitectura virtual y que nació virtual. IBM Corporation 21/02/ de 131

35 Es un concepto que, en la actualidad, está muy extendido y que se podría definir como la técnica de esconder las características físicas de los recursos a los usuarios de dichos recursos. Por ejemplo, cada sistema operativo ejecutándose en una partición lógica de la plataforma System z cree que tiene acceso exclusivo al HW. La técnica de virtualización esconde el hecho de que ese HW esta siendo compartido por todas las particiones lógicas. Como se ha dicho mas arriba, la virtualización no es un añadido a la plataforma. z/architecture contiene facilidades tanto en el HW como en le SW base (sistemas operativos) que facilitan la compartición de los recursos. Todos los elementos de System z contienen componentes que facilitan la virtualización. Virtualizar el entorno System z, implica crear sistemas virtuales (Particiones lógicas y máquinas virtuales) y asignar recursos virtuales, como memoria, capacidad de proceso, capacidad de E/S o capacidad de networking a dichos sistemas.. Los recursos se pueden añadir o quitar dinámicamente a estas particiones lógicas mediante el uso de comandos de operador. Aunque se hablará mas adelante, también el HW real se puede añadir en muchos casos dinámicamente. Tanto CPU como memoria como E/S. El particionamiento lógico y las máquinas virtuales, incrementan, por tanto, la flexibilidad al permitir que recursos físicos se añadan o quiten de manera dinámica y no disruptiva de los sistemas virtuales.(lpar o Virtual machines) activos y en uso. El esquema de virtualización de los sistemas actuales, suele corresponder a uno de los siguientes tipos: Particionamiento HW. El servidor se subdivide en fracciones, cada una de ellas con su parte de CPU, Memoria y E/S. En cada una de estas fracciones se ejecutan instancias diferentes del sistema operativo. Hypervisor Bare Metal. Los recursos son propiedad de un SW Hypervisor que se ejecuta directamente en el HW y que reparte los recursos entre los usuarios Hypervisor Hosted. Lo mismo que el anterior pero el SW hypervisor necesita ejecutarse en un SO que es el propietario de los recursos. Los dos esquemas de virtualización de System z son del segundo tipo. En la figura se describen las capacidades de virtualización de System z IBM Corporation 21/02/ de 131

36 3.1.4 Otras características importantes del HW Para finalizar esta sección algunas peculiaridades más: Registros. Son zonas de memoria especiales con misiones específicas. Una de sus misiones es contener las direcciones de memoria virtual, tanto las de las operaciones como las de los datos. Instrucciones. Son el conjunto de instrucciones que el microcódigo de System z suministra. Son las que usa tanto los S.O como el middleware. Están publicadas en el manual Principles of Operation. Este juego se va ampliando de manera integrada con las modificaciones en el HW. Esta es la razón de que exista una sinergia tan grande en System z entre el HW y el SW base. Las mejoras en el HW de z10 fueron acompañadas por la inclusión de 50 instrucciones más en el juego de instrucciones. Direccionamiento de 24, 31 y 64 bits. System z soporta el direccionamiento en los 3 modos de modo que al mismo tiempo que sirve aplicaciones con grandes necesidades de memoria (64 bits) permite seguir ejecutando sin inversión adicional programas escritos para 24 bits sin modificación ni migración. Este último hecho forma parte del compromiso de protección de la inversión en System z 3.2 Componentes y sus características System z como todos los sistemas esta construido a partir de componentes HW. La mayoría de estas componentes se incluyeron en el diseño inicial en los años 60/70 y se han ido mejorando y desarrollando a lo largo de los años. La siguiente figura es un diagrama esquemático de estas componentes Z10 El modelo de HW actual es el 2097 y se fabrican 2 modelos: z10 EC de 1 a 64 procesadores y el z10 BC de 1 a 10 procesadores System z frames and cages Jaula o cage es la estructura en la que se insertan los distintos componentes. Hay dos tipos: 1. CEC cage: Contiene las processor units (PU), la memoria física y conectores a las otras jaulas. 2. I/O cage: Contiene las tarjetas de canal que conectan con los dispositivos externos. Los sistemas se componen de una jaula tipo CEC y de 1 a 3 jaulas de E/S System z book. El concepto de book viene de la generación n-3. Un book contiene procesadores, memoria y la conexión a la jaula E/S. Los books están insertados en la jaula del CEC. Cada System z contiene de 1 a 4 books, y cada uno contiene: IBM Corporation 21/02/ de 131

37 16 unidades de proceso (PU). De estas se emplean algunas para dedicarlas a las operaciones de E/S y siempre existe algún procesador de reserva (spare). Por eso aunque, teóricamente, la capacidad máxima es de 64 procesadores, el modelo mayor dispone de 54 procesadores, ya que el resto se dedican a funciones de reserva y de E/S. 16 a 128 GB de memoria física Hasta ocho memory bus adapters que son los responsables de la conectividad a la jaula de la E/S. En la figura se ve un book de z Procesadores La unida de proceso (processing unit (PU)) es el corazón de cualquier HW. La plataforma System z tiene una unidad de proceso única con su propio conjunto de instrucciones Las unidades de proceso están basadas en un chip de cuatro PUs organizadas de acuerdo al siguiente esquema: Estos procesadores son ayudados por otros dos (COP en la figura) que están especializados en servicios de compresión y cifrado. La función de cifrado se llama CP Assist for Cryptographic Function (CPACF) y permite: Cifrar y descifrar con protocolos DES/TDES/AES. El resto de protocolos utilizan la tarjeta Crypto Express de la que se hablará mas adelante. Algoritmos de generación de MAC, hashing seguro y generación de números Pseudo Random. IBM Corporation 21/02/ de 131

38 Hay diferentes tipos de Pus, aunque todas ellas usan el mismo chip. Se caracterizan como distintos tipos dependiendo del uso. Si un proceso está sin caracterizar, esta como disponible. Si ocurre un fallo de HW en cualquier tipo de procesador, el sistema caracteriza uno de los disponibles con el mismo tipo y lo sustituye. En z10, existen los siguientes tipos de procesador: Central processor (CP). Este es el procesador básico y en el se ejecutan los Sistemas Operativos y las aplicaciones. Si existe algún procesador de otro tipo, parte de ese trabajo se descargará. Integrated Facility for Linux (IFL). Es un CP en el que solo se ejecuta Linux o z/vm con guest Linux. Este tipo de procesador no se tiene en cuenta para el cálculo del coste SW. System z Application Assist Processor (zaap). Los zaap los usa la IBM Java Virtual Machine (JVM ) para ejecutar código JAVA. Lo mismo que con los IFLs, lo que se ejecute en zaap no contribuye al coste de SW. System z Integrated Information Processor (ziip). Los ziip están pensados, principalmente, para descargar parte del proceso de acceso a los datos (DB2), aunque no es el único. También ejecuta código de cifrado, XML, etc. Igualmente, lo ejecutado en ziip no contribuye al cálculo del coste HW. Integrated Coupling Facility (ICF). Estos procesadores solo ejecutan un código especial : Coupling Facility Control Code (CFCC). Es el código de control de la memoria externa en la que esta basado el clustering (que en System z se llama SYSPLEX) Spare Es una PU sin caracterizar y disponible para, en caso de error en cualquiera de los otros, sustituir al procesador que falla adquiriendo su caracterización. Forma parte del diseño N+1. Procesador SAP. En cada máquina System z existe, al menos, un procesador SAP. Este no esta disponible para los Sistemas operativos aunque está en los mismos Chips que el resto. Este procesador ejecuta un código interno que es parte del subsistema de E/S del servidor. Esto descarga de los procesadores centrales el trabajo de comunicación con los canales, dejando disponibles los mismos para la ejecución de las aplicaciones. La unidad de instalación en el z10 es el book. Del total de Pus (entre 17 y 20) se activan las contratadas, pero el resto están. Eso hace que se pueda añadir potencia de forma dinámica. Ante un pico de demanda, ante la necesidad de absorber la carga de otra máquina bien por parada planificada o por error, es necesario a veces poder disponer de memoria adicional sin depender del suministrador. En z10, existen varias opciones de Capacity On Demand que permiten dicha flexibilidad Memoria Memoria Central Los sistemas z utilizan módulos DIMM (Dual In line Memory Module) de 4 GB u 8 GB. La suma total disponible por book es de 384 GB lo que da, en los modelos actuales, un total por máquina de 1,5 TB. IBM Corporation 21/02/ de 131

39 Esta memoria se reparte entre las particiones, aunque algunos sistemas operativos como el z/os permiten reservar memoria para ser asignada a otra partición en caso de necesidad. También la memoria se instala en módulos completos permitiendo la posibilidad de añadir memoria de forma dinámica, activando la que ya se encuentra instalada Memoria Cache Además de la memoria central, existen una serie de niveles de cache que permite un mayor rendimiento en el acceso de las Pus a los datos. Cuanto mas cerca estén los datos de las unidades de proceso, menos ciclos de máquina se desperdiciarán a la espera del dato y, por tanto, mayor será el rendimiento global. En las máquinas z10 existen varios niveles de Cache: Asociados a la PU Nivel 1. Nivel K para instrucciones y 128K para datos 3MB Asociados al Book y compartidas entre las Pus que contiene Nivel 2 2 Cache de 24 MB cada una. En total 48 MB Memoria Compartida (Coupling Facility) Procesador especializado y memoria dedicada para compartir la información entre las imágenes de un Sysplex E/S Subsistema de canales Una de las mayores fortalezas de los Mainframe es su capacidad para manejar un gran número de operaciones de E/S simultáneas. Esta capacidad proviene en gran parte de la existencia de un subsistema especializado así como del uso de procesadores específicos (SAP y canales) Como se ha dicho mas arriba, esto permite simultanear la ejecución de las aplicaciones con el proceso de la E/S. El subsistema de canales o CSS (channel subsystem ) maneja el flujo entre los dispositivos de E/S y la memoria. SAP usa la configuración de E/S para saber encaminar la petición por el canal correspondiente al dispositivo de destino. Los canales controlan la transmisión del dato entre la memoria y el dispositivo. Suelen ser compartidos entre todas las particiones que existen en un sistema. IBM Corporation 21/02/ de 131

40 Hay canales de varios tipos: Acceso a almacenamiento externo (SAN) o o Canales ESCON. Son los mas antiguos y se mantienen por compatibilidad con dispositivos antiguos. Usan conexiones de fibra y el protocolo de transmisión es de tipo Full dúplex. Canales FICON. Existen de distintas velocidades (en la actualidad con un máximo de 8 GB/S). La gran mayoría de los dispositivos tienen adaptadores para este tipo de canal y se pueden configurar de dos maneras: Como canales FICON para los dispositivos que manejen z/os y z/vm. Acceso a la Red Ethernet o Como dispositivos FCP para dispositivos con Adaptadores SCSI. Esto permite a los usuarios de Linux, acceder a ambos mundos. A dispositivos FICON virtualizados por el z/vm o a dispositivos SCSI directamente o bajo z/vm Canales OSA. La tarjeta OSA (Open System Adapter) conecta el System z con la red Ethernet. Es usada principalmente por el TCP/IP y además de proveer la conexión con el mundo exterior, descarga al TCP/IP de ciertas funciones, como por ejemplo la segmentación de mensajes. Comunicación con la Memoria externa (Coupling Facility) Son canales que se manejan con distintos protocolos y que conectan los sistemas a la memoria externa. Hay de varios tipos dependiendo de la conectividad y del protocolo usado. o o o ICB (Integrated Cluster Bus) La conexión es de cobre y tiene, por tanto limitación de distancia. Es el que da mas velocidad y mas ancho de banda ISC (Inter System Coupling). La conexión es de fibra y se propaga a más distancia. No obstante su ancho de banda y su velocidad son menores. IFB Infiniband. En la última versión se ha empezado a utilizar el estándar Infiniband para la conexión a la memoria externa. La conexión es de fibra como en ISC, pero el protocolo es distinto Control units y dispositivos Los dispositivos de almacenamiento que se acceden desde System z pueden ser, tanto los tradicionalmente soportado por el Sistema operativo z/os y con protocolo exclusivo, como los accedidos desde Linux en z que se acceden con protocolos mas estándar. En su origen, los dispositivos disponibles para el predecesor de z/os necesitaban una unidad de control especializada en su manejo. Además los dispositivos de acceso directo (o discos) tenían una tecnología de discos accedidos en paralelo que formaban pistas y cilindros. IBM Corporation 21/02/ de 131

41 Aunque el z/os sigue trabajando con pistas y cilindros, en la actualidad el z/os soporta loas llamados EAV (Extended Adres Volumes) que permiten acceder sin las limitaciones de la antigua tecnología a los datos residentes en la nueva. Al mismo tiempo, y fiel a su política de backward compatibility, se pueden seguir ejecutando los programas antiguos que siguen creyendo que sus datos residen en los antiguos dispositivos Time-of-Day clock Cuando hay proceso cooperativo de varios sistemas (como ocurre en la mayor parte de las instalaciones System z) es importante que todos ellos tengan sincronizados sus relojes internos con un alto nivel de precisión, ya que los tiempos que se manejan están entre los nanosegundos y los microsegundos. STP (Server Time Protocol) es una facilidad que se incluye en el microcódigo para la sincronización de tiempos. Es una versión para System z del protocolo NTP que está ampliamente difundido. La comunicación entre sistemas se hace utilizando las conexiones con la memoria externa o CF(Coupling Facility), ya que la existencia de la CF es condición imprescindible para el proceso cooperativo. Para las aplicaciones multiplataforma que necesitan coordinación de tiempos con el resto de servidores, el STP puede actuar tanto como servidor (dando la hora al resto de servidores) como siendo cliente(y tomando la hora del servidor de tiempos que se defina) CP Assist for Cryptographic En System z las capacidades de seguridad están integradas en el HW. Además de las tarjetas criptográficas, existen coprocesadores especializados en el cifrado que forman parte del chip en que residen las Pus. Estos procesadores son llamados CP Assist for Cryptographic HiperSockets Se llama HiperSockets a la tecnología que provee conexión TCP/IP de gran velocidad entre servidores de distintas LPAR de la misma máquina. La comunicación se establece utilizando la memoria de la máquina, con lo que se evita la salida al exterior y se ahorra, por tanto, la latencia de la red Hardware Management Console (HMC) El HW System z se puede manejar desde el Support Element (un Thinkpad conectado directamente al chasis y al que se accede abriendo la puerta del 2097, o desde la Hardware Management Console (HMC), que es una aplicación Desktop basada en linux que suministra la Interfaz de usuario para controlar y monitorizar el estado del sistema. Trabajando desde la HMC, los operadores, los técnicos de sistemas o el personal técnico de IBM pueden efectuar las operaciones básicas en los servidores System z. Las operaciones más comunes son: Cargar la configuración HW Cargar o restaurar un sistema (z/vm, z/os, ) Cambiar la configuración de las LPAR. IBM Corporation 21/02/ de 131

42 Modificar el HW(añadir o quitar CPs, canales, etc.). La mayor parte de estas modificaciones son dinámicas. Acceder a los Logs de HW Comprobar el uso de los CPs y los Canales. Comprobar el consumo de energía La HMC esta conectada al servidor(es) a través de una red IP privada. Aunque habitualmente existen 2 HMCs por redundancia, desde una sola HMC se puede controlar todo el HW que exista en la red. Todos los servidores y las particiones lógicas definidas en los mismos así como toda la E/S asociada Detalles de virtualización del HW PR/SM y Particiones Lógicas (LPAR) Procesor Resource/Systems Manager (PR/SM ) es un hypervisor integrado con todas las componentes de System z que mapea los recursos físicos en lógicos para que las distintas LPARs los puedan utilizar de manera simultanea. Esta componente permite agregar recursos de un tipo (por ejemplo CPs) en pooles desde los que los usuarios virtuales reciben los recursos virtuales. Esta es una característica muy importante y crucial para permitir una consolidación de cargas que permita un uso más efectivo de recursos. Es decir que aumente el porcentaje de ocupación de los recursos manteniendo el rendimiento. PR/SM permite el particionamiento lógico del z10 en diversos z10 virtuales denominados LPARs (Logical PARtition). EL PR/SM mantiene el aislamiento entre las diversas LPAR, lo que permite usar las LPAR como si fueran máquinas separadas. Tanto desde el punto de vista de la integridad de datos y procesos como desde el punto de vista de la seguridad lógica, Los estándares de seguridad EAL han dado la calificación de EAL5 al particionamiento lógico. Cada LPAR (hasta 60 en el z10) ejecuta su propio sistema operativo (cualquiera de los que soporta el HW: z/vm, z/os, Linux on IBM System z, z/tpf, z/vse) PR/SM virtualiza los procesadores y la E/S, mientras que la memoria es virtualizada por los sistemas operativos. Gestión de la CPU por el PR/SM Cada partición lógica (LPAR) es definida con un peso. Este peso determina el porcentaje de la máquina que se le asegura en caso de que, con cargas altas, haya más de una LPAR compitiendo por el uso de los procesadores. Este peso es siempre un mínimo aunque en caso necesario puede ser también un máximo si establecemos la condición de capped para esta partición. Estos pesos son fijos y el operador los puede cambiar de forma dinámica. Si se necesita que la distribución de estos pesos vaya variando con el tiempo y ajustándose a los SLAs de las cargas, se puede utilizar el IRD (Intelligent Resource Director) IBM Corporation 21/02/ de 131

43 Este, extiende el control de la gestión de cargas por objetivos de rendimiento en una LPAR (WLM) al control de los pesos de las particiones así como del nivel de multiprogramación requerido (número máximo de procesadores lógicos) El IRD es también capaz de gestionar la prioridad en la E/S objetivos de rendimiento. para conseguir los Virtualización de E/S La virtualización de E/S permite a las LPARs compartir los mismos canales de acceso al exterior. De esta manera las distintas particiones pueden acceder de manera concurrente tanto al almacenamiento (discos y cartuchos) como a la red. La virtualización hace que cada LPAR crea que tiene uso exclusivo y es el microcódigo quien se encarga de ordenar dicho acceso. La componente del microcódigo dedicada a esta virtualización se llama EMIF Hiperdispatch Es una función que permite mejorar el rendimiento aumentando las posibilidades de que el dato que necesita una instrucción se encuentre en la memoria cache más próxima. El Hiperdispatch tiene dos componentes, una HW (o microcódigo del PR/SM) y otra SW (en el dispatcher del z/os). La primera aplantilla una CPU lógica sobre una física utilizando un algoritmo que busca la reutilización del primer nivel de cache. Es decir siempre busca aplantillar la CPU lógica sobre la última física en la que se ejecutó. En caso de que no esté disponible, aplantilla sobre otra. En ningún caso hace esperar por esta causa. Esta es la componente HW. La componente SW (el dispatcher o repartidor de la CPU) divide los procesadores lógicos en grupos de cuatro y asocia a cada grupo un conjunto de tareas. De esta manera cada tarea tiene mas probabilidades de ejecutarse en la misma CPU lógica, que a su vez se procura aplantillar sobre la misma física, de manera que los datos que había referentes a la tarea en los distintos niveles de cache están aún ahí, y no han sido sustituidos por otros. IBM Corporation 21/02/ de 131

44 4 Arquitectura System z. Plataforma SW- SW Base Podemos clasificar los componentes software que se requieren dentro del entorno z/os en los siguientes bloques funcionales: Sistema Operativo (IBM z/os) y componentes Middleware (gestor de colas,gestor transaccional, gestor de BBDD) gestión de sistema En este capítulo nos centraremos en el primer punto y el capitulo siguiente, cubrirá el resto 4.1 IBM z/os y componentes El sistema operativo z/os, buque insignia del Mainframe de IBM, está diseñado para proporcionar las más altas calidades de servicio para los datos y transacciones de las empresas y extiende estas calidades a las nuevas aplicaciones utilizando las últimas tecnologías de software. Ofrece una base altamente segura, escalable y de alto rendimiento en la que implantar aplicaciones habilitadas para SOA utilizando tanto tecnologías altamente implantadas y estables tipo OLTP, como tecnologías Internet y Java, proporcionando un completo y diverso entorno de ejecución, así como un almacén de datos de empresa altamente seguro y flexible. Las excelentes características y solidez de este sistema operativo, abarcan un amplio número de categorías: Modelo de proceso centralizado. Seguridad. Gestión. Virtualización y gestión de las cargas de trabajo. Fiabilidad. Escalabilidad. Disponibilidad. Comunicaciones y I/O. Procesos transaccionales. Procesos batch. El IBM System z/os consigue sus calidades de servicio (QoS) en la combinación del hardware del IBM System z y de las capacidades del Parallel Sysplex. Para proporcionar estas características, el IBM System z/os incluye un amplio conjunto de capacidades y herramientas. z/os es el Sistema Operativo mas característico de System z y su desarrollo ha ido para lelo al del HW. Por eso es el que mejor explota todas las capacidades del mismo. Se encarga de repartir los recursos de que dispone, procesador y memoria, entro las distintas unidades de trabajo lo necesitan Aunque nació como un sistema operativo para dirigir la ejecución de un único trabajo, rápidamente se convirtió en un sistema operativo que es capaz de manejar muchos miles de programas y usuarios concurrentemente. IBM Corporation 21/02/ de 131

45 Desde sus inicios el diseño de z/os tiene como objetivo primordial alcanzar el la máxima calidad de servicio posible utilizando la tecnología disponible en cada momento. Esta calidad de servicio forma parte intrínseca del sistema, y por lo tanto es aplicable tanto a las transacciones operativas que utilizan Middleware tradicional como a las nuevas aplicaciones que utilizan las últimas tecnologías software. Es, por ejemplo, una plataforma escalable y segura en la que desplegar aplicaciones SOA usando tecnología JAVA o adaptando la tecnología tradicional. El diseño de z/os, está basado en la distintos componentes que trabajan de modo cooperativo para llevar a cabo las tareas del sistema. A continuación se describen los más importantes Gestión de la Memoria En la gestión de memoria, hay algunos conceptos importantes: Address Space (A.S.) Es el rango de direcciones que el sistema asigna a una unidad de trabajo. En estas direcciones es donde se almacenan las instrucciones y datos a ejecutar. Una unidad de trabajo, puede ser un usuario, un programa, un subsistema, etc Su tamaño lo da el esquema de direccionamiento. En la actualidad el direccionamiento es de 64 bits y por lo tanto el máximo tamaño de un A.S. es de 16 hexabytes. Normalmente se utiliza solo una parte del mismo. Estas direcciones virtuales se hacen corresponder con direcciones reales por medio de unas tablas de páginas. Las páginas en z/os son de 4 K o de 1MB. Una unidad de trabajo ejecutándose en un AS, no puede ver la memoria de otra unidad de trabajo. Este hecho es muy importante para el la fiabilidad final, ya que impide que un error en una unidad de trabajo arrastre a otras. De la misma forma facilita la recuperación. Dentro de cada AS hay una zona compartida por todos que se usa como memoria de comunicación y donde residen los módulos del sistema, o, en general, todos los que tienen un uso común. Hay por tanto tres tipos de memoria: Memoria virtual, que no es más que un rango de direcciones Memoria real, que es donde se ejecutan las instrucciones y residen los datos que estas necesitan Memoria auxiliar. Son ficheros donde se almacenan el contenido de la memoria real cuando se necesita para otra unidad de trabajo. IBM Corporation 21/02/ de 131

46 Utilizando un esquema LRU (Least Recently Used) el sistema va enviando a memoria auxiliar el contenido de las páginas de memoria real que hace más tiempo que no se referencian. El objetivo es tener siempre disponibles páginas de memoria real donde poder volver a cargar los datos necesarios para los programas en ejecución. Esta paginación es, por supuesto, totalmente transparente al usuario Gestión y reparto del Procesador- Workload Manager (WLM). Una de las fortalezas de la plataforma System z y sus sistemas operativos, es la capacidad de correr múltiples tipos de carga a la vez, y manejar las prioridades relativas de dichas cargas. La función que hace esto posible, es el WLM (WorkLoad Manager) La idea es poder especificar objetivos de rendimiento para los distintos trabajos en términos de negocio ( por ejemplo percentil de transacciones con tiempo de respuesta en bornas de CPU menor de 1 segundo) y hacer que el WLM utilizando unas construcciones técnicas (reglas de asociación, prioridades de ejecución arranque automático de servidores, etc ) entendibles por el sistema operativo. La definición de los tipos de carga y las reglas para manejarlos, es lo que constituye una política del WLM. A cada tipo de carga se le asigna un objetivo y una importancia. El objetivo, define como se espera que se comporte este tipo de carga o el compromiso adquirido con otros (Service Level Agreement o SLAs). El WLM usa estas definiciones de objetivos para manejar el trabajo. La política es compartida por todos los sistemas que trabajen de forma cooperativa (Sysplex) WLM tiene dos métodos para cumplir los objetivos marcados: Repartir recursos del sistema (procesadores memoria e I/O) ajustando las prioridades. Controlar el encaminamiento de la carga a los distintos servidores de aplicaciones disponibles o, incluso, arrancar servidores nuevos en caso necesario. La identificación de la carga la llevan a cabo de manera conjunta el middleware y el sistema operativo. Los distintos Middleware (CICS, IMS, WAS, SAP, etc ) informan al WLM cuando entra al sistema una unidad de trabajo. Esta unidad de trabajo, llega con un conjunto de características (nombre de la transacción, nombre del servidor origen, dirección origen, etc..) que permiten al WLM asignarle (siguiendo el conjunto de reglas previamente definidas) una clase de servicio. Una clase de servicio representa el objetivo de rendimiento de un tipo concreto de carga, así como su importancia relativa. Como hemos visto antes, el WLM gestiona y distribuye los recursos del sistema para intentar cumplir esos objetivos. IBM Corporation 21/02/ de 131

47 Los tipos de objetivos pueden ser: De tiempo de respuesta.- Estos se usan principalmente para trabajo de tipo transaccional y se puede especificar, bien la media (es decir el objetivo es que la media del tiempo de respuesta de las transacciones XXXX sea menor que 0,2 segundos) o bien el percentil si esperamos una dispersión en los tiempos de respuesta que hagan poco significativas las medias (es decir el objetivo es que el 95% de las transacciones XXXX tengan un tiempo de respuesta menor que 0,2 segundos). WLM monitoriza los tiempos de respuesta de las transacciones y va ajustando la utilización de recursos para ir consiguiendo los objetivos. De velocity.- Cuando el tipo de trabajo no tiene asociado un tiempo de respuesta claramente medible, WLM proporciona otro tipo de objetivo. En este se pretende indicar como de deprisa tiene que ser servido. Para ello WLM utiliza un mecanismo de muestreo que le permite detectar cuando una tarea esta retrasada por un recurso (es decir ha pedido el recurso y no lo ha obtenido) Con estas muestras obtiene un índice llamado velocity que es el que se asocia como objetivo. Las tareas long running son apropiadas para este tipo de objetivo. Ciertos gestores de transacciones pueden crear un tipo de trabajo llamado enclave. Lo mismo que otras unidades de trabajo, a este se le asigna una clase de servicio siguiendo las reglas de clasificación. Los enclaves tienen la característica especial de que la unidad de trabajo que representan se puede ejecutar en múltiples espacios de direcciones, IBM Corporation 21/02/ de 131

48 4.1.3 Resource Recovery Services (RRS). Una transacción puede acceder a múltiples BBDD y obtener servicio de múltiples regiones servidoras y tiene que tener, en caso de error, la capacidad de deshacer todo lo hecho (back-out). Si una transacción solo modifica en una BBDD gestionada por un único gestor, la recuperación la hace el gestor de BBDD sin necesidad de coordinación. Sin embargo, si una transacción escribe en una,o mas, bases de datos y/o también en un fichero secuencial o, incluso, en una Base de datos jerárquica, la recuperación que harán los distintos gestores, debe ser coordinada desde un único punto Este punto único de gestión, es un componente llamado RRS. Los gestores de transacciones, pueden llamar al RRS para coordinar la recuperación en caso de fallo o pueden utilizar sus propios mecanismos de recuperación en caso que no haya más que un componente involucrado.. RRS proporciona un gestor de puntos de sincronismo (syncpoint) que cualquiera que lo necesite puede explotar Gestión de los datos DFP(Data Facility Program) DFP es la parte del z/os que se encarga del acceso a los datos. Su principal componente es una conjunto de métodos de acceso. Un método de acceso define la técnica usada para almacenar y recuperar datos. Los métodos de acceso tienen sus propias estructuras de ficheros para organizar los datos, sus programas proporcionados con el sistema (macros) para definir los ficheros, así como programas de utilidad para procesar estos. Los métodos de acceso, forman parte de la filosofía general del z/os de liberar a los programadores de aplicación de la codificación de todo lo que no sean procesos de negocio. Además su utilización permite optimizar el acceso a los datos. Los métodos de acceso se identifican en primera instancia por la organización de los ficheros. Los usuarios de z/os, por ejemplo, usan el Basic Sequential Access Method (BSAM) o el Queued sequential access method (QSAM) para ficheros secuenciales. Hay veces que un método de acceso identificado con una organización se puede usar para procesar un fichero organizado de manera diferente. Por ejemplo, un fichero secuencial creado usando BSAM puede procesarse por un BDAM (basic direct access method), o viceversa. Otro ejemplo son los ficheros UNIX, que se pueden procesar usando BSAM, QSAM, BPAM (basic particioned access method), o VSAM (virtual storage access method); Estos últimos son los mas utilizados en la actualidad. Aunque el uso de los Bases de Datos está totalmente generalizado desde hace mucho tiempo, aún existen muchas instalaciones que siguen teniendo aplicaciones en producción con sus datos gestionados en VSAM. Como ya se ha citado anteriormente, el término VSAM aplica tanto al tipo de fichero como al método de acceso que se usa para gestionar los diferentes tipos de datos. Como método de acceso, VSAM proporciona funciones más complejas que otros métodos de acceso de disco. Se usa principalmente para guardar datos de las aplicaciones. Para guardar programas fuente, JCLs o módulos de carga se utilizan los ficheros particionados o librerías. IBM Corporation 21/02/ de 131

49 Hay elementos de middleware del z/os que internamente guardan también sus datos en ficheros VSAM, como es el caso de DB2, o los ficheros zfs de los servicios UNIX Se puede usar el VSAM para organizar los registros en cuatro tipos diferentes de ficheros, secuenciados por clave (key-sequenced), secuenciados por entrada (entrysequenced), lineales (linear) y de registro relativo (relative record). La diferencia principal entre ellos es la forma en la que se almacenan y acceden sus registros. Veamos una breve descripción de los mismos: Key Sequence Data Set (KSDS) cada registro tiene uno o más campos de clave y un registro se lee (o inserta) por valor de la clave. Esto proporciona acceso al azar a los datos. Los registros son de longitud variable. Entry Sequence Data Set (ESDS) esta tipo de VSAM guarda los registros en secuencia. Los registros de acceden secuencialmente. Lo usa el IMS, el DB2 y los USS del z/os. Relative Record Data Set (RRDS) permite la lectura de los registros por número, registro 1, registro 2, Proporciona un acceso al azar y asume que la aplicación tiene forma de derivar los números de registro que quiere obtener. Linear Data Set (LDS) Esto es, en efecto, un fichero byte-stream y es el único de este tipo en el entorno z/os tradicional (no-uss). Hay un número alto de funciones del sistema z/os que usan este formato ampliamente, pero es raro que lo usen programas de aplicación Gestión del Almacenamiento La gestión de los datos, consiste en la asignación de espacio, ubicación del mismo, monitorización, migración, backup, recall, recuperación y borrado de ficheros. Estas actividades se pueden llevar a cabo o manualmente o usando procesos automatizados. Cuando se usa este segundo método (lo mas normal) es el sistema quien se encarga de toda la gestión. Todas las características de ubicación, migración, backup y borrado se establecen mediante un conjunto de reglas basadas en distintas características del fichero como el nombre, el entorno en que se crea, el tamaño, el usuario que lo pide, etc. De esta manera y de manera automática a cada tipo de dato se le da el tratamiento que requiere. Un ejemplo sería: o o o El que hace tiempo que no se usa se migra a cartucho de manera transparente Los datos críticos tienen backup diario y se guardan diez versiones. Los muy críticos tienen copia instantánea (Flash Copy ) cada cierto tiempo. Lo que llamamos DFSMS (Data Facility Storage Management Subsystem) es un conjunto de productos de software que administra automáticamente los datos, desde su creación a su expiración. El DFSMS proporciona controles para la ubicación de los datos de acuerdo con la disponibilidad y el rendimiento, servicios de backup/recuperación y recuperación ante el desastre, administración del espacio en disco, administración de los medios magnéticos e informes y simulaciones para afinar el rendimiento y la configuración. IBM Corporation 21/02/ de 131

50 Proporciona una solución integrada y comprensiva para la administración de datos. Facilita una administración del almacenamiento de acuerdo con los SLA s definidos. Se puede conseguir hasta un 50% de incremento en la capacidad efectiva del almacenamiento. Esto redunda en la reducción de costes en el almacenamiento. Componentes: DFSMSdfp: como se ha descrito en el epígrafe anterior, proporciona funciones básicas de almacenamiento de datos, programas y dispositivos y algunas funciones de copia. DFSMSdss: con funciones para el movimiento de datos, copia, back-up y administración de espacio. DFSMShsm: administra y automatiza las funciones de back-up, recuperación, migración (archivado) y limpieza del espacio desaprovechado. DFSMSrmm: proporciona funciones administrativas para los recursos removibles, tales como librerías, cartuchos, y volúmenes lógicos y virtuales. DFSMStvm: es un componente con cargo que permite que transacciones CICS y trabajos BATCH accedan a ficheros VSAM concurrentemente. DFSORT: producto separado y complementario que proporciona funciones de ordenado, mezcla, copia, informes y análisis de datos con un alto grado de rendimiento Gestión de los bloqueos -Global resource serialization (GRS) Como se ha dicho en el capítulo 2, la serialización es clave en System z para permitir tanto el uso compartido de recursos como la multiprogramación Global resource La serialización de recursos es la técnica usada para coordinar los recursos que usa más de una aplicación. Los programas que cambian algo, necesitan un control exclusivo del recurso, en caso contrario el recurso se podría corromper.. Esta protección se suele llamar integridad de escritura. Por otro lado, los programas que solo necesitan leer pueden acceder al recurso sin problemas de integridad.. GRS es la componente de z/os que gestiona esta serialización por encolamiento tanto en una única imagen z/os como entre varias formando un Sysplex. Serializa los recursos de manera que si hay un usuario con acceso compartido (de lectura si es un dato) no permite el acceso a ningún usuario que lo necesite exclusivo. De la misma manera garantiza que si hay un usuario con acceso exclusivo (de escritura si es un dato) ningún otro puede acceder Encolamientos (ENQ) Cuando un programa necesita el acceso al recurso, es su responsabilidad pedir acceso ordenado a él. Dependiendo del uso que prevea darle, pedirá un uso exclusive o compartido. Esto se hace a través de llamadas al sistema en Assembler ENQ/DEQ. 1. El programa pide la utilización de un recurso con una petición de ENQ seguida de un nombre. Este nombre representa un recurso de cualquier tipo, desde un fichero a una zona de memoria a la utilización de un programa, etc IBM Corporation 21/02/ de 131

51 2. Si el recurso no esta disponible, el propio GRS lo pone en estado suspendido o en espera. De esta situación le saca el GRS en el momento en que el recurso por el que estaba esperando queda libre. 3. El recurso se queda libre cuando el programa que lo estaba utilizando no lo necesita mas y hace DEQ del mismo Aunque los programas escritos por un usuario pueden utilizar estas interfases, son usadas principalmente por las componentes del sistema para poder utilizar de forma segura los ficheros y demás recursos. El ámbito del GRS puede ser Local si las colas se refieren a peticionarios dentro de una única imagen de z/os o Global si en las colas de GRS hay peticionarios de los sistemas de un Sysplex. En este último caso, y para permitir el acceso a todos los sistemas al mismo dato, las colas residen en la memoria externa del Sysplex o CF (Coupling Facility) Bloqueos El uso de bloqueos (o locking) es una forma rápida de serializar el uso de recursos de sistema por parte de rutina específicas. Un lock es una zona de memoria que indica si un recurso está siendo usado y quién lo usa. Este procedimiento lo usan la mayor parte de los sistemas con multiproceso para proteger el acceso a la memoria y otros recursos compartidos. Para usar un recurso que está protegido por un lock, la rutina debe primero obtener el lock para ese recurso. Si el recurso no está disponible (porque lo tiene otra rutina) el peticionario puede: Continuar pidiéndolo en un bucle hasta que lo consiga (Spin lock) o quedarse en espera (suspend lock). Este esquema posibilita una situación no deseada en la que Usuario A pide lock1 y usuario B pide lock2. A continuación usuario A pide lock2 y usuario B pide lock1. Si esto ocurriera, ambos usuarios se quedarían parados en lo que se llama un deadlock o abrazo mortal. Para evitar esta situación, los locks z/os siguen una jerarquía y no se puede pedir uno de nivel superior sin haber conseguido antes el de nivel inferior. 4.2 Entorno de programación/ejecución La plataforma System z ofrece las herramientas necesarias para implementar los estándares de la industria en desarrollo de SW. El microcódigo de System z ha ido incorporando a lo largo del tiempo, instrucciones para mejorar el rendimiento de los programas compilados en ejecución. De la misma manera que se incluyeron instrucciones de microcódigo que mejoraban los programas Cobol y PL/I, en las últimas versiones se están incluyendo instrucciones que optimizan programas en Java, C++, Pearl, etc IBM Corporation 21/02/ de 131

52 4.2.1 Soporte de Runtime- Language environment En z/os y z/vm existe un entorno de run-time único para C, C++, COBOL, Fortran, Assembler y PL/I. Las librerías de este entorno, incluyen servicios comunes tales como mensajes, funciones de fecha y tiempo, funciones matemáticas, utilidades, servicios del sistema y subsistemas Todos estos servicios, están disponibles a través de interfaces comunes a todos los lenguajes. Estas interfaces comunes, minimizan la influencia del lenguaje de programación elegido en los resultados de la aplicación Compiladores de los lenguajes de programación tradicionales z/os soporta los lenguajes de programación clásicos: COBOL, PL/1, Assembler, C/C++ en sus versiones mas recientes Soporte de Java IBM soporta el lenguaje JAVA en todas sus plataformas incluido Systemz. Existe soporte de Java para todos los sistemas operativos que corren en System z: Linux, por supuesto, y z/vw así como z/os. IBM Corporation 21/02/ de 131

53 En z/os el lenguaje JAVA (es decir la JVM) dispone de los mismos APIs que en el resto de las plataformas. Pero además IBM ha mejorado el JAVA en z/os para permitirle utilizar funciones peculiares de System z, tales como el HW criptográfico o los sistemas de ficheros UNIX en z/os. Además existen interfaces entre los lenguajes tradicionales (Cobol, C/C++, etc..) y el lenguaje JAVA. Por último y como se ha dicho anteriormente, la ejecución dentro de la Java Virtual Machine (JVM) se descarga en su mayoría (alrededor del 90%) en procesadores zaap que, como hemos visto, es potencia que no se incluye a la hora de calcular la potencia de la máquina desde el punto de vista del SW. Además de poder ser ejecutados de manera interactiva, como en el resto de las plataformas, los programas Java en z/os pueden ser ejecutados, también, en batch Lenguajes de reciente incorporación z/os va incluyendo en sus diferentes versiones el soporte de los distintos lenguajes que en algún momento se consideran de utilidad en el Mainframe. Los últimos en ser incluidos (en el z/os 1.9) han sido Pearl y Metal También existe el soporte de lenguajes de cuarta generación 4GL para los programadores mas familiarizados o que prefieren los lenguajes procedimentales frente a los orientado a objetos como JAVA Herramientas de desarrollo de SW IBM WebSphere Developer for System z V7 incluye capacidades que permiten desarrollar SW para Mainframe en cualquiera de sus posibilidades. Esta herramienta permite acelerar el desarrollo de: Piezas de una arquitectura orientada a servicios (SOA) incluyendo servicios desplegables en CICS, IMS, WebSphere Application Server, y DB2 Stored Procedure Aplicaciones Web dinámicas tanto en Java como en J2EE Aplicaciones tradicionales COBOL, PL/I, C, C++, y High-Level Assembler así como aplicaciones JAVA para correr bajo JZOS en Z/OS Servicios Web para integrar esas aplicaciones Permite también: Desplegar en múltiples entornos que incluyen WebSphere, CICS, IMS, batch, y DB2 vía Stored Procedures. Aprovechar los conocimientos existente para escribir aplicaciones JAVA o Cobol utilizando EGL(Enterprise Generation Language). Adaptar y extender el entorno de desarrollo mediante el uso de diversos plug-in Visualizar y editar gráficamente código J2EE usando el UML Visual Editor. Detectar problemas de rendimiento y cuellos de botella con las herramientas de trace y de performance profiling para aplicaciones Websphere Generar Enterprise COBOL XML para aplicaciones basadas en los servicios Web de CICS y IMS IBM Corporation 21/02/ de 131

54 Generar WSDL y JavaBeans para probar y desplegar servicios Web XML Services z/os dispone de diversos modos de ejecutar servicios relacionados con el lenguaje XML. El sistema incorpora unas rutinas de parsing de XML a partir de sus últimas releases. EL gestor de BBDD DB2 que es uno de sus usuarios principales, también dispone de sus propias rutinas de parsing. DB2 incorpora un parsing de XML propio, aunque también e UNIX System Services Unix System Services, es la componente del sistema operativo que permite ejecutar programas Unix bajo el control de z/os. Es un sistema Unix standard que cumple las especificaciones XPG en sus distintos niveles. Además de su disponibilidad para el usuario, hay diversas componentes que lo usan, como el TCP/IP que ejecuta parte de su código bajo USS y parte bajo una STC. De esta manera la integración está más optimizada Security Server Como se ha visto anteriormente, la seguridad en System z es una combinación de HW y SW. z/os conjuga la seguridad tradicional hardware, de sistema operativo, subsistemas y aplicaciones, con nuevos elementos de seguridad de redes y transacciones, que permite contar con un entorno de seguridad robusto para aplicaciones ebusiness, reduciendo el número de sistemas y componentes a gestionar. Los aspectos básicos de seguridad z/os se sustentan en dos funcionalidades básicas: Integridad.- Funciones de aislamiento hardware e integridad del sistema. Seguridad de sistema z/os y sus componentes, que integra la protección de usuarios y aplicaciones, incluyendo seguridad de red y de transacciones. Las funciones de aislamiento e integridad han sido descritas con anterioridad, en este apartado nos centraremos en los aspectos de seguridad. Los servicios de seguridad z/os se pueden agrupar en los siguientes bloques: z/os Cryptographic Services Las funciones criptográficas incorporan la base de seguridad de red y de transacciones, permitiendo la utilización de técnicas de cifrado que proporcionan autenticación, confidencialidad e integridad de datos. o ICSF (Integrated Cryptographic Service Facility) Componente de z/os para la gestión de los procesadores criptográficos del zseries, que proporciona los API de la arquitectura criptográfica de IBM CCA IBM Corporation 21/02/ de 131

55 (Common Cryptography Architecture) a las aplicaciones y middleware que utilizan los servicios criptográficos software. ICSF es la base fundamental de criptografía en z/os posibilitando el cifrado y descifrado de datos, la generación y gestión de claves y la realización de otras funciones criptográficas de integridad de datos y firmas digitales. o o System SSL / TLS (Secure Socket Layer / Transaction Layer Security) Componente base de z/os que proporciona integración de las funciones SSL /TLS de autenticación y cifrado (integridad y confidencialidad) a las aplicaciones y servidores z/os. Esta integración proporciona servicios de cliente y de servidor SSL estandarizando y centralizando las funciones de los servicios SSL y las utilidades de gestión de certificados. System SSL/TLS se beneficia de las funcionalidades del hardware criptográfico, y de cache del Sysplex para obtener altas tasas de rendimiento. PKI Services (Public Key Infrastructure Services) Componente base de z/os que proporciona las funciones de gestión de Autoridad Certificadora estándares (Identrus compliant) en el entorno z/os. o PKI Services soporta X.509 v3 (PKIX) y Common Data Security Architecture (CDSA), y la gestión de certificados para Secure Sockets Layer (SSL), Internet Protocol Security (IPSEC) y Secure Multipurpose Internet Mail Extensions (S/MIME). PKI explota las funcionalidades de protección de RACF y del hardware criptográfico para la seguridad de comunicaciones y para la protección de clave privada de CA. RACF (Resource Access Control facility) RACF ha sido el componente básico de seguridad del sistema Mainframe desde sus inicios, centralizando las funciones de seguridad (identificación y autenticación, control de acceso a recursos y auditoría) para el sistema operativo y los productos y subsistemas. Las peticiones a RACF se realizan de manera centralizada y estructurada a través de SAF (System Authorization Facility (SAF) y su ámbito de cobertura es muy amplio, proporcionando seguridad tanto a gestores tradicionales con nuevas funcionalidades, como a nuevos servidores en entorno z/os, que continuamente está evolucionando para cubrir las nuevas necesidades. A manera de ejemplo cabe mencionar las posibilidades de: o Autenticación de usuarios aplicando diferentes tecnologías: verificación de usuario con password, password-phrase y passticket; autenticación de usuarios previamente verificados por otros mecanismos: mapping de certificados digitales, de Lotus Notes, de Kerberos, traspaso de identidad entre servidores, etc. o Control de acceso a recursos granularizado (subsistemas, datos, transacciones, colas MQ, clases Java, elementos IP, funciones y privilegios Unix System Services, recursos DB2 ) proporcionado por los gestores de recursos del sistema. o Gestión de certificados digitales. El RACF puede crear, gestionar y almacenar certificados digitales, sus claves asociadas RSA/DSA y los ficheros de claves (key rings), así como generar solicitudes de certificación a autoridades certificadoras (CA), además de proporcionar protección de acceso a claves y certificados. o Log y auditoría integrada en el log del sistema (SMF), incluso para accesos a recursos no protegidos por RACF (como ficheros y directorios USS, filas DB2). IBM Corporation 21/02/ de 131

56 4.3 Técnicas de clustering. Sysplex Paralelo Las técnicas para compartir datos entre más de una imagen del sistema operativo es lo que generalmente se llaman técnicas de clustering. Estas pueden ir desde el simple acceso compartido a una unidad de disco con control manual de la integridad a simple hasta las mas sofisticadas basadas en mecanismos de locking y encolamiento. Entre otros beneficios, estas técnicas previenen la concurrencia no deseada. La más sofisticada de estas técnicas es la de Sysplex Paralelo Cada servidor en un Sysplex Paralelo, tiene acceso a todos los recursos (tanto datos como recursos del sistema) consiguiendo así que en cada uno de los servidores pueda correr un clon de cada aplicación. La clave es la tecnología que permite compartir los datos con integridad tanto de lectura como de escritura de manera altamente efectiva. La tecnología de clustering de sistemas con datos compartidos, ha ido evolucionando en z/os desde la compartición básica de datos en discos hasta el Sysplex Paralelo, pasando por el llamado anillo GRS Clustering básico Se basa en la protección por un bloque global del dispositivo mientras está siendo actualizado en algún fichero de uso común. Ej.- VTOCs e índices de los discos, catálogos, ficheros comunes del online, etc No toda actualización implica un bloqueo, ya que aunque se comparten algunos datos, hay otros muchos que son propios de cada imagen. Este método bloquea al mismo tiempo toda la información contenida en un dispositivo y exige, por tanto, una cuidadosa (y bastante estable) configuración del contenido de los mismos. También exige una cuidadosa `planificación en los accesos para evitar el dead lock arriba descrito. Pese a sus limitaciones, esta técnica ha permitido a los Mainframe compartir datos entre distintas instancias del sistema operativo, desde los años Anillo GRS Esta técnica de control de bloqueos es una mejora respecto a la anterior. Da una mayor granularidad respecto al elemento bloqueado. Se construye uniendo los sistemas (dos o más) a través de conexiones de canal formando un anillo. Cuando desde un sistema se va a actualizar algún elemento compartido (fichero u otro tipo) lanza una petición que viaja por el anillo para comprobar la disponibilidad del elemento(y para obtener su control en caso positivo) en cada uno de los sistemas. Este tipo de técnica se ha utilizado principalmente para: o Serializar el acceso a ficheros o discos. Esto permite tener una copia única de los ficheros y evitar duplicados. o Compartir información acerca de las características de los trabajos. De esta manera se puede tener una cola de trabajos compartida y sus elementos se pueden ejecutar en cualquiera de los sistemas conectados. o Compartir los controles de seguridad, de forma que las políticas se apliquen exactamente igual en cada uno de los sistemas. IBM Corporation 21/02/ de 131

57 Esta técnica permite mayor dinamicidad en el contenido de los dispositivos, así como mayor flexibilidad en la planificación. La limitación es el delay que introduce en las peticiones y que hace que, en algunos casos, se siga utilizando la técnica anterior. Desde su origen, el z/os ha tenido una componente encargada de la serialización de acceso a los ficheros llamada GRS( Global Resource Manager). En principio, su utilidad era proteger el acceso a los ficheros y recursos desde las distintas aplicaciones que se ejecutan en los distintos AS. La primera componente del sistema que utilizó el anillo de canales para extender la serialización de intra-sistema a inter-sistema fue el GRS y de ahí la denominación de anillo GRS. Esta técnica se ha estado utilizando hasta hace pocos años Sysplex Paralelo (Resource sharing y Datasharing) Un Sysplex Paralelo, es una colección de sistemas z/os que cooperan para procesar los trabajos como si fueran un único sistema. Para esto se utilizan tanto piezas de HW como de SW. Esta tecnología es la base de la obtención de la disponibilidad continua. Al haber mas de una instancia de z/os procesando trabajos, una parada (por error o planificada) de uno de ellos no implica una parada en el servicio, ya que el resto de imágenes de la aplicación siguen funcionando. Sysplex paralelo, también posibilita un crecimiento horizontal (añadir un sistema con su potencia al conjunto) frente al crecimiento vertical (añadir potencia simplemente). Este crecimiento horizontal amplia el techo de crecimiento con System z. El límite teórico en la actualidad es de 32 sistemas con 64 procesadores cada uno. El Sysplex Paralelo esta basado en una tecnología que permite el acceso compartido a bajo coste en overhead y con la integridad asegurada. De esta forma las transacciones o unidades de trabajo se pueden ejecutar indistintamente en cualquiera de los sistemas que componen un Sysplex. Las componentes de una configuración de Sysplex paralelo son: Recursos HW- Coupling Facilities y Coupling Links Recursos SW: SW que se ejecuta en la CF Adaptación del SW para usar las Interfases de accesos a la CF Coupling Facility Una Coupling Facility es el conjunto formado por uno o más procesadores, unos GB de memoria, conexiones con los sistemas del Sysplex y un sistema operativo propio que se distribuye a la vez. IBM Corporation 21/02/ de 131

58 La CF funciona como una gran buffer donde los datos pueden ser accedidos desde los sistemas con un mecanismo de serialización adecuado al tipo de dato. Los Información que almacena es de tres tipos Información de lock que es compartida entre todos los sistemas del Sysplex Información de cache (por ejemplo los datos de seguridad o los datos de la BBDD de empleados) Lista de datos La Coupling Facility puede ser un sistema aparte o una LPAR dentro de un sistema. En la figura se ve la configuración de un Sysplex paralelo con 2 imágenes. Como funcionalidades más relevantes de un Sysplex Paralelo, se podrían destacar las siguientes: En muchos aspectos, un Sysplex Paralelo parece un único sistema. Tiene una internase única de operación Planificando adecuadamente, una carga se puede ejecutar en una o varios sistemas IBM Corporation 21/02/ de 131

59 Si uno de los sistemas falla, y los sistemas están preparados para ello (ver GDPS mas adelante) su carga es desviada automáticamente al resto sin pérdida de servicio. De la misma forma, si algún de los sistemas necesita mantenimiento, su carga se puede desviar al resto sin pérdida de servicio. Esto hace que incluso actualizaciones HW (cambio de máquinas) o de SW (cambio de Sistemas Operativos) se puedan llevar a cabo sin pérdida de servicio. Por supuesto con los límites de compatibilidad entre versiones que marca la política de IBM. 4.4 z/vm z/vm es un Sistema operativo basado en la z/architecture (64-bit) y que corre en la plataforma System z. VM son las siglas de Virtual Machine y este sistema operativo es, como indica su nombre, la implementación de la tecnología IBM para virtualización de servidores en la plataforma. Cada máquina virtual es vista por el sistema operativo guest o huésped como una máquina física. Da la capacidad de correr otro tipo de sistemas operativos cono z/vse o zlinux y también z/os puede ser ejecutado bajo z/vm. z/vm soporta huéspedes en arquitecturas de 24, 31 y 64 bits. z/vm suministra a cada usuario un entorno de trabajo individual, que es lo que llamamos máquina virtual, que el usuario ve como HW y se dirige a él utilizando las instrucciones HW que usaría en modo nativo. Las máquinas virtuales bajo z/vm comparten todos los recursos del sistema El procesador y la memoria son asignados a los servidores que la necesitan cuando la necesitan. La asignación del procesador es por intervalos, es decir que se tiene una granularidad menor que un procesador. z/vm también permite virtualizar la E/S ( discos, cartuchos, etc. ) así como la red. La virtualización permite además enriquecer el entorno por medio de funciones tales como: Uso de técnicas de Data in Memory para mejorar el rendimiento de la E/S. Un disco virtual puede estar en memoria. Simular Procesador, memoria y dispositivos que no existen en el HW real. Compartir una copia única del kernel entre distintos huéspedes. z/vm permite compartir espacio en disco entre las imágenes zlinux. Esto permite que se pueda compartir el código read-only entre dichas imágenes. Esta facilidad, además de mejorar el uso del espacio en disco, permite gestionar mejor las versiones de las aplicaciones y reduce la complejidad del mantenimiento del SW. La comunicación entre los distintos sistemas huéspedes es también virtual. Además de ser más rápida, ya que los datos no salen de la memoria del procesador, simplifica enormemente el cableado y mejora la seguridad reduciendo la necesidad de Firewalls intermedios, IBM Corporation 21/02/ de 131

60 4.5 Linux en System z IBM apostó desde el principio por Linux como sistema operativo multiplataforma y colabora con la comunidad Linux para proveer interfaces con el HW Systemz. Linux en System z, soporta, por tanto los procesadores como los dispositivos propios de la plataforma. Hay dos distribuciones oficiales que suministran Linux capaces de ejecutarse en System z: _ Novell SUSE _ Red Hat Linux on System z es el mismo Linux que en el resto de las plataformas. Tiene la misma funcionalidad que el S.O. Linux en otras plataformas, con el añadido del soporte y uso del HW del que dispone System z. Soporte Criptográfico : PCICA, CPA, PCIXCC, CryptoExpress2, CryptoExpress3 I/O Mainframe y distribuido- Protocolo Ficon y/o SCSI Soporte de OSA-Express,OSA-Express2 y OSA-Express3 para comunicación de alta velocidad fuera del CEC. HiperSockets para comunicación de muy alta velocidad dentro del CEC, entre particiones con z/os, z/vse y Linux. HiperSockets es una funcionalidad de System z que permite una comunicación TCP/IP a alta velocidad entre LPAR. Usa la memoria como canal de comunicación y usa un protocolo TCP/IP aligerado de las funciones relativas al medio físico. En general, zlinux hereda de manera automática, las fortalezas del HW del Mainframe. Usado como huésped de z/vm suministra una base para la consolidación de servidores muy eficiente, muy escalable, capaz de soportar altos niveles de carga cercanos al 100% y por lo tanto muy efectivo desde el punto de vista del coste. IBM Corporation 21/02/ de 131

61 5 Arquitectura System z. Plataforma SW- Middleware Transaccional Las transacciones ocurren en nuestra vida diaria constantemente; por ejemplo cuando sacamos dinero de un cajero o buscamos en Internet. Una transacción es un intercambio, generalmente una petición y su respuesta, que ocurre como un hecho rutinario para ejecutar operaciones del día a día de una organización. Las transacciones tienen las siguientes características: Se procesan y transfieren pequeños volúmenes de información por cada transacción. Tienen gran número de usuarios. La duración es corta. Se ejecutan con mucha frecuencia o en grandes cantidades. Los datos que manejan son compartidos. Una transacción de negocio es un acuerdo de negocio autocontenido. Algunas transacciones suponen una conversación corta (por ejemplo, el cambio de un domicilio). Otras, por el contrario, acarrean varias acciones que tienen lugar a lo largo de un periodo de tiempo más o menos amplio (por ejemplo, la reserva de un viaje, incluyendo coche, hotel y billetes de avión). Una transacción simple puede constar de muchos programas de aplicación que llevar a cabo el proceso requerido. Los sistemas transaccionales de alta capacidad como CICS se ayudan de las capacidades de multitarea y multithread del z/os para procesar más de una tarea en un momento determinado, cada una guardando sus propios datos variables y siguiendo las instrucciones específicas del usuario que la ejecuta. La capacidad de multitarea es fundamental en cualquier entorno en el que se conecten miles de usuarios al mismo tiempo. Cuando un sistema transaccional multitarea recibe una petición para ejecutar una transacción, puede arrancar una nueva tarea que se asocia con una instancia de la ejecución de la transacción, o lo que es lo mismo con su conjunto particular de datos para un determinado usuario en un terminal determinado. La capacidad de multithreading permite que una copia simple de un programa de aplicación se procese por varias transacciones concurrentemente. Se requiere que todos los programas de aplicación transaccional sean reentrantes, o lo que es lo mismo, los programas deben ser reusables en serie entre puntos de entrada y salida; la reentrancia se asegura obteniendo una copia nueva de la memoria de trabajo cada vez que se invoca el programa. En un sistema transaccional, las transacciones deben cumplir con cuatro requerimientos primarios, conocidos en conjunto con el nemotécnico A-C-I-D o ACID: IBM Corporation 21/02/ de 131

62 Atomicidad los procesos ejecutados por la transacción o se ejecutan como un todo o no lo hacen en absoluto. Consistencia la transacción sólo trabaja con información consistente. Isolation (aislamiento) los procesos que proceden de dos o más transacciones deben estar aislados entre sí. Durabilidad los cambios hechos por la transacción deben ser permanentes. Generalmente las transacciones se inician por usuarios finales que interactúan con el sistema transaccional a través de un terminal. En el pasado, los sistemas transaccionales sólo soportaban terminales y dispositivos conectados a través de una red de teleproceso 2. Hoy día los sistemas transaccionales pueden servir peticiones provenientes de: Una página web Un programa en una estación de trabajo remota Una aplicación en otro sistema transaccional Un disparo automático en un momento predefinido o ante un suceso determinado En los siguientes puntos se detallan cada uno de los servidores de aplicación transaccionales. 5.1 CICS CICS son las iniciales de Customer Information Control System 3 ; es un subsistema de propósito general del z/os para procesar transacciones. El CICS proporciona los servicios para ejecutar una aplicación online, a petición, y al mismo tiempo que otros usuarios están submitiendo peticiones para ejecutar la misma aplicación utilizando los mismos ficheros y programas. El CICS gestiona la compartición de los recursos, la integridad de los datos y la priorización de la ejecución de las aplicaciones. El CICS autoriza a los usuarios, aloca los recursos (memoria y procesamiento), y pasa las peticiones de bases de datos de las aplicaciones al gestor de base de datos correspondiente (por ejemplo, DB2). Podríamos decir que el CICS actúa (y lleva a cabo muchas de las mismas funciones) como el sistema operativo z/os. Una aplicación CICS es una colección de programas relacionados que llevan a cabo juntos una operación de de negocio, como presentar una declaración de renta por vía telemática o abrir una solicitud de ayuda para personas con dependencia. 2 De aquí deriva la denominación de monitores de teleproceso que se ha dado tradicionalmente a los sistemas transaccionales. 3 Aunque desde hace unos años al nombre CICS se le han añadido las iniciales TS de Transaction Server, en este libro seguiremos refiriéndonos a este middleware como CICS a secas. IBM Corporation 21/02/ de 131

63 Las aplicaciones se ejecutan bajo control del CICS utilizando servicios CICS e interfaces para acceder a programas y ficheros. La ejecución de una transacción incluye la ejecución de uno o más programas de aplicación que implementan la función que se requiere. En la documentación de CICS se puede encontrar que a los programas de aplicación CICS se les llama simplemente programas, y algunas veces el término transacción se usa para indicar el proceso hecho por los programas de aplicación El CICS y el z/os En un sistema z/os, el CICS proporciona el nivel funcional para gestionar las transacciones, mientras el sistema operativo sigue siendo la interfaz final con el hardware. El CICS separa fundamentalmente un tipo particular de programa de aplicación (la llamada aplicación online) de otros en el sistema, y los gestiona él mismo. Cuando un programa de aplicación accede a un terminal o a cualquier dispositivo, por ejemplo, no se comunica con él directamente. El programa lanza comandos para comunicarse con el CICS, qué a su vez se comunica con los métodos de acceso correspondientes del sistema operativo. Finalmente, el método de acceso se comunica con el terminal o dispositivo. Figura n: Sistema transaccional y sistema operativo Un sistema z/os podría tener múltiples copias de CICS ejecutándose a la vez. Cada CICS arranca un espacio de direcciones z/os separado. El CICS proporciona una opción llamada operación multiregión (MRO son las iniciales en inglés), y que permite la separación de funciones CICS diferentes en regiones diferentes (espacios de direcciones); así un espacio de direcciones CICS (o más) podría hacer el control de los terminales y se le llamaría terminal-owning regions (TOR). Otras posibilidades incluyen application-owning regions (AORs) para las aplicaciones y file-owning regions (FORs) para los ficheros. IBM Corporation 21/02/ de 131

64 5.1.2 Programas, transacciones y tareas CICS El CICS permite separar la lógica de la aplicación de los recursos de la aplicación. Para desarrollar y ejecutar transacciones CICS, se necesita entender la relación entre los programas CICS, transacciones y tareas. Estos términos se usan a lo largo de las publicaciones CICS y aparecen en muchos comandos. Transacción.- Es una pieza de procesamiento iniciada por una simple petición. Se puede iniciar desde un usuario en un terminal, pero también desde una página web, o desde un programa en una estación de trabajo remota, una aplicación en otro sistema transaccional o por un disparo automático en un momento predefinido o ante un suceso determinado. A cada transacción se le da un nombre de cuatro caracteres, que se define en la tabla de control de programas (PCT). Programa de aplicación.- Una transacción simple puede constar de uno o más programas de aplicación, y que cuando se ejecutan, llevan a cabo el procesamiento requerido. Sin embargo, el término transacción en CICS significa tanto un sencillo evento o todas las transacciones del mismo tipo. Cada transacción se describe en el CICS con la definición de recurso transacción (transaction resource definition). Esta definición le da a la transacción un nombre (identificador de la transacción o TRANSID) e informa a CICS de varias cosas como qué programa se invoca desde el principio y qué tipo de autenticación se requiere durante la ejecución de la transacción. Se ejecuta la transacción especificándole al CICS el nombre de la transacción (TRANSID); éste usa la información guardada en la definición de la transacción para establecer el entorno de ejecución adecuado, y arrancar el primer programa. Unidad de trabajo Utilizamos este término para denominar a una operación completa que es recuperable; puede ser confirmada o deshecha en su totalidad como resultado de un comando programado o fallo del sistema. En muchas ocasiones, el ámbito de una transacción CICS es el de una sola unidad de trabajo. Tarea La palabra tarea también tiene un significado especial en CICS. Cuando el CICS recibe una petición para ejecutar una transacción, arranca una nueva tarea asociada con esta instancia de la ejecución de la misma. A la tarea se le puede también considerar como un thread, Cuando la transacción se completa, se termina la tarea Programación conversacional y pseudo-conversacional En CICS, cuando los programas que se están ejecutando entran en conversación con el usuario hablamos de transacción conversacional. Una transacción no conversacional, por el contrario, procesa una entrada, responde y acaba (desaparece). Nunca se queda parada (en pausa) para leer una segunda entrada que le venga del terminal, de manera que no hay una conversación real. Hay una técnica en CICS que se llama procesamiento pseudo-conversacional en el que a través de una serie de transacciones no conversacionales se da la apariencia al usuario de que existe una transacción conversacional. No existe transacción mientras el usuario está esperando por la entrada; cuando éste la envía, el CICS arranca la transacción para leer y procesar los datos; justo después de enviar respuesta de nuevo al usuario, acaba la transacción. Es fundamental entender que la principal diferencia entre ambas técnicas radica en los recursos que están alocados en cada momento; mientras en la transacción conversacional los programas mantienen los recursos mientras esperan a recibir los IBM Corporation 21/02/ de 131

65 datos, en el caso de la programación pseudo-conversacional, no se mantiene alocado ningún recurso durante estas esperas Comandos CICS El formato general de un comando CICS es EXECUTE CICS (o EXEC CICS) seguido por el nombre del comando y posiblemente una o más opciones. Cuando se necesita un servicio del CICS, por ejemplo para leer un registro de un fichero, sólo tienen que incluirse el comando CICS dentro del código del programa. 5.2 Servicios CICS para los programas de aplicación El API CICS proporciona acceso a un junto amplio de servicios que pueden usarse para construir aplicaciones. Los programas CICS que usan el API pueden llevar a cabo las siguientes operaciones: Acceso a datos en ficheros VSAM y BDAM y en bases de datos DB2 e IMS. Comunicación con variedad de terminales y dispositivos. Conexión a programas en otras plataformas que usan protocolos SNA y TCP/IP. Interactuar con clientes y servidores HTTP. Operar como un peticionario o proveedor de servicios web. Intercambiar datos con otros programas en la misma transacción y con otras transacciones. Los programas CICS se ejecutan como parte de una transacción bajo el control de una tarea CICS y pueden llevar a cabo las siguientes acciones: Obtener información sobre el entorno del programa. Iniciar otras transacciones inmediatamente o en el futuro. Confirmar o deshacer la unidad de trabajo en curso. Reservar o liberar bloqueos sobre los recursos que se comparten con otras tareas. Ajustar la prioridad de la tarea, y dejar el control a favor de otras tareas que tienen mayor prioridad. Identificar y autenticar usuarios que inician transacciones mediante los servicios de un gestor de seguridad externo. Capturar datos en journals que se pueden usar para reconstruir eventos o cambios a los datos. Interactuar con el sistema operativo, incluyendo la consola del sistema y el spool del JES. IBM Corporation 21/02/ de 131

66 5.2.1 Objetos de datos CICS El CICS proporciona determinados objetos que los programas y las transacciones pueden emplear para intercambiar datos con otras. Áreas de comunicación Un área de comunicación (COMMAREA) es un simple bloque de memoria que se usa para pasar datos entre programas. Un programa solo puede pasar una COMMAREA a otro programa. El tamaño máximo recomendado de un área de comunicación es de 24KB, aunque el valor máximo absoluto es de 32KB. Contenedores y canales (containers and channels) Un contenedor es un bloque de datos con nombre que se usa para pasar información entre programas. El programa puede pasar cualquier número de contenedores a otro programa usando una agrupación lógica de contenedores llamada canal. Los contenedores no están limitados a un tamaño máximo de 32KB. Colas temporary storage (TS) Una cola TS es una cola de items de datos con nombre que se pueden escribir, reescribir, leer, y releer, en cualquier secuencia. Se pueden definir colas TS como recuperables. Colas transient data (TD) Una cola TD es una cola de items de datos con nombre que se puede escribir y leer sólo una vez. Se deben leer secuencialmente, y cada item de datos sólo se puede leer una vez; después de que una transacción lee un item, éste se borra de la cola y deja de estar disponible para cualquier otra transacción. El CICS proporciona dos tipos de colas TD: Colas TD intrapartición que se usan principalmente para comunicación entre los programas CICS. Colas TD extrapartición que se usan principalmente para comunicación entre un programa CICS y un dispositivo secuencial, como un fichero QSAM o una impresora. Las colas TD intrapartición se pueden definir como recuperables Acceso a datos externos El CICS soporta acceso a datos externos en bases de datos DB2 e IMS/DB, así como a ficheros VSAM y BDAM. En el caso del DB2, los programas CICS emplean sentencias SQL y el acceso se hace a través de la llamada CICS DB2 attachment facility. Los programas pueden usar tanto la interfaz de comando DL/I o la de llamada para acceder a datos en bases de datos DL/I. El acceso se lleva a cabo a través de Database Control (DBCTL). Los programas CICS pueden utilizar la interfaz de programación de aplicaciones para leer o escribir datos en ficheros manejados por VSAM (Virtual Storage Access Method) y BDAM (Basic Direct Access Method). Como se pudo ver en el ejemplo contenido en la sección anterior, el CICS no se refiere directamente al nombre del fichero (data set), sino que lo hace a un file, que es un recurso CICS mapeado al verdadero fichero mediante una definición. Se pueden usar tablas de datos compartidos (shared data tables) para proporcionar un acceso eficiente a los ficheros VSAM KSDS. Una tabla de IBM Corporation 21/02/ de 131

67 datos es un fichero que tienen los registros en memoria principal; una tabla de datos compartidos es una tabla de datos que está accesible desde más de una región CICS Topología CICS Se pueden distribuir las aplicaciones CICS y sus recursos entre regiones CICS interconectadas. Las regiones CICS se pueden agrupar en grupos de sistemas CICS y en CICSplexes, y las regiones se pueden distribuir entre sistemas z/os que formen parte de un Sysplex. Un Sysplex es un conjunto de sistemas z/os que se comunican y cooperan entre sí a través de componentes hardware y servicios de software multisistema. Una región CICS es una instancia (ejemplar) de CICS que se ejecuta en su propio espacio de direcciones z/os. Una región CICS se puede arrancar y parar independientemente de otras regiones. Un CICSplex es una agrupación de regiones CICS que se maneja como una sola entidad. Cada región CICS sólo puede pertenecer a un CICSplex. Un CICSplex puede incluir regiones CICS de diferentes sistemas z/os de un Sysplex. Un grupo de sistemas CICS es una agrupación de regiones en un CICSplex que se puede manejar como una entidad. El grupo puede incluir regiones que se estén ejecutando en sistemas z/os diferentes. En un CICSplex, cada región puede pertenecer a más de un grupo, y los grupos pueden estar contenidos en otros grupos. En la sección El CICS y el z/os se citaba el concepto de operación multiregión; las diferentes funciones especificadas corresponden a los diferentes roles que las regiones CICS pueden llevar a cabo en un CICSplex. Todas las regiones CICS pueden desempeñar todos los roles y, en algunos casos, resulta apropiado combinar algunos de los roles en una región. Un sistema z/os podría tener múltiples copias de CICS ejecutándose a la vez. Cada CICS arranca un espacio de direcciones z/os separado. El CICS proporciona una opción llamada operación multiregión (MRO son las iniciales en inglés), y que permite la separación de funciones CICS diferentes en regiones diferentes (espacios de direcciones); así un espacio de direcciones CICS (o más) podría hacer el control de los terminales y se le llamaría terminal-owning regions (TOR). Otras posibilidades incluyen application-owning regions (AORs) para las aplicaciones y file-owning regions (FORs) para los ficheros. Hay un tipo particular de región que es la llamada transport-owning region, y que realiza la conexión de un CICSplex a la red. Todos los conceptos de topología CICS pueden verse recogidos en la siguiente figura: IBM Corporation 21/02/ de 131

68 Figura n+1: Cómo se organizan las regiones CICS en un Sysplex Intercomunicación CICS a CICS El CICS proporciona diferentes formas para conectar regiones CICS entre sí dentro del mismo sistema z/os, entre regiones en el mismo Sysplex z/os, y entre regiones en Sysplexes distintos. La operación multiregión (MRO) ya citada con anterioridad se emplea para comunicar e intercambiar datos sin necesitar de una red de comunicación externa. La Intersystem Communication (ISC) se usa para comunicar regiones CICS entre sí y con otros sistemas usando protocolos SNA. Se puede utilizar interconectividad IP (IPIC) para comunicar regiones CICS entre sí y con otros sistemas usando TCP/IP. Se pueden utilizar facilidades de intercomunicación CICS para distribuir el trabajo de una aplicación entre un número de regiones CICS, permitiendo así que programas en una región usen recursos en otra. Estas facilidades son function shipping, asynchronous processing, transaction routing, distributed program link y distributed transaction processing. Resulta destacable que la gestión de cargas permite la distribución de las peticiones entre las regiones CICS que puedan procesarlas de la forma más eficiente. Los dos aspectos de la gestión de cargas son la separación de éstas y el balanceo. El primero permite la distribución del trabajo entre regiones objetivo de acuerdo a atributos de la petición, mientras que el segundo distribuye el trabajo de acuerdo a los niveles de disponibilidad y actividad de las regiones objetivo Conectividad con sistemas no-cics Las aplicaciones CICS se pueden comunicar con sistemas no-cics o en modo peer-topeer o en modo cliente servidor, mediante protocolos de comunicación estándar de la industria. En la configuración cliente servidor, cada nodo tiene un role distinto: el cliente envía peticiones a un servidor y el servidor devuelve la información solicitada al cliente. En el modo peer-to-peer, ambos nodos tienen roles iguales, asumiendo los del cliente y del servidor. Los protocolos usados son TCP/IP, Servicios Web, HTTP, SNA y Remote Procedure Call (RPC). IBM Corporation 21/02/ de 131

69 El CICS proporciona interfaces para que se puedan enviar peticiones a una región CICS desde un sistema externo: CICS Transaction Gateway es un producto que permite invocar programas en CICS desde una aplicación Java mediante interfaces J2EE. Clientes CICS estos son miembros de la familia de productos CICS de la estación de trabajo que proporcionan un conjunto estándar de funciones para iniciar transacciones CICS mediante external call interface (ECI) o external presentation interface (EPI). ECI es un API para que un programa en un cliente llame a un programa CICS y se intercambien datos a través de COMMAREA. EPI es un API que permite que un programa en un cliente simule un terminal Bridge CICS-MQ para que se puedan iniciar transacciones CICS desde aplicaciones de WebSphere MQ. Interfaz de sockets de TCP/IP para CICS es parte del software Communications Server de z/os y soporta comunicaciones peer-to-peer entre programas CICS y otras aplicaciones que usan protocolos TCP/IP. External CICS Interface (EXCI) la interfaz permite que un programa en z/os pueda invocar un programa CICS utilizando distributed program link (DPL) Configuración CICS La región CICS se pude configurar y controlar su comportamiento a través de los parámetros de inicialización de sistema, creando e instalando definiciones de recursos, y escribiendo exits de usuario (user exits). En la actualidad se puede emplear una herramienta de gestión del sistema llamada CICS Explorer que permite manejar de una forma simple y centralizada uno o más sistemas CICS. Está basada en Eclipse 4 y permite llevar a cabo funciones como las siguientes: visualizar definiciones de recursos, crearlas y actualizarlas e instalarlas o eliminarlas; en cuanto a recursos CICS, habilitarlos y deshabilitarlos, abrirlos y cerrarlos, adquirirlos y liberarlos, ponerlos en servicio y fuera de servicio o acabar tareas asociadas con un recurso Seguridad El CICS usa los servicios que le proporciona un gestor de seguridad externo, como el RACF, para el control de los accesos a las aplicaciones y a los recursos del sistema. Sea cual sea la forma de iniciarse una transacción, cuando la seguridad del CICS está activa, la transacción queda asociada con un usuario. Aunque un usuario CICS es en muchos casos un usuario individual concreto, en general un usuario es una entidad que se identifica con un identificador de usuario (user ID). Cuando un usuario hace una petición, el CICS llama al gestor de seguridad para determinar si tiene la autoridad para hacerla. Si el usuario no tiene la autoridad apropiada, el CICS deniega la petición. 4 Eclipse es una plataforma para construir y desplegar aplicaciones cliente en las que la manipulación de datos es Rich Client Platform (RCP). IBM Corporation 21/02/ de 131

70 El CICS chequea la autoridad del usuario a diferentes niveles: Seguridad de signon que asegura que los usuarios del terminal están autorizados a conectarse a CICS Seguridad del enlace que asegura que los sistemas remotos están autorizados a conectase a CICS Seguridad de transacción que los usuarios que intentan ejecutar una transacción están autorizados a ello. Seguridad de recurso que asegura que los usuarios que usan recursos CICS están autorizados a ello. Seguridad de comando para asegurar que los usuarios que usan la interfaz de programación CICS están autorizados a ello. Para llevar a cabo la identificación y la autenticación de los usuarios, el CICS puede usar los identificadores de usuario y passwords o los certificados de cliente SSL Herramientas para depuración y de determinación de problemas El CICS proporciona un conjunto de herramientas para la depuración de los programas de aplicación y para el diagnóstico de problemas en el sistema. Estas incluyen soporte para las herramientas de depuración basadas en la estación de trabajo, execution diagnostic facility (EDF), mensajes, trace y dump. En el caso de las herramientas de depuración basadas en la estación de trabajo, estas constan de dos componentes principales: Un cliente que se ejecuta en la estación de trabajo que permite interactuar con el programa de aplicación a través de interfaz gráfica. Se pueden crear puntos de ruptura para ir parando el programa y examinando las variables usadas en el mismo. El servidor que se ejecuta en la misma región CICS del programa de aplicación y que se comunica con la parte cliente. La utilidad EDF se usa para probar los programas de aplicación interactivamente, sin hacer modificaciones al programa fuente o al procedimiento de preparación del programa. El EDF intercepta la ejecución del programa en varios puntos y muestran la información de éste. El CICS emite mensajes para advertir de eventos significativos y de condiciones de error y, en algunos casos, solicitar información del operador del sistema. Los mensajes se emiten a la consola del sistema, a terminales CICS o a destinos de colas TD. El trace es un registro del procesamiento hecho por un programa o transacción. La información recolectada de un trace se puede usar para determinar problemas, especialmente de rendimiento. El CICS tracea el flujo de control a través de su código. Los eventos clave que recolecta en el trace son la entrada y la salida a programas del sistema CICS y eventos excepcionales. También se pueden tracear programas de aplicación del usuario. Se puede capturar la información del trace internamente, en ficheros auxiliares de trace, y en el fichero GTF del z/os. Se puede seleccionar qué información de trace se captura, aunque el trace de las excepciones siempre se recoge. Un dump es un registro de los contenidos de áreas seleccionadas de memoria principal en un instante determinado. El CICS captura un dump cuando se produce un fallo o IBM Corporation 21/02/ de 131

71 cuando se pide sacarlo explícitamente. El CICS proporciona dos tipos de dump, uno de transacción que captura áreas de memoria relativas a una cierta transacción, y uno de sistema que captura todas las áreas de memoria de una región CICS. 5.3 IMS El IMS, Information Management System, ha sido una parte importante de la industria de las tecnologías de la información desde su inicio. El 25 de Mayo de 1961, el Presidente de los EEUU John F. Kennedy retó a la industria americana a mandar un americano a la Luna y que volviera sano y salvo a la Tierra. La hazaña se vio cumplida antes del final de la década como parte del programa Apolo. American Rockwell ganó el contrato para construir una nave para el programa Apolo y, en 1965, crearon un acuerdo con IBM para disponer de un sistema automatizado que gestionara las grandes cantidades de piezas necesarias para la construcción de aquélla. En 1966, 12 miembros de un equipo de IBM, junto con 10 miembros de American Rockwell y 3 de Carterpillar, empezaron a diseñar y desarrollar el sistema que se llamó Information Control System and Data Language/Interface (ICS/DL/I). Durante el proceso de diseño y desarrollo, el equipo de IBM se desplazó a Los Angeles y creció hasta los 21 miembros. El equipo de IBM completó y proporcionó la primera release del ICS en En Abril de 1968, se instaló. El 14 de Agosto de 1968, se vio el primer mensaje de READY en un terminal de máquina de escribir IBM 2740 en la división espacial de Rockwell en la NASA en Downey, California. En 1969, se renombró el ICS como Information Management System/360 (IMS/360) y pasó a estar disponible en todo el mundo de IT. Desde 1968, el IMS: Ayudó a la NASA a cumplir con el sueño del Presidente Kennedy. Empezó la revolución de los sistemas gestores de bases de datos. Continúa evolucionando para cubrir (y sobrepasar) los requerimientos demandados por los negocios y gobiernos en la actualidad. El sistema gestor de bases de datos IMS (DBMS) introdujo la idea de que el código de la aplicación se separara de los datos. El punto de separación era el DL/I, Data Language/Interface. El IMS controla el acceso y la recuperación de los datos. Los programas acceden y navegan por los datos invocando a la interfaz estándar DL/I. Esta separación estableció un nuevo paradigma en la programación de aplicaciones. El código de aplicación ahora se podía focalizar en la manipulación de los datos sin las complicaciones y la sobrecarga asociada al acceso y a la recuperación de los datos. Este paradigma eliminaba virtualmente la necesidad de copias redundantes de los datos. Diferentes aplicaciones podían acceder y modificar una instancia de los datos, proporcionando así el dato vigente a cada aplicación. Se hizo más fácil el acceso a los datos de forma online ya que el código de la aplicación se separaba del control de los propios datos. IBM desarrolló un componente online para el ICS/DL/I con el fin de soportar la comunicación de los datos. Se amplió la interfaz DL/I al componente online del producto para permitir la transparencia de comunicación de los datos a los programas IBM Corporation 21/02/ de 131

72 de aplicación. Se creó una función de cola de mensajes para mantener la integridad de los mensajes de comunicación de datos y para proporcionar planificación a los programas de aplicación. El componente online del ICS/DL/I se convirtió finalmente en la función Data Communications (DC) del IMS, y que a su vez pasó a ser IMS Transaction Manager en el IMS Versión 4. IMS se unió al Mainframe oficialmente en Se ha reinventado varias veces desde entonces. La aceptación de los clientes de las nuevas versiones de IMS es la mejor medida de su valor estratégico. En el 2003 la carga IMS medida como capacidad de los sistemas en MIPS se había incrementado en un 67.9% en las últimas versiones. Sobre el 90% de las principales compañías en el mundo usan IMS para ejecutar sus operaciones diarias. IMS todavía es una plataforma viable, en algunas ocasiones sin rival, para desplegar sistemas de alto procesamiento transaccional y, en combinación con tecnología de servidores web de aplicación, es la base para una nueva generación de aplicaciones. Veamos unos cuantos hechos sobre cómo se usa el IMS: Alrededor del 95% de las compañías del Fortune 1000 usan IMS. IMS gestiona alrededor de 15 millones de gigabytes de datos de producción. IMS procesa alrededor de 50 billones de transacciones por día. IMS sirve a 200 millones de usuarios todos los días. IMS procesa alrededor de 100 millones de transacciones por día para un cliente. Y 120 millones de transacciones para otro (7 millones por hora). IMS puede procesar transacciones por segundo (alrededor de 1 billón al día) utilizando IMS data sharing y colas compartidas. Un solo IMS ha procesado unas transacciones por segunda con una sola conexión TCP/IP. En resumen, El gestor de bases de datos (IMS DB) El gestor transaccional (IMS TM) Un conjunto de servicios de sistema que proporcionan servicios comunes al IMS DB y al IMS TM. En la siguiente figura pueden verse los tres componentes relacionados. IBM Corporation 21/02/ de 131

73 Diagrama general del IMS Conocido en conjunto como IMS DB/DC, los tres componentes crean un entorno de proceso de transacciones completo que aporta disponibilidad continua e integridad de datos. Las funciones que proporcionan estos componentes se describen con detalle más adelante. El IMS se ha desarrollado para proporcionar un entorno para las aplicaciones que demandan altos niveles de rendimiento, capacidad y disponibilidad. El IMS usa mucha de las facilidades que ofrece el sistema operativo y el hardware. Se ejecuta en z/os y System z. El IMS TM e IMS DB pueden ser componentes independentes si no se requieren nada más que las funciones de uno de ellos. Cuando se utiliza sólo el IMS DB, se le llama DBCTL, y si el que se utiliza es el IMS TM, se le llama DCCTL. Los programas de aplicación que se escriben para usar las funciones de IMS se pueden codificar en Assembler, C/C++, COBOL, Java, Pascal, PL/I y REXX. Las aplicaciones acceden a los recursos IMS llamando a un conjunto de funciones de IMS estándar a través de las APIs DL/I y Java database connectivity (JDBC) IMS Database Manager (IMS DM) El IMS DB es un sistema de gestión de bases de datos que ayuda a organizar los datos de negocio tanto con independencia de programas como de dispositivo. En el corazón del IMS DB están las bases de datos jerárquicas y el lenguaje de manipulación de datos (llamadas DL/I). Los datos dentro de las bases de datos se IBM Corporation 21/02/ de 131

74 organizan en una estructura de árbol, con datos en cada nivel de la jerarquía relacionados con, y en algunos dependientes de, los datos en el nivel más alto de la jerarquía. La siguiente figura muestra un modelo de bases de datos jerárquico. El dato se almacena en la base de datos sólo una vez. Cada elemento de datos está disponible para cualquier usuario que esté autorizado a utilizarlo. Los usuarios no tienen que tener copias personales de los datos. Modelo de base de datos jerárquica. Con el IMS DB se puede: Mantener la integridad de los datos. Los datos en cada base de datos se garantiza que están consistentes y que permanecen en ella aunque el IMS DB no esté funcionando. Disponer de un punto de control centralizado y de acceso a los datos IMS que se procesan por las aplicaciones IMS. Ejecutar consultas contra los datos en la base de datos. Ejecutar transacciones de bases de datos (inserciones, actualizaciones y borrados) como una única unidad de trabajo, de manera que la transacción o se complete entera o no. Ejecutar múltiples transacciones de bases de datos concurrentemente con los resultados de cada transacción mantenidos aislados de las otras. Mantener las bases de datos. El IMS DB proporciona facilidades para afinar las bases de datos mediante la reorganización de las mismas. A los datos en IMS DB se puede acceder desde las aplicaciones que se ejecutan en: IMS TM CICS Transaction Server IBM Corporation 21/02/ de 131

75 Trabajos batch en el z/os WAS for z/os Procedimientos almacenados en DB2 UDB for z/os IMS Transaction Manager El IMS TSM es un gestor transaccional basado en mensajes. Una transacción es un conjunto de datos de entrada que disparan la ejecución de un programa de aplicación (proceso o trabajo) de negocio. El mensaje que dispara el programa de aplicación y el retorno de cualquier resultado, se considera una transacción. La palabra terminal se usa a lo largo de esta sección para describir a los dispositivos y a los controladores. Los terminales de operación pueden ser impresoras, estaciones de trabajo, terminales de comunicación, o una mezcla de estos dispositivos. El IMS TM proporciona servicios para: Procesar mensajes de entrada recibidos desde una variedad de fuentes (como la red de terminales, otros sistemas IMS, la web, ). Procesar mensajes de salida creados por los programas de aplicación. Proporcionar un mecanismo de encolamientos para gestionar estos mensajes. Proporcionar procesamiento de transacciones de alto volumen, alto rendimiento, alta capacidad y bajo coste tanto para las bases de datos jerárquicas del IMS DB como para las relacionales de DB2. El IMS TM soporta muchas sesiones de terminal a volúmenes transaccionales muy altos. Los usuarios de las sesiones de terminal pueden ser: Personas en terminales o estaciones de trabajo. Otros programas de aplicación, o en el mismo sistema z/os, en otros sistemas z/os, o en plataformas no z/os. Se puede definir una variedad de opciones de procesamiento online, Por ejemplo, se pueden definir transacciones para aplicaciones de entrada de datos de alto volumen, otras para aplicaciones interactivas, y otras para soportar consultas predefinidas Servicios de sistema IMS Estos proporcionan los siguientes servicios tanto para el IMS DB como para el IMS TM: De integridad de los datos. De rearranque y recuperación después de fallos. De seguridad, para controlar el acceso y modificación de los recursos IMS. De gestión de los programas de aplicación, despachando trabajo, cargando programas de aplicación, y proporcionando servicios de bloqueo. De diagnóstico y recolección de información de rendimiento. IBM Corporation 21/02/ de 131

76 De operación de IMS. De comunicación para que otros sistemas del z/os se hablen con el IMS. Los servicios se proporcionan mediante: Comandos IMS. Programas de utilidad proporcionados con el IMS. Exits de usuario. Definiciones de servicios. IMS y z/os El IMS es una gran aplicación que se ejecuta en z/os. Tanto uno como otro está diseñados para hacer el mejor uso posible de los componentes de software y hardware del sistema. El IMS dentro del z/os utiliza diferentes espacios de direcciones: uno de control, varios espacios de direcciones separados que proporcionan servicios IMS, y varios espacios de direcciones que ejecutan programas de aplicación. A estos espacios de direcciones a veces se les llama regiones 5, como la región de control del IMS. Vamos a ver los distintos componentes de un sistema IMS en la siguiente sección: Estructura de los subsistemas IMS La sección describe los distintos tipos de espacios de direcciones z/os con sus interrelaciones. La región de control es el centro del subsistema IMS y se ejecuta en un espacio de direcciones. Cada región de control usa muchos otros espacios de direcciones que proporcionan servicios adicionales a la región de control, y en las que se ejecutan los programas de aplicación del IMS. Algunas aplicaciones y utilidades IMS se ejecutan en regiones separadas llamadas regiones batch; éstas últimas están separadas del subsistema IMS, de su región de control y sin conexión con él. Cada uno de los entornos IMS es una combinación diferente de hardware y programas que soportan objetivos de procesamiento diferenciados. Los cuatro entornos IMS son: DB/DC, que tiene toda la funcionalidad tanto del IMS TM como del IMS DB DBCTL que sólo contiene la funcionalidad del IMS DB DCCTL, que sólo contiene la funcionalidad del IMS TM Batch, que contiene la funcionalidad del IMS DB, pero que sólo se usa para trabajos batch. El entorno DB/DC tiene instalado tanto el IMS TM como el IMS DB y por tanto dispone de toda la funcionalidad del producto. Sus principales objetivos son: 5 El concepto de región se originó en el sistema operativo MVT (Multiprogramming with Variable Number of Tasks), un precursor del z/os IBM Corporation 21/02/ de 131

77 Permitir a los usuarios de terminal obtener datos y actualizar bases de datos en tiempo real con un buen rendimiento Asegurar que los datos que se obtienen son los actuales Distribuir procesamiento transaccional entre diferentes procesadores en una red de comunicaciones Ejecutar programas de aplicación batch que actualizan bases de datos a determinados intervalos Ejecutar utilidades de bases de datos en batch La región de control permite acceso a: La red, que podría incluir una consola del sistema operativo, terminales, servidores web, etc. Colas de mensajes IMS para aplicaciones IMS que se ejecuten en regiones de mensajes (MPRs, Message Processing Regions) o regiones de mensajes Java Librerías del IMS Logs del IMS Bases de datos Fast Path Espacios de direcciones separados de DL/I Región DBRC (Database Recovery Control) Región IFP (IMS Fast Path) Región JBP (Java batch processing program) Región BMP (Batch message processing program) Múltiples sistemas IMS Se pueden ejecutar varios sistemas IMS en una imagen z/os única o en varias imágenes de sistema operativo. Se llama sistema IMS al conjunto de región de control y todas las regiones dependientes asociadas. Un sistema batch IMS (por ejemplo, batch DB) también se considera un sistema IMS. Hay tres formas de ejecutar varios subsistemas IMS en diferentes imágenes z/os: Multiple Systems Coupling (MSC): MSC solo soporta conexiones IMS-IMS. Inter System Communications (ISC): Es más flexible porque soporta tanto conexiones a IMS como a otros productos z/os como CICS. Parallel Sysplex: Ejecutar varios subsistemas IMS en un entorno de Parallel Sysplez es una buena manera de balancear carga, proporcionar escalabilidad a los sistemas, y poder tener máxima disponibilidad. Se pueden compartir colas de mensajes y bases de datos. IBM Corporation 21/02/ de 131

78 En las relación del IMS con otros elementos del z/os, conviene destacar que proporciona soporte a aplicaciones TCP/IP a través de la función OTMA explicada anteriormente. También soporta APPC, una implementación del protocolo LU 6.2 que permite distribuir aplicaciones por una red y comunicarse con ellas independientemente del hardware donde residan. 5.4 WAS WebSphere Application Server (WAS) es un servidor de aplicaciones basado en tecnología J2EE y de Web Services. Es un entorno de despliegue y de ejecución de aplicaciones Java construidas con tecnologías basadas en estándares abiertos, que soporta la mayoría de las funciones como servlets, Java Server pages (JSPs), y Enterprise Java Beans (EJBs) e incluye la última tecnología de interfaces e integración de servicios. WebSphere Application Server proporciona la capa de la lógica de aplicación en una arquitectura de tres niveles, lo que permite a los componentes de cliente interactuar con los recursos de datos y las aplicaciones legacy. Estos niveles son niveles lógicos. Puede que se estén ejecutando o no en el mismo servidor físico. Figura n+12: arquitectura de aplicación de tres niveles La responsabilidad de la presentación y la interacción con el usuario reside en los componentes del primer nivel. Estos componentes de cliente permiten al usuario interactuar con los procesos del segundo nivel de forma segura e intuitiva. Los clientes no acceden directamente a los servicios del tercer nivel. Por ejemplo, un componente de cliente proporciona un formulario en el que el cliente solicita los productos. El componente de cliente entrega este pedido a los procesos del segundo nivel, que comprueban las bases de datos del producto y realizan las tareas que son necesarias para la facturación y el envío. Los procesos del segundo nivel se conocen normalmente como la capa de la lógica de aplicación. Estos procesos gestionan la lógica empresarial de la aplicación y pueden acceder a los servicios del tercer nivel. La capa de la lógica de aplicación es donde se ejecuta la mayor parte del trabajo de los procesos. Varios componentes de cliente pueden acceder simultáneamente a los procesos del segundo nivel, por lo que esta capa de la lógica de aplicación debe gestionar sus propias transacciones. IBM Corporation 21/02/ de 131

79 En el ejemplo anterior, si varios clientes intentan realizar un pedido del mismo artículo, del que sólo queda uno, la capa de la lógica de aplicación debe determinar quién tiene derecho a ese artículo, actualizar la base de datos para reflejar la compra e informar a los otros clientes de que el artículo ya no está disponible. La base de datos establece su propio control de accesos, normalmente bloqueando un registro que se está procesando. Pero cuando se hace ese bloqueo si es cuando un artículo se coloca en un carro de compra, para evitar que los demás clientes consideren la posibilidad de compra o es cuando la compra se hace efectiva, es una decisión de negocio y la toma el segundo nivel. La separación del segundo y el tercer nivel reduce la carga en los servicios del tercer nivel, da soporte a una gestión de conexiones más eficaz y puede mejorar el rendimiento general de la red. Los servicios del tercer nivel están protegidos del acceso directo de los componentes de cliente que residen en una red segura. La interacción debe producirse a través de los procesos del segundo nivel. La ventaja de z/os es la posibilidad de desplegar el segundo y el tercer nivel en un entorno físico de z/os, conservando la seguridad y las ventajas lógicas de los sistemas de nivel único. El WAS en z/os está altamente integrado con todas las características y servicios ofrecidos por el sistema operativo. Puede interactuar con todos los subsistemas del z/os como el DB2, el CICS y el IMS, y tiene atributos para seguridad, rendimiento, escalabilidad y recuperación, además de estar perfectamente integrado con el componente de gestión de carga WLM. Hay dos clases de espacios de direcciones en el WAS de z/os, la región de control y la servidora. Una región de control ejecuta programas autorizados de sistema y gestiona tareas como las comunicaciones del servidor; una región servidora es el espacio de direcciones equivalente al servidor en una plataforma distribuida y ejecuta las aplicaciones Java a través de los containers EJB y web. Una instancia de servidor de aplicación se compone de una región de control (CR) y de una o más regiones servidoras (SRs). Véase la siguiente figura: Figura n+13: una instancia de servidor de aplicaciones El servidor de aplicaciones en z/os soporta dos tipos de configuración: base y network deployment. Cada configuración usa la misma jerarquía arquitectural compuesta de servidores, nodos y celdas. IBM Corporation 21/02/ de 131

80 Un servidor es el componente de runtime primario. Es donde se ejecuta realmente la aplicación. Proporciona contenedores y servicios que se especializan en permitir la ejecución de los componentes específicos de la aplicación Java. Cada servidor de aplicaciones corre en su propia máquina virtual java (JVM). Dependiendo de la configuración, los servidores podrían trabajar separadamente o en combinación: Configuración base: cada servidor de aplicaciones funciona como una entidad separada. No hay distribuciones de cargas de trabajo o administración común entre los servidores de aplicación. Configuración de network deployment: múltiples servidores de aplicación se mantienen desde un punto de administración central. Además, se pueden montar los servidores de aplicación en cluster para la distribución de las cargas de trabajo. Un nodo es una agrupación lógica de procesos de servidor gestionada por WebSphere que comparte configuración y control. Un nodo se asocia generalmente con la instalación física de un servidor de aplicaciones. Conforme nos movemos a configuraciones de servidor de aplicaciones más complejas, se introducen los conceptos de configuración de diferentes nodos desde un servidor de administración común o la distribución de cargas de trabajo entre nodos. En estas configuraciones gestionadas de forma centralizada, cada nodo tiene un agente. Una celda es una agrupación de nodos en un dominio administrativo. En la configuración base, una celda contiene un nodo. Ese nodo puede tener varios servidores, pero los ficheros de configuración de cada servidor se almacenan y mantienen individualmente. En la configuración de network deployment, una celda puede constar de varios nodos, todos administrados desde un único punto. Los ficheros de aplicación y configuración para todos los nodos en la celda se centralizan en el repositorio de configuración maestra de la celda. Conviene aclarar el concepto de container; es el que permite la separación de los distintos elementos en tiempo de ejecución. Así un container de EJB se usa para ejecutar EJBs. Otro, conocido como Web container, se usa para ejecutar elementos relacionados con web como HTML, servlets y JSPs. Juntos configuran el runtime del servidor de aplicaciones dentro de la JVM. Veamos en más detalle las dos configuraciones de WAS en z/os que se han citado anteriormente: Nodo de servidor base de aplicaciones: Esta configuración se corresponde con la estructura operacional más sencilla de WAS en z/os. Consta de un servidor de aplicación y un servidor de demonio (un nodo y una celda), como puede verse en la siguiente figura. Todos los ficheros de configuración y las definiciones se guardan en una estructura de directorios del sistema de ficheros creada para este servidor de aplicaciones base. El servidor de demonio es un servidor especial con una región de control. Hay un servidor de demonio por celda por sistema (o LPAR). Cada nodo de servidor base de aplicaciones contiene la administración de su propio dominio de celda y un repositorio separado para su configuración. Por tanto, se puede disponer de muchos servidores base de aplicación, unos aislados de otros, teniendo todos sus propias políticas de administración para sus necesidades específicas de negocio. IBM Corporation 21/02/ de 131

81 Nodo de servidor base de aplicaciones Network Deployment Manager: Es una extensión del servidor base de aplicaciones. Permite administrar múltiples servidores de aplicación desde un punto centralizado. Aquí, los servidores de aplicación se atachean a nodos, y varios nodos pertenecen a una celda. Con el Deployment Manager se pueden administrar fácilmente sistemas que escalan en horizontal o en vertical, así como aplicaciones distribuidas. El Deployment Manager también gestiona los repositorios de cada nodo, pudiendo realizar tareas como crear, mantener y eliminar los mismos. Network Deployment Manager IBM Corporation 21/02/ de 131

82 En la siguiente figura se puede ver una instancia del servidor de aplicaciones. Repasemos sus principales componentes: IBM Corporation 21/02/ de 131

83 Componentes de una instancia de WAS Servidores de aplicaciones: un servidor de aplicaciones es una máquina virtual Java (JVM) que ejecuta aplicaciones de usuario. Los servidores de aplicaciones utilizan la tecnología Java para ampliar las posibilidades del servidor Web para manejar peticiones de aplicaciones Web. Con un servidor de aplicaciones, un servidor puede generar una respuesta dinámica y personalizada a una petición de un cliente. Servidores Web. En el producto WAS, un servidor de aplicaciones trabaja en colaboración con un servidor Web para manejar las peticiones de aplicaciones Web. El servidor de aplicaciones y el servidor Web se comunican utilizando un plug-in HTTP del servidor Web. Servidores JMS. Motor de mensajería. El producto da soporte a la mensajería al proporcionar un proveedor de JMS (Java Message Service). Un contenedor Web es un entorno de ejecución para aplicaciones web. Procesa servlets, JSPs y otros tipos de componentes del lado servidor. Un contenedor de EJBs proporciona un entorno de ejecución para los beans de empresa del servidor de aplicaciones. El contenedor maneja todos los aspectos de una operación de bean de empresa dentro del servidor de aplicaciones y actúa como intermediario entre la lógica de empresa escrita por el usuario en el bean y el resto del entorno del servidor de aplicaciones. IBM Corporation 21/02/ de 131

84 Los servicios JCA permiten la conexión de los servidores de aplicación a los Enterprise Information Systems (EIS); en definitiva es la tecnología Java para acceso a sistemas legacy (incluyendo las bases de datos). Los principales conectores son: CICS Transaction Gateway (CTG): el conector proporciona la interfaz entre el Java y las transacciones CICS. Es un conjunto de componentes cliente y servidor que incorpora los servicios y facilidades para acceder a CICS desde el servidor de aplicaciones. IMS Connect: es un servidor-conector que permite a un cliente desde el servidor de aplicaciones intercambiar mensajes con el IMS Open Transaction Manager Access (OTMA). JDBC: API que se usa desde el lenguaje Java para acceder a datos en sistemas de gestión de bases de datos relacionales, e incluso jerárquicos (IMS). Esta interfaz ni cae necesariamente en la categoría de conector porque no requiere un espacio de direcciones separado. La implementación de la interfaz la proporciona cada proveedor de bases de datos como un driver ; éste proporciona la portabilidad porque todos los accesos JDBC se hacen a través de llamadas estándar con parámetros estándar. En WAS se soporta obviamente el uso de web services. A las tecnologías clave sobre las que se desarrollan y despliegan estos, WAS añade otras como un registro de UDDI privado o un Framework para invocación de aquéllos (WSIF). La gestión de cargas de trabajo se lleva a cabo con la ayuda del WLM del z/os y permite optimizar la distribución de las peticiones entrantes entre los servidores de aplicación, EJBs, servlets u otros objetos. Se pueden balancear cargas de acuerdo a las capacidades de los diferentes servidores del complejo sysplex, se pueden disponer de capacidades de gestión de fallos mediante el redireccionamiento de peticiones si uno o más servidores no son capaces de procesarlas y se puede crecer (y decrecer) el número de regiones servidoras dependiendo de la carga en cada momento. La seguridad tanto de los recursos J2EE como administrativos comprende los diferentes elementos de autenticación, control de acceso, integridad de datos, confidencialidad, privacidad e interoperabilidad. Se basa en estándares de la industria y tiene una arquitectura abierta que le asegura una conectividad e interoperabilidad segura con diferentes EIS como DB2, CICS, IMS, MQ y Domino. También soporta proveedores de seguridad externos como RACF, TAM (Policy Director) o proxies inversos como WebSEAL. La administración del sistema se compone de: Una consola administrativa que es una interfaz gráfica que proporciona muchas funciones de guía para tareas de despliegue y administrativas. El cliente de scripting (wsadmin): el programa de scripting es un entorno no gráfico intérprete de comandos muy potente que permite realizar operaciones administrativas en entornos productivos y de forma desasistida. Programas de administración (Java Management Extensions): el producto soporta una interfaz de programación Java para desarrollar programas de administración. Todas las herramientas administrativas que se suministran con IBM Corporation 21/02/ de 131

85 el producto están escritas de acuerdo al API, que se basa en la especificación JMX estándar de la industria. Herramientas de línea de comandos: son programas que se ejecutan desde una línea de comandos del sistema operativo y que permiten ejecutar tareas específicas, en contraposición con la administración de propósito general. Se pueden emplear para arrancar y parar servidores de aplicación, comprobar el estado de servidores, o añadir o eliminar nodos, etc. Ficheros de configuración: los datos de configuración del producto residen en ficheros XML que se gestionan a través de las herramientas mencionadas anteriormente. Dentro del apartado de rendimiento, se encuentra el de monitorización del sistema y las aplicaciones, y que permite recolectar y analizar los datos relativos al comportamiento de aquéllos. Estas herramientas de monitorización incluyen: Performance Monitoring Infrastructure (PMI).- Es la infraestructura clave para la monitorización de WebSphere Application Server y del resto de productos de la familia WebSphere. Los datos de rendimiento proporcionados por PMI ayudar a monitorizar y a hacer tuning del rendimiento del servidor de aplicaciones. Tivoli Performance Viewer (TPV).- que permite analizar los datos de PMI. A diferencia del tuning para rendimiento, que se focaliza en resolver problemas asociados con procesos que van lentos o que no están optimizados, la determinación de problemas se centra en encontrar soluciones a problemas funcionales. En este sentido podemos recurrir a visualizadores de class loader para diagnosticar problemas en este componente, o de dumps y log de errores, pasando por documentación de diagnóstico que describe técnicas de depuración disponibles para ayudar a resolver problemas con Java. IBM Corporation 21/02/ de 131

86 5.5 MQ Muchas grandes organizaciones hoy tienen legados de sistemas de IT de varios proveedores, y que a menudo dificultan la compartición de datos. Muchas de estas organizaciones también necesitan comunicarse y compartir datos electrónicamente con proveedores y clientes que podrían a su vez tener otros sistemas diferentes. Sería útil disponer de una herramienta que gestione mensajes que podría recibir de otro tipo de sistema y enviar a otro diferente. El software IBM WebSphere MQ facilita la integración de aplicaciones mediante el paso de mensajes entre aplicaciones y servicios web. Se usa en docenas de plataformas hardware y para mensajería punto a punto desde aplicaciones Java, C, C++ y COBOL. Tres cuartas partes de las empresas que compran sistemas de mensajería entre aplicaciones compran WebSphere MQ. Las colas de mensajes y el software que las gestiona, como IBM WebSphere MQ for z/os, permiten la comunicación programa a programa. En el contexto de las aplicaciones online, la mensajería y el encolamiento se deben entender tal y como sigue: Mensajería significa que hay programas que se comunican enviándose mensajes (datos) entre ellos, en lugar de llamándose entre ellos de forma directa. Encolamiento significa que los mensajes se dejan en colas en memoria, de manera que los programas pueden ejecutarse independientemente unos de otros, a diferentes velocidades y en diferentes momentos, en distintas localizaciones, y sin tener una conexión lógica entre ellos. En la siguiente figura puede observarse un mecanismo básico de comunicación programa a programa utilizando un modelo de comunicación síncrono. El programa A prepara un mensaje y lo pone en una cola 1. El programa B recoge el mensaje de la cola 1 y lo procesa. Tanto el programa A como el B usan un API para poner mensajes en la cola y recoger mensajes de la cola. Al API del WebSphere MQ se le llama Message Queue Interface (MQI). Cuando el programa A pone un mensaje en la cola 1, el programa B puede no estar ejecutándose. La cola almacena el mensaje de forma segura hasta que el programa B arranca y está listo para obtener el mensaje. Del mismo modo, en el momento en el que el programa B obtiene el mensaje de la cola 1, el programa A puede no estar ya ejecutándose. Con este modelo, no existe el requerimiento de que los dos programa estén ejecutándose a la vez para que se puedan comunicar. Hay un claro problema de diseño sobre cuánto tiempo el programa A debería esperar antes de continuar con su ejecución. Este diseño podría ser deseable en algunas situaciones, pero no cuando las esperas son muy prolongadas. Para gestionar estas situaciones, es para lo que se diseña la comunicación asíncrona. IBM Corporation 21/02/ de 131

87 Figura n+17: modelo de diseño de aplicación síncrono Usando un modelo asíncrono, el programa A pone mensajes en la cola 1 para que los procese el programa B, aunque es el programa C, actuando asíncronamente con respecto al programa A, el que obtiene las respuestas de la cola 2 y las procesa. Típicamente, el programa A y el programa C serían parte de la misma aplicación. Puede verse este flujo de actividad en la siguiente figura. El modelo asíncrono es natural para WebSphere MQ. El programa A puede continuar poniendo mensajes en la cola 1 y no se bloquea teniendo que esperar una respuesta a cada mensaje. Puede continuar poniendo mensajes en la cola 1 incluso si el programa B falla. Si así ocurre, la cola 1 almacena los mensaje de forma segura hasta que el programa B rearranque. En una variación del modelo asíncrono, el programa A podría poner una secuencia de mensajes en la cola 1, opcionalmente continuar con algún otro procesamiento, y luego volver a recoger y procesar las respuestas. A esta propiedad del WebSphere MQ en el que las aplicaciones que se comunican no tienen que estar activas al mismo tiempo, se le conoce como independencia del tiempo. IBM Corporation 21/02/ de 131

88 Figura n+18: modelo de diseño de aplicación asíncrono Tipos de mensajes WebSphere MQ usa cuatro tipos de mensajes: Datagrama: un mensaje para el que no se espera respuesta. Petición: un mensaje para el que se espera respuesta. Respuesta: una respuesta a un mensaje de petición. Informe: un mensaje que describe un evento como la ocurrencia de un error o una confirmación de llegada. Una cola de mensajes se usa para almacenar mensajes enviados por los programas. Se definen como objetos pertenecientes al gestor de colas. Cuando una aplicación pone un mensaje en una cola, el gestor de colas se asegura de que el mensaje: IBM Corporation 21/02/ de 131

89 se almacene de forma segura. sea recuperable. se entregue una vez, y sólo una ve a la aplicación que lo recibe. Esto es cierto incluso aunque el mensaje se entregue a la cola desde otro gestor de colas; a esto se le conoce como la propiedad de entrega asegurada del WebSphere MQ Gestor de Colas El componente de software que posee y gestiona las colas se llama gestor de colas (queue manager, QM). En WebSphere MQ, el gestor de la cola de mensajes se llama MQM, y proporciona los servicios de mensajería a las aplicaciones, asegura que los mensajes se ponen en la cola correcta, enruta mensajes a otros gestores de colas, y procesa mensajes a través de la interfaz común de programación llama Message Queue Interface (MQI). El gestor de colas puede retener mensajes para procesamiento futuro en el caso de indisponibilidades de aplicación o de sistema. Los mensajes se retienen en una cola hasta que se recibe una respuesta satisfactoria a través de MQI. Hay similitudes entre los gestores de colas y los de bases de datos. Aquéllos poseen y controlan colas de forma similar a cómo los gestores de bases de datos poseen y controlan sus objetos de datos. Proporciona una interfaz de programación para acceder a los datos, y facilidades de administración, seguridad, autorización y recuperación. Sin embargo, hay también diferencias significativas. Las bases de datos se diseñan para proporcionar almacenamiento de datos de larga duración con unos mecanismos de búsqueda muy sofisticados, mientras que las colas no están diseñadas de esa manera. Un mensaje en una cola indica por lo general que un proceso de negocio está incompleto. Podría representar una petición no satisfecha, una respuesta que no se ha procesado, o un informe sin leer Tipos de colas de mensajes Existen diferentes tipos de colas de mensajes. Los más relevantes son los siguientes: Cola local.- Una cola es local es aquella poseída por el gestor de colas al que se conecta el programa de aplicación. Se usa para almacenar mensajes para los programas que usan el mismo gestor de colas. El programa de aplicación no tiene porque ejecutarse en la misma máquina que el servidor de colas. Cola remota.- Una cola es remota si la posee un gestor de colas diferente. Una cola remota no es una cola real; sólo es la definición de una cola remota al gestor de colas local. Los programas no pueden leer mensajes de una cola remota. Las colas remotas se asocian a una cola de transmisión. Cola de transmisión.- Esta cola local tiene un propósito especial; se usa como un paso intermedio cuando se envían mensajes a colas poseídas por un gestor de colas remoto. Estas colas son transparentes a la aplicación porque se usan internamente por la cola de iniciación del gestor de colas. Es a una cola local a la que el gestor de colas escribe (transparentemente al programador) un IBM Corporation 21/02/ de 131

90 mensaje disparador (trigger) cuando se cumplen ciertas condiciones en otra cola local, por ejemplo, cuando se pone un mensaje en una cola de mensajes vacía o en un cola de transmisión. Dos aplicaciones WebSphere MQ monitorizan las colas de iniciación y leen mensajes disparadores, el monitor de disparadores y el iniciador de canal. El primero puede arrancar aplicaciones, dependiendo del mensaje, y el segundo arranca la transmisión entre gestores de colas. Cola de no entregados (dead-letter).-un gestor de colas debe poder gestionar situaciones cuando no puede entregar un mensaje, por ejemplo: o o o o o La cola de destino está llena La cola de destino no existe Las altas de mensajes en la cola de destino se han inhabilitado El que envía no está autorizado a usar la cola de destino El mensaje contiene un número de secuencia de mensaje duplicado Cuando ocurre una de estas condiciones, el mensaje se escribe a la cola de no entregados. Esta cola se define cuando se crea el gestor de colas, y cada gestor de colas tiene una. Se usa como depositario de todos los mensajes que no se pueden entregar Qué es un canal? Un canal es un enlace de comunicación lógico. El estilo conversacional de la comunicación programa a programa requiere la existencia de una conexión de comunicaciones entre cada par de aplicaciones que se comunican. Los canales aíslan a las aplicaciones de los protocolos de comunicaciones que están por debajo. WebSphere MQ usa dos tipos diferentes de canales: Canal de mensaje: es el que conecta a dos gestores de colas a través de agentes del canal de mensajes (MCAs). Es unidireccional, compuesto por dos agentes de canal de mensajes (un emisor y un receptor) y un protocolo de comunicaciones. Un MCA transfiere mensajes desde una cola de transmisión a un enlace de comunicaciones, y de un enlace de comunicaciones a una cola destino. Para comunicaciones bidireccionales, es necesario definir un par de canales con emisor y receptor. Canal MQI: conecta a un cliente MQ a un gestor de colas. Los clientes no tienen un gestor de colas de su propiedad. Es bidireccional Cómo queda asegurada la integridad transaccional? Un negocio podría requerir que a dos o más bases de datos distribuidas se mantuvieran sincronizadas. MQ ofrece una solución que a su vez supone que muchas unidades de trabajo actúen asíncronamente (como puede verse en la siguiente figura). IBM Corporation 21/02/ de 131

91 Figura n+19: modelo de diseño de aplicación asíncrono La parte de arriba de la figura muestra una estructura de two-phase commit, mientras que la solución WebSphere MQ se presenta en la mitad de abajo: La primera aplicación escribe en una base de datos, pone un mensaje en una cola, y emite un syncpoint para confirmar los cambios a los dos recursos. El mensaje contiene datos que se usan para actualizar una segunda base de datos en un sistema separado. Cuando se confirma la unidad de trabajo, se hace disponible el mensaje para obtenerlo con un MCA. En la segunda unidad de trabajo, el MCA que envía obtiene el mensaje de la cola de transmisión y lo envía al MCA que recibe en el sistema con la segunda base de datos, y el MCA que recibe coloca el mensaje en la cola de destino. Todo esto se lleva a cabo de forma fiable gracias a la propiedad de entrega asegurada de WebSphere MQ. Cuando se confirma una unidad de trabajo, el mensaje queda disponible para que se obtenga por parte de la segunda aplicación. En la tercera unidad de trabajo, la segundo aplicación obtiene el mensaje desde la cola de destino. Es la integridad transaccional de las unidades de trabajo 1 y 3 y la entrega garantizada del WebSphere empleada en la unidad de trabajo 2, los que asegurar la integridad de la transacción de negocio completa. Si la transacción de negocio es más compleja, habrá muchas unidades de trabajo involucradas. IBM Corporation 21/02/ de 131

92 5.5.6 Un ejemplo de mensajería y encolamiento Veamos con un ejemplo de agencia de viajes las facilidades de mensajería jugando el papel de reserva de unas vacaciones. Asumamos que el agente de viajes debe reservar un vuelo, una habitación de hotel, y un coche de alquiler. Todas estas reservas deben ir bien antes de que la transacción de negocio completa se dé por completada. Con un gestor de colas como WebSphere MQ,la aplicación puede enviar varios peticiones a la vez; no necesita esperar por una respuesta a una petición antes de enviar la siguiente. Se coloca un mensaje en cada una de las tres colas, sirviendo la aplicación de reservas de vuelos, la de reservas de hotel y la de alquiler de coches. Cada aplicación entonces puede llevar a cabo su tarea respectiva en paralelo con las otras dos y colocar un mensaje de respuesta en la cola de respuesta. La aplicación del agente espera a estas respuestas y genera una respuesta consolidada al agente de viajes. Aunque la aplicación podría procesar normalmente las respuestas sólo cuando se hubieran recibido todas, la lógica del programa puede especificar qué hacer también cuando sólo se reciben conjuntos parciales de respuestas en un determinado periodo de tiempo. Figura n+20: proceso paralelo IBM Corporation 21/02/ de 131

93 5.5.7 Interfaz con CICS, IMS, Batch, o TSO/E WebSphere MQ está disponible en una amplia variedad de plataformas. WebSphere MQ for z/os incluye algunos adaptadores que proporcionan soporte de mensajería y encolamiento para: CICS el bridge WebSphere MQ-CICS IMS el bridge WebSphere MQ-IMS Batch o TSO 5.6 Middleware Bases de Datos Dado que ya se aprovechó la sección del IMS dentro del capítulo de middleware transaccional para detallar las características del IMS DB, este capítulo lo dedicaremos en exclusividad a DB2, sistema gestor de bases de datos relacional por excelencia en z/os. Al final del capítulo podrá verse un resumen del VSAM, método de acceso y organización de ficheros tradicional del entorno operativo, y que actualmente sigue soportando parte tanto de la información de los clientes, como de los propios subsistemas del z/os DB2 Una base de datos proporciona el almacenamiento y el control de los datos del negocio. Es independiente de una o más aplicaciones. Si está bien diseñada y desplegada, la base de datos debería proporciona una vista única y consistente de los datos, así que se puede controlar y gestionar de forma centralizada. Una manera de describir la visión lógica de esta colección de datos es usar un modelo de entidad-relación. La base de datos almacena los detalles (atributos) de elementos particulares (entidades) y las relaciones entre los diferentes tipos de entidades. Por ejemplo, para la aplicación de control de stock, se deberían tener Piezas, Pedidos de Compra, Clientes y Pedidos de Clientes (entidades). Cada entidad tendría atributos, así por ejemplo la Pieza tendría el Número de Pieza, el Nombre, el Precio Unitario, la Cantidad, Estas entidades también tendrían relaciones entre ellas, por ejemplo un cliente se relacionaría con los pedidos que hace, y que a su vez se relacionaría con las piezas que han sido ordenadas. La siguiente figura muestra un modelo de entidad-relación. IBM Corporation 21/02/ de 131

94 Entidades, Atributos y Relaciones Un sistema de gestión de base de datos, como el componente IMS DB o el DB2, proporciona un método para almacenar y usar los datos de negocio en la base de datos. Se dan facilidades a los usuarios del sistema para que lleven a cabo distintos tipos de operaciones en el propio sistema como son la manipulación de los datos en la base de datos o la gestión de la propia estructura de la base de datos. Los sistemas de gestión de bases de datos (DBMSs) se categorizan de acuerdo a sus estructuras de datos. Hay diferentes tipos de bases de datos que pueden usarse en el mainframe para explotar el z/os, listas invertidas, jerárquicas, en red, o relacionales. En contraposición a la navegación por la estructura de la base de datos jerárquicas, en el caso de las bases de datos relacionales (RDBMS) el acceso se lleva a cabo nombrando las estructuras de datos y poniendo condiciones de búsqueda a los atributos de aquéllas Qué estructuras existen en una base de datos relacional?. La base de datos (database): es una agrupación lógica de datos. Contiene un conjunto de espacios de tablas y de índices relacionados. Una base de datos, típicamente, contiene todo el dato asociado con una aplicación o grupo de aplicaciones relacionadas. Tabla: Es una estructura lógica compuesta por filas y columnas. Las filas no tienen un orden predeterminado, y si se leen los datos podrían necesitar ordenarse. El orden de las columnas es el que se especifica cuando se crea la tabla por parte del administrador. En la intersección de cada columna y fila hay un elemento de datos específico que se llama valor, o más precisamente, valor atómico. A una tabla se le nombra por un calificador de alto nivel del usuario propietario seguido del nombre de la tabla. Hay tres tipos de tablas: Tabla base que se crea explícitamente y contiene datos persistentes. Tabla temporal que almacena resultados intermedios de consultas. Tabla de resultados que se devuelve cuando se consultas las tablas. Ejemplo de una tabla IBM Corporation 21/02/ de 131

95 En la figura anterior puede verse un ejemplo de tabla donde, El conjunto ordenado de columnas son DEPTO, DEPTNAME, MGRNO y ADMRDEPT. Todos los datos de una determinada columna deben ser del mismo tipo. Cada fila contiene datos para un determinado departamento. En la intersección de una columna y una fila hay un valor. Por ejemplo, PLANNING es el valor de la columna DEPTNAME en la fila del departamento B01. Índices: un índice es un conjunto ordenado de apuntadores a filas de una tabla. A diferencia de las filas de una tabla que no están en un orden específico, un índice se mantiene siempre en orden por el DB2. Un índice se usa para dos propósitos: Para rendimiento con el fin de recuperar valores de datos de forma rápida. Para unicidad. Creando un índice por el nombre del empleado se pueden obtener los datos más rápidamente para un empleado que leyendo la tabla entera. También creando un índice único por número de empleado, el DB2 fuerza la unicidad de cada valor. Claves: es una o más columnas que se identifican como tales en la creación de una tabla o índice, o en la definición de la integridad referencial. Clave primaria: una tabla sólo puede tener una clave primaria porque es la que define a la entidad. Deben cumplir dos condiciones: o o Debe tener valor; no se admiten valores nulos. El valor debe ser único; debe tener un índice único definido sobre ella. Clave única: sabemos que la clave única debe ser única, pero es posible que tengamos más de una clave única en una tabla. En el caso de una tabla de empleados, tanto el número de empleado como su identificación fiscal son atributos que definen claves únicas. Para asegurar que sean claves únicas se definen sobre ellas índices únicos. Clave ajena: es una clave que se especifica en una restricción de integridad referencial haciendo su existencia dependiente de una clave primaria o única (clave padre) en otra tabla (o en la misma). En una tabla de empleados, el departamento en el que trabaja un empleado debe existir en la tabla de departamentos. Esta constricción es parte de la definición de la tabla. Antes vimos algunas estructuras básicas comunes a los RDBMS. Ahora, veamos algunas estructuras de datos específicas de DB2. Vistas: una vista es una forma alternativa de ver los datos en una o más tablas. Es como un marco que ponemos a una tabla para que sólo se puedan ver parte de los datos de la tabla. Por ejemplo, se puede crear una vista sobre la tabla de departamentos para permitir que los usuarios sólo tengan acceso a un determinado departamento y actualicen información de salarios; no se desea que puedan ver los salarios de otros departamentos. Las vistas también se pueden usar para simplificar conjuntas complejas a usuarios menos experimentados. IBM Corporation 21/02/ de 131

96 Espacio de tablas: una tabla se sólo una construcción lógica. Se guarda en un fichero físico llamado espacio de tablas. Pueden contener una o más tablas. Se nombra usando el nombre de la base de datos seguido por el nombre del espacio de tablas. Hay tres tipos de espacios de tablas: simples, segmentados y particionados. El DB2 utiliza ficheros VSAM para sus espacios de tablas. Index space: es otra estructura de almacenamiento que contiene un solo índice. De hecho, cuando se crea un índice, el DB2 automáticamente define un espacio de índices. Grupos de almacenamiento: un grupo de almacenamiento consta de un conjunto de volúmenes en disco (DASD) que contienen los ficheros en los que se han almacenado tablas e índices. En la siguiente figura pueden verse los objetos que hemos estado describiendo anteriormente: Jerarquía de objetos en un subsistema DB2 Si nos centramos en estructuras de esquemas, el DB2 proporciona: UDT (User-Defined Data Type) es una forma de que los usuarios definan sus propios tipos de datos por encima de los tipos de datos habituales de tipos alfanumérico y numéricos. UDF (User-Defined Function) se puede definer sobre una función DB2 existente y puede asimilarse a un programa de aplicación que se accedería por una sentencia SQL. IBM Corporation 21/02/ de 131

97 Trigger (disparador. gatillo) define una serie de acciones que se ejecutan cuando se lleva a cabo una inserción, actualización o borrado en una tabla determinada. Large Object (LOB) es un tipo de dato que usa el DB2 para gestionar datos no estructurados. Hay tres tipos: Binary Large Objects (BLOBs) se usan para imágenes, audios y videos. Character Large Objects (CLOBs) se usan para grandes documentos de textos. Double Byte Character Large Objects (DBCLOBs) se usan para almacenar grandes documentos de texto escritos en idionas que requieren caracteres de doble byte como el Kanji. Los LOBs se almacenan en tablas auxiliares especiales apuntadas desde la tabla base y que usan un espacio de tablas de LOB especial. Procedimiento almacenado es un programa de aplicación escrito por el usuario que se almacena y ejecuta típicamente en el servidor. Diseñados específicamente para el entorno cliente servidor, donde desde aquél se hace una llamada a éste para ejecutar el procedimiento almacenado, y que a su vez accede a los datos en DB2 y devuelve los resultados. Se puede asimilar a un programa de aplicación que se define al DB2 y lo gestiona el subsistema DB2. Nos queda explicar un poco cuáles son y para que sirven las estructuras del sistema DB2; son las siguientes: Catálogo y directorio el DB2 mantiene él mismo un conjunto de tablas que contienen metadatos sobre los objetos DB2 del subsistema. El catálogo guarda información sobre todos los objetos, tales como tablas, vistas, índices, espacios de tablas, etc. El directorio guarda información sobre los programas de aplicación. El catálogo puede consultarse para ver información de los objetos; el directorio no se puede consultar. Cuando se crea una tabla de usuario, el DB2 automáticamente guarda el nombre, el creador, su espacio de tablas y la base de datos en el catálogo y pone esta información en una tabla del catálogo llamada SYSIBM.SYSTABLES. Todas las columnas definidas en la tabla se guardan automáticamente en la tabla SYSIBM.SYSCOLUMNS. Además, para guardar que el propietario de la tabla tiene autorización sobre la misma, se inserta automáticamente una fila en SYSIBM.SYSTABAUTH. Cualquier índice que se cree sobre la tabla se guardaría en la tabla de catálogo SYSIBM.SYSINDEXES. Buffer Pools son áreas de memoria virtual en las que el DB2 almacena temporalmente páginas de los espacios de tablas e índices. Actúan como un área de cache entre el DB2 y el almacenamiento físico en disco donde residen los datos. La página de datos se obtiene del disco y se ubica en una página del buffer pool. Si el dato que se necesita ya está en un buffer, se evita un acceso (I/O) al disco. Log activo y archivo el DB2 guarda todos los cambios a los datos y otros eventos significativos en un log. Esta información se usa para recuperar los datos en el caso de un fallo, o para que se puedan echar los cambios hacia atrás hasta un punto anterior en el tiempo. El DB2 escribe cada registro de log en un fichero que se llama log activo. Cuando el log activo se llena, el DB2 copia los contenidos a un fichero en disco o en cinta que se llama log archivo. Un fichero de bootstrap lleva la cuenta de estos ficheros de log activos y archivos. El DB2 usa esta información en escenarios de recuperación, para rearranques del sistema, o para cualquier actividad que requiere leer el log. IBM Corporation 21/02/ de 131

98 Espacios de direcciones del DB2 DB2 necesita al menos tres espacios de direcciones, el de servicios de sistema (MSTR), el de servicios de bases de datos (DBM1) y el de gestión de los bloqueos (IRLM). Además podría desplegarse el Distributed Data Facility (DDF) que se usa para comunicarse con otros subsistemas DB2. Véase la siguiente figura: El DB2 es un subsistema z/os multi-espacio de direcciones Una parte muy importante del subsistema DB2 es el conjunto de las utilidades cuya función es que el administrador de la base de datos pueda mantener los objetos. Se ejecutan a través de trabajos batch (jobs) que están a su vez en librerías de ficheros propiedad del administrador. Sin embargo, hay herramientas que generar el JCL del trabajo como es el caso de Administration Tool o la opción Utility del panel de DB2 interactivo (DB2I). Podrían dividirse en las siguientes categorías: Utilidades de organización de los datos después de creadas las tablas, el DBA emplea la utilidad de LOAD para poblarlas, con la posibilidad de comprimir grandes volúmenes de datos. La utilidad UNLOAD o el programa ensamblador DSNTIAUL permiten al administrador mover o copiar datos entre subsistemas. Es posible mantener los datos en un cierto orden gracias a la utilidad de reorganización, REORG. Inserciones y cargas sucesivas pueden alterar ese orden, y es cuando el DBA planifica REORGs en base a los informes de la utilidad de RUNSTATS que proporciona información de estadísticas y rendimiento. Se pueden pasar estadísticas incluso sobre los catálogos de los sistemas. Utilidades de copia y recuperación es fundamental que el DBA tome copias imagen de los datos e índices con la utilidad COPY. Las copias pueden ser completas o incrementales. Como las recuperaciones sólo pueden hacerse a copias completas, se recurre a la utilidad MERGECOPY para mergear copias incrementales con una completa La utilidad RECOVER durante una recuperación a un punto anterior en el tiempo, permite volver la tabla a una copia imagen. Más a menudo, se emplea el recuperar una tabla a situación actual, echando mano en primer lugar a una copia imagen, y aplicando el conjunto de cambios que figuren en el log. Sin una copia imagen, un índice se puede recrear a través de la utilidad REBUILD INDEX. IBM Corporation 21/02/ de 131

99 Utilidades de consistencia de datos una de las utilidades básicas de consistencia de datos es CHECK, que puede usarse para comprobar y ayudar a corregir integridad referencial e inconsistencias, especialmente después de una carga masiva o de una recuperación. Un uso típico de las utilidades es ejecutar un RUNSTATS, luego un EXPLAIN, y después otra vez un RUNSTATS. Tanto el administrador del sistema como el DBA utilizan comandos DB2 para monitorizar el subsistema. Tanto el panel de DB2I como la Administration Tool proporcionan la facilidad de entrar comandos DB2. El comando DISPLAY DATABASE muestra el estado de los espacios de tablas y de los índices de una determinada base de datos. DISPLAY UTILITY presenta el estado de una utilidad. También hay comandos para mostrar el estado del buffer pool, de las conexiones a DB2 y de la información de los logs. El Structured Query Language (SQL) es un lenguaje de alto nivel que se usa para especificar qué información necesita un usuario sin tener que saber cómo obtener el resultado. El SGBDR es el responsable de desarrollar el camino de acceso necesario para devolver los datos de la consulta del usuario. Se usa sobre una o más tablas y devuelve el resultado como una tabla de resultados. El SQL se subdivide en tres categorías de acuerdo a la funcionalidad que tienen: DML lenguaje de manipulación de datos que se usa para leer y modificar datos. DDL lenguaje de definición de datos que se usa para definir, cambiar y borrar objetos DB2. DCL lenguaje de control de datos que se usa para conceder y revocar autorizaciones. Hay varias herramientas que pueden emplearse para entrar sentencias SQL: SPUFI, que significa SQL Processing Using File Input. Es parte del panel de DB2I. Lo utilizan muy a menudo los administradores de bases de datos. Permitir escribir y guardar una o más sentencias SQL a la vez. El DBA lo usa para conceder y revocar autorizaciones; a veces, cuando es una petición urgente, también se emplea para crear objetos. También lo emplean los desarrolladores para probar consultas. QMF, que significa Query Management Facility. Permite entrar y salvar sólo una sentencia a la vez. La facilidad principal del QMF es la del reporting; permite diseñar formatos de informe flexibles y reusables, incluyendo gráficos Programación de aplicaciones en DB2 El SQL es un estándar de lenguaje de acceso a las bases de datos relacionales necesario para acceder y manipular datos en una base de datos DB2. Se puede usar o dinámicamente con un programa que interprete como el SPUFI, o puede estar embebido y compilado, o ensamblado, con un lenguaje de programación. Cómo se escriben las aplicaciones que acceden a datos DB2?: para hacerlo el SQL se embebe en el código fuente de un lenguaje de programación, como Java, REXX, C, C++, COBOL, Fortran, PLI/I o high-level Assembler. Hay dos categorías de sentencias SQL que pueden usarse en un programa: las estáticas y las dinámicas. SQL estático: se refiere a sentencias SQL que se escriben en el código fuente. En el proceso de preparación del programa, el DB2 desarrolla los caminos de acceso para las sentencias, y éstos se guardan en DB2. El SQL no cambia de ejecución a ejecución, usándose los caminos de acceso siempre sin que el DB2 tenga que crearlos de nuevo, IBM Corporation 21/02/ de 131

100 un proceso que causa overhead (no todas las sentencias SQL deben tener un camino de acceso). SQL dinámico: se refiere a sentencias SQL que son parcial o totalmente desconocidas cuando se escribe el programa. Sólo cuando se ejecuta el programa, el DB2 sabe cuáles son las sentencias y es capaz de determinar los mejores caminos de acceso. Estos no se guardan porque pueden cambiar de una ejecución a otra. Un ejemplo de esto es el SPUFI. Este es realmente un programa de aplicación que acepta sentencias SQL dinámicas. Son las que se entran en el fichero de entrada. Cada vez que se usa el SPUFI, el SQL puede cambiar, por lo que se embeben en el programa sentencias de preparación de SQL especiales para gestionar esto. IBM Corporation 21/02/ de 131

101 5.7 SW de gestión La gestión de sistemas se encarga de la gestión tradicional de la la infraesructura. Para sistemas z/os existen diferentes áreas de especialización que en su conjunto forman la gestión de sistemas. Estas áreas son: Operaciones z/os gestión de los eventos mainframe centralizada. De ello se encargan los operadores de consola y los especialistas en la automatización del sistema. Explotación z/os: Planificación de los trabajos, Gestión del almacenamiento, Gestión del batch (Ucls y salidas). Servicios de soporte técnico: monitorización específica de dominios, diagnóstico y gestión de incidentes, análisis de capacidad, estudio de tendencias, análisis de rendimiento y uso. Este trabajo afecta a los técnicos de sistemas, analístas de aplicaciones, administradores de base de datos, administradores de almacenamiento o técnicos de comunicaciones. Seguridad: auditoría y control de acceso a los recursos. El administrador de seguridad sería el responsible Gestión de almacenamiento El sistema operativo z/os dispone de una gestión de almacenamiento que hace mas fácil las funciones de este tipo de gestión: Asignación de espacio de almacenamiento con límites y controles dependiendo de quien lo pide, el entorno donde se pide, etc Liberación de espacio no usado o caducado Salvaguarda y recuperación de los datos mediante backups. En el apartadoa existe una descripción de estas funciones Gestión de la operación (Tivoli SA y Netview) El objetivo de las operaciones z/os es mantener el más alto grado de disponibilidad de los sistemas z/os. Para lograr este objetivo es crítico tener control sobre las redes de comunicación en el z/os, y poder automatizar acciones correctivas en caso de detectar perdidas de disponibilidad. Es asimismo importante una gestión de eventos centralizada mainframe donde se observe no solo situaciones de indisponibilidad sino situaciones de degradación del servicio para poder actuar preventivamente antes de sufrir pérdidas de disponibilidad. Estas dos funciones las proporciona el Tivoli Netview for z/os y la aplicación específica de operación Tivoli System automation Disponibilidad de red Tivoli NetView for z/os proporciona funciones que ayudan a mantener el grado más alto de disponibilidad de las redes del System z. Ofrece un conjunto amplio de herramientas para gestionar y mantener redes y sistemas complejos desde un único IBM Corporation 21/02/ de 131

102 punto de control. Porporciona funciones de correlación avanzada para automatizar cualquier evento de red o de sistema, soportanto tanto redes SNA como TCP/IP. La gestión de redes IP con Netview incluye: Gestión de SNA sobre IP usando la tecnología Enterprise Extender Soporte de dynamic virtual IP addresses (DVIPA) Descubrimiento recursos IP y correlación de topología Gestión de conexiones: tanto activas como históricas Trazas de paquetes y formateo a nivel de pila y de Open Systems Adapter (OSA): ayudan en el diagnóstico de problemas Soporte de comandos desde la linea de comandos de Netview o desde procedimientos REXX u otras rutinas de automatización. * Soporte servidor IP: funciones de REXEC, RSH, Syslogd Respuesta automática a intrusiones: junto con las funcionalidades del Communication Server de detectar intrusiones, el Netview automatiza acciones como el envio de notificaciones, o la recogida de información. Eventos: incluyendo traps SNMP, alertas y mensajes, eventos EIF (event integration facility), eventos con especificación CBE (common base event). Soporte de IP versión 6 Network address translation Seguridad: previene conexiones no autorizadas al Netview, protege direcciones IP de comandos. Las capacidades como motor de automatización incluyen: Automatización de respuesta a mensajes y eventos y correlación de los mismos Revisión (Parsing) de mensajes y comandos Comandos de temporarización Autotareas: reciben mensajes y lanzan comandos Exits de instalación: rutinas de usuario que pueden modificar el comportamiento del Netview Automatización del sistema con Tivoli System Automation Tivoli System Automation for z/os (SA z/os) es una aplicación basada en Netview diseñada para proporcionar un punto de control único para un amplio espectro de funciones de gestión de sistemas. Es una pieza clave en la automatización. Sus funciones principales son ver, controlar y automatizar un gran número de elementos del sistema desde hadware hasta software. Entre sus funciones destacan: IBM Corporation 21/02/ de 131

103 Monitorización de recursos que afectan al usuario final: monitoriza componentes hardware, monitoriza aplicaciones y productos software, monitoriza procesos automáticos y monitoriza mensajes y alertas. Toma de acciones: arranca y para todo el sistema (Inicia secuencias de arranque y parada de hardware y software), gestiona operaciones remotas y locales en un Parallel Sysplex, gestiona diferentes sistemas operativos (z/os, OS/390, MVS, VM, VSE, y Linux for zseries), controla la coupling facility, reacciona a errores y eventos no planificados. Automatiza tareas repetitivas y complejas: inicia y para recursos software, inicia y para recursos hardware, controla canales y channel paths, controla disponibilidad de dispositivos de E/S, controla el switching de los puertos de los dispositivos de E/S, detecta y responde a mensajes del sistema, realiza el initial program load (IPL),realiza el system power-on reset (POR), construye las políticas de automatización del sistema y da soporte a rutinas de usuario para aumentar la potencia de la automatización Gestión del Sysplex. Tivoli SA gestiona el Sysplex a traves de sus capacidades de monitorización y control de recursos de sistema y de Sysplex tales como CFs, imagenes z/os, pilas TCP/IP, interfaces IP, CPs, LPARs, etc Para ello utiliza las siguientes capacidades: Descubrimiento, usando XCF, del estado operativo de todos los Netview en el Sysplex lo que permite la alta disponibilidad del Netvie Monitorización del Sysplex y de los recursos del sistema usando una combinación de monitorización por muestreo y monitorización por evento Integración en el Tivoli Enterprise Portal Existe además una aplicación basada en Tivoli SA específica para suministrar Alta Disponibilidad a dos o mas sistemas z/os y zlinux asegurando asimismo la integridad de los datos. Esta tecnología es el GDPS y ya fue descrita en capítulos anteriores Gestión del Batch En z/os hay dos tipos de carga Online y Batch. Así como la carga Online se planifica globalmente y se gestiona con el WLM, la carga Batch requiere una planificación relativamente fija, lo que la hace especialmente apropiada para el uso de una herramienta ejecute esta planificación liberando a los operadores de esta tarea repetitiva. El Tivoli Workload Scheduler es el planificador de IBM y permite gestionar la mayor parte de las dependencias a las que esta sometido un trabajo Batch: De un Hardware específico, por ejemplo tipos de cartucho. De la presencia o no de Monitores transaccionales o de BBDD. Por ejemplo un proceso batch que deba ser submitido despues de parar el CICS. De recursos del sistema operativo, tales como los iniciadores del JES2/3. IBM Corporation 21/02/ de 131

104 De la finalización (correcta o incorrecta) de otros trabajos. De parámetros variables que pueden ser cambiados en cada ejecución. De parámetros de tiempo. De la hora del día, del día de la semana o del año. Algunos jobs tienen que ser ejecutados los Viernes. Algunas veces hay reglas complejas para saber cuando un día es de vacaciones. Cuando se usa el Tivoli Workload Scheduler for z/os para lanzar los trabajos batch, estas dependencias se definen en una base de datos por un administrador. Este crea un plan a largo plazo (long-term plan LTP). En este plan se especifican las ejecuciones de cada aplicación así como sus depedencias. Ademas, cada día se crea un plan diario (current plan CP). Este es un plan detallado que tiene en cuenta las dependencias anteriores y es el que finalmente se ejecuta Monitorización y rendimiento SMF (System Management Facility) En un entorno multitarea es importante recojer información acerca del comportamiento del sistema y de las diferentes cargas de trabajo que se ejecutan en el mismo. Los components del z/os y los subsistemas, recojen datos estadísticos y se lo pasan al SMF que lo guarda en sus ficheros. Hay mas de 100 tipos distintos de registros SMF y contienen información acerca del uso de CPU, de la actividad de ficheros, del uso de la CF, de actividades de I/O de arranque de sistemas, de uso de DB2, de uso de WAS, etc. Estos registros SMF una vez tratados con los correspondientes generadores de informes, se usan para tareas que van desde la planificación de las necesidades futures de capacidad hasta la detección de problemas o cuellos de botella en discos, pasando por el perfil de los tiempos de acceso a una estructura de la CF a lo largo del día RMF RMF es un producto especializado en el análisis del uso de los recursos y en como estan siendo utilizados de acuerdo con los objetivos de rendimiento de los distintos tipos de carga. Ayuda a monitorizar y vigilar el rendimiento y detector y analizar problemas en ese area. Tambien se usa para obtener perfiles de carga y es la base para los estudios de crecimiento. Con el RMF, se puede: Determinar si el sistema esta funcionando adecuadament Detectar cuellos de botella producidos por contención de recursos Evaluar el servicio que se está dando Detectar problemas tanto en el sistema como en las aplicaciones IBM Corporation 21/02/ de 131

105 Tiene components Online, componentes de recogida de datos (que almacena el SMF) y un componente Post-Procesos. Se suele hablar de tres monitores RMF: Monitor I Recoge datos para el análisis a largo plazo. Esta continuamente activo y graba registros resumiendo la información a intervalos especificados. El valor por defecto es de 15 minutos. Monitor II Hace una foto del sistema en ese instante. Recoge datos acerca del estado de los AS y de la utilización de los recursos. Monitor III Recoge datos para el análisis a corto plazo. Es un monitor enfocado principalmente al estudio de los retrasos en ejecución y su causa. Aunque también tiene datos de uso de recursos Tivoli Omegamon Además del RMF, los monitores Omegamon,proporcionan métricas en tiempo real, pasado reciente e histórico que sirven para generar eventos y ayudar en el diagnóstico de problemas. Se integran con la automatización para la resolución automática de la degradación del servicio y son fuente de información para las herramientas de generación de informes. Los monitores que IBM proporciona son: Tivoli OMEGAMON XE for z/os: monitorización sistema operativo z/os Tivoli OMEGAMON XE for CICS: monitorización del CICS Tivoli OMEGAMON XE for IMS: monitorización del IMS Tivoli OMEGAMON XE for DB2 Performace Expert: monitorización del DB2 Tivoli OMEGAMON XE for Mainframe Networks: monitorización TCP/IP y SNA Tivoli OMEGAMON XE for Messaging: monitorización de WebSphere MQ y WebSphere Message Broker Tivoli OMEGAMON XE for Storage: monitorización de almacenamiento Tivoli Advanced Catalog Management: monitorización catálogos Tivoli Advanced Audit for DFSMShsm: monitorización de auditorías de ficheros de control del HSM Tivoli Advanced Reporting for DFSMShsm: monitorización HSM Tivoli Advanced Backup and Recovery: monitorización conformidad normativa de copias de seguridad. Tivoli Tape Optimizer: monitorización copiado cintas del RMM. Tivoli Composiste Application Manager for Application Diagnostics: monitorización de WebSphere Application Server Tivoli Composite Application Manager for SOA: monitorización de servicios web Tivoli Composite Application Manager for Transactions: monitorización transacciones multiplataforma. IBM Corporation 21/02/ de 131

106 Tivoli OMEGAMON DE: para generar paneles de control multidominio Tivoli Enterprise Portal como interface de monitorización Los distintos monitores OMEGAMON, se integran utilizando el Enterprise Portal como Interface de monitorización. Permite establecer umbrales de rendimiento, generar y enviar comandos, adaptar los informes a las necesidades concreta y permite visualizar tanto el pasado reciente como el histórico. Este sería un ejemplo de Enterprise Portal Además, el IBM Tivoli Enterprise Portal, debido a su función integradora de información, permite ver diferentes segmentos de la compañía en una única ventana. Proporciona un punto de control único para gestionar los recursos que usan las aplicaciones críticas de negocio, incluyendo una gran variedad de sistemas operativos, servidores, bases de datos, mainframes, y componentes web. A continuación algunos detalles sobre los componentes mas comunes Monitorización de z/os con Tivoli OMEGAMON XE for z/os Con el Tivoli OMEGAMON XE on z/os se puede realizar un análisis detallado de forma rápida y sencilla de cada uno de los elementos que componen el sistemas z/os, Sysplex Paralelo, z/os incluyendo los Unix System Services. Se puede comprobar y optimizar el Workload Manager, a nivel de servicios y recursos. Y desde una sola pantalla, se puede obtener múltiples vistas de las operaciones del sistema y sus iteraciones con otros componentes simplificando de esta manera enormemente la gestión del entorno. Proporciona información detallada acerca de uso de CPU de los espacios de direcciones, análisis de cuellos de botellas (incluyendo E/S y detalles de encolamiento), IBM Corporation 21/02/ de 131

107 channel paths, estructuras en la coupling facility, cross-system coupling facility (XCF), DASD, enclaves, enqueues, sistemas global resource serialization (GRS) ring, análisis de impacto, LPARs, alertas de operador, paginación, uso de real storage y virtual storage, clases de servicios, utilización de CPU del sistema, cintas, WLM, USS, tiempo de respuesta de usuario Monitorización de CICS con Tivoli OMEGAMON XE for CICS Tivoli OMEGAMON XE for CICS gestiona proactivamente los sistemas CICS, incluyendo CICSPlex para alcanzar el mejor rendimiento, y evitar caídas o pérdidas de servicio. Sus funciones principales son: Gestionar el rendimiento y disponibilidad del CICS TS y CICS TG Rastrear el flujo de la transacción integrado con Tivoli Composite Application Manager Identificar tareas esperando a recursos, y señalar tiempos de espera excesivos para resolver problemas rápidamente Monitorización de DB2 con Tivoli OMEGAMON XE for DB2 Tivoli OMEGAMON XE for DB2 ayuda a analizar la eficiencia del DB2 y optimizar su rendimiento Monitoriza, analiza y optimiza el rendimiento de DB2 Identificación fácil y rápida de cuellos de botellas gracias a reglas predefinidas Combina informes en batch con monitorización en tiempo real e información histórica Guarda datos de rendimiento para explotarlos con herramientas de análisis Monitorización de la transacción con Tivoli Composite Application Manager for Transactions IBM Tivoli Composite Application Manager for Transactions (ITCAM for Transactions) ofrece un completo sistema de gestión de seguimiento de transacciones completo y unificado que se ejecuta en una sola infraestructura consolidada. Puesto que el aislamiento de problemas en los complejos entornos actuales de IT puede llevar horas o días y puede suponer una pérdida de tiempo y de beneficios y un deterioro de la satisfacción del cliente, ITCAM for Transactions proporciona una solución para aislar componentes del problema y agilizar el diagnóstico y la restauración del servicio antes de que un impacto negativo en el cliente afecte directamente a los beneficios. Sus principales componentes son: Internet Service Monitoring, que proporciona las herramientas para identificar problemas de disponibilidad y de tiempo de respuesta y supervisa para probar la disponibilidad y el rendimiento de distintos servicios de Internet, que incluyen sitios web de supervisión, aplicaciones e-commerce basadas en la web y correo electrónico (así como los servicios subyacentes, como DNS, LDAP y SMTP en los que se basan estos servicios). Response Time, que se centra en la experiencia del usuario final, tanto real como simulada, supervisando transacciones web, reproduciendo scripts grabados y IBM Corporation 21/02/ de 131

108 experiencias de escritorio de usuarios reales. Response Time incluye los componentes siguientes: Application Management Console y Editor de configuración de gestión de aplicaciones Transaction Tracking, que ofrece una vista completa de tiempos de respuesta del sistema para ayudar a aislar rápidamente la causa de los problemas de tiempo de respuesta y de disponibilidad. Transaction Tracking incluye los siguientes componentes: Transaction Collector Transaction Reporter También dispone de componentes que permiten su utilización con, prácticamente, cualquier infraestructura SW. IBM Corporation 21/02/ de 131

109 6 Integración en los modelos IT más usados en la actualidad 6.1 SOA Introducción El objetivo principal de este capítulo no es definir la arquitectura orientada a servicios (SOA) u otros términos relacionados con él, sino para aclarar el papel del Mainframe en un mundo centrado en SOA. La inclinación natural para muchos es suponer que sólo afecta a los sistemas SOA distribuidos y la tecnología que es inferior a cinco años de edad! Sin embargo, esto está lejos de la verdad. El Mainframe del siglo 21 puede remontar sus orígenes a los ordenadores System/360 de mediados de la década de Uno de los puntos clave del diseño del System/360 fue implementar una arquitectura de computadores que escala dentro de la familia a lo largo de continuas actualizaciones sin perder la compatibilidad hacia atrás de las aplicaciones. El compromiso de IBM con este nivel de compatibilidad se ha mantenido desde entonces. Debido a esta compatibilidad con versiones anteriores, muchos programas que fueron escritos hace décadas todavía se pueden ejecutar en los actuales sistemas Mainframe de IBM. Esto ha proporcionado un importante valor empresarial para nuestros clientes, ya que les ha permitido proteger la inversión en sus aplicaciones. Sin embargo, cuando el mundo ha adoptado las nuevas tecnologías y arquitecturas, esto ha planteado un problema: cómo liberar el poder de estos activos de la empresa en las arquitecturas de computación nuevas que han surgido en los últimos años? Este reto se inició con la Arquitectura Cliente / Servidor de la década de 1990, y ha continuado hasta hoy. SOA es simplemente una extensión de ese desafío Estándares en SOA Afortunadamente, SOA posee un atributo clave que posiciona el Mainframe como un participante de pleno derecho. En la página Web de IBM developerworks se refiere a los siguientes atributos de SOA: La interfaz se define en una forma neutra que debe ser independiente de la plataforma de hardware, el sistema operativo y el lenguaje de programación en la que se lleva a cabo el servicio. Los estándares son críticos para SOA, y específicamente para la participación de entornos heterogéneos, la realidad actual, en la arquitectura SOA. A través de la normalización de las interfaces entre los servicios, ahora es posible para todos los fabricantes (como IBM) incorporar estas normas en los sistemas de procesamiento de transacciones y los sistemas de gestión de base de datos para que las aplicaciones existentes se puedan integrar fácilmente en un entorno SOA. Hay una serie de normas que permiten esta interacción, pudiéndose destacar las siguientes: IBM Corporation 21/02/ de 131

110 Servicios de Web - Una de las normas más importantes que surgieron en los últimos diez años es el SOAP. SOAP define un formato común XML para describir las llamadas de servicio y los mensajes de intercambio de los servicios invocados. SOAP es un protocolo simple basado en XML para las aplicaciones de intercambio de información a través de HTTP o mensajería middleware. La aparición de SOAP como un estándar de transporte ha contribuido a que los proveedores puedan habilitar SOAP sus subsistemas para hacer más fácil para los servicios de interactuar. El protocolo de transporte HTTP es relativamente ubicuo, y como resultado, los mensajes SOAP se pueden pasar entre las plataformas de computación, proporcionando la neutralidad del Sistema Operativo que se describe en la definición de SOA. Más adelante en este trabajo se presentan detalles acerca de cómo el software de la plataforma z ha implementado SOAP y otros interfaces estándares para facilitar los servicios Web que llaman a las operaciones del Mainframe y sus datos. XML - XML no es una nueva tecnología, ha estado en uso durante más de cinco años. Es fundamental para la interoperabilidad necesaria entre los servicios en SOA. El carácter de independencia de las descripciones XML, junto con el gran número de utilidades que lo procesan, lo convierten en un formato de representación de datos ideal para la información que fluye en las invocaciones de servicio. Esta generalización se extiende a la plataforma System z, donde el procesamiento de XML es posible en los nuevos servidores de aplicaciones, como la tecnología WebSphere Application Server (WAS) y en los tradicionales como CICS, IMS. Los compiladores de COBOL y PL/I incluyen el soporte de XML. Middleware orientado a mensajes La mensajería ha existido desde hace muchos años, proporcionando un mecanismo fiable, y de transporte rápido, para pasar datos entre aplicaciones. Muchos clientes han empleado IBM WebSphere MQ (MQSeries ) como el transporte para llamar a funciones remotas en sistemas separados, al igual que lo hace SOAP. De hecho, WebSphere MQ se puede utilizar como el transporte base para SOAP. WebSphere MQ de IBM (WMQ) está presente en el negocio de muchos clientes de IBM en todo el mundo, y esta penetración ha ayudado a hacer WMQ un estándar de facto para las aplicaciones de comunicaciones programa a programa. SOA no es sólo los servicios Web. Una arquitectura orientada a servicios se pueden implementar sin necesidad de utilizar los servicios Web, aunque esto sea poco común. SOA simplemente debe basarse en hardware con un sistema operativo y un transporte de lenguaje que de manera neutra faciliten la comunicación entre los servicios. En el caso de IBM System z, WebSphere Message Broker es un componente clave de la infraestructura SOA de muchos clientes. Su implementación en la plataforma System z facilita el transporte e intermediación de los servicios con las características de escalabilidad y resiliencia de esta plataforma Construyendo las TI con nuevos parámetros El objetivo de SOA es conseguir que las aplicaciones sigan agilidad y flexibilidad que exige el negocio y uno de los caminos es abordar la modernización de las aplicaciones. Los retos IBM Corporation 21/02/ de 131

111 para la modernización de aplicaciones, en términos generales, se pueden categorizar en tres áreas: Maleabilidad de las aplicaciones existentes: Muchas de las aplicaciones en z/os, especialmente aquellas aplicaciones que no han sido escritas pensando en su reutilización, se clasifican como lo que la industria denomina aplicaciones monolíticas. Estas aplicaciones suelen estar fuertemente cohesionadas e incurren en altos costos de mantenimiento y mejora (aproximadamente un 70% del presupuesto de TI de una organización se gasta en mantenimiento). Aunque estas aplicaciones incorporan un gran conocimiento del negocio, son difíciles de cambiar con la finalidad de cumplir con los nuevos requisitos de negocio. A menudo, esta dificultad en replanteamiento de las aplicaciones conduce a tomar decisiones sobre si se deben reescribir las aplicaciones para hacer su extensión más flexible y fácil. Pero la reescritura podría no ser siempre la mejor opción, si tenemos en cuenta la cantidad de código involucrado, de las repercusiones en las interdependencias, y del dilema de la selección de plataforma para evitar el envejecimiento de las nuevas aplicaciones. Extensibilidad y capacidad de los conocimientos: Tenemos tres retos concretos en el ámbito de los conocimientos. o o o Uno de ellos es que los desarrolladores suelen estar especializados en un entorno determinado, y sus habilidades no son portables a través de diferentes proyectos ya que proyecto está a menudo asociado a una plataforma (por ejemplo, los desarrolladores de CICS no crean programas Web y los desarrolladores Web no crean aplicaciones para CICS). También utilizan diferentes procesos, herramientas y lenguajes de programación. El segundo reto es el coste y el tiempo necesario para adaptar al personal existente a las nuevas tecnologías. El tercer desafío es que los "baby boomers", la gente que puede manejar las plataformas de aplicaciones existentes, están desapareciendo. No pueden ser sustituidos por las nuevas generaciones ya que no entienden o no tienen interés en las antiguas tecnologías y esto obliga a los administradores de TI a considerar la contratación externa, la estabilización, el final de la vida de las aplicaciones, la vuelta a escribirlas, y así sucesivamente. Todas estas opciones son difíciles y costosos. El desarrollo de software es lento, repetitivo y propenso a errores. Muchos aplicaciones existentes están escritas en RPG, COBOL, PL / I, 4GL, etc. Las nuevas aplicaciones requieren Java, Java Enterprise Edition, y otras habilidades relacionadas con la Web 2.0. El paradigma de desarrollo, por lo general, diferencia entre los lenguajes existentes orientados procedimiento en comparación con los lenguajes orientados a objetos (por ejemplo; Java). Muchas veces, la reconversión profesional de un programador de COBOL para convertirse en programador de Java puede no ser una opción, debido a los altos costos asociados con la reconversión y la posibilidad de que el programador de COBOL falle en esta reconversión. Multitud de plataformas y de middleware: Las fusiones y adquisiciones incrementan la necesidad de información comercial y presenta un desafío único que ahora tiene que hacer frente a plataformas y middleware dispares y heterogéneos. Estas consolidaciones podrían dar lugar a una fragmentación de los conocimientos necesarios para apoyar estas plataformas y añadir complejidad de las interfaces entre las aplicaciones. Todo ello tiende a frenar el desarrollo de las funciones necesarias. Estos desafíos que a menudo se traducen en altos costos, reducen la capacidad IBM Corporation 21/02/ de 131

112 de responder de forma rápida a los requisitos del negocio y a ofrecer soluciones alternativas de lo que el equipo de desarrollo es capaz de realizar en lugar de aquellas otras soluciones que reclama Negocio Mejores prácticas SOA En general, el primer paso es realizar una planificación adecuada para identificar los servicios correctos como primer paso. Para esto, quizás sea útil considerar el uso de metodologías, como el de Modelado de Componentes de Negocio (CBM) o la de Modelado de la Arquitectura Orientad a Servicios.(SOMA). Es importante señalar que no todos los componentes, módulos o interfaces de un programa tienen que convertirse en un servicio. También es necesario considerar las tecnologías que faciliten la gestión y utilización de servicios, tales como Enterprise Service Bus (ESB) y los procesos de coreografía. Por último, pero no menos importante, se debe abordar el gobierno de OA. En un entorno orientado a la reutilización de los servicios es imprescindible el mantenimiento de un gobierno que establezca y mantenga las normas y políticas para todos los proyectos de TI. En particular, para la plataforma System z, hay una tendencia a pensar en las aplicaciones de System z como proveedores de servicios pero, de hecho, las aplicaciones del sistema z puede ser también consumidoras de servicios. En SOA, cada componente puede ser a la vez proveedor y el consumidor; y restringir los componentes plataforma System z como únicamente proveedores hace aumentar la coreografía de servicios innecesariamente. Otro punto a señalar es que la estratificación o la separación adecuada de las funciones es bueno y perfectamente aplicable la arquitectura de la plataforma System z de componentes. Al crear nuevas aplicaciones, o renovar las existentes, de los entornos CICS o IMS, considere un enfoque por capas en los programas con la separación en distintos módulos de la presentación, la lógica de negocio, la lógica de datos, y del acceso a los datos. Por último, un banco de pruebas para las aplicaciones y los procesos es muy importante para todos los proyectos SOA, Esto no es una cualidad ligada a SOA pero sus características de heterogeneidad hacen imprescindible disponer de un entorno fiable y completo para garantizar la calidad del resultado. Albergando SOA en la plataforma System z. La Arquitectura Orientada a Servicios (SOA), en su forma más pura, requiere de muy poca sobrecarga en la infraestructura, la naturaleza de la orientación al servicio, simplemente dicta una lógica estructuración de código de aplicación que encapsula las funciones de negocio como servicios. La definición de SOA no hace referencia a algún tipo de middleware o software de apoyo. Simplemente se refiere a la normalización de los la interfaz de servicio y a la neutralidad de la plataforma. Sin embargo, en las grandes implementaciones SOA, no es realmente práctico para aplicar sin necesidad de herramientas para ayudar a la conectividad y la orquestación de la interacción entre los servicios. Por otra parte, otras herramientas auxiliares son necesarias en la mayoría de las implementaciones de SOA, incluyendo desarrollo y herramientas de pruebas, herramientas de interfaz de usuario como los portales, y la supervisión y aplicaciones de gestión. En esta sección se describe por qué IBM System z es un ideal plataforma para el funcionamiento de estas herramientas y productos de middleware que se encuentran comúnmente utilizados en la aplicación de una SOA. A medida que las organizaciones adoptan SOA como marco de referencia de arquitectura para desarrollo de aplicaciones empresariales, la necesidad de desplegar con rapidez los nuevos servicios se ha convertido en uno de los componentes más críticos para el negocio de la infraestructura de aplicaciones. Esta implica que los servicios deben ser tratados como tales, y debe implementarse en una plataforma robusta, escalable, segura y de alto rendimiento. Junto con los servicios, el middleware de infraestructura de SOA y las herramientas también deben residir en la plataforma IBM Corporation 21/02/ de 131

113 que acoge el entorno SOA. La plataforma System z, en particular, es el entorno más adecuado para proporcionar cualidades de servicio que las aplicaciones de una empresa necesitan. Cuáles son los componentes clave de la infraestructura SOA? La Arquitectura de Referencia SOA de IBM, que se muestra en la figura anterior, define los elementos y componentes básicos necesarios para apoyar un entorno SOA. En el centro de esta arquitectura de referencia está el Enterprise Service Bus (ESB). Alrededor del ESB están los servicios esenciales necesarios para soportar la ejecución de un ambiente SOA: servicios de interacción, servicios de procesos, servicios de información, los servicios de asociados, servicios de aplicación empresarial, y servicios de acceso. En los siguientes párrafos nos referiremos brevemente a cada uno de estos elementos. Junto con los servicios básicos, las casillas que los rodean escriben las demás funciones que serán necesarias para apoyar los servicios antes, durante y después de su despliegue. Tanto el Websphere Message Broker como el Websphere ESB son productos que pueden utilizarse para realizar estas funciones con la calidad necesaria para la plataforma System z Servicios de Infraestructura En la base de la Arquitectura de Referencia SOA está la plataforma para su implementación. Esto incluye el despliegue del hardware y software para los servicios de negocio y los servicios de infraestructura. Un entorno de producción por lo general requiere el más alta grado de calidad de servicio (QoS), y el componente de los servicios de infraestructura proporciona la calidad de servicio. Los servicios de esta capa incluyen las funciones del sistema operativo, las de seguridad, y las de hardware. Esta exigencia de un alto nivel de servicio es en la plataforma System z donde juega un importante papel. Teniendo en cuenta las misiones de naturaleza crítica, las funciones de la plataforma añaden el más alto grado de escalabilidad, confiabilidad, y seguridad; tanto el Security Server, para la implementación de la seguridad, como los Servicios de Recuperación de Recursos (RRS), para el soporte nativo del two phase commit y garantizar la integridad de las transacciones con acceso a múltiples sistemas, son dos claros ejemplos de los valores que aporta la plataforma System z a la arquitectura SOA Servicios de Desarrollo Las fases Model y Assemble del ciclo de vida SOA hacen un amplio uso de los servicios de desarrollo de la arquitectura. Los servicios de desarrollo incluyen las herramientas que se utilizan para el modelado y el montaje de los servicios de negocio. El modelado consiste en el modelado de los procesos de negocio y el modelado de los servicios reales de negocio y de la lógica de negocio dentro de ellas. Las herramientas pueden ser las herramientas del más alto nivel adecuado para los analistas de negocio y, herramientas de menor nivel, como los utilizados para el desarrollo orientado a objetos. IBM Corporation 21/02/ de 131

114 La salida de estas herramientas consta de artefactos tales como los modelos UML, el código fuente de la aplicación real en una variedad de lenguajes como Java o COBOL, y lenguajes de marcado como XML y el lenguaje de ejecución de procesos empresariales (BPEL). Desde la perspectiva de System z, la mayoría del código de desarrollo y las herramientas de modelado no se ejecutan en el Mainframe. Sin embargo, si el cliente desea construir nuevos servicios o la reutilización de servicios ya existentes en el Mainframe, herramientas como el WebSphere Integration Developer o el WebSphere Developer para zseries se utilizan para construir e integrar los servicios que se desplegarán en el Mainframe Servicios de Gestión TI Los componentes de la infraestructura SOA consisten principalmente en middleware. Al igual que las arquitecturas de aplicaciones tradicionales, una implementación SOA requiere de los niveles adecuados de supervisión y gestión del middleware y aplicaciones para garantizar un nivel adecuado de rendimiento del sistema y su seguridad. Esto es particularmente importante en un sistema basado en SOA ya que las aplicaciones compuestas SOA puede abarcar varias plataformas de computación y redes, y podrá exigir garantías y contextos transaccionales que se llevarán a partir de un servidor o sistema operativo a otro. La depuración y corrección de errores, los problemas de rendimiento en este entorno requiere una buena supervisión y herramientas de gestión. Muchas herramientas de la cartera de Tivoli proporcionan la funcionalidad para la gestión de servicios de TI. Algunos ejemplos: para supervisar el rendimiento de extremo a extremo, IBM Tivoli Composite Application Manager for SOA y el Tivoli Omegamon proporcionan las herramientas de seguimiento necesarias para controlar los componentes en una aplicación de varios niveles que abarca distribuidos y sistemas Mainframe Servicios de innovación y optimización de los Negocios Si bien la infraestructura de TI se controla y gestiona a través de los servicios de TI componentes de gestión, qué pasa con los servicios de negocio? Una organización pueda garantizar un nivel adecuado de rendimiento del sistema y aplicación, pero qué pasa con el rendimiento del negocio? La innovación empresarial y servicios de optimización componente proporcionan la funcionalidad necesaria para una efectiva supervisión y registrar lo que se pasando en la empresa desde una perspectiva puramente empresarial. Cuántos aparatos se vendieron en la última hora / día / mes / año? Cuánto tarda en arrancarse el proceso de atención al cliente? Cuántos clientes hicieron una petición de servicio ayer? Este componente proporciona las herramientas necesarias para controlar este tipo de funciones de negocios, el informe de los resultados y pasar los resultados a las herramientas de modelado (utilizado en el componente de desarrollo de los servicios) de manera que los procesos se pueden modelar con más precisión, se puedan realizar simulaciones, y se pueden hacer modificaciones a los procesos empresariales para mejorar aún más la eficacia de la empresa. El WebSphere Business Monitor ofrece un monitor que vigila los servicios de negocio y acumula los informes y las estadísticas acerca de cómo las funciones de negocio están realizando. De nuevo, esto no es una pregunta como " Cómo de rápida es la ejecución de esta transacción?". En su lugar, se pregunta y responde " Cuántos de estas funciones de la empresa estamos realizando y con qué eficiencia las estamos haciendo?. IBM Corporation 21/02/ de 131

115 Servicios de Interacción El componente de interacción de servicios proporciona la interfaz de usuario de la solicitud SOA. Un principio clave de SOA es la abstracción de las capas de aplicación. En este caso, la interfaz de la aplicación de usuario (UI) está expuesta en una capa separada de la lógica de negocio. Los servicios de interacción se piensan comúnmente como la capa de portal, desde la interfaz de usuario para muchas aplicaciones SOA se proporciona un portal, aunque esto componente no es obligatorio. El portal no sólo proporciona una abstracción de la interfaz de usuario, sino que también proporciona un conjunto estándar de servicios para el usuario final y una experiencia de usuario personalizada. Con las nuevas normas tales como Web Services para Remoto Portlets (WSRP), aplicaciones de portal (portlets) puede ser más fácil vinculadas a los servicios para facilitar la integración entre la interfaz de usuario y la lógica de los servicios de negocio. WebSphere Portal Server es el componente principal de proporcionar una interacción los servicios y está disponible en la plataforma System z (así como en las plataformas distribuidas). Como se mencionó anteriormente, en un diseño de SOA, la proximidad a los servicios, transacciones y datos es un principio básico del diseño arquitectónico. La colocación de un portal en la plataforma, cerca de los servicios que se invoca, reduce los gastos generales de comunicación y los puntos de fallo Servicios de Procesos Un atributo clave de una aplicación SOA es que a menudo es una aplicación compuesta, es decir una que se construye a partir de varios servicios discretos, todos ellos conectados a través de algún tipo de motor de orquestación. El proceso de los servicios componentes proporciona la orquestación de flujo de trabajo y servicios que se requieren para fusionar múltiples servicios en una sola aplicación. Esta aplicación puede ser una sola transacción, o puede ser una serie de transacciones que se unieron en un proceso de negocio. El WebSphere Process Server (WPS), y en menor medida, de WebSphere Message Broker (WMB), actúan como servidores de la coreografía de procesos. WPS provee orquestación de servicios múltiples, impulsado por un "guión" se expresa en BPEL. WPS es el ejecutor de BPEL. WMB ejecuta los "flujos de mensajes" provocados por los mensajes entrantes, y puede invocar funciones y servicios múltiples. WMB se utilizaría para los servicios que se agrupan en una sola transacción. El WPS puede albergarse en la plataforma System z. La colocación de este componentes en System z satisface el principio de arquitectura de la proximidad a los datos y transacciones Servicios de Información Los datos están en todas partes. En las últimas décadas, las empresas han recogido grandes cantidades de datos en diferentes repositorios en todo el negocio. Los servicios de información proporcionan acceso basado en SOA para los repositorios de datos a través de técnicas tales como el acceso a los procedimientos almacenados como servicios Web, proporcionando interfaces estándar para los depósitos de datos no relacionales, y acceder a otras mecanismos que devuelven información como un IBM Corporation 21/02/ de 131

116 servicio (IAAS). Puesto que los datos o información en sí misma no son "ejecutables", se necesita una infraestructura para exponer los datos a las aplicaciones que utilicen estándares SOA como SOAP. Muchos de los datos críticos del patrimonio de la empresa residen en el Mainframe. IBM proporciona una serie de z herramientas basadas en la plataforma System z para exponer los datos como IAAS. El propio DB2 para z / OS propio motor, y el WebSphere Information Integrator Classic Federation para z/os (IICF). IICF proporciona una interfaz SQL para una serie de formatos de datos legacy, como VSAM, IMS DB, y de otros fabricantes de bases de datos incluyendo CA-Datacom, CA IDMS, y Adabas de Software AG Servicios de integración El componente de servicios de integración de socios es la interfaz para socios de negocios externos. La exposición de los servicios empresariales con el mundo exterior y la invocación de servicios externos plantean desafíos a la integridad y a la seguridad del entorno SOA. Los servicios deben ser expuestos de una manera que mantenga la seguridad y la escalabilidad del servicio, ya que esto hace que los patrones de uso del servicio sean mucho menos predecibles y controlables que si se está accediendo exclusivamente desde la propia organización. Históricamente, gran parte de la interacción con los socios externos se ha hecho a través de mecanismos tales como EDI. Los servicios de asociados se proporcionan en el Mainframe a través de canales tradicionales, como WebSphere Data Interchange, para la traducción EDI. El socio de WebSphere Partner Gateway de la cara al mundo exterior Servicios de Aplicaciones de Negocio El recién desarrollado servicios de residir en el negocio de servicios de aplicaciones componentes. Estos nuevos servicios son generalmente implementarse en servidores, como IBM WebSphere Application Server, que es un administrador de transacciones para Java 2 Enterprise Edition (J2EE). El servidor de aplicaciones WebSphere puede utilizarse para aplicaciones con todas las funciones (presentación, lógica de negocio, y los datos lógica), o puede alojar los servicios de negocio que tienen las otras funciones de abstracción en otras partes de la arquitectura de referencia (ver Servicios Interacción y Servicios de Información). WebSphere Application Server está disponible en la plataforma System z tanto en z / OS y en zlinux. En zlinux la versión es idéntica a la versión de WAS para plataformas distribuidas. Sin embargo, el WebSphere Application Server para z / OS es ligeramente diferente ya que explota el subyacente z / OS y aprovecha las funciones específicas del sistema sin sacrificar la portabilidad de aplicaciones Servicos de Acceso De particular interés para los clientes de Mainframe es el componente de los servicios de acceso, la vinculación con las aplicaciones existentes, tanto dentro como fuera del Mainframe. Este componente proporciona la conectividad a las aplicaciones IMS, CICS, SAP, PeopleSoft, etc., utilizando diversos conectores y adaptadores con diversas tecnologías. IBM Corporation 21/02/ de 131

117 Enterprise Service Bus Aunque el bus de servicios empresariales (ESB) es el último tema que se presenta, es en realidad el punto crítico de la arquitectura de referencia. De la figura anterior se desprende que el ESB es, literalmente, el centro de la arquitectura de referencia de SOA, y que es importante para cualquier implementación de SOA. El ESB proporciona la capa de abstracción entre el solicitante del servicio y el proveedor del servicio. En las antiguas aplicaciones no-soa, los vínculos entre las aplicaciones son con frecuencia no modificables y puedes ser difíciles de gestionar y mantener. Para cambiar las relaciones entre los programas, puede ser necesario cambiar las aplicaciones según evolucione el negocio o la tecnología. La definición de IBM de un bus de servicios empresariales es el de una construcción arquitectónica y no la de un producto específico. La ESB debe apoyar cuatro funciones principales: Enrutamiento de mensajes entre los servicios, eliminando la relación directa entre los interlocutores. La conversión de protocolos de transporte entre el solicitante y el servicio, por ejemplo, SOAP a MQ, FTP para excitato, y así sucesivamente. La transformación de formatos de mensaje, por ejemplo, la transformación de XML a binario. Manejo de eventos de diferentes fuentes. Los eventos son recibidos del ESB con criterios de valoración y se correlacionan para desencadenar nuevos eventos basados en las decisiones en el ESB. Cualquier producto o los productos que realizan las funciones requeridas se pueden clasificar como una aplicación de ESB. Los productos WebSphere Enterprise Service Bus y el WebSphere Message Broker son la base del ESB en la solución SOA de IBM. Proporcionan las cuatro primarias funciones del ESB, y cuando se combinan con el WebSphere Process Server para la orquestación, los clientes de IBM tienen una infraestructura muy sólida para SOA. La plataforma System z es el lugar ideal para colocar un ESB. Tanto el WebSphere Message Broker como el WebSphere ESB están disponibles en la plataforma System z con una escalabilidad y rendimiento imbatibles. La alta confiabilidad, disponibilidad y seguridad de la plataforma System z son atributos clave para un ESB. El ESB es un componente crítico de la arquitectura, realizando el encaminamiento de las llamadas de servicio para todas las transacciones SOA. Tiene sentido de poner la parte más crítica de la arquitectura en la plataforma que posee la más alta calidad en las características del servicio, junto con la proximidad a aplicaciones y datos. 6.2 Proceso en nube (Cloud computing). En los últimos años se ha hablado mucho de cloud computing pero qué es Pproceso en nube?. IBM Corporation 21/02/ de 131

118 En primer lugar debemos decir que existen dos puntos de vista a la hora de definir este nuevo 6 concepto: Desde el punto de vista del usuario, o del modelo de negocio, podemos decir que el proceso en nube es un nueva forma de proporcionar servicios de IT, en la cual las aplicaciones, los datos y los recursos se aprovisionan rápidamente y se proporcionan como una oferta estándar a los usuarios a través de la web con un modelo de precios flexible. Desde el punto de vista de la administración de infraestructura tecnológica y de metodología de entrega de servicios, el proceso en nube es una forma de administrar un gran número de recursos altamente virtualizados tales que, desde el punto de vista de la administración, éstos parecen un único y gran recurso. Entonces se pueden utilizar estos recursos para ofrecer unos servicios estandarizados con una escalabilidad elástica. Con el concepto de proceso en nube aparecen dos formas de ofrecer estos servicios: nube privada y nube pública. La diferencia entre ellas es, por supuesto, quién ofrece dichos servicios y para quién los ofrecen. La nube pública se caracteriza por estar abierta a cualquiera que pueda pagar sus servicios, tal cual los ofrezca el proveedor. Su caracteristica principal es que tiene un control bajo y un alto valor. Son las nubes del tipo de redes sociales ofrecidas por GOOGLE. La nube privada por el contrario es aquélla que poseen las compañías, y en las cuales los usuarios son aquéllos que designan dichas compañías. Su característica principal es que poseen un buen control y un valor bajo. Podemos considerar como un tipo de esta nube, las herramientas de colaboración que proporcionan las empresas a sus empleados. Por supuesto, entre una y otra hay una especie de continuo, conocido como hybrido. 6 Nuevo en la forma de referirnos a ello. En realidad más que un nuevo concepto es una evolución, como veremos más adelante IBM Corporation 21/02/ de 131

119 Podemos considerar los siguientes pros a la hora de decidirnos por una nube privada: más control, menos latencia, más seguridad, un entorno de aprendizaje, un cambio de paradigma de precio/coste a precio/valor. Una vez vistos los conceptos ya entendemos por qué más que una revolución es una evolución: Esta escala nos muestra el camino que se ha seguido para llegar al cloud computing desde el mundo x86, pero, a mi me suena a una vieja y modernizada vuelta al mundo del centro de procesos. En la Universidad a mi me proporcionaron una cuenta que era una máquina VM en la que podía correr mis programas FORTRAN para solucionar los problemas que me proponían. Desde el punto de vista de la informática de gestión tenemos lo siguiente: Dónde podemos ver que la puesta en marcha de estas nubes privadas requieren un alto grado de virtualización y estandarización, además de los servicios de automatización pertinentes, para poder llegar a una nube efectiva. Cómo afecta esto al System z? Podemos decir que la propia arquitectura del mainframe ha evolucionado por sí misma para llegar a este punto sin traumas: IBM Corporation 21/02/ de 131

Bechtle Solutions Servicios Profesionales

Bechtle Solutions Servicios Profesionales Soluciones Tecnología Bechtle Solutions Servicios Profesionales Fin del servicio de soporte técnico de Windows Server 2003 No hacer nada puede ser un riesgo BECHTLE Su especialista en informática Ahora

Más detalles

Soluciones innovadoras para optimizar su infraestructura TI. Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM

Soluciones innovadoras para optimizar su infraestructura TI. Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM Soluciones innovadoras para optimizar su infraestructura TI Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM Características principales Tenga éxito en su negocio simplemente con

Más detalles

Guía de uso del Cloud Datacenter de acens

Guía de uso del Cloud Datacenter de acens guíasdeuso Guía de uso del Cloud Datacenter de Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Un Data Center o centro de datos físico es un espacio utilizado para alojar

Más detalles

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN Tabla de Contenidos LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN... 1 Tabla de Contenidos... 1 General... 2 Uso de los Lineamientos Estándares...

Más detalles

SEMANA 12 SEGURIDAD EN UNA RED

SEMANA 12 SEGURIDAD EN UNA RED SEMANA 12 SEGURIDAD EN UNA RED SEGURIDAD EN UNA RED La seguridad, protección de los equipos conectados en red y de los datos que almacenan y comparten, es un hecho muy importante en la interconexión de

Más detalles

DE VIDA PARA EL DESARROLLO DE SISTEMAS

DE VIDA PARA EL DESARROLLO DE SISTEMAS MÉTODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS 1. METODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS CICLO DE VIDA CLÁSICO DEL DESARROLLO DE SISTEMAS. El desarrollo de Sistemas, un proceso

Más detalles

Una propuesta de valor para la gran empresa: Atlassian Data Center

Una propuesta de valor para la gran empresa: Atlassian Data Center Artículo de Experto marzo 2015 Mariano Galán Martín Líder tecnológico de Atlassian en atsistemas Una propuesta de empresa: Atlassian Muchas empresas comienzan utilizando JIRA en un pequeño departamento

Más detalles

System Center. la plataforma para una gestión ágil de los entornos de TI IDG COMMUNICATIONS, S.A.

System Center. la plataforma para una gestión ágil de los entornos de TI IDG COMMUNICATIONS, S.A. la plataforma para una gestión ágil de los entornos de TI System Center la plataforma para una gestión ágil de los entornos de TI Introducción En la actualidad son ya muchas las empresas que están experimentando

Más detalles

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los

Más detalles

Windows Server 2012: Infraestructura de Escritorio Virtual

Windows Server 2012: Infraestructura de Escritorio Virtual Windows Server 2012: Infraestructura de Escritorio Virtual Módulo 1: Application Virtualization Módulo del Manual Autores: James Hamilton-Adams, Content Master Publicado: 5 de Octubre 2012 La información

Más detalles

Cómo elegir tu SOFTWARE DE GESTIÓN?

Cómo elegir tu SOFTWARE DE GESTIÓN? Cómo elegir tu SOFTWARE DE GESTIÓN? 00 Introducción Tu empresa está en expansión y has decidido integrar todas las áreas de tu negocio para seguir creciendo. Has iniciado la búsqueda de un software de

Más detalles

Arquitectura de sistema de alta disponibilidad

Arquitectura de sistema de alta disponibilidad Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los

Más detalles

Operación 8 Claves para la ISO 9001-2015

Operación 8 Claves para la ISO 9001-2015 Operación 8Claves para la ISO 9001-2015 BLOQUE 8: Operación A grandes rasgos, se puede decir que este bloque se corresponde con el capítulo 7 de la antigua norma ISO 9001:2008 de Realización del Producto,

Más detalles

Resumen de la solución SAP SAP Technology SAP Afaria. Gestión de la movilidad empresarial para mayor ventaja competitiva

Resumen de la solución SAP SAP Technology SAP Afaria. Gestión de la movilidad empresarial para mayor ventaja competitiva de la solución SAP SAP Technology SAP Afaria Gestión de la movilidad empresarial para mayor ventaja competitiva Simplificar la gestión de dispositivos y aplicaciones Simplificar la gestión de dispositivos

Más detalles

Mejores prácticas para el éxito de un sistema de información. Uno de los problemas de información dentro de las empresas es contar con datos

Mejores prácticas para el éxito de un sistema de información. Uno de los problemas de información dentro de las empresas es contar con datos ANEXO VI. Mejores prácticas para el éxito de un sistema de información Uno de los problemas de información dentro de las empresas es contar con datos importantes del negocio y que éstos estén aislados

Más detalles

Symantec Backup Exec System Recovery 7.0 Server Edition. Recuperación de sistemas en cuestión de minutos, en lugar de en horas o días

Symantec Backup Exec System Recovery 7.0 Server Edition. Recuperación de sistemas en cuestión de minutos, en lugar de en horas o días PRINCIPALES VENTAJAS TANGIBLES Recuperación de sistemas Windows completos en cuestión de minutos, en lugar de en horas o días Symantec ha demostrado de manera pública y en reiteradas ocasiones que Backup

Más detalles

WINDOWS 2008 7: COPIAS DE SEGURIDAD

WINDOWS 2008 7: COPIAS DE SEGURIDAD 1.- INTRODUCCION: WINDOWS 2008 7: COPIAS DE SEGURIDAD Las copias de seguridad son un elemento fundamental para que el trabajo que realizamos se pueda proteger de aquellos problemas o desastres que pueden

Más detalles

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. UNIVERSIDAD DE CARABOBO FACULTAD DE CIENCIA Y TECNOLOGÍA DIRECCION DE EXTENSION COORDINACION DE PASANTIAS Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. Pasante:

Más detalles

CAPÍTULO 1 Instrumentación Virtual

CAPÍTULO 1 Instrumentación Virtual CAPÍTULO 1 Instrumentación Virtual 1.1 Qué es Instrumentación Virtual? En las últimas décadas se han incrementado de manera considerable las aplicaciones que corren a través de redes debido al surgimiento

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

I INTRODUCCIÓN. 1.1 Objetivos

I INTRODUCCIÓN. 1.1 Objetivos I INTRODUCCIÓN 1.1 Objetivos En el mundo de la informática, la auditoría no siempre es aplicada en todos las empresas, en algunos de los casos son aplicadas por ser impuestas por alguna entidad reguladora,

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets

Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets 1 de 12 Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets 3 Bienvenida. 4 Objetivos. 5 Interacciones de Negocios

Más detalles

5 formas de mejorar su negocio con COMPUTACIÓN EN LA NUBE

5 formas de mejorar su negocio con COMPUTACIÓN EN LA NUBE 5 formas de mejorar su negocio con COMPUTACIÓN EN LA NUBE Julio 2012 Introducción. Cada empresa y cada empresario ha entendido que, si hay una constante, ésta es el cambio. Día a día, los negocios se ponen

Más detalles

Norma ISO 14001: 2015

Norma ISO 14001: 2015 Norma ISO 14001: 2015 Sistema de Gestión Medioambiental El presente documento es la versión impresa de la página www.grupoacms.com Si desea más información sobre la Norma ISO 14001 u otras normas relacionadas

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE AÑO: 2010 Qué es un servidor Blade? Blade Server es una arquitectura que ha conseguido integrar en

Más detalles

Anexo I. Politicas Generales de Seguridad del proyecto CAT

Anexo I. Politicas Generales de Seguridad del proyecto CAT Anexo I Politicas Generales de Seguridad del proyecto CAT 1 Del Puesto de Servicio. Se requiere mantener el Puesto de Servicio: a) Disponible, entendiendo por ello que el Puesto de Servicio debe estar

Más detalles

e-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red.

e-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red. Comercio electrónico. (e-commerce) Las empresas que ya están utilizando la red para hacer comercio ven como están cambiando las relaciones de la empresa con sus clientes, sus empleados, sus colaboradores

Más detalles

SOLUCIÓN HOSPEDADA. Introducción a los modelos de asociación de partners de Microsoft Dynamics CRM

SOLUCIÓN HOSPEDADA. Introducción a los modelos de asociación de partners de Microsoft Dynamics CRM SOLUCIÓN HOSPEDADA Introducción a los modelos de asociación de partners de Microsoft Dynamics CRM Aprovechar el ecosistema de Microsoft para el éxito de CRM hospedado Microsoft Dynamics CRM ofrece a clientes

Más detalles

SISTEMA DE PAPELES DE TRABAJO PARA AUDITORÍA SPT AUDIT

SISTEMA DE PAPELES DE TRABAJO PARA AUDITORÍA SPT AUDIT SISTEMA DE PAPELES DE TRABAJO PARA AUDITORÍA SPT AUDIT INTRODUCCIÓN La documentación de auditoría ó papeles de trabajo son el respaldo que tiene el auditor para registrar los procedimientos aplicados,

Más detalles

Módulo 7: Los activos de Seguridad de la Información

Módulo 7: Los activos de Seguridad de la Información Módulo 7: Los activos de Seguridad de la Información Se explica en este tema cómo deben abordarse la elaboración de un inventario de activos que recoja los principales activos de información de la organización,

Más detalles

LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS

LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS Los clientes compran un servicio basandose en el valor que reciben en comparacion con el coste en el que incurren. Por, lo tanto, el objetivo a largo plazo

Más detalles

Prácticas ITIL para un mejor flujo de trabajo en el helpdesk

Prácticas ITIL para un mejor flujo de trabajo en el helpdesk Prácticas ITIL para un mejor flujo de trabajo en el helpdesk Se diferencia tres partes de gestión para mejorar la resolución de las incidencias de soporte técnico según el marco ITIL: 1. Gestión de Incidencias

Más detalles

SISTEMAS Y MANUALES DE LA CALIDAD

SISTEMAS Y MANUALES DE LA CALIDAD SISTEMAS Y MANUALES DE LA CALIDAD NORMATIVAS SOBRE SISTEMAS DE CALIDAD Introducción La experiencia de algunos sectores industriales que por las características particulares de sus productos tenían necesidad

Más detalles

Ofrezca la nueva tendencia de innovación empresarial con un entorno de red abierta

Ofrezca la nueva tendencia de innovación empresarial con un entorno de red abierta Descripción general de la solución Ofrezca la nueva tendencia de innovación empresarial con un entorno de red abierta Lo que aprenderá A medida que tecnologías como la nube, la movilidad, los medios sociales

Más detalles

0. Introducción. 0.1. Antecedentes

0. Introducción. 0.1. Antecedentes ISO 14001:2015 0. Introducción 0.1. Antecedentes Conseguir el equilibrio entre el medio ambiente, la sociedad y la economía está considerado como algo esencial para satisfacer las necesidades del presente

Más detalles

La Digitalización del Ayuntamiento. Gestión Integral

La Digitalización del Ayuntamiento. Gestión Integral prosoft.es La Digitalización del Ayuntamiento. Gestión Integral Desarrollamos su proyecto para el Fondo de Inversión Local El Real Decreto-ley, que crea el Fondo de 5.000 millones de euros, fue aprobado

Más detalles

Infraestructura Tecnológica. Sesión 8: Configurar y administrar almacenamiento virtual

Infraestructura Tecnológica. Sesión 8: Configurar y administrar almacenamiento virtual Infraestructura Tecnológica Sesión 8: Configurar y administrar almacenamiento virtual Contextualización Como sabemos, actualmente los servicios y medios de almacenamiento de información son muy variados,

Más detalles

Getronics gana flexibilidad y competitividad en servicios de TI con soluciones de CA Technologies

Getronics gana flexibilidad y competitividad en servicios de TI con soluciones de CA Technologies CUSTOMER SUCCESS STORY Getronics gana flexibilidad y competitividad en servicios de TI con soluciones de CA Technologies PERFIL DEL CLIENTE Industria: Servicios de TI Compañía: Getronics Empleados: 2.000

Más detalles

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia.

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia. DISCOS RAID Raid: redundant array of independent disks, quiere decir conjunto redundante de discos independientes. Es un sistema de almacenamiento de datos que utiliza varias unidades físicas para guardar

Más detalles

Alta disponibilidad de los servicios en la SGTIC del MEH

Alta disponibilidad de los servicios en la SGTIC del MEH Alta disponibilidad de los servicios en la SGTIC del MEH Emilio Raya López Marcos Llama Pérez Página 1 de 1 Página 2 de 2 Índice 1. INTRODUCCIÓN... 4 2. IMPLANTACIÓN DE CLUSTERS GEOGRÁFICOS CON MICROSOFT

Más detalles

Equipos a Presión. Condiciones de Seguridad Industrial y Laboral. Marco Normativo. Calderas. Lugo, 25 de octubre de 2011 1 CAMPAÑA EUROPEA SOBRE MANTENIMIENTO SEGURO Principales Objetivos: Sensibilizar

Más detalles

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS AUTORÍA JOSEFA PÉREZ DOMÍNGUEZ TEMÁTICA NUEVAS TECNOLOGIAS ETAPA CICLOS FORMATIVOS DE GRADO SUPERIOR DE INFORMÁTICA Resumen En esta publicación se

Más detalles

Cómo hacer backups en ambientes virtualizados?

Cómo hacer backups en ambientes virtualizados? Cada vez más las empresas están migrando a las estructuras virtuales, pero la concentración de la información en este tipo de infraestructuras obliga a la utilización de soluciones destinadas a proteger

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

Traslado de Data Center

Traslado de Data Center Traslado de Data Center Traslado de Data Center Análisis y metodología garantizan el éxito en el traslado de los Data Center Planificar, analizar y documentar son claves a la hora de realizar la migración

Más detalles

Empresa Financiera Herramientas de SW Servicios

Empresa Financiera Herramientas de SW Servicios Empresa Financiera Herramientas de SW Servicios Resulta importante mencionar que ésta es una empresa cuya actividad principal está enfocada a satisfacer las necesidades financieras de los clientes, a través

Más detalles

TeCS. Sistema de ayuda a la gestión del desarrollo de producto cerámico

TeCS. Sistema de ayuda a la gestión del desarrollo de producto cerámico TeCS Sistema de ayuda a la gestión del desarrollo de producto cerámico En el origen de todo proyecto de éxito se halla la capacidad de encauzar y estructurar la creatividad TeCS ofrece un entorno de fácil

Más detalles

Las Relaciones Públicas en el Marketing social

Las Relaciones Públicas en el Marketing social Las Relaciones Públicas en el Marketing social El marketing social es el marketing que busca cambiar una idea, actitud o práctica en la sociedad en la que se encuentra, y que intenta satisfacer una necesidad

Más detalles

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation.

Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. WINDOWS Windows, Es un Sistema Operativo. Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. Dentro de los tipos de Software es un tipo de software de Sistemas. Windows

Más detalles

FUENTES SECUNDARIAS INTERNAS

FUENTES SECUNDARIAS INTERNAS FUENTES SECUNDARIAS INTERNAS Las fuentes secundarias son informaciones que se encuentran ya recogidas en la empresa, aunque no necesariamente con la forma y finalidad que necesita un departamento de marketing.

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

Test de intrusión (Penetration Test) Introducción

Test de intrusión (Penetration Test) Introducción Test de intrusión (Penetration Test) Introducción Nos encontramos en una época en donde las empresas están sufriendo ataques informáticos cada vez en forma más asidua, basta con ver los informes anuales

Más detalles

Norma ISO 9001: 2008. Sistema de Gestión de la Calidad

Norma ISO 9001: 2008. Sistema de Gestión de la Calidad Norma ISO 9001: 2008 Sistema de Gestión de la Calidad Hemos recibido una solicitud de información a través de nuestra Web (www.grupoacms.com). Próximamente un comercial de ACMS se pondrá en contacto con

Más detalles

IAP 1009 - TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO)

IAP 1009 - TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO) IAP 1009 - TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO) Introducción 1. Como se indica en la Norma Internacional de Auditoría 401, "Auditoría en un contexto informatizado", los objetivos globales

Más detalles

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES Tema: Cartas de Servicios Primera versión: 2008 Datos de contacto: Evaluación y Calidad. Gobierno de Navarra. evaluacionycalidad@navarra.es

Más detalles

Administración de infraestructura IT

Administración de infraestructura IT Administración de infraestructura IT MANAGED IT INFRASTRUCTURE Administración de infraestructura IT No importa cuál sea el tamaño su negocio, la infraestructura IT juega un papel crítico en el mantenimiento

Más detalles

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS 5 ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS Contenido: 5.1 Conceptos Generales Administración de Bases de Datos Distribuidas 5.1.1 Administración la Estructura de la Base de Datos 5.1.2 Administración

Más detalles

Cuándo y qué virtualizar? Cuándo y qué virtualizar? 1

Cuándo y qué virtualizar? Cuándo y qué virtualizar? 1 Cuándo y qué virtualizar? Cuándo y qué virtualizar? 1 Por qué surge la virtualización? En proyectos de infraestructuras informáticas muchos responsables de IT se sienten más confortables con diseños basados

Más detalles

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura 1. Conceptos Generales 2. Modelo Entidad / Relación 3. Modelo Relacional 4. Integridad de datos relacional 5. Diseño de bases de datos relacionales 6. Lenguaje de consulta estructurado (SQL) 1.1.- Objetivos

Más detalles

Nuevas tendencias: Virtualización de computadores / servidores

Nuevas tendencias: Virtualización de computadores / servidores Nuevas tendencias: Virtualización de computadores / servidores Expositor: Ing. José Wu Chong Laboratorio de Internetworking FIA DATA Agenda Qué es un servidor? Qué servicios hay en la red? Qué es Virtualización?

Más detalles

CONSIDERACIONES TÉCNICAS SOBRE LOS SERVICIOS GESTIONADOS DE COPIA DE SEGURIDAD DE STORAGE NETWORKING

CONSIDERACIONES TÉCNICAS SOBRE LOS SERVICIOS GESTIONADOS DE COPIA DE SEGURIDAD DE STORAGE NETWORKING CONSIDERACIONES TÉCNICAS SOBRE LOS SERVICIOS GESTIONADOS DE COPIA DE SEGURIDAD DE STORAGE NETWORKING SERVICIOS GESTIONADOS DE COPIA DE SEGURIDAD REMOTA. Storage Networking ofrece al mercado la vía más

Más detalles

Oficina Online. Manual del administrador

Oficina Online. Manual del administrador Oficina Online Manual del administrador 2/31 ÍNDICE El administrador 3 Consola de Administración 3 Administración 6 Usuarios 6 Ordenar listado de usuarios 6 Cambio de clave del Administrador Principal

Más detalles

Implementando un ERP La Gestión del Cambio

Implementando un ERP La Gestión del Cambio Artículos> Implementando un ERP - La Gestión del Cambio Artículo Implementando un ERP La Gestión del Cambio 1 Contenido Sumario Ejecutivo 3 Los sistemas ERP flexibilizan la gestión de la empresa y su cadena

Más detalles

Soporte Técnico de Software HP

Soporte Técnico de Software HP Soporte Técnico de Software HP Servicios Tecnológicos HP Servicios contractuales Datos técnicos El Soporte Técnico de Software HP ofrece servicios integrales de soporte remoto de para los productos de

Más detalles

SISTEMAS DE INFORMACIÓN II TEORÍA

SISTEMAS DE INFORMACIÓN II TEORÍA CONTENIDO: EL PROCESO DE DISEÑO DE SISTEMAS DISTRIBUIDOS MANEJANDO LOS DATOS EN LOS SISTEMAS DISTRIBUIDOS DISEÑANDO SISTEMAS PARA REDES DE ÁREA LOCAL DISEÑANDO SISTEMAS PARA ARQUITECTURAS CLIENTE/SERVIDOR

Más detalles

La Pirámide de Solución de TriActive TRICENTER

La Pirámide de Solución de TriActive TRICENTER Información sobre el Producto de TriActive: Página 1 Documento Informativo La Administración de Sistemas Hecha Simple La Pirámide de Solución de TriActive TRICENTER Información sobre las Soluciones de

Más detalles

Utilidades de la base de datos

Utilidades de la base de datos Utilidades de la base de datos Desde esta opcion del menú de Access, podemos realizar las siguientes operaciones: Convertir Base de datos Compactar y reparar base de datos Administrador de tablas vinculadas

Más detalles

NBG Asesores Abogados

NBG Asesores Abogados Caso de Éxito www.sagedespachosprofesionales.com despachosprofesionales@sage.es 902 01 34 49 Caso de Éxito Las actualizaciones periódicas de Sage Profesional Class a nuevas normativas nos permiten atender

Más detalles

Introducción a las redes de computadores

Introducción a las redes de computadores Introducción a las redes de computadores Contenido Descripción general 1 Beneficios de las redes 2 Papel de los equipos en una red 3 Tipos de redes 5 Sistemas operativos de red 7 Introducción a las redes

Más detalles

UNIVERSIDAD DE SALAMANCA

UNIVERSIDAD DE SALAMANCA UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA

Más detalles

Transacciones y bloqueos en SQL-Server

Transacciones y bloqueos en SQL-Server Transacciones y bloqueos en SQL-Server (Información para el uso desde Axapta) Introducción En este documento vamos a intentar explicar cuatro conceptos básicos acerca de las transacciones y los bloqueos

Más detalles

Hostaliawhitepapers. Las ventajas de los Servidores dedicados. www.hostalia.com. Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199

Hostaliawhitepapers. Las ventajas de los Servidores dedicados. www.hostalia.com. Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 Las ventajas de los Servidores dedicados Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com A la hora de poner en marcha una aplicación web debemos contratar un servicio

Más detalles

CONCEPTOS GENERALES SOBRE SEGURIDAD INFORMATICA

CONCEPTOS GENERALES SOBRE SEGURIDAD INFORMATICA CONCEPTOS GENERALES SOBRE SEGURIDAD INFORMATICA Hoy en día las redes de comunicaciones son cada vez mas importantes para las organizaciones ya que depende de estás, para que exista un manejo adecuado de

Más detalles

ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE

ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE ISO 9001:2000 DOCUMENTO INFORMATIVO DOCUMENTO ELABORADO POR CHRISTIAN NARBARTE PARA EL IVECE MARZO 2007 Este documento contesta las preguntas más frecuentes que se plantean las organizaciones que quieren

Más detalles

Estado: Aprobación Versión: 2.0 Fecha: 04/11/2009 Página 1 de 9 Documento: A5_Politica_Seguridad_V2

Estado: Aprobación Versión: 2.0 Fecha: 04/11/2009 Página 1 de 9 Documento: A5_Politica_Seguridad_V2 Estado: Aprobación Versión: 2.0 Fecha: 04/11/2009 Página 1 de 9 INDICE 1. DECLARACIÓN DE LA POLÍTICA DE SEGURIDAD DE LA INFORMACIÓN... 3 2. POLÍTICA DE SEGURIDAD... 4 2.1. OBJETIVOS... 4 2.2. ALCANCE...

Más detalles

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta Configuración de una red con Windows Aunque existen múltiples sistemas operativos, el más utilizado en todo el mundo sigue siendo Windows de Microsoft. Por este motivo, vamos a aprender los pasos para

Más detalles

Infraestructura Tecnológica. Sesión 1: Infraestructura de servidores

Infraestructura Tecnológica. Sesión 1: Infraestructura de servidores Infraestructura Tecnológica Sesión 1: Infraestructura de servidores Contextualización La infraestructura de cualquier servicio o mecanismo es importante, define el funcionamiento de los elementos en que

Más detalles

BYOD - Retos de seguridad

BYOD - Retos de seguridad BYOD - Retos de seguridad ÍNDICE Introducción 3 Manejo de la información 11 Qué es BYOD? Dispositivos más utilizados Usos de los dispositivos móviles 4 5 6 Gestión de aplicaciones y dispositivos Elegir

Más detalles

CAPITULO IV. HERRAMIENTAS DE CÓDIGO ABIERTO

CAPITULO IV. HERRAMIENTAS DE CÓDIGO ABIERTO CAPITULO IV. HERRAMIENTAS DE CÓDIGO ABIERTO En la actualidad la mayoría de las grandes empresas cuentan con un sin número de servicios que ofrecen a sus trabajadores y clientes. Muchos de estos servicios

Más detalles

Escritorios virtuales

Escritorios virtuales Escritorios virtuales Italo E. Ayesteran R. Con la adopción de la tecnología de Computación en la nube (Cloud Computing), las soluciones de escritorio virtual representan una de las herramientas más poderosas

Más detalles

Condiciones de servicio de Portal Expreso RSA

Condiciones de servicio de Portal Expreso RSA Condiciones de servicio de Portal Expreso RSA Le damos la bienvenida a Portal Expreso RSA 1. Su relación con Portal Expreso RSA 1.1 El uso que el usuario haga de la información, software, servicios prestados

Más detalles

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos. RAIDS MODO LINEAL Es un tipo de raid que muestra lógicamente un disco pero se compone de 2 o más discos. Solamente llena el disco 0 y cuando este está lleno sigue con el disco 1 y así sucesivamente. Este

Más detalles

Windows XP Instalación y configuración de hardware

Windows XP Instalación y configuración de hardware Servicio de Informática Atención al Usuario Windows XP Instalación y configuración de hardware Sección de Atención al Usuario Ultima modificación: 01 de Julio de 2.003 Instalación y configuración de hardware

Más detalles

Windows Server Hyper-V

Windows Server Hyper-V Windows Server Diseño, implantación y administración La plataforma de virtualización de Microsoft La virtualización de servidores ha sido, en la última década, una de las principales áreas de inversión

Más detalles

Gestión de la Prevención de Riesgos Laborales. 1

Gestión de la Prevención de Riesgos Laborales. 1 UNIDAD Gestión de la Prevención de Riesgos Laborales. 1 FICHA 1. LA GESTIÓN DE LA PREVENCIÓN DE RIESGOS LABORALES. FICHA 2. EL SISTEMA DE GESTIÓN DE LA PREVENCIÓN DE RIESGOS LABORALES. FICHA 3. MODALIDAD

Más detalles

Mantenimiento de usuarios y grupos Gestión de políticas y estándares Administración de aplicaciones Gestión de servidores Soporte técnico

Mantenimiento de usuarios y grupos Gestión de políticas y estándares Administración de aplicaciones Gestión de servidores Soporte técnico Somos una compañía del área de tecnología informática. Es nuestro objetivo el transformar ideas y necesidades en soluciones tecnológicas y negocios apropiados en beneficio de usted, nuestro cliente. Le

Más detalles

Control del Stock, aprovisionamiento y distribución a tiendas.

Control del Stock, aprovisionamiento y distribución a tiendas. Control del Stock, aprovisionamiento y distribución a tiendas. Tan importante como el volumen de ventas y su rentabilidad, el control del stock supone uno de los pilares fundamentales en el éxito de una

Más detalles

Implantación de SAP for Banking para la Sección de Crédito de Cofares

Implantación de SAP for Banking para la Sección de Crédito de Cofares Historia de Éxito de Clientes SAP Distribución Farmacéutica Cofares Implantación de SAP for Banking para la Sección de Crédito de Cofares Partner de implementación 2 Historia de Éxito de Clientes SAP Distribución

Más detalles

APOLO GESTION INTEGRAL.

APOLO GESTION INTEGRAL. APOLO GESTION INTEGRAL. APOLO Gestión es una aplicación realizada en Visual Studio, y apoyada en una potente base de datos SQL, que le proporciona grandes ventajas a la hora de trabajar tanto sobre redes

Más detalles

I. E. S. Cristóbal de Monroy. DEPARTAMENTO: Informática. MATERIA: Sistemas Operativos en Red. NIVEL: 2º Sistemas Microinformáticos y Redes

I. E. S. Cristóbal de Monroy. DEPARTAMENTO: Informática. MATERIA: Sistemas Operativos en Red. NIVEL: 2º Sistemas Microinformáticos y Redes DEPARTAMENTO: Informática MATERIA: Sistemas Operativos en Red NIVEL: 2º Sistemas Microinformáticos y Redes 1. Objetivos. Competencias Profesionales, Personales y Sociales 2.1 Objetivos del ciclo formativo

Más detalles

Introducción. Definición de los presupuestos

Introducción. Definición de los presupuestos P o r q u é e l p r e s u p u e s t o d e b e s e r e l c a m i n o a s e g u i r p a r a g a r a n t i z a r e l é x i t o d e s u e m p r e s a? Luis Muñiz Economista Introducción El aumento de la incertidumbre

Más detalles

Gestión de Permisos. Bizagi Suite. Copyright 2014 Bizagi

Gestión de Permisos. Bizagi Suite. Copyright 2014 Bizagi Gestión de Permisos Bizagi Suite Gestión de Permisos 1 Tabla de Contenido Gestión de Permisos... 3 Definiciones... 3 Rol... 3 Perfil... 3 Permiso... 3 Módulo... 3 Privilegio... 3 Elementos del Proceso...

Más detalles

1.8 TECNOLOGÍA DE LA INFORMACIÓN

1.8 TECNOLOGÍA DE LA INFORMACIÓN Objetivo General: 1.8 TECNOLOGÍA DE LA INFORMACIÓN Establecer una infraestructura y plataforma tecnológica y de sistemas de información, y definir las políticas, estrategias y directrices para su implantación

Más detalles

MANUAL COPIAS DE SEGURIDAD

MANUAL COPIAS DE SEGURIDAD MANUAL COPIAS DE SEGURIDAD Índice de contenido Ventajas del nuevo sistema de copia de seguridad...2 Actualización de la configuración...2 Pantalla de configuración...3 Configuración de las rutas...4 Carpeta

Más detalles

Ventajas del almacenamiento de datos de nube

Ventajas del almacenamiento de datos de nube Ventajas del almacenamiento de datos de nube Almacenar grandes volúmenes de información en una red de área local (LAN) es caro. Dispositivos de almacenamiento electrónico de datos de alta capacidad como

Más detalles

MODERNIZANDO PCN Y RECUPERACION DE DESASTRES UTILIZANDO VIRTUALIZACION Y LA NUBE

MODERNIZANDO PCN Y RECUPERACION DE DESASTRES UTILIZANDO VIRTUALIZACION Y LA NUBE MODERNIZANDO PCN Y RECUPERACION DE DESASTRES UTILIZANDO VIRTUALIZACION Y LA NUBE Este material y todos y cada uno de los contenidos en él incorporados constituyen una adaptación de las conferencias de

Más detalles

AULAS VIRTUALES EDUCATIVAS

AULAS VIRTUALES EDUCATIVAS AULAS VIRTUALES EDUCATIVAS Que es la virtualización de sistemas? La mayoría de pc s y servidores tiene el procesador y la memoria infrautilizados. La virtualización nos permite instalar varias maquinas

Más detalles