Particiones Logicas y Fisicas en Mainframes

10
09 PARTICIONES LOGICAS Y FISICAS EN MAINFRAMES TRABAJO DE INVESTIGACION FINAL Walter Cerrudo

Transcript of Particiones Logicas y Fisicas en Mainframes

Page 1: Particiones Logicas y Fisicas en Mainframes

09

PARTICIONES LOGICAS Y

FISICAS EN MAINFRAMES TRABAJO DE INVESTIGACION FINAL

Walter Cerrudo

Page 2: Particiones Logicas y Fisicas en Mainframes

PARTICIONAMIENTO Una de las tecnologías utilizadas para realizar la virtualización (Ver Capitulo II) es realizar el

particionamiento de los servidores tanto a nivel lógico como físico, para rentabilizar su

rendimiento al máximo.

Las particiones, físicas o lógicas, son mecanismos que permiten aislar ambientes dentro de

un servidor. Cuando una aplicación está aislada dentro de una partición, es capaz de hacer

uso dedicado de los recursos del servidor, por separado o en grupo.

Las Particiones, aunque simple en concepto, han demostrado ser difíciles de desarrollar y

desplegar.

PORQUE PARTICIONAR

En el mundo de los Mainframes el particionado se ha aplicado desde hace ya muchos años

utilizando MVS y Maquinas Virtuales (MV).

Hoy en día existe una demanda de sistemas de alta gama, que proporcionen una mayor

flexibilidad y la posibilidad de subdividirse en particiones más pequeñas, que son capaces de

ejecutar una versión de sistema operativo, o un conjunto especifico de aplicaciones.

Las principales razones de un gran sistema de particiones son las siguientes:

Consolidación de Servidores: permite ejecutar múltiples aplicaciones que

anteriormente residían en sistemas físicos diferentes, proporcionando así

beneficios como la reducción de costos, ahorro de espacio y reducción de las

operaciones de gestión.

Producción y entornos de producción: el particionamiento permite prescindir de

equipos físicos necesarios para la prueba de nuevas versiones de aplicaciones, ya

que estas pueden realizarse en los mismos equipos físicos en que se desarrollan.

Esto evita comprar de computadoras y facilita las migraciones de aplicaciones.

Aumento de la Utilización del Hardware: permite optimizar la utilización del

hardware, la ejecución de varias instancias de una aplicación en particiones

separadas más pequeñas puede proporcionar un mejor rendimiento que ejecutar

una sola instancia de la aplicación.

Aislamiento de Aplicaciones: permite ejecutar instancias de aplicaciones en

particiones separadas, asegurando de que no habrá interferencia entre una y otra,

en caso de fallo. También previene el consumo excesivo de recursos que otras

aplicaciones puedan necesitar.

Mayo flexibilidad en la asignación de recursos: las necesidades de recursos de un

trabajo que varían a lo largo del tiempo pueden administrarse fácilmente dentro

de una partición de manera de satisfacer las distintas demandas.

VIRTUALIZACIÓN

Page 3: Particiones Logicas y Fisicas en Mainframes

La virtualización es una tecnología que fue desarrollada por IBM en los años 60s. La primera

computadora diseñada específicamente para virtualización fue el mainframe IBM S/360

Modelo 67. Esta característica de virtualización ha sido un Standard de la línea que siguió

(IBM S/370) y sus sucesoras, incluyendo la serie actual.

Durante los 60s y los 70s fueron muy populares, pero las máquinas virtuales desapareciero n

prácticamente durante los 80s y los 90s. No era hasta el final del 90s que volvió a resurgir la

tecnología de las maquinas virtuales y no solamente en el área tradicional de servidores sino

también en muchas otras áreas del mundo de la computación:

“En la actualidad asistimos a su eclosión gracias al fuerte descenso del coste total de

propiedad (TCO) atribuible a tecnologías vía hardware como Intel VT, AMD-V Pacifica, NPIV

y vía software VMware, XEN, Microsoft Hyper-V, VirtualIron.”

La virtualización es un término que se refiere a la abstracción de los recursos de de una

computadora llamada Hypervisor o VMM (Virtual Machine Monitor) que crea una capa de la

abstracción entre el hardware de la maquina física (host) y el sistema operativo de la

maquina virtual (virtual machine, guest). El VMM maneja los recursos de las maquinas físicas

subyacentes (designadas por el computador central) de una manera que el usuario pueda

crear varias maquinas virtuales presentando a cada una de ellas una interfaz del hardware

que sea compatible con el sistema operativo elegido.

Esta capa de software (VMM) maneja, gestiona y arbitra los cuatro recursos principales de

una computadora (CPU, Memoria, Red, Almacenamiento) y así podrá repartir

dinámicamente dichos recursos entre todas las maquinas virtuales definidas en el

computador central.

La maquina virtual generalmente es un sistema operativo completo que corre como si

estuviera instalado en una plataforma de hardware autónoma. Típicamente muchas

máquinas virtuales son simuladas en un computador central. Para que el sistema operativo

“guest” funcione, la simulación debe ser lo suficientemente robusta (dependiendo del tipo de

virtualización).

TIPOS DE VIRTUALIZACIÓN

EMULACIÓN O SIMULACIÓN

La máquina virtual simula un hardware completo, admitiendo un sistema operativo “guest”

sin modificar para una CPU completamente diferente. Este enfoque fue muy utilizado para

permitir la creación de software para nuevos procesadores antes de que estuvieran

físicamente disponibles. Por ejemplo Bochs, PearPC, Qemu sin aceleración, y el emulador

Hércules. La emulación es puesta en práctica utilizando una variedad de técnicas, desde state

machines hasta el uso de la recopilación dinámica en una completa plataforma virtual.

VIRTUALIZACIÓN NATIVA Y VIRTUALIZACIÓN COMPLETA

La máquina virtual simula un hardware suficiente para permitir un sistema operativo “guest”

sin modificar (uno diseñado para la misma CPU) para correr de forma aislada. Típicamente,

Page 4: Particiones Logicas y Fisicas en Mainframes

muchas instancias pueden correr al mismo tiempo. Este enfoque fue el pionero en 1966 con

CP-40 y CP[-67]/CMS, predecesores de la familia de máquinas virtuales de IBM. Algunos

ejemplos: VMware Workstation, VMware Server, Parallels Desktop, Virtual Iron, Adeos, Mac-

on-Linux, Win4BSD, Win4Lin Pro y z/VM.

VIRTUALIZACIÓN PARCIAL

La máquina virtual simula múltiples instancias de mucho (pero no de todo) del entorno

subyacente del hardware, particularmente address spaces. Este entorno admite compartir

recursos y aislar procesos, pero no permite instancias separadas de sistemas operativos

“guest”. Aunque no es vista como dentro de la categoría de máquina virtual, históricamente

éste fue un importante acercamiento, y fue usado en sistemas como CTSS, el experimental

IBM M44/44X, y podría decirse que en sistemas como OS/VS1, OS/VS2 y MVS.

PARAVIRTUALIZACIÓN

La máquina virtual no necesariamente simula un hardware, en cambio ofrece un API especial

que solo puede usarse mediante la modificación del sistema operativo “guest”. La llamada

del sistema al hypervisor tiene el nombre de “hypercall” en Xen y Parallels Workstation; está

implementada vía el hardware instruction DIAG (“diagnose”) en el CMS de VM en el caso de

IBM (este fue el origen del término hypervisor). Ejemplo: VMware ESX Server, Win4Lin 9x y

z/VM.

VIRTUALIZACIÓN A NIVEL DEL SISTEMA OPERATIVO

Virtualizar un servidor físico a nivel del sistema operativo permitiendo múltiples servidores

virtuales aislados y seguros correr en un solo servidor físico. El entorno del sistema operativo

“guest” comparte el mismo sistema operativo que el del sistema “host” (el mismo kernel del

sistema operativo es usado para implementar el entorno del “guest”). Las aplicaciones que

corren en un entorno “guest” dado lo ven como un sistema autónomo. Ejemplos: Linux-

VServer, Virtuozzo, OpenVZ, Solaris Containers y FreeBSD Jails.

VIRTUALIZACIÓN DE APLICACIONES

Consiste en el hecho de correr una desktop o una aplicación de server localmente, usando los

recursos locales, en una máquina virtual apropiada. Esto contrasta con correr la aplicación

como un software local convencional (software que fueron “instalados” en el sistema).

Semejantes aplicaciones virtuales corren en un pequeño entorno virtual que contienen los

componentes necesarios para ejecutar, como entradas de registros, archivos, entornos

variables, elementos de uso de interfaces y objetos globales. Este entorno virtual actúa como

una capa entre la aplicación y el sistema operativo, y elimina los conflictos entre aplicaciones

y entre las aplicaciones y el sistema operativo. Los ejemplos incluyen el Java Virtual Machine

de Sun, Softricity, Thinstall, Altiris y Trigence (esta metodología de virtualización es

claramente diferente a las anteriores; solo una pequeña línea divisoria los separa de entornos

de máquinas virtuales como Smalltalk, FORTH, Tel, P-code).

VIRTUALIZACIÓN Y PARTICIONAMIENTO

Page 5: Particiones Logicas y Fisicas en Mainframes

La virtualización de servidores permite optimizar el uso de los recursos (CPUs

principalmente) mediante la asignación dinámica de éstos en un entorno multisistema

operativo, así como aportar un servicio continuado mediante clusters y pagar sólo por lo que

se usa gracias a la solución “utility pricing”. El objetivo de todo ello es consolidar y

automatizar los recursos en tiempo real para un uso optimizado que no sólo aumente el

rendimiento de los servidores, sino que también pueda garantizar la continuidad de negocio.

La virtualización es la solución perfecta a los problemas de infrautilización de servidores

porque mejora el rendimiento y la flexibilidad de éstos, proporcionando, además, una

importante reducción de costes. Si un servidor es capaz, gracias a los particionamientos, de

correr en diferentes sistemas operativos, no sólo se aprovechan mejor sus capacidades, sino

que éstas pueden ser utilizadas en caso de emergencia, cuando, por ejemplo, otro equipo se

estropea, para no interrumpir en ningún momento el servicio.

NPARTITIONS (NODE PARTITIONS) PA R T I C I ON E S F Í S I CA S

Permiten configurar un solo servidor como un servidor grande o como múltiples servidores

más pequeños. Cada partición cuenta con un o mas células (conteniendo procesadores y

memoria) que son asignadas a la partición para uso exclusivo.

Cualquier dispositivo de I/O que se asocie a una célula pertenece a una partición, también es

asignado solo a esa partición.

Puesto que cada nPartition tiene su propio procesador, memoria y recursos de I/O, que

consisten en los recursos de las células afectadas, los recursos se pueden quitar de un

nPartition y agregar a otro sin tener que quitarlo físicamente o agregar hardware. Además,

se puede realizar la creación y la modificación dinámicas de nPartitions.

Gracias a la separación eléctrica, las nPart se encuentran aisladas una de otras, de modo que

las fallas de hardware se limitan a la partición en la que ocurren.

Los nPartitions proporcionan:

Aislamiento de la dotación física, eléctrica y de seguridad.

Granularity de célula.

Flexibilidad de recursos

Cada nPartition posee sus propias instancias de Sistemas Operativos, Aplicaciones y

Usuarios,

Este tipo de tecnología de virtualización le permite:

Aumentar la utilización del servidor (utilizando las células no utilizadas en un

servidor)

Aislamiento de los ambientes de funcionamiento

Mejor disponibilidad de sistema

Page 6: Particiones Logicas y Fisicas en Mainframes

La posibilidad de realizar mantenimiento físico, mientras otras nPartitions siguen

en funcionamiento. Una reconfiguración en una de las particiones no requiere que

se reinicie todo el sistema

Mejore el coste de la propiedad

CARACTERÍSTICAS

Se aplica en la tarjeta celular.

Proporciona aislamiento tanto funcional como eléctrico.

Las nParticiones se pueden seguir subdividiendo mediante el Particionado de

software.

En los servidores que las admitan, las nParticiones pueden ejecutar HP-UX, Linux,

Microsoft Windows o todos estos sistemas operativos (en particiones separadas).

VENTAJAS DE NPARTITIONS

Soporte para Multiple SO, en un servidor pueden correr: HP-UX, Windows, Linux y

OpenVMS.

Capacidad para realizar mantenimiento físico en parte de una nPartitions,

mientras que otros nPartitions seguir corriendo.

Una falla en una de las maquinas virtuales no afecta al resto.

Una maquina virtual no puede acceder a otra, ni al hardware.

Page 7: Particiones Logicas y Fisicas en Mainframes

LPAR (LOGICAL PARTITIONS) PA R T I C I ON E S L ÓG I C A S

LPAR es un subconjunto de recursos de hardware dentro del mismo ordenador, pero

virtualizado. Una máquina física puede dividirse en múltiples LPARs, conviviendo en un

mismo sistema operativo.

La tecnología fue desarrollada inicialmente por separado de Amdahl, Hitachi Data Systems e

IBM para el mainframe de arquitectura ESA/390 a mediados de los años 1980, y continuó

también para zSeries. Sin embargo, IBM más tarde extendió la idea hacia servidores

mainframe, tales como pSeries desde octubre de 2001 e iSeries aunque con distintas

especificaciones técnicas.

IBM tiene una larga historia de liderazgo en el área de la virtualización. Esta no es una nueva tecnología - ha estado alrededor desde 1967 en el mainframe, y fue desarrollada inicialmente para el procesador POWER en 1997. Desde entonces hemos estado refinando la tecnología para hacerla más confiable, escalable y a fin de que sirva mejor para sus necesidades empresariales.

1967 IBM desarrolla el hypervisor que eventualmente se convertiría en VM en el mainframe

1973 IBM anuncia el S/370 modelo 158 y modelo 168, las dos primeras máquinas para realizar particionamiento físico

1987 Se anuncia PR/SM (LPAR en el mainframe)

1990 Se anuncia la familia de ES/9000. Éste es el ultimo mainframe IBM para dar soporte al particionamiento físico

1997 El diseño de POWER LPAR comienza

1999 Se anuncia System i LPAR

200 System i envía soporte de sub-processor LPAR / System p envía soporte total de processor LPAR

2001 Se introduce LPAR en POWER4™ con AIX 5L™ V5.1

2004 Micro Partitioning LPAR y Virtual I/O con POWER5™ y AIX 5L V5.3

2007 IBM anuncia POWER6, los primeros servidores UNIX con Live Partition Mobility

Múltiples sistemas operativos son compatibles con LPARs, incluyendo z/OS, z/VM, z/VSE,

z/TPF, AIX, GNU/Linux (incluyendo Linux en zSeries), y i5/OS. En sistemas de

almacenamiento, tales como el IBM TotalStorage DS8000, pueden permitir que múltiples

instancias virtuales de un array de almacenamiento existan dentro de una misma matriz

física.

Page 8: Particiones Logicas y Fisicas en Mainframes

El particionamiento lógico se realiza principalmente en la capa de hardware. Dos LPARs

puedan tener acceso a la memoria de un chip de memoria, dentro de los rangos de

direcciones de memoria asignadas para que puedan acceder directamente sin solapamiento.

Varios CPU pueden usarse para un LPAR, o ser compartida entre varias, pero sólo por el

mando de un proceso de la segunda partición para operar directamente en la memoria. CPUs

pueden ser dedicados a un único LPAR, o compartidos entre LPARs por separado. Si bien en

Amdahl del MDF es posible configurar una LPAR con ambos compartidos y dedicados CPUs

ya no es posible con mainframes.

En IBM, LPARs son gestionados por la PR/SM instalación. Moderno IBM operar

exclusivamente en modo LPAR, incluso cuando sólo hay una partición lógica en una huella.

Múltiples LPARs pueden formar un Sysplex o Sysplex Paralelo, ya sea en una huella o

propagación a través de múltiples huellas.

En condiciones de seguridad permiten la combinación de múltiples ensayos, el desarrollo,

garantía de calidad, producción y trabajo en el mismo sistema, que ofrece varias ventajas

como disminuir los costos de despliegue más rápido y más comodidad. IBM mainframe

LPARs se Common Criteria EAL5 certificable, lo que equivale a separar físicamente los

servidores, sin conexiones, así que son apropiados para los más altos requisitos de seguridad,

incluidas las de uso militar. Casi todos los mainframes de IBM corren con múltiples LPARs

(hasta 60 en los últimos modelos), IBM System z9 y del sistema Z10 apoyo de hasta 60

LPARs.

VENTAJAS

La primera ventaja de consolidar en un sistema con LPAR es, como ya mencionamos, ahorrar

costes de operación, disminuyendo la complejidad de múltiples servidores, pero

manteniendo una cierta independencia y control en cada una de las particiones.

Esto nos permite contar con diferentes versiones de software, de idioma, de sistema

operativo, y trabajar con diferentes husos horarios y criterios de seguridad en cada partición,

impidiendo además que el consumo de CPU de un país afecte el rendimiento de otro.

Además de los costes de operación, se reducen las necesidades de espacio físico, puede

centralizarse el Centro de Datos, se ahorran costes de licencias de software (IBM sólo nos

cobrará por una copia de OS/400 para todas las particiones) y es posible compartir

dispositivos de backup, consolas, etc.

Permite además redistribuir dinámicamente la CPU (interactiva y batch) asignada a cada

partición, para ello utiliza una aplicación que se encarga de realizar el monitoreo continuo de

la actividad en cada LPAR, y cuando detecta CPU sobrante en una partición, amplía

rápidamente la capacidad asignada a las particiones que sufren, moviendo desde centésimas

de procesador a procesadores completos, eliminando la fragmentación y acelerando

enormemente el sistema.

También es posible especificar la importancia, prioridad, y condiciones de ajuste de cada

partición, como así también el rango (mínimo y máximo) de CPU interactiva y batch que

Page 9: Particiones Logicas y Fisicas en Mainframes

puede ser asignado a cada partición, para permitir que el ajuste se haga siempre en función

de las necesidades propias de cada empresa. También es posible definir prioridades

diferentes en función de la hora del día.

El resultado es el máximo aprovechamiento, en todo momento, del componente más caro

del sistema (la CPU), mejores tiempos de respuesta y niveles de servicio, usuarios más

productivos y contentos, y un mejor retorno de la inversión en hardware.

VIRTUALIZACIÓN EN SERVIDORES HP

Las técnicas de virtualización de servidores de HP se apoyan en hardware con una

arquitectura basada en celdas que se pueden agrupar formando nPARs: En una máquina con

cuatro celdas, podemos formar 4 nPARs de una celda, 2 nPARs de dos celdas, etc. En cada

NPAR podemos arrancar instancias de sistema operativo HP-UX o Windows. La granularidad

es la celda y el aislamiento es eléctrico.

La primera tecnología fue la Partición Virtual (VPAR) consiste en dividir un servidor físico o

una nPAR, en subconjuntos (CPU, Memoria y tarjetas de E/S) dónde se arranca una instancia

de sistema operativo HP-UX. Todo ello a nivel físico: Si tenemos una máquina con 4 CPUs,

podemos arrancar 4 vPARs con distintas versiones de sistema operativo en cada una de ellas.

La granularidad es la CPU y no hay aislamiento eléctrico.

Page 10: Particiones Logicas y Fisicas en Mainframes

La siguiente tecnología, Máquinas Virtuales (VM), se basa en un sistema operativo anfitrión

(host) que gestiona como tareas a otros sistemas operativos invitados (guest). En éste caso,

pueden ser HP-UX, Linux o Windows. Los dispositivos de E/S los gestiona el host y los guest

sólo ven drivers genéricos: En una máquina con 1 CPU puedo arrancar varias VMs. La

granularidad es a nivel de porcentaje de CPU (5%) así que, teóricamente, podría arrancar 20

VMs usando una CPU.

La imagen siguiente ilustra las distintas posibilidades de utilización, de cada una de éstas

tecnologías: