pfc ruben hernandez

Upload: ruben-hernandez

Post on 14-Feb-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/23/2019 PFC Ruben Hernandez

    1/121

    1

    Universidad de Alcal

    Escuela Politcnica Superior

    Ingeniera tcnica en telecomunicaciones: Telemtica

    Trabajo Fin de Carrera

    Migracin de servidores SUN/Solaris: Compatibilidad softwarebajo arquitectura SPARC

    Rubn Hernndez Gmez

    Septiembre 2015

    Universidad de Alcal

    Escuela Politcnica Superior

    Ingeniera tcnica en telecomunicaciones: Telemtica

  • 7/23/2019 PFC Ruben Hernandez

    2/121

    2

  • 7/23/2019 PFC Ruben Hernandez

    3/121

  • 7/23/2019 PFC Ruben Hernandez

    4/121

    4

  • 7/23/2019 PFC Ruben Hernandez

    5/121

    5

    Dariannis, esto realmente no hubiera sido posible sin ti.

    Gracias por tu paciencia, tu apoyo incondicional y por no perder la fe

    en m. TE QUIERO.

    Gracias a Pablo (PCI)

    por tus largas lecciones hasta altas horas de lamadrugada, por tu ayuda desinteresada y por tu paciencia.

    Maie, gracias tambin a ti, al final mereci la pena.

    A mis padres de una manera u otra, se lo deba.

  • 7/23/2019 PFC Ruben Hernandez

    6/121

    6

  • 7/23/2019 PFC Ruben Hernandez

    7/121

    7

    RESUMEN

    En los ltimos aos, las tcnicas de virtualizacin han cobrado especial inters

    por ser una de las tcnicas ms utilizadas en el ofrecimiento de serviciosinformticos. Es tan as, que la tendencia es ascendente y no se prevn cambiosen el futuro inmediato.

    La virtualizacin consigue ejecutar diferentes mquinas (mquinas virtuales) enun mismo servidor fsico. Cada una de esas mquinas puede dar un serviciodiferente. Gracias a esto, se obtienen diversos beneficios como por ejemplo:ahorro en adquisicin de hardware, menor consumo elctrico y mejor gestinadministrativa tanto de las mquinas como de la red.En contra hay que destacar que tambin hay desventajas cuando se desarrollan

    tcnicas de virtualizacin. El principal problema es la obtencin de peorestiempos de respuesta en servicios de entornos virtualizados que en entornos novirtualizados. Sin embargo los beneficios son superiores con creces a losinconvenientes, y prueba de ello es el crecimiento de utilizacin de estastcnicas en la mayora de las empresas que ofrecen servicios informticos.

    En esta memoria se hace un recorrido de los diferentes modelos devirtualizacin existentes y se plantea un caso real que justifica el uso de latecnologa.

    Se partir de un escenario real para compatibilizar software gracias a la solucinde virtualizacin de plataforma que ofrece ORACLE a travs de Solaris OS. Sehar un anlisis de la arquitectura de computadores del escenario,estudiaremos el servidor que utilizaremos para llevar a cabo la implementacinprctica y finalmente sacaremos conclusiones de los resultados obtenidos apartir del trabajo realizado y alguna propuesta de trabajos futuros en el mismombito.

    PALABRAS CLAVE: Solaris, virtualizacin, UNIX,sistema operativo, ORACLEVM, SPARC.

  • 7/23/2019 PFC Ruben Hernandez

    8/121

  • 7/23/2019 PFC Ruben Hernandez

    9/121

    9

    NDICE

    1. INTRODUCCIN

    1.1 Justificacin del proyecto.11

    1.2 Objetivos y campo de aplicacin..11

    1.3 Estructura de la memoria..13

    2. VIRTUALIZACIN

    2.1 Historia de la virtualizacin..17

    2.1.1 Antecedentes.17 2.2 Terminologa19

    2.2.1 Mquina virtual e hipervisor20 2.3 Modelos de virtualizacin..22

    3. SOLARIS SPARC 3.1 Historia de Solaris..39

    3.2 Hardware SUN40

    3.3 Arquitectura SPARC..41

    3.3.1 Arquitectura SPARC V-9.42 3.3.2 Procesador UltraSPARC-I..42

    3.3.3 Estrategia SPARC.43

    3.3.4 Arquitectura UltraSPARC45

    3.4 SUNFIRE T2000.49

    3.4.1 Gestin remota con ALOM CMT51

    3.4.2 Fiabilidad, disponibilidad y capacidad..52

    4. VIRTUALIZACIN EN SOLARIS

    4.1 Dominios fsicos(DSD)..56

    4.2 Oracle VM para SPARC63 4.2.1 Hipervisor y dominios lgicos.64 4.2.2 Logical Domain Manager .66

    4.3 Solaris Zones ..74 4.3.1 Zonas globales y no globales76

  • 7/23/2019 PFC Ruben Hernandez

    10/121

    10

    5. DISEO E IMPLEMENTACIN

    5.1 Introduccin83 5.2 Estado inicial..85 5.3 Downgrade a Logical Domains 1.2..86

    5.4 Configuracin del control domain88 5.5 Configuracin de dominios invitados.93

    5.5.1 Asignacin de recursos.94

    5.6 Instalacin de Solaris 10 en guest domain.97

    5.6.1 Configuracin de red..107

    5.7 Creacin de imagenflar de Solaris 9....111 5.8 Instalacin deflaren todd-test1111

    5.8.1 Creacin de brandez zone112

    CONCLUSIONES.....115

    BIBLIOGRAFA Y URLs.119

  • 7/23/2019 PFC Ruben Hernandez

    11/121

    11

    1.INTRODUCCIN

    1.1. Justificacin y contexto del proyecto

    En el mbito de las TIC (Tecnologas de la Informacin y la Comunicacin),estamos continuamente sujetos a cambios.Constantemente surgen nuevas tecnologas, otras evolucionan, y en muchasocasiones otras se estancan o incluso llegan a desaparecer.Algunas veces aparecen avances tecnolgicos y productos que marcan un antesy un despus en la historia, y que ya sea por su utilidad, versatilidad o economallegan a consolidarse en el mercado de manera estable.Algn ejemplo de estos avances tan destacables son la revolucin de los 32 bits,o la aparicin de interfaces grficos de usuario, podramos destacar tambin los

    sistemas operativos multitarea y muchos otros ms.La virtualizacin es una tecnologa que pertenece a este conjunto de hitoshistricos.Ha pasado suficiente tiempo para que haya un consenso generalizado sobre lasinnegables ventajas de la virtualizacin sobre la implantacin de CPD (Centro deProcesamiento de Datos) con la exclusiva presencia de servidores fsicos.

    1.2 Objetivos y campo de aplicacin

    En muchas ocasiones los requerimientos hardware para aplicativos existentesen un determinado momento son incrementados un tiempo despus por losavances tecnolgicos naturales. Esto supone una necesidad de actualizacin dehardware que en muchas ocasiones compite con el requerimiento de algunosprogramas de correr en determinados sistemas operativos, en determinadasversiones, y con determinadas arquitecturas.Este proyecto se ve motivado por esta problemtica y se presenta en elsiguiente escenario:Solaris es un sistema operativo de tipo UNIX muy extendido en el mundoempresarial, sobre todo en sus versiones para arquitecturas SPARC (Scalable

    Processor ARChitecture).Muchas empresas requieren de software especfico creado exclusivamente paralas necesidades de esa empresa.Nos situaremos en el caso de una empresa que compr en su da softwarehecho a medida, que es perfectamente vlido para sus requisitos. Este softwarecorre en Solaris 9, versin que se encuentra fuera de periodo de soporte oficial(finaliz en 2014), y muy probablemente tendr problemas de compatibilidaden una versin superior.Debido a las necesidades de la empresa, por aumento en nmero de clientes,

    por ejemplo, es conveniente actualizar el hardware para beneficiarse tanto de lapotencia como de las novedades en versiones posteriores de Solaris, adems de

  • 7/23/2019 PFC Ruben Hernandez

    12/121

    12

    la evidente necesidad de disponer de un sistema operativo actualizado y consoporte oficial.Por otra, parte, en un servidor ms potente, pueden convivir, aprovechando laconsolidacin de servidores, ms mquinas virtuales dando diferentes servicios.Incluso se puede prescindir de la mquina antigua, migrando sta a un servidor

    con recursos excedentes, que puedan satisfacer las necesidades de la mquinaportadora de este software hecho a medida mencionado.En nuestro caso migraremos una mquina antigua de la que la empresa va aprescindir en la que corre Solaris 9 a una mquina relativamente moderna: SUNT2000, con una versin actual de Solaris.Para ello nos beneficiaremos de las bondades que nos ofrece el sistemaoperativo Solaris a partir de la versin 10, ms concretamente en el llamadoOracle VM (Oracle Virtual Machine) para SPARC.Nos aprovecharemos esta funcionalidad de Solaris que nos permite virtualizar anivel de LDOM (Logical Domain), y a su vez crearemos una zona con sistema

    operativo Solaris 9, virtualizando de esta manera compartiendo kernel,consiguiendo nuestro objetivo principal, que es disponer de nuestro aplicativo.Con esto habremos conseguido compatibilizar nuestro antiguo software enmquinas actuales con mucha ms capacidad de procesamiento, y con soporteoficial de ORACLE.

    Nuestro esquema quedara as:

  • 7/23/2019 PFC Ruben Hernandez

    13/121

    13

    1.3 Estructura de la memoria

    A continuacin vemos una introduccin a los captulos que componen lamemoria:

    Captulo 2. Virtualizacin. En este captulo haremos un repaso de estatecnologa desde su origen hasta los modelos actuales. Nos familiarizaremoscon algunos conceptos indispensables para su comprensin, y estudiaremos losdiferentes modelos de virtualizacin que existen.

    Captulo 3. Solaris SPARC. Analizaremos la evolucin del sistema operativoSolaris, y nos centraremos en los sistemas con arquitectura SPARC, viendo lasnovedades de algunos de los procesadores. Nos centraremos en la mquinautilizada para la implementacin prctica estudiando sus caractersticas.

    Captulo 4. Virtualizacin en Solaris. Veremos las soluciones que ofrece ORACLEcon sus modos de virtualizacin en su sistema operativo por excelencia:dominios fsicos, dominios lgicos y zonas. Detallaremos en profundidad elfuncionamiento de los dos ltimos al ser materia fundamental de laimplementacin prctica.

    Captulo 5. Diseo e implementacin. Trabajo prctico con un escenario real.Disponemos de una mquina SUNFIRE T2000 donde implementaremos nuestroentorno virtualizado. Montaremos los dominios lgicos y zonas requeridas para

    poder simular una migracin y as justificar la compatibilidad de software.

    Conclusiones. Analizaremos crticamente los resultados obtenidos y la utilidadde la prctica, mostrando las bondades y debilidades del sistema elegido.

  • 7/23/2019 PFC Ruben Hernandez

    14/121

    14

  • 7/23/2019 PFC Ruben Hernandez

    15/121

    15

    2.VIRTUALIZACIN

    Sin lugar a dudas, la virtualizacin es una de las innovaciones tecnolgicas msdecisivas en la actualidad, con gran calado y demanda que est revolucionando

    el sector de las tecnologas de la informacin ya que modifica su modelo detrabajo en casi todos los niveles.Por definirlo en una oracin, virtualizar es conseguir la ejecucin de mquinas -con sistemas operativos, aplicaciones y otros servicios propiosdentro de otrasmquinas. Aqu yace una gran diferencia con respecto a otras tcnicas quetambin adoptan la etiqueta de virtualizacin, pero muy distintas; por ejemploel Grid Computing o Server Agregation (agregacin de servidores), que consisteen resumen en lograr percibir como uno solo, la conexin de mltiplesservidores.

    Imagen 1: Consolidacin de servidores

    Desde hace ms de cuarenta aos, la virtualizacin ha estado presente aunqueminoritariamente en grandes centros de clculo. Sin embargo, recientemente eluso de esta tecnologa alcanz un crecimiento exponencial debido a la evolucindel hardware, su reduccin de precio, y las constantes mejoras de software.Comenzaba as el desarrollo de diversos proyectos tanto libres como de

    empresa privada, lo que tuvo como consecuencia la llegada de la virtualizacinal escritorio y con esto el evidente aumento de popularidad debido a lasbondades de su implantacin.Esta tecnologa permite la instalacin, administracin, y configuracin de variasmquinas lgicas (mquinas virtuales), cada una con su sistema operativo yaplicaciones, con acceso a los recursos fsicos del servidor anfitrin.La virtualizacin como tal (a diferencia de la emulacin y la simulacin), necesitade una capa de abstraccin que sirva de interfaz entre las mquinas virtuales yel servidor anfitrin, haciendo cambios en el sistema operativo anfitrin paraque las mquinas virtuales accedan a los recursos del servidor.Algunos de los nombres de esta capa son: Hypervisor (hipervisor), o VMM,Virtual Machine Monitor (monitor de mquinas virtuales).

  • 7/23/2019 PFC Ruben Hernandez

    16/121

    16

    Dentro de este modelo general de virtualizacin, hay diferencias que causan laexistencia de diversos modelos. Por ejemplo, puede haber o no hipervisor,tambin diferencias en el sistema operativo de la mquina anfitriona,transparencia en la virtualizacin para las mquinas virtuales, y la adicin deotras tcnicas (por ejemplo, emulacin), provocan que estos modelos se

    adapten a los diversos escenarios donde queremos implantar la virtualizacin, yque hace que diferentes escenarios y tcnicas ofrezcan diferentes rendimientosdependiendo de cada caso.Ninguna es mejor ni peor, simplemente se deber elegir el sistema y la tcnicaadecuada para nuestras necesidades. Por ejemplo, virtualizacin a nivel desistema operativo, a nivel de aplicaciones, a nivel de hardware, a nivel de kernelde Linux, etc.Gracias a esta multitud de modelos y su configuracin, en la actualidad lavirtualizacin es de gran utilidad en las empresas, ya que las posibilidades sonmuy variadas. Casi se puede decir que disponemos de un modelo para cada

    situacin.Cabe destacar entre todas las aplicaciones la consolidacin de servidores, esdecir encapsulacin de servidores en mquinas virtuales. La popularidad de laconsolidacin es debido al gran consumo energtico de los servidorescombinado con el poco porcentaje de utilizacin real de los recursos delservidor.En los CPDs actuales, (Centro de Procesamiento de Datos) se van adquiriendoservidores dependiendo de las necesidades del servicio, aumentando as elnmero de mquinas fsicas, ocupando ms espacio, e infrautilizando los

    recursos disponibles.En este punto es donde la consolidacin de servidores juega un papelfundamental, permitiendo una reduccin de costes a todos los niveles: espacio,energa, facilidad de realizar cambios, gestin, recuperacin antes fallas, etccon la ventaja de ganar en eficiencia y optimizacin en el uso de recursos delservidor gracias a la integracin de mltiples mquinas virtuales en una fsica.

  • 7/23/2019 PFC Ruben Hernandez

    17/121

    17

    2.1 Historia de la virtualizacin

    Para comprender en profundidad la evolucin de la tecnologa de lavirtualizacin es necesario hacer un repaso histrico. De esta forma conociendoel surgimiento y las circunstancias que se dieron, entenderemos la evolucin de

    esta tecnologa hasta llegar a la situacin actual, en la que la virtualizacincomprende una diversidad de modelos aplicables para solucionar lasnecesidades de las empresas actuales.Tanta variedad de modelos conlleva que se pueda confundir el trmino devirtualizacin con otras tcnicas diferentes.Haremos un recorrido detenindonos en algunos productos hardware de Intel yde AMD, que son referencia en algunos escenarios en los que se requiere unsoporte fsico para llevar a cabo la virtualizacin.Finalmente, entenderemos la importancia de la virtualizacin en la actualidad yla seguridad de que seguir cobrando importancia en el futuro.

    2.1.2 Antecedentes

    El concepto de virtualizar es entendido en trminos generales como hacerparecer algo en un estado que no es realmente en el que se encuentra.Partiendo de este concepto, ha habido dos tcnicas que han evolucionado deforma parelela:

    Hacer que un computador reparta recursos para comportarse como

    varios computadores (Virtualizacin) Hacer que varios computadores unan recursos para comportarse como

    un computador. (Grid computing o agregacin de servidores)

    Podemos remontarnos 40 50 aos en los que ya se puede considerar queexista la tcnica de la virtualizacin. Al igual que tantos otros servicios, ytecnologas, eran slo aplicables en grandes centros de clculo, con grandesrecursos. Uno de los primeros usos en esta tcnica se dio con el IBM7044, en laque haba una mquina fsica (M44), que albergaba mquinas lgicas para

    procesos. Tambin el proyecto Atlas que desarroll la Manchester University.Este proyecto destac debido a importantes novedades para la poca (dcadade los 60) que ayudaba a mitigar los problemas de la forma de trabajo habitual:el uso de un ordenador central y el acceso a los recursos a travs de terminalespor parte de los trabajadores.Bsicamente se trataba de un particionado de recursos en el que el trabajo deuna persona no interfera en el de otro. As nace la virtualizacin, con estaparticin de recursos (memoria, uso de disco, capacidad de cmputo). De estemodo estas particiones o mquinas virtuales podran comunicarse por red, usarsus propios recursos u otros en caso de que no estn siendo utilizados, podranmigrarse entre diferentes servidores, o tomar imgenes de su estado.

  • 7/23/2019 PFC Ruben Hernandez

    18/121

    18

    Imagen 2: Trabajador operando con una mquina IBM7044 en 1964

    Ms tarde IBM desarroll versiones siguientes del IBM7044declarando as su

    intencin de evolucionar en la tecnologa de la virtualizacin. El Model 67consegua virtualizar sus interfaces hardware gracias al VMM(Virtual MachineMonitor), que ms tarde fue llamado hipervisor, ya que era capaz de alojarsistemas operativos dentro de otros.En estos comienzos de la virtualizacin, los sistemas operativos que corran enlas mquinas virtuales se llamaron CMS (Conversational Monitor Systems).Los CMSfueron evolucionando y an en la actualidad corren en el mainframeSystem z9.Esto nos refleja algo importante en el proceso evolutivo de la virtualizacin: la

    compatibilidad hacia atrs.Otro uso de la virtualizacin en sus orgenes es la utilizacin del procesadorsimulado (P-code), que se trata de un lenguaje a bajo nivel (mquina), que esejecutado en una mquina virtual. De este modo se consigue un alto grado deportabilidad, ya que diferentes servidores con diferentes arquitecturas alojandomquinas virtuales podan correr programas en P-Code.Este mismo concepto lo siguieron otras mquinas virtuales que evolucionaron yse encuentran actualmente comoJVM (Java Virtual Machine).El modelo de trabajo de varios terminales accediendo a un mainframe fuedesapareciendo gracias a la llegada de los PC (Personal Computer). Ahora laprioridad era el rendimiento, y no la fiabilidad o la seguridad. Ya no eranecesario ese particionado de recursos, ya que los supercomputadores cayeronen desuso y quedaron reducidos a lugares puntuales. Ya no era necesaria lavirtualizacin a este nivel y hubiera cado en el olvido de no ser por los centrosmilitares, universidades, bancos, algunos centros de investigacin, en los que lafiabilidad era indispensable.Esto nos llev poco a poco a sistemas con arquitectura de mainframe pero enun hardware de miniordenador. Un ejemplo es elAS/400de IBM comercializadoen 1988.

  • 7/23/2019 PFC Ruben Hernandez

    19/121

    19

    Imagen 3. Diferentes modelos de AS/400 Imagen 4. IBM System 9

    Los ordenadores ganaron en potencia y eran ya capaces de ejecutar sistemasmultiusuario y multitarea, lo que provoc que se retomaran ciertasfuncionalidades del sistema Unix que fueron eliminadas por sus requerimientosde potencia. Una de estas funcionalidades era la virtualizacin.Surge la consolidacin de almacenamiento, volviendo de un disco duro porpersona a un disco duro para todos.Actualmente la virtualizacin ha llegado al escritorio, con el consecuenteaumento de popularidad. Hoy es una de las tecnologas que ms se desarrollan

    debido a sus mltiples ventajas y aplicaciones.El rendimiento del hardware ya no es el problema y ahora se trata de mejorar lomximo posible la fiabilidad y seguridad.Es tiempo de hacer un recorrido de las ventajas que ofrece esta tecnologa, y enel presente proyecto las estudiaremos: migracin en caliente, planificacin,entornos de laboratorio (prueba), aprovechamiento hardware, creacin demquinas y clonado, etc.

    2.2 Terminologa

    Una vez recorrida esta tecnologa en las ltimas cuatro dcadas, es fundamentaldefinir ciertos conceptos para llegar a comprender los modelos de virtualizacinque nos encontramos en la actualidad.Se introducen dos conceptos indispensables para la explicacin de esta tcnica:mquina virtual e hipervisor.Pese a que no todos los modelos de virtualizacin requieran mquina virtual, esun trmino bsico para entender las tcnicas de vitualizacin.El hipervisor, por ser elemento importante en las tcnicas de virtualizacin

    completa y paravitualizacin, que son los modelos ms utilizados.Una vez mencionado esto, podemos clasificar en cuatro modelos devirtualizacin esenciales:

  • 7/23/2019 PFC Ruben Hernandez

    20/121

    20

    Virtualizacin de plataforma Virtualizacin de recursos Virtualizacin de aplicaciones Virtualizacin de escritorio

    Una vez conocida la esencia de estos modelos, estaremos en disposicin deexaminar ventajas e inconvenientes de cada uno de ellos.

    2.2.1 Mquina virtual e hipervisor

    Para profundizar en el funcionamiento de la virtualizacin es necesario explicarestos dos conceptos clave, y comprender el papel que juega cada uno.Dependiendo de las caractersticas de la mquina y de la funcin quedesempee, podemos clasificar en mquinas virtuales de sistemao hardware, ode mquinas virtuales de aplicacin.

    Imagen 5 : Arquitectura de virtualizacin en arquitectura x86

    Mquina virtual de sistema:

    Tienen acceso a la parte de recursos hardware que tiene asignada.Realmente cree que esos recursos hardware estn a disposicin de ella,cuando realmente estn asignados de manera virtual, ejecuta una instanciade sistema operativo sobre el cual corren las aplicaciones.Destacamos dos caractersticas para este tipo de mquinas virtuales, entresu amplia funcionalidad: la consolidacin de servidores (queimplementaremos en este proyecto), en la que coexisten varios sistemasoperativos, y las pruebas o testeo de software y hardware, ya que se puedendisponer de arquitecturas de instrucciones diferentes a las del host anfitrin.

    El objetivo de este proyecto es la consolidacin de servidores, y este tipo demquinas virtuales son las que permiten realizar esta labor y sern nuestroobjeto de estudio.

  • 7/23/2019 PFC Ruben Hernandez

    21/121

    21

    Junto a ellas, el hipervisor tomar parte en la gestin de recursos,distribuyndolos a cada mquina. El hipervisor es una capa software quecorre sobre la mquina anfitriona o sobre una de las virtuales, y da robustezy estabilidad al sistema. Incluso si una mquina colapsa, el resto deben ypueden seguir dando servicio. Esta capa tambin tiene el nombre de

    monitor, ya que esa es otra de sus funciones: monitorizar las mquinasvirtuales.

    Mquina virtual de proceso (o de aplicacin):

    Se ejecuta en un sistema operativo como un proceso, y soporta un soloproceso. En el momento de lanzar el proceso a ejecutar es cuando se inicia lamquina y al finalizar ya no es necesaria y por lo tanto se detiene. Gracias aeste mtodo, se establece un entorno de ejecucin independiente de laarquitectura y sistema operativo del host anfitrin que permite a unprograma ejecutarse independientemente de la plataforma en la que estcon la consecuente ganancia en compatibilidad.Los casos ms conocidos son la JVM (Java Virtual Machine) y la mquinavirtual de .NET (Common Language Runtime).Una vez introducidos los tipos de mquina virtual retomemos el concepto dehipervisor.IBM puso el nombre de supervisor al sistema operativo debido a que en

    esencia, se trataba de un kernel que supervisaba al hardware. Debido a estose llam hipervisor a una nueva capa (algo as como otro kernel) que se

    usaba en estas tecnologas de virtualizacin. Es por lo tanto un elementosoftware que administra las mquinas virtuales. Tambin es conocido comomonitor VMM debido a su labor de monitorizacin.

    Por lo tanto podemos, en esencia decir que el hipervisor tiene tres funciones:

    1. Presentan a los sistemas virtualizados2. Provee de hardware virtual a las mquinas virtuales3. Monitorizan las mquinas virtuales

    Existen bsicamente tres tipos de hipervisores:

    Nativos: en este caso corre sobre el hardware anfitrin y gestiona elacceso de las mquinas virtuales al hardware.Este tipo es comn en modelos de virtualizacin completa yparavirtualizacin (de los cuales hablaremos en el siguiente apartado)La paravirtualizacin es el modelo con hipervisor ms popular ya que lossistemas operativos de las mquinas virtuales se comunicandirectamente con el hipervisor, sin elementos intermedios que

    ralenticen, como ocurre en la virtualizacin completa.

  • 7/23/2019 PFC Ruben Hernandez

    22/121

    22

    Es el caso de VMWare ESX-Server, Citrix Xeny algn otro.

    Alojado (hosted): aqu el hipervisor se ejecuta sobre un sistema operativoy sobre ste se ejecutan las mquinas virtuales.Aqu ponemos como ejemplo las mquinas virtuales Java y .Net

    Hbrido: emulan un entorno sobre el que ejecutan un sistema operativoinvitado dentro del sistema operativo anfitrin. Interactan sobre elhardware y con el sistema operativo anfitrin.

    Imagen 6: Aquitectura con hipervisor nativo Imagen 7: Arquitectura conhipervisor alojado

    2.3 Modelos de virtualizacin

    El concepto de virtualizacin es demasiado genrico, y se usaindiscriminadamente para abarcar diversas tecnologas que difieren entre s enpuntos importantes.Muchas veces esta generalizacin puede hacer que el usuario final no distingaentre las posibles soluciones que dan cada modelo.Como primera aproximacin se puede definir la virtualizacin como laabstraccin de recursos de un ordenador y la divisin de estos recursos envarios entornos de ejecucin. Se proporciona acceso lgico a recursos fsicos.

    Dependiendo de cmo sea ese recurso abstrado (recurso individual comomemoria, o plataforma completa como un servidor), y de quin lo use,hablamos de diferentes modelos de virtualizacin.Si hablamos de que por algn medio una mquina completa (hardware) seaabstrada para que sea utilizado por varias instancias de sistemas operativos,con sus aplicaciones, de tal manera que esas instancias crean que disponen en

    exclusiva de esos recursos tenemos que hablar de virtualizacin de plataforma.En definitiva, hay dos conceptos que determinan el tipo de modelo devirtualizacin: por una parte el recurso abstrado, y por otra la aplicacin,

    sistema, mquina, etc que dispone del recurso.

  • 7/23/2019 PFC Ruben Hernandez

    23/121

    23

    Aunque hay particularidades que los subdividen, podemos distinguir cuatroprincipales modelos de virtualizacin:

    Virtualizacin de plataforma: consiste en la simulacin de mquinasvirtuales. Se lleva a cabo en una mquina fsica abstrayendo

    completamente el hardware de tal modo que puede ejecutarseinstancias distintas de sistema operativo con los recursos que les ha sidoasignado a cada mquina virtual. Es importante el detalle de que lasmquinas virtuales no son conscientes de la abstraccin. Es decir, cada

    una piensa que esos recursos son exclusivamente suyos y nocompartidos.Cabe destacar este modelo ya que ser el utilizado en la implementacinprctica de este proyecto. Se trata de una aplicacin prctica muyextendida: consolidacin de servidores.Se puede interpretar como un sistema principal fsico particionado quealoja diferentes mquinas virtuales dedicadas, con sus propios sistemasoperativos, aplicaciones y servicios a ofrecer. Todas estas mquinasvirtuales haran un inconsciente uso compartido del hardware

    subyacente.Analizaremos ms en detalle la consolidacin de servidores en loscaptulos posteriores.

    Dentro de la virtualizacin de plataforma, podemos distinguir variossubtipos:

    Sistemas operativos invitados:

    Emulacin: un emulador es un software que permite la ejecucinde programas en una plataforma con un hardware distinto delaquel para el cual fueron escritos en su origen. Es por lo tanto unarplica de una arquitectura al completo.Destacamos MAME, MESS, VirtualPC y Qemu.

    Virtualizacin completa: hay una diferenciacin de ejecucin entre

    instrucciones no crticas (que se ejecutan directamente sobre elhardware), e instrucciones crticas (intercepta el hipervisor y seemulan en software).

    Esto se debe a que la traduccin binaria (mtodo mediante el cuallas instrucciones son emuladas en software en vez de ejecutarsesobre la mquina directamente) puede incurrir en una sobrecargaen el rendimiento. Las instrucciones crticas pueden comprometerla seguridad del sistema y pueden controlar el hardware, es poresto por lo que emulndolas en software evitamos problemas deseguridad. Sin embargo las instrucciones no crticas soninofensivas para el hardware por lo que pueden ser ejecutadas

  • 7/23/2019 PFC Ruben Hernandez

    24/121

    24

    directamente sobre l, mejorando as el rendimiento. VMWareesel ms claro ejemplo de este tipo de virtualizacin.

    En este caso el hipervisor se encarga de monitorizar las mquinasvirtuales asimilando cada peticin que provenga de ellas y

    ejecutndolas en la mquina real mejorando de esta manera elrendimiento.Por lo tanto, la virtualizacin completa combina traduccin binariacon ejecucin directa, lo que hace que el rendimiento no sea ideal,pero a cambio se consigue un aislamiento total de la mquinavirtual (sistema operativo invitado) que desconoce que esvirtualizado. Otros ejemplos de virtualizacin completa son:XenServer, z/VM, Oracle VM, Sun xVM Server, Virtual Server,VMware ESX Server, VMware Fusion, Xen, Hyper-V

    Paravirtualizacin: es parecida a la virtualizacin completa. Ladiferencia clave es que modifica los sistemas operativos invitados,y por lo tanto son conscientesde la virtualizacin.La principal ventaja de este sistema es la gran mejora derendimiento, ya que no hay traduccin binaria (no hay emulacinde instrucciones crticas), son los propios sistemas operativosinvitados modificados los que colaboran evitando la captura deinstrucciones privilegiadas por parte del hipervisor.En contraste con esta mejora de rendimiento (casi del 100%

    respecto a una plataforma no virtualizada), la desventaja es lanecesidad de que los sistemas operativos invitados deben sermodificables.Las libreras y procesos ejecutados por mquinas virtuales tienenque estar compiladas para el hardware anfitrin.Existe la posibilidad de que haya un soporte hardware devirtualizacin que mejore an ms el rendimiento, y tambin paraque pueda aplicarse sobre sistemas operativos no modificados,gestionando las peticiones e instrucciones privilegiadas y

    comunicndose con las mquinas virtuales.Ejemplos de este tipo de virtualizacin son Xen, Logical Domains,Oracle VM, y Sun xVM Server.

    Virtualizacin a nivel de sistema operativo: en este caso el ncleodel sistema operativo es el que crea varias instancias del sistemaoperativo que son independientes y son vistas como un servidor.No necesita de una capa intermedia de virtualizacin ya que es elsistema operativo en exclusiva el que se encarga de ello.El rendimiento alcanzado es bastante bueno con este sistema, ya

    que se acerca al de un sistema sin virtualizar.

  • 7/23/2019 PFC Ruben Hernandez

    25/121

    25

    Como desventaja, al ser instancias de un mismo ncleo, no sepueden instalar sistemas operativos diferentes, tan slo distintasversiones de una misma distribucin.Las libreras deben estar compiladas para el hardware anfitrin, yel juego de instrucciones debe ser el mismo.

    Debido al enfoque de este proyecto, citaremos como ejemploesencial Solaris Zonesy Solaris Containers, ya que nos valdremosde ello en la implementacin prctica.

    Virtualizacin a nivel de kernel: se presenta en sistemas operativosLinux, el cual habilita al kernel para que funcione como hipervisor,permitiendo ejecutar mquinas virtuales e instancias de sistemasoperativos. No se trata de un kernel diferente, sino que es unmdulo ms que permite esta funcin, de este modo, por ejemplose puede cargar y descargar en tiempo de ejecucin.Las libreras, sistemas operativos y aplicaciones deben sercompatibles con el hardware anfitrin. Destacamos KVMy User-mode Linux.

    Virtualizacin de recursos: el recurso abstrado en este caso es unrecurso de un computador, por ejemplo una unidad de disco, o unaunidad de red. Distinguimos entre los siguientes tipos:

    Memoria virtual: Uso muy extendido (Swap en Linux y paginado

    en sistemas Microsoft) en el que el sistema cree que dispone dems memoria principal. El recurso abstrado es la memoria y eldisco.

    Almacenamiento: La memoria de disco es el recurso que seabstrae y es independiente del resto del hardware.

    Como ejemplos tenemos SAN (Storage Area Network), NAS(Network-Attached Storage), NFS (Network file systems)

    Memoria: en este caso se usar memoria de diferentesdispositivos conectados en red, unidos en una memoria virtual unificada.

    Interfaces de red: consiste en la unin de varios enlaces de redpara conseguir un mayor ancho de banda. Son por lo tanto, lointerfaces de red el recurso abstrado y como ejemplo podemosnombrar: vNIC (Virtual Network Interfaces Card), vHBA (VirtualHost Bus Adapter)

    Virtualizacin de aplicaciones: Una vez desarrollada una aplicacin, ydespus de la compilacin, se obtiene el cdigo objeto (representacinintermedia). En un entorno sin virtualizar, ese cdigo objeto se compila

  • 7/23/2019 PFC Ruben Hernandez

    26/121

    26

    para ser ejecutado en la mquina nativa. Sin embargo en un entorno convirtualizacin de aplicacin el cdigo objeto se interpreta en unamquina abstracta para poder ser ejecutado. Se consigue de este modoque un mismo cdigo sea ejecutado en cualquier mquinaindependientemente del hardware.

    Podemos mencionar como ejemplos representativos Wine, capaz deejecutar aplicaciones de Microsoft Windowsen entornos Linux. TambinJVM (Java Virtual Machine de Sun Microsystems), y CLR (CommonLanguage Runtime, para ejecucin en .NET de Microsoft).

    Existen, a grandes rasgos dos tipos de virtualizacin de aplicaciones, unaen la que no existe capa intermedia de virtualizacin (Virtualizacin deaplicaciones limitada: aplicaciones portables), y otro en el que s queexiste una capa de virtualizacin que media entre el sistema operativo yhardware y la propia aplicacin virtualizada (virtualizacin de

    aplicaciones completa).

    Virtualizacin de escritorio: consiste en trminos generales en separar elsoftware que ejecuta el escritorio (lo que se ve en la pantalla) del equipofsico que es manipulado.Es una ejecucin en remoto del escritorio (escritorio virtualizado), de unsistema llamado servidor de escritorio, y por lo tanto necesita de una

    conexin de red entre ambos.Todos los programas, aplicaciones, procesos y datos se ejecutan en el

    servidor de escritorio de manera centralizada. El escritorio del usuario esencapsulado y entregado creando mquinas virtuales.Como consecuencias, por un lado no sern necesarias complicadas ypesadas herramientas distribuidas, y por otra parte es posible acceder alos recursos desde cualquier sitio y desde diferentes tipos de dispositivos.El recurso abstrado en este caso es el almacenamiento fsico del entornodel escritorio del usuario. Algunos productos que trabajan con este tipode virtualizacin son por ejemplo VMWare View, Sun VDI, XenDesktop deCitrix.

  • 7/23/2019 PFC Ruben Hernandez

    27/121

    27

    Modelo Submodelo Recurso abstrado Ejemplos

    Virtualizacindeplataforma

    Sistemasoperativosinvitados

    Plataformahardwarecompleta

    VMware Workstation, ParalellsDesktop,Sun xVM VirtualBox, VmwarePlayer, Microsoft Virtual PC

    EmulacinPlataformahardwarecompleta

    Bochs, MAME, DOSBox, Hercules,MESS,VIrtualPC, Qemu

    Virtualizacincompleta

    Plataformahardwarecompleta

    Vmware Server, XenServer, ORACLE

    VM,Sun xVM Server, Vmware ESXServer,VMware Server, Vmware Fusion

    ParavirtualizacinPlataformahardwarecompleta

    Xen, Logical Domains, ORACLE VM,Sun xVM Server

    a nivel de sistemaoperativo

    Plataformahardware

    completa

    Linux V-Server, Free BSDs chrootjails, Solaris Zones, Solaris

    Containers

    a nivel de kernelPlataformahardwarecompleta KVM, User-mode Linux

    Virtualizacinde

    recursosMemoria virtual Memoria y disco

    Espacio Swap, paginado dememoria

    AlmacenamientoDisco,almacenamiento RAID, SAN, NAS, NFS, iSCSI

    Memoria Memoria RAM

    Interfaces de red Enlaces de red Xsigo Systems, 2Leaf Systems

    Virtualizacin

    deaplicaciones

    Sistema operativo y

    CPU

    Java Virtual Machine,

    Common Language Runtime, Perl,Portable .NET, Citrix XenApp

  • 7/23/2019 PFC Ruben Hernandez

    28/121

    28

    En la siguiente tabla se muestan los diferentes modelos y submodelos devirtualizacin, as como los recursos abstrados en cada uno, y algunos ejemplos.

    VIRTUALIZACIN: VENTAJAS Y DESVENTAJAS

    Despus de hacer un recorrido histrico de la tecnologa de la virtualizacin,desde los primero modelos que lo permitan, hemos visto cmo lleg un tiempoen el que cay en el olvido, para resurgir de nuevo con ms fuerza graciastambin a una mayor accesibilidad al hardware, su llegada al escritorio y lasmltiples y tiles aplicaciones que tiene.Ahora estudiemos por qu es tan importante esta tecnologa en el sectorempresarial y por qu se espera que siga aumentando su proyeccin.Veamos algunos de los motivos que hace necesaria la implantacin de estatecnologa en los CPDs (Centor de Procesamiento de Datos).

    Infrautilizacin de hardware:

    En la actualidad, se puede hacer un clculo aproximado de la utilizacin realde los recursos de una mquina de un 15%. Esto supone un desperdicio del85% de la capacidad computacional, sin embargo el consumo elctrico y elespacio fsico que ocupa es el mismo que si estuviera siendo utilizado almximo de sus posibilidades, lo que concluye en un desperdicio importante.Gracias a la virtualizacin, es posible alojar en una mquina fsica conhardware infrautilizado varias mquinas virtuales. Distribuyendo los recursoshardware entre los diferentes sistemas se consigue un mayor

    aprovechamiento de la inversin econmica de la empresa.

    Espacio en CPDs:

    Muchas compaas han ido incrementado su nmero de servidores porquehan sido planteados de forma aislada, en funcin de las necesidades segniban surgiendo.Primero se compraba un servidor potente para ser usado como servidor decorreo. Despus, en base a, por ejemplo la necesidad de tener un servicio deatencin al cliente, se compraba un nuevo servidor, el ms potente y secreaba un servidor CRM, probablemente con otro fabricante y otro sistemaoperativo.

    Virtualizacindeescritorio

    Localizacin fsicadel escritorioque se encuentraen un servidor

    remoto

    Wyse Technology,Vmware View,Sun VDI,vDesk de Ring Cube

  • 7/23/2019 PFC Ruben Hernandez

    29/121

    29

    De esta forma los CPDs crecen hasta el punto de ser muy difciles demanejar.Por otro lado, la evolucin del paso de almacenamiento fsico en papel a unalmacenamiento lgico, hace necesaria una forma de almacenar lainformacin, tal y como hemos matizado en apartados anteriores:

    virtualizacin de almacenamiento.As, gracias a la virtualizacin, alojamos varios servidores lgicos en unofsico, con un sistema de almacenamiento independiente que surten dedisco a las mquinas virtuales.Gracias a esto se reduce el espacio ocupado en el CPD, y el consecuenteahorro econmico.

    Ahorro energtico:

    Debido a esta reduccin de servidores, es de esperar que los costes porconsumo elctrico tambin se reduzcan, sin embargo, muchas veces a esteahorro no se le da la importancia que realmente tiene, y en la decisin devirtualizar no se tiene en cuenta este factor.No slo eso, la virtualizacin ofrece algunas herramientas que permitenaumentar este ahorro. Por ejemplo, DPM (Distributed Power Management)es una herramienta que ofrece VMWare que monitoriza el uso de losservidores.Cuando detecta una baja carga de trabajo, migra diferentes mquinasvirtuales intentando que un servidor fsico quede sin ninguna activa. Una vez

    logrado esto, apaga el servidor fsico con el consecuente ahorro elctricoque supone. Si detecta un aumento de la carga, enciende automticamenteel servidor y vuelve a alojar mquinas virtuales en l.

    Administracin de sistemas

    Gracias a la virtualizacin, se puede disponer de una monitorizacin derendimiento de las mquinas, y de los servicios que corren en ella muchoms centralizada. Esto facilita en gran medida las tareas de administracin,

    como puede ser el reemplazo de piezas defectuosas, instalacin oactualizacin de sistemas operativos, aplicaciones, copias de seguridad,redundancia, migracinTareas que antes eran muy tediosas debido al gran nmero de servidoresfsicos, ahora lo son menos ya que muchas de esas mquinas ahora sonvirtuales, y por lo tanto, adems de haber menos, se pueden automatizar ysimplificar tareas.

  • 7/23/2019 PFC Ruben Hernandez

    30/121

    30

    Alta disponibilidad:

    Ms all del servicio que se ofrezca, un sistema tiene que ser fiable.En los modelos de negocios actuales, no es admisible que un servicio, sobretodo si es crtico, deje de funcionar ms de un determinado tiempo (lo ideal

    es que funcione correctamente los 365 das del ao, las 24 horas del da).Estos tiempos de prdida de servicio en casos de alta disponibilidad sonsumamente pequeos, por lo que requiere de ciertas medidas y planificacinpara no superarlos.Una de estas medidas es la redundancia de servicios y/o servidores.Mediante la virtualizacin, llevarlo a cabo es mucho ms sencillo y barato, yaque se puede instanciar nuevas mquinas servicios duplicados que estn a laespera de una posible falla para estar disponibles si eso ocurre, o tambinpara balancear la carga y no saturar servidores.Obviamente, sin virtualizacin, los costes seran infinitamente mayores yaque requerira de la adquisicin de nuevo hardware, etc.

    Escalabilidad:

    Cuando existe la necesidad de aadir un nuevo servidor a nuestro centro dedatos, es mucho ms sencillo aadirlo en un entorno virtualizado, ya que sepuede crear una mquina virtual en un servidor fsico existente que tengaespacio para ella, y ms an, se pueden configurar plantillas de mquinasvirtuales para que cuando sea necesario aadirla tan slo se trate de una

    copia de ficheros.

    Compatibilidad hacia atrs:

    La virtualizacin permite la utilizacin y el mantenimiento de sistemasoperativos y aplicaciones que no estn adaptados a los sistemas actuales.Una empresa puede comprar un software hecho a medida que despus delpaso de los aos sigue siendo perfectamente vlido para la empresa pero noes compatible con los sistemas actuales. La virtualizacin permite instanciar

    una mquina virtual con el sistema operativo compatible con la aplicacin,permitiendo la convivencia con un hardware y un sistema operativoactualizado, con su correspondiente soporte.En la implementacin prctica de este proyecto se pondr de manifiesto estabondad de la virtualizacin compatibilizando un software corriendo sobreSolaris 9 (sin soporte), en una mquina con una versin superior de Solaris(con soporte).

  • 7/23/2019 PFC Ruben Hernandez

    31/121

    31

    Entorno de pruebas:

    En las empresas actuales, resulta imprescindible probar las aplicaciones o loscambios realizados, o la instauracin de nuevos servicios o inclusoservidores, antes de llevarlo a cabo. Por esta razn es muy til la

    virtualizacin ya que permite realizar estos cambios y pruebas sin lasconsecuencias que esto podra tener si fuera realizado en las mquinas quedan servicio, para que despus, en caso de que sean satisfactorias pueda serintegrado en entorno de produccin.

    Seguridad y aislamiento:

    Mediante la virtualizacin, conseguimos a muy bajo coste, proteger nuestrossistemas ante posibles vulnerabilidades y/o ataques. Las instancias de lasmquinas virtuales son sistemas aislados en los que un ataque sobre una deellas afectar slo a ella.Esto es gracias a que cada mquina virtual puede ejecutar instrucciones enmodo supervisor sobre ella misma, por lo tanto, se comporta ante losataques como mquinas independientes.Esta ventaja es interesante tanto en el mundo empresarial como enordenadores personales.

    Configuraciones estndar:

    Uno de los problemas que surje con de los CPDs actuales es la dificultad deprevisin de su crecimiento, improvisando dependiendo de las necesidadesdel momento y llegando a una heterogeneidad de hardware, sistemasoperativos, etc.Gracias a la virtualizacin podemos estandarizar el escenario creandoconfiguraciones de mquinas anfitrionas e invitadas, reinventando nuestrocentro de datos en funcin de las necesidades.Esto consigue un ahorro econmico y tambin en gestin administrativa, ymejora la integracin de la infraestructura econmica del negocio, ya que

    cambios en el modelo de negocio pueden ser reflejados en cambios de lasmquinas virtuales. Se consigue mucho ms dinamismo a muy bajo coste.

    Calidad de servicio:

    La posibilidad de crear un entorno de pruebas donde testear las nuevasaplicaciones o sistemas aadidos, hace que se consiga una mayor fiabilidad ycalidad de servicio.A esto le aadimos que en caso de una falla es posible haber creado unaimagen previa al cambio de la mquina virtual. Esto es posible porque unamquina virtual no deja de ser un fichero y se puede volver

  • 7/23/2019 PFC Ruben Hernandez

    32/121

    32

    A esto se le aade que, cuando se va a instaurar un cambio o una nuevaaplicacin, se puede guardar una imagen previa al cambio. Esto es posibleporque una mquina virtual no deja de ser un fichero y en caso de que elresultado del cambio no sea el esperado, se puede retornar al punto previosin mayores consecuencias.

    Clonacin:

    Ya sea por necesidad de redundancia de servicios o servidores, paraconseguir una alta disponibilidad, o por recuperacin ante fallas, tal y comohemos anticipado antes, es muy til hacer un clon de una mquinacompleta. Sin virtualizacin esto sera inadmisible debido a los costes y altiempo. Gracias a este trato de mquinas virtuales como ficheros, es muysencillo clonar o crear plantillas estndar para crear mquinas virtuales enbase a las necesidades, a coste casi cero, tan slo asignando nuevosrecursos.

    Flexibilidad:

    Utilizando virtualizacin tenemos total control sobre la distribucin de losrecursos de la mquina, podemos distribuirlos a nuestro antojo segn lasnecesidades, asignando la memoria RAM, CPU, o espacio de disco quenecesitemos.An ms, podemos asignar recursos exclusivos para las mquinas virtuales

    que lo requieran, por ejemplo, una tarjeta de red exclusivamente para unamquina virtual que soporte mucho trfico.Y todo esto sin olvidarnos de la posibilidad de tener varias mquinasvirtuales con distintos sistemas operativos.

    Portabilidad:

    Como decamos, la configuracin de una mquina virtual consiste en uno oms ficheros.

    De esta forma es muy sencillo migrar una mquina tan slo copiando esosficheros que encapsulan a la mquina virtual.Incluso hay mecanismos que consiguen hacer esto en caliente de formatransparente al usuario y al resto de procesos que estn corriendo.

    Automatizacin:

    Es posible monitorizar el funcionamiento de las mquinas virtuales entiempo real, y actuar en consecuencia. Si, por ejemplo, se detecta que hayuna mquina con excesivo porcentaje de uso de CPU, se puede automatizarpara que se le asigne dinmicamente ms CPU de alguna mquina que no

  • 7/23/2019 PFC Ruben Hernandez

    33/121

    33

    est siendo utilizada, o migrando a una mquina que disponga de mayorCPU.Una vez pasado este tiempo crtico de proceso, se puede reasignar volviendoal estado original.

    Uso en laboratorio:

    Gracias a la facilidad de creacin de mquinas virtuales, se puede aplicar almbito docente, creando entornos de laboratorio donde poder instalar yconfigurar sistemas operativos, aplicaciones, etc.

    Estas son algunas de las ventajas de las que podemos beneficiarnos cuandoutilizamos virtualizacin. Por el contrario, no debemos olvidar las desventajasque surgen de esta tecnologa. Pasamos a enumerar algunas de ellas:

    Rendimiento inferior:

    Un sistema operativo virtualizado, nunca podr tener el mismo rendimientoque uno corriendo sobre la mquina fsica.Al virtualizar, el hipervisor entra en juego como una capa intermedia queinterviene en la gestin de los recursos hardware y la concurrencia de tareasy procesos.Dependiendo del modelo de virtualizacin que utilicemos, habr mayor omenor reduccin del rendimiento, pero en el mejor de los casos nunca ser

    el 100% en comparacin con un sistema corriendo en una mquina sinvirtulizar.

    Uso compartido del servidor:

    Lo que a priori es una ventaja, puede verse como un inconveniente con unamala gestin.Hay que tener en cuenta la carga de trabajo en tiempo real mediante una

    monitorizacin eficaz, para poder asignar recursos dinmicamente en base alas necesidades de cada momento.Mediante mecanismos en caliente como migracin, se puede automatizaresta gestin para que se migren a servidores menos saturados mquinasvirtuales que estn sobrecargadas.Esto hace que la labor de gestin en servidores virtualizados sea mscompleja y ms decisiva. Ya que si esta gestin no es bien realizada puedendarse situaciones de inconsistencia por saturacin de los recursos asignadosdebido a la carga de trabajo.

  • 7/23/2019 PFC Ruben Hernandez

    34/121

    34

    Compatibilidad hardware:

    El hipervisor es la interfaz entre el hardware y las mquinas virtuales, por lotanto el hardware utilizado debe ser compatible con l.El software de virtualizacin suele imponer condiciones sobre el hardware

    utilizado. En caso de no satisfacerlas existen soluciones a base de emular elhardware con la consecuente prdida de rendimiento.

    Aceleracin de vdeo:

    No es posible la aceleracin de vdeo por hardware en mquinas virtuales,por lo que ejecucin de vdeo en 3D no sera posible.Hay soluciones que lo permiten pero con prdida de rendimiento.

    Organizacin de infraestructura:

    Es necesaria una correcta planificacin de la infraestructura virtual ya quepor necesidades de negocio el nmero de mquinas va aumentando, y sinuna correcta organizacin, complicara as la administracin, la gestin delicencias, y fallas en seguridad.

    Nmero de mquinas virtuales:

    El descontrol en la creacin de mquinas virtuales genera un consumo de

    recursos que pueden ser ahorrados mediante, por ejemplo la optimizacinde servicios en las mquinas virtuales ya existentes.No es una solucin la creacin de mquinas para aumentar el porcentaje dede las necesidades de uso real.

    Servidor host como punto de fallo:

    Una avera en el servidor anfitrin puede hacer que varias mquinasvirtuales se vean afectadas, e incluso provocar la prdida de servicio con el

    consecuente impacto.Hay soluciones que se pueden tomar para evitar o al menos reducir el riesgode este problema.Mediante tcnica de redundancia de componentes hardware, replicacin deservidores de los servicios ms importantes para que en caso de falla, unnodo en espera se convierta en el nodo activo que tome la carga de trabajo.Es importante una monitorizacin constante tanto del software como delhardware para poder reaccionar a tiempo y reducir el impacto de la falla.Tambin existen tcnicas de migracin en caliente portando en caso de fallamquinas virtuales a servidores que no sufran daos.

  • 7/23/2019 PFC Ruben Hernandez

    35/121

    35

    Portabilidad:

    Depende del sistema operativo elegido y del software de virtualizacin laportabilidad que tengamos ante diferentes arquitecturas.Es importante prever las necesidades futuras para elegir correctamente el

    software que nos permita una mayor flexibilidad ante necesidades deportabilidad y migracin.

    Venta de servidores:

    Ante una solucin de virtualizacin, es necesario un menor nmero deservidores, reduciendo as el nmero de ventas por parte de loscomerciantes.Algunas empresas, aun sufriendo esta consecuencia, han apostado porseguir dando soluciones de virtualizacin e invirtiendo en esta tecnologa.Por el contrario, el hardware vendido ser ms potente.

    Sistema operativo:

    La estabilidad y seguridad de las mquinas virtuales dependen del sistemaoperativo elegido, por lo que es vital analizar ventajas e inconvenientesantes de tomar la decisin.

    Solucin de virtualizacin:

    Al igual que el sistema operativo, es de la mayor importancia saber elegiruna solucin de virtualizacin para las necesidades de la infraestructura.Existen soluciones ms adecuadas para entornos de trabajo crticos, y otraspara no crticos.Una arquitectura x86 tiene menos capacidad de direccionamiento que unade 64 bits por ejemplo. VMWare se ejecuta sobre arquitectura x86, por lotanto, en caso de decidir una solucin para un entorno crtico, sera msconveniente en elegir una arquitectura de 64 bits (por ejemplo SPARC), y

    una solucin adecuada a esa arquitectura (Solaris LDOMs). Recursos finitos:

    En un entorno virtualizado, varias mquinas virtuales utilizan recursos delservidor anfitrin. En ocasiones la carga de trabajo ser tal, que dos o msmquinas necesiten disponer de ms memoria, o de un mayor uso de CPU,por lo que es importante prever esto para que nunca falten.Un estudio de la carga de trabajo para asegurar recursos en el peor de loscasos para varias mquinas a la vez puede evitar graves daos.Herramientas de monitorizacin para examinar a tiempo real esa cargapermitira una asignacin dinmica de recursos e incluso migraciones encaliente a otros servidores que estn con mayor nmero de recursos libres.

  • 7/23/2019 PFC Ruben Hernandez

    36/121

    36

    Uso de la red:

    Es posible que ante un pico de utilizacin de red, un servidor tenga saturadaslas interfaces de red que comunican a las mquinas virtuales. Esto puedederivar en una congestin y prdida de rendimiento.

    Se pueden instalar ms tarjetas para solventar este problema, o dar usoexclusivo a alguna de ellas a la mquina que ms trfico de red soporte.Hay que tener en cuenta que ante una migracin dinmica esta exclusividadde recursos puede suponer un problema.

    Complejidad de las actividades relacionadas con la red:

    Varias mquinas virtuales, cada una con diversas interfaces de red y susconfiguraciones, pueden derivar en una complejidad de administracinmayor que la que habra en un entorno no virtualizado. La configuracin deelementos de red, como firewalls, y la capa software de red virtual queinterviene en las mquinas virtuales.Una solucin o mtodo para suavizar esta desventaja puede ser la creacinde subredes virtuales con un servidor DHCP para as facilitar las tareas deencaminamiento de red.

    Problemas aadidos:

    En la administracin de un entorno virtualizado surgen problemas que no

    haba antes. Por ejemplo, habr que ser realmente eficaz en lamonitorizacin para labores de distribucin de carga. Es necesario controlaren qu servidores se encuentran corriendo las mquinas virtuales ya queesto vara constantemente por tcnicas de migracin, tareas que no erannecesarias en un entorno no virtualizado.

    Licencias:

    Hay que tener en cuenta que mltiples cuentas de usuario en un servidor, la

    replicacin de mquinas virtuales, imponen requisitos de licencia con elcoste que ello implica.Incluso hay vendedores de software que no venden licencias para entornosvirtualizados por lo que hay que comprobar antes de decantarse por uno deellos.

  • 7/23/2019 PFC Ruben Hernandez

    37/121

    37

    Veamos ahora un resumen en un cuadro de las ventajas e inconvenientes deimplementar infraestructuras virtualizadas.

    Ventajas Desventajas

    Consolidacin de servidores Prdida de rendimientoAdministracin de Sistemas simplificada Comparticin del servidor

    Alta disponibilidad y recuperacin antedesastres

    Soporte del hardware

    Alto rendimiento y redundancia Hardware virtual obsoleto

    Reduccin de costes Aceleracin de vdeo por hardware

    Mejora de las polticas de puesta en marcha,copias de seguridad y de recuperacin

    Riesgo de la organizacin al implantarplataformavirtualizada

    Optimizacin del uso y control de los recursos Nmero inadecuado de mquinas virtualesGran escalabilidad Anfitrin como nico punto de fallo

    Aprovisionamiento de mquinas virtuales Portabilidad condicionadaCompatibilidad hacia atrs Disminucin de ventas de hardware

    Disminucin del nmero de servidores fsicosDependencia del sistema operativoanfitrin

    Mejora de la eficiencia energticaDependencia de la solucin devirtualizacin

    Seguridad y aislamiento Disponibilidad insuficiente de recursos

    Mejora de la calidad y fiabilidad Congestin de red por servidorClonacin de mquinas virtuales

    Posible aumento de la complejidad de laadminitracin

    Flexibilidad Licencias software

  • 7/23/2019 PFC Ruben Hernandez

    38/121

    38

  • 7/23/2019 PFC Ruben Hernandez

    39/121

    39

    3 SOLARIS SPARC

    3.1 Historia de Solaris

    En febrero de 1982, en Silicon Valley, Andy Bechtolshel, Vinod Khosla, Bill Joy yScott MacNealy fundan la empresa Sun Microsystems.En su primer ao de vida, Sun lanza la Sun-1, una mquina con un procesadorMotorola a una velocidad de 6 MHz, 1MB de memoria RAM y 60MB de discoduro. Esta mquina corra el sistema operativo SunOS 1 basado en BSD 4.1 conel aadido de incorporar TCP/IP.Pero Qu es BSD?Empleados de los laboratorios Bell de AT&T, crearon las primeras versiones deUNIX. AT&T autoriz a la Universidad de California en Berkeley a retocar el

    cdigo y adaptarlo a sus necesidades. De este modo nace BSD (BerkeleySoftware Distribution).En 1984 Sun cre el sistema NFS (sistema de archivos de red), que consigue vercomo espacio de disco local, sistemas de archivos ubicados remotamente.Esta tecnologa NFS se estandariz siendo incluida a partir de la siguienteversin de SunOS 2 en 1985.En 1986 es lanzada la versin SunOS 3, incluyendo System V (potente y eficazsistema de inicio que controla los programas que se inician al arrancar lamquina). Este mismo ao se lanza la Sun-3, con un procesador Motorola a

    25MHz y 32 MB de memoria RAM.Un ao despus, con la Sun-4, se introduce la novedad de soporta arquitecturaSPARC V7 RISC.En 1989 sale la versin SunOS, primera en ser compatible con arquitecturaSPARC, basada en BSD 4.3 pero incluyendo utilidades System V.Sun lanza la versin SunOS 4.1.1, la llamada Solaris 1, y concluye as un ciclo.Todas las versiones lanzadas hasta ahora (desde 1982 a 1990) se incluyen en esenombre de Solaris 1.En junio de 1991 nace SunOS 5.0 con el nombre de Solaris 2, con variasnovedades:

    Abandona el nombre antiguo por Solaris 2 Basada en System V

    Con CDE (Common Desktop Environment), como escritorioaunque no abandona OpenWindows

    Soporte de Multiprocesamiento Simtrico (SMP) que permiteel uso de barias CPUs.

    A partir de entonces se produce una rpida evolucin en las versiones de Solarishasta la disponible ahora Solaris 11.

    En el siguiente cuadro aparecen las versiones con las principales novedadesincluidas en cada lanzamiento:

  • 7/23/2019 PFC Ruben Hernandez

    40/121

    40

    En junio de 2005 nace OpenSolaris, un proyecto en el que Sun liber gran partedel cdigo fuente pasando a ser desde entonces de libre distribucin.Nuevas mejoras fueron aadidas en otras distribuciones a partir de estainiciativa.En OpenSolaris.org se puede encontrar diferentes proyectos y mejoras, ascomo grupos de trabajo que aportan sus ideas y funcionalidades a lacomunidad.

    3.2 Hardware SUN

    El crecimiento exponencial de la red, ha revolucionado la naturaleza de lacomputacin.Las redes actuales, en su mayor parte se ven sometidas a un flujo deinformacin alfanumrica, teniendo menos importancia el trfico dedicado a laimagen, la geometra, audio, vdeo, etcLa tendencia futura es a invertir esta proporcin y las mquinas futuras debern

    tener capacidad para tratar este tipo de datos con un buen rendimiento.

    En 1987, Sun Microsystems anunci una arquitectura RISC (Reduced InstructionSet Computing) abierta denominada SPARC, base de los productos venideros deesta empresa.

    SPARC sigue siendo el procesador estandarte de ORACLE (Sun Microsystems fuecomprada por ORACLE en 2010, en el proyecto hablaremos indistintamente deSun y de ORACLE). Gracias a la tenacidad en mejora de tecnologa yrefinamiento continuo demuestra su compromiso con este tipo de arquitectura.

    Versin de Solaris Ao Tecnologas

    Solaris 1.0 (SunOS 4.1.1) 1990

    Solaris 1.0 (SunOS 4.1.1) 1993 NFS V3 Y CDE

    Solaris 2.4 (SunOS 5.4) 1994 x86 platform

    Solaris 2.6(SunOS 5.6) 1998 Kerberos, PAM, TrueType 64 bits para plataforma

    Solaris 7(SunOS 5.7) 1998 UltraSPARC

    Solaris 8 beta 1999 IPv6 support

    Solaris 9 SPARC 2002 Solaris Volume Manager

    Solaris 10 2004 Java Desktop

    Solaris 10 2006

    Java Desktop , Solaris Containers ,Service Management Facility (SMF)

    NFSv4 /ZFS

    Solaris 11 2011

  • 7/23/2019 PFC Ruben Hernandez

    41/121

    41

    En este proyecto, en la fase de implementacin prctica, utilizaremos unaSunFire T2000, correspondiente a la generacin de procesadores UltraSPARC T1.Se trata de un procesador lanzado en el ao 2005, y dista en potencia de losprocesadores actuales. Por esta razn pasaremos de estudiar arquitecturaSPARC y UltraSPARC, detenindonos en los procesadores UltraSPARC,

    UltraSPARC II y UltraSPARC IIi.

    ORACLE (antes Sun), se centra en los grandes servidores y estaciones de trabajo,mercado que poco a poco se ha ido acercando al de las mquinas de escritorio,gracias a que estas ltimas han evolucionado considerablemente. Peropodemos destacar que una particularidad es el uso del sistema operativo UNIX.La estrategia de desarrollo se divide en tres campos:

    1. Diseo de procesadores2. Tecnologa de procesos

    3. Arquitectura de instrucciones

    En cada desarrollo, slo una de estas reas es atendida. En UltraSPARC I, III, V(generaciones impares), se desarrollaron arquitecturas de pipeline, sinembargo, en UltraSPARC II, IV (generaciones pares), las innovaciones vinieronen el campo de tecnologa de procesos.Gracias a este mtodo se consigue una total compatibilidad de binarios, y deeste modo, los consumidores no se ven forzados a grandes inversiones encambios de sistemas operativos y aplicaciones.

    En base a lnea de trabajo, se desarrollaron tres series:

    o

    Serie S: Orientadas a servidores y Workstation (estaciones de tabajo)Son las UltraSPARC I, II, y II

    o

    Serie I: Solucin de bajo coste, multifuncionalidad en el procesadorUltraSPARC IIi

    o

    Serie E: Soluciones ntegrasmicroSPARC, ultraSPARC

    3.3 Arquitectura SPARC

    Destacamos las siguientes caractersticas:

    Economa y rendimiento: los procesadores SPARC son capaces de ungran nmero de ejecucin de instrucciones con un bajo nmero de transistores.SPARC tiene por tanto, un diseo muy simplificado, con un juego de

    instrucciones muy simple tambin, que logra en su conjunto un granrendimiento con un bajo coste.

  • 7/23/2019 PFC Ruben Hernandez

    42/121

    42

    Escalabilidad: SPARC es escalable dentro de mucha variedad detecnologas, en sus implementaciones de chip y configuracin de sistemas.Dispone de una cach muy flexible a la hora de integrarse, tambin en el modode manejo de memoria, y coma flotante. Gracias a todo esto, existen

    procesadores desde servidores a ordenadores porttiles con una relacincalidad precio muy interesante.

    Arquitectura abierta: Sun Microsystems, Inc. Fue pionero en esteconcepto en los aos 80. Sun apuesta por el uso de tecnologas estndar, para eldesarrollo de tecnologas ms avanzadas manteniendo bajos costes. Por otraparte, SPARC es compatible con productos de muchos vendedores, lo quesupone un atractivo aadido.

    Herramientas de desarrollo: El sistema operativo Solaris, ha demostrado

    su seguridad y fiabilidad desde hace muchos aos corriendo aplicaciones enentornos crticos, mltiples aplicaciones, transacciones y negocios.Existen completos juegos de herramientas de desarrollo software en SPARC.

    3.3.1 Arquitectura SPARC V-9

    La versin 9 de SPARC (SPARC-V9), ha sido un gran salto tecnolgico desde quenaciera en el ao 1987.Destacan las siguientes mejoras:

    o

    Direccionamiento de 64 bits y uso de 64 bits par datos enteroso

    Mejor rendimiento del sistemao

    Soporte para optimizacin de compiladores y alto rendimiento consistemas operativos

    o

    Implementacin superescalar (paralelismo)o

    Mejora en tolerancia a falloso

    Rpido manejo de trabas y cambiante contextoo

    Uso de Big y Little Endian

    3.3.2 Procesador UltraSPARC-I

    Este procesador mantuvo la compatibilidad de su antecesor, el SPARC-V8, queutilizaba 32 bits. De este modo poda ejecutar sin conflictos aplicaciones queexistan.UltraSparc-I dispone de un direccionamiento de 64 bits, y tambin 64 bits paradatos, pero tambin tiene otros aadidos:

    o

    Hasta 4 instrucciones por ciclo de reloj con 9 fases de pipelineo

    Mejora del rendimiento de la cach y en la latencia de memoria

  • 7/23/2019 PFC Ruben Hernandez

    43/121

    43

    o

    Permite hasta 4MB de cach externo, 16K de datos y 16K deinstrucciones

    o

    Soporta multi-procesador con baja latencia a los datos compartidoso

    Soporte para grfico e imgenes en el chipo

    4 capas de metal a 3.3 voltios con tecnologa CMOSo

    Empaquetado con plstico de 531 pinso

    Tasas de transferencia de memoria altas (1.3GB/s.)o

    Interconexin con el nuevo Ultra Port Architecture (UPA)

    3.3.3 Estrategia SPARC

    Sun Microsystems en los aos 80, transfiri la arquitectura SPARC a SPARCinternational con el objetico de continuar con su desarrollo fomentando lossistemas abiertos.Es, por lo tanto una especificacin abierta, en la que el propio diseador notiene control total.SPARC impone normas sobre su diseo y sobre la compatibilidad de software .SPARC Compilance Definition nace para garantizar esta compatibilidad,normalizando as las interfaces de hardware y especificando directrices para elsoftware de sistema.

    La razn por la apuesta de Sun hacia una tecnologa abierta, es la rivalidad ycompetitividad por el desarrollo e innovacin de los diferentes vendedores.

    Aproximadamente media docena de distribuidores de SPARC consiguieronlicencia para fabricar con diferentes tecnologas (CMOS, ECL, GaAs,VLSI, etc.). Elfin fue mejorar en el desempeo, reducir costes y por lo tanto precios, eintentar hacer de la arquitectura SPARC, un estndar del mercado.

    SPARC destaca por su capacidad de multiprocesamiento, dispone de un bus congran ancho de banda, y su diseo permite que las aplicaciones corranconsiderando una buena relacin precio-rendimiento. Lo sistemas sondiseados para un rendimiento alto en clculo de datos en coma flotante y

    soporta simple y doble precisin, as como extendida en los datos y en lasoperaciones.Los sistemas SPARC consiguen altas velocidades de procesamiento gracias a sustcnicas de fabricacin de chips.

    Con respecto al diseo del procesador, SPARC tena originalmente undireccionamiento de 32 bits, que a partir del SPARC-V9 fueron 64 bits,dedicados a programas de aplicacin. Tambin dispone de un bus de datosflexible para la optimizacin de la arquitectura.

  • 7/23/2019 PFC Ruben Hernandez

    44/121

    44

    Imagen 8: Diagrama de bloques arquitectura SPARC

    SPARC tiene definidas instrucciones, registros y datos enteros. Tiene un registrode instrucciones sencillo, normalmente no sobre pasan un ciclo de reloj.Los enteros y coma flotante, admiten ejecucin secuencial. Esto es gracias al

    apoyo de una arquitectura para programas secuenciales.Los enteros usan ventana de registro.Estos registros son definidos por SPARC pero los fabricantes tienen total libertadpara elegir el nmero que consideren de ventanas de registros para satisfacerlas necesidades de acuerdo a una buena relacin precio-rendimiento.

    En SPARC-V8 dispone de 32 bits de registros:32 para single, 16 para doubl o 8 para quad.

    SPARC-V9 tiene doble nmero de registros y aade carga (load) para nmerosen coma flotante y almacenamiento (store) para operaciones con quad.Los programas que corren en arquitectura SPARC, aumentan ligeramente elnmero de instrucciones que ejecutan de las que se ejecutan en un sistemaCISC, pero a cambio necesita muchas menos referencias a memoria.

    Caractersticas de la cach:

    La memoria cach mejora el rendimiento facilitando un acceso ms rpido a losdatos, ya que sin un dato est en cach requiere de muchos menos ciclos de

    reloj para ser accedido.SPARC unifica las instrucciones de cach y datos mediante la Harvard cacheorganization, que utiliza una instruccin independiente (I-cache) y cache dedatos (D-cache). En un solo ciclo de reloj un dato solicitado puede ser estardisponible en buses de datos independientes a la vez. Es decir, el procesadorpuede, en un ciclo de reloj, acceder al I-cache y al D-cache a la vez.Acceso a memoria:El acceso a memoria principal de un procesador SPARC es a travs de cachvirtual.

    El sistema operativo Solaris utiliza la capacidad de la memoria virtual de SPARCconsiguiendo un mayor espacio de direccionamiento.

  • 7/23/2019 PFC Ruben Hernandez

    45/121

    45

    3.3.4 Arquitectura UltraSPARC

    Para conseguir un alto rendimiento, se necesita una mejora de tres factores:Nmero de instrucciones copiladas y generadas en un trazo de ejecucin (NI),proporcin de instrucciones por ciclo (IPC), y la tasa de reloj.

    Un sistema rentable debe mejorar estos tres puntos y no slo centrarse en lastasas de reloj, y para ello se usan tecnologas de semiconductores principales.Los sistemas UltraSPARC consiguen este objetivo dando un buen rendimientocon tasas de reloj razonables y mejorando el IPC.En resumen, el objetivo de la arquitectura es un buen manejo del pipeline delprocesador con unos tiempos de acceso a memoria. Reducir el tiempo deacceso a memoria, junto con un aumento del nmero de instrucciones por ciclo,desemboca en un mejor rendimiento, sin complicar demasiado el diseo delprocesador.

    Con UltraSPARC-I, Sun Microsystems intent mejorar el rendimiento sinaumentar los costes y por lo tanto, el precio final del producto. Consigue unequilibrio considerando el procesador global y el coste, mientras se consigue unbuen rendimiento de operaciones en coma flotante y tamaos de cach.

  • 7/23/2019 PFC Ruben Hernandez

    46/121

    46

    Pasamos a hacer un repaso histrico de las implementaciones de los diferentesprocesadores de arquitectura SPARC, hasta llegar al lanzamiento del UltraSPARCT1, que es el que se incorpor en la SunFire T2000, y que es la mquina queutilizaremos en la implementacin prctica.

  • 7/23/2019 PFC Ruben Hernandez

    47/121

    47

    Imagen 9: Mapa histrico de lanzamiento de procesadores SPARC hasta 2005

  • 7/23/2019 PFC Ruben Hernandez

    48/121

    48

  • 7/23/2019 PFC Ruben Hernandez

    49/121

    49

    3.4 SUNFIRE T2000

    En noviembre de 2005, Sun Microsystems lanza al mercado el nuevo UltraSparcT1 processor, bajo el nombre de Nigara. Se trata de un procesador de ochocores (hay versin de cuatro y seis cores) paralelos capaces de ejecutar 4

    procesos casi simultneamente (multi-hilo). Cada core dispone de un pipelinede enteros que es compartido por los cuatro hilos del core, para ocultar lalatencia de memoria.

    Dispone slo de una unidad de nmero en coma flotante para todos los cores,por lo que es un procesador diseado para programas que utilizan pocas oninguna operacin en coma flotante, como por ejemplo servidores web(webservers) o bases de datos.UltraSPARC T1 es compatible con UltraSPARC IV .

    Cada uno de esos ocho cores del procesador, dispone de su propio nivel deinstrucciones y datos cach.Esta mquina es un servidor de alto rendimiento con una alta escalabilidad yextremadamente confiable. Todos los cores tienen acceso a un nivel 2 de cachcomn de 3 MB y a la memoria principal comn.

    Un servidor Sun Fire T2000 con un procesador UltraSPARC T1 Niagara fue

    instalado en RWTG Aachen Universities Center for Computing andComunication. Este sisema dispona de una memoria principal de 8Gbyte y

    corra Solaris 10.

    Imagen 10: Servidor SunFire T2000

  • 7/23/2019 PFC Ruben Hernandez

    50/121

    50

    Despus de la actualizacin de los grandes servidores Sun Fire con dual coreUltraSPARC IV del ao 2004, los sistemas Sun Fire T2000 fueron un importanteavance hacia el uso de los nuevos tipos de microprocesadores con tecnologasmulti-proceso y multi-hilo, las cuales dominaran el mercado de los sistemas enel futuro.

    Los procesadores UltraSPARC T1 mejora el caudal (thoughput) usando menosenerga y disipando menos calor que los diseos de procesadoresconvencionales.Dependiendo del modelo adquirido, el procesador tiene cuatro, seis u ochoUltraSPARC cores.Como hemos comentado antes, el procesador dispone de una L1 cache y L2cache, controladores de memoria DDR2, y una interfaz JBus I/O (entrada/salida)cuidadosamente optimizado para un magnfico rendimiento.

    A continuacin se pueden observar las caractersticas del T2000 con susopciones de configuracin de adquisicin:

  • 7/23/2019 PFC Ruben Hernandez

    51/121

    51

    3.4.1 Gestin remota con ALOM CMT

    La caracterstica Sun Advanced Lights Out Manager (ALOM) CMT es la

    controladora del sistema (system controller o SC) que permite gestionar yadministar remotamente el servidor.Esta caracterstica viene por defecto instalada en el firmware y se inicializa alalimentar energticamente el sistema.ALOM CMT permite monitorizar y controlar el servidor a travs de la red, o bienutilizando un puerto serie para conectar al terminal o terminal server. Presentauna interfaz de comandos para administrar remotamente el servidor cuando lapresencia fsica no es posible. ALOM CMT permite ejecutar remotamenteherramientas de diagnosis (como POST), que de otro modo requeriran

    presencia fsica para conectar por puerto serie.

    Permite configurar tambin para enviar alertas sobre eventos de fallo hardware,y otros eventos relacionados con el servidor.La circuitera de ALOM CMT es independiente del servidor, por lo que puedeutilizarse incluso cuando el servidor pierde conexin por red, o estcompletamente apagado.

  • 7/23/2019 PFC Ruben Hernandez

    52/121

    52

    Aqu se observa el listado de componentes que puede monitorizar la ALOMCMT:

    Temperatura de CPU

    Estado de disco duro

    Condiciones trmicas del entorno Velocidad del ventilador y estado

    Estado de las fuentes de alimentacin

    Fallas detectadas por POST

    Solaris Predictive Self-Healing (PSF)

    3.4.2 Fiabilidad, disponibilidad, y capacidad de servicio

    Estas tres caractersticas son aspectos de un sistema que permite operar

    continuamente y minimizar el tiempo necesario para servir al sistema.La fiabilidad se refiere a la capacidad de operar continuamente sin fallos ymanteniendo la integridad de los datos.La disponibilidad del sistma se refiere a la capacidad de recuperarse a un estadooperacional despus de un fallo, con un impacto mnimo. Y nos referimos a lacapacidad de servicio como el tiempo que le lleva al sistema de restaurar elservicio despus de un fallo. Estas caractersticas juntas ofrecen un sistema decontinua operacin.

    Para conseguir altos niveles de estas tres caractersticas, el Sun Fire T2000

    ofrece los siguientes aadidos:

    Conexin en caliente de discos duros

    Redundancia de fuentes de alimentacin (dos) y posibilidad de cambio encaliente

    Redundancia de ventiladores (tres) y posibilidad de cambio en caliente

    Monitorizacin de entorno

    Deteccin y correccin de errores para una mejor integridad de datos

    Fcil acceso a la mayora de reemplazo de componentes

    Chequeos POST que borran componentes en fallo de la configuracin PSH diagnosis que pone offline los componentes en fallo

  • 7/23/2019 PFC Ruben Hernandez

    53/121

    53

    Imagen 11: SunFire T2000 vista delantera y trasera

    Los dispositivos que se suelen conectar al puerto serie de gestin suelen ser:

    Servidor de terminales

    Terminal alfanumrico o similar

    Lnea Tip conectada a otro dispositivo Sun.

    El puerto serie de gestin de SC se usa para administracin in situpor consola(system controller)

    El servidor dispone de redundancia de fuente de alimentacin para mayorseguridad de suministro elctrico.

  • 7/23/2019 PFC Ruben Hernandez

    54/121

    54

  • 7/23/2019 PFC Ruben Hernandez

    55/121

    55

    4 VIRTUALIZACIN EN SOLARIS

    Tal y como se ha comentado anteriormente, las empresas, en busca deincrementar sus niveles de eficiencia y reducir costes, lanzan iniciativas de

    consolidacin de servidores. Aunque la consolidacin ofrece a las empresas laoportunidad de una mejor utilizacin de recursos, el despliegue de variasaplicaciones en un nico servidor deriva en un rendimiento inferior y muchasveces en fallos de aplicacin. Adems, una sola aplicacin con un malcomportamiento puede afectar a otros recursos o servicios software.Los mtodos simples de consolidacin no proporcionan los lmites de seguridadrequeridos por las aplicaciones que acceden a informacin sensible.Afortunadamente, las tecnologas de virtualizacin de mejorar las estrategias deconsolidacin, al permitir a las organizaciones crear lmites administrativos y de

    recursos entre las aplicaciones dentro de un sistema. La capacidad de aislar losprogramas de software que se ejecutan en un servidor consolidado ayuda a lasorganizaciones de TI entregar el rendimiento de las aplicaciones y los requisitosde seguridad, as como las necesidades de ajuste se encuentran personalizados.Mediante la combinacin de cargas de trabajo y el uso de tcnicas devirtualizacin, las empresas pueden maximizar el uso de plataformas decmputo, simplificar su infraestructura de TI, y traer nuevos niveles deeficiencia, manejabilidad y agilidad.

    Una serie de tecnologas permiten la virtualizacin de plataforma,proporcionando a cada diversos grados de flexibilidad, disponibilidad yseguridad. En algunos casos, las organizaciones se benefician mediante el usode varias herramientas en un solo servidor. Mediante la entrega de productos ytecnologas avanzadas, y aprovechando su experiencia global en el suministrode sistemas y software, Oracle ofrece una cartera completa de soluciones devirtualizacin. Enfoque integral de Oracle aborda todas las categoras devirtualizacin, incluyendo la gestin de recursos, la particin de dominios fsicos(hard partitioning), virtualizacin a nivel de sistema operativo (OS), y latecnologa de mquina virtual (VM) (ver figura).

    ORACLE, por lo tanto, ofrece diferentes soluciones de virtualizacin deplataforma, tal y como vimos en el captulo terico de virtualizacin. Enconcreto ofrece tres formas de virtualizacin de plataforma:

    Dominios fsicos (Dynamic System Domains)

    ORACLE VM para SPARC (anteriormente llamado Logical Domains oLDOMs)

    Zonas (Solaris Containers o Solaris Zones)

  • 7/23/2019 PFC Ruben Hernandez

    56/121

    56

    Imagen 12: Esquema de soluciones de virtualizacin ofrecidas por ORACLE

    4.1 Dominios fsicos (Dynamic System Domains)

    Oracle incluye esta solucin de virtualizacin en sus mquinas de gama alta. Setrata de una particin elctrica del servidor. Es conocida como Dominios, y sunombre real es Dynamic System Domains.Un dominio es un recurso independiente del sistema que ejecuta su propiacopia del sistema operativo Oracle Solaris. Los dominios dividen los recursos

    totales de un sistema en unidades separadas que estn afectados por lasoperaciones de cada uno. Los dominios pueden ser utilizados para diferentestipos de procesamiento; Por ejemplo, un dominio puede ser utilizado paraprobar nuevas aplicaciones, mientras que otro puede ser utilizado para fines deproduccin.

    Cada servidor se compone de una o varias Physical System Board (PSB).Una PSB consiste en 4 CPUs, 32 DIMMs y una interfaz de I/O (entrada-salida). LaI/O vara dependiendo del servidor, y puede incluir ranuras PCIe, PCI-X y built-in

    I/O.

    Una PSB puede estar dividida lgicamente dividida en una unidad (no dividida),o lgicamente dividida en cuatro unidades. En el primer caso se le llama Uni-XSB, y en caso de estar dividida se le llama Quad-XSB.

    A cada una de las divisiones lgicas se le llama Extended System Board (XSB).

  • 7/23/2019 PFC Ruben Hernandez

    57/121

    57

    Por lo tanto:

    Uni-XSB

    Una PSB no dividida lgicamente y configurada en una XSB Contiene todos los recursos de la placa: en media 4 CPUs,

    32 DIMMs e interfaz de E/S en un servidor de gama alta; 1CPU, 8 DIMMs e interfaza de E/S en un servidor de nivel deentrada.

    Quad-XSB

    Una PSB dividida lgicamente y configurada en cuatro XSBs

    Cada una de las cuatro XSBs contiene un cuarto de losrecursos totales de la mquina: 1 CPU, 8 DIMMS, e interfazde E/S en un servidor de gama alta; En un servidor de gamamedia slo dos XSBs tienen interfaz E/S.

    Un dominio consiste en una o ms XSBs. Cada dominio dispone de su propiacopia de sistema operativo Solaris, y cada dominio debe tener como mnimo 1CPU, 8 DIMMS, e interfaz de E/S.Cada XSB est aislada elctricamente, por lo que supone una separacin

    completa de mquinas. En definitiva, disponemos de un chasis con variasmquinas totalmente independientes, y por lo tanto podemos tener diferentekernel, parches, etc.

    Aqu podemos observar una PSBen modo Uni-XSB en un servidorde gama baja (entry-level).

  • 7/23/2019 PFC Ruben Hernandez

    58/121

    58

    En este caso tenemos unservidor de gama media con unaPSB formada por 4 CPU y 32

    DIMMs

    Observamos aqu un servidor degama alta, con 1 PSB en Uni-XSBCon 4 CPUs, 32 DIMMs y 4interfaz de E/S.

    Aqu tenemos un servidor degama media con unaconfiguracin en Quad-XSB, ycon dos dominios (XSB00-0 yXSB00-1).

    Debido a la necesidad de undispositivo de E/S en cadadominio, no puede haber ms.Los XSB restantes (XSB00-2,XSB00-3)pueden ser asignados a losdominios existentes o aninguno.

  • 7/23/2019 PFC Ruben Hernandez

    59/121

    59

    Por ltimo, tenemos un servidorde gama alta, configurado enmodo Quad-XSB, con cuatro

    dominios, cada uno con 1 CPU, 8DIMMs, e interfaz de E/S.

    A continuacin, se muestran losdiferentes modelos de gamamedia y alta comercializados porSUN y con las caractersticasbsicas de virtualizacin endominios fsicos.

    Modelos de alta gama con PSB admitidos y nmero de dominios

    Un dominio tiene dos modos de funcionamiento de CPU:

    SPARC64 VI Compatible Mode (disponible para servidores de gama mediay gama alta):

    En este modo todos los procesadores del dominio se comportan yson tratados por el sistema operativo como procesadoresSPARC64 VI. Las caractersticas extendidas de SPARC64 VII ySPARC64 VII+ no estn disponibles para este modo (dominios 1 y 2de la figura siguiente).

  • 7/23/2019 PFC Ruben Hernandez

    60/121

    60

    SPARC64 Enhanced Mode (disponible para servidores de gama baja,media y alta):

    Todas las placas del dominio tienen que contener solamenteprocesadores SPARC64 VII+ o SPARC64 VII. En este modo, elservidor utiliza las caractersticas extendidas de estos

    procesadores (dominio 0 de la figura siguiente).

    Imagen 13: Modelos de procesador SPARC64 VI y VII

    Con respecto a la comunicacin de los dominios, hablaremos de:

    Comunicacin interna entre el dominio y el Procesador de Servicio atravs de red DSCP:

    La red DSCP establece un enlace, usando direccin IP, entre elProcesador de Servicio y los dominios. Este enlace establececomunicacin entre ambos, y una trasmisin segura deinformacin.Cada dominio tiene que tener asignada su propia direccin IP y elProcesador de Servicio tiene que disponer de la suya.

    DSCP est optimizado para un intercambio seguro de datos decontrol como reporte de errores, eventos de fallo, ysincronizacin.

    Acceso al dominio desde el Procesador de Servicio:Para acceder a un dominio, se puede primero hacer login alProcesador de Servicio, y despus utilizar el comando consolepara acceder a un dominio en particular.Una vez ienes acceso a la consola del dominio, se dispone laconsola estndar de Solaris, con la Shell que est configurado.

  • 7/23/2019 PFC Ruben Hernandez

    61/121

    61

    Acceso por red Ethernet:Si se dispone de un servidor conectado en red (es lo habitual), sepuede hacer login al dominio directamente utilizando algunas delas aplicaciones destinadas a este efecto: telnet, rsh, ssh, rlogin. Es

    habitual el uso de sshdebido a que establece conexiones seguras.

    XSCF: eXtended System Controller Facility

    El XSCF es una utilidad para el control del servidor que incluye un procesadorindependiente de los del servidor, es el Procesador de Servicio.XSCF es un firmware que viene instalador por defecto en algunas de lasmquinas de gama media y alta de ORACLE (servidores Mx000) y que funcionaen la unidad XSCFU.

    Cuando se suministra energa elctrica, en el servidor de alimentacin deentrada, XSCF monitoriza el servidor y lo gestiona incluso aunque los dominiosestn apagados.De hecho, es la forma de gestionarlos en este caso, y desde la XSCF se puedenarrancar los dominios.La XSCF proporciona una interfaz de comandos para el usuario en la que sepueden gestionar los dominios y el servidor en s.

    Dispone de dos interfaces externas: un puerto serie y un puerto LAN, y gracias aestas se puede conectar mediante un terminal o un ordenador personal a travsde conexin serie o conexin Ethernet.

    A continuacin se observan algunos de los comandos que se pueden ejecutarcon la interfaz de comandos XSCF y la utilidad que tienen:

  • 7/23/2019 PFC Ruben Hernandez

    62/121

    62

    Existe un modo de configuracin redundante para conseguir una alta fiabilidad.En esa configuracin una XSCF es la que toma el control (XSCF activa), y existenotras XSCF que estn a la espera (stand-by).Mediante una monitorizacin entre los XSCF en espera y activo, en caso de unafalla del XSCF activo, el que est (o uno de los que estn) en espera tomen elcontrol conmutando el servicio.

  • 7/23/2019 PFC Ruben Hernandez

    63/121

    63

    4.2 Oracle VM para SPARC

    Otro tipo de soluciones que ofrece ORACLE para implantar virtualizacin es elsoftware llamado ORACLE VM para SPARC, antes conocido como LDoms (LogicalDomains, se usar en adelante tambin el trmino LDOM para referirse a

    ORACLE VM para SPARC).Se trata de una virtualizacin de plataforma, completa, en un escaln superior alde los dominios fsicos explicado anteriormente.

    Este tipo de virtualizacin se compone de una parte a nivel de firmware y de lainstalacin de Domain Controller, que es responsable de la gestin de losdominios lgicos (logical domains) creados. En esta arquitectura el hypervisor seencuentra a nivel de firmware, y el control domain a nivel de sistema operativo.Se puede decir que el control domain es quien gestiona los dominios y secomunica con el hardware.

    Un poco ms adelante se explicar con ms detenimiento algunos trminosnecesarios para la comprensin del funcionamiento de esta solucin.

    El dominio de control (control domain) y el dominio de servicio (service domain)pueden correr juntos, pero las aplicaciones de usuario no deben estar instaladaen este dominio, con el fin de proteger la estabilidad y rendimiento del dominio.

    Imagen 14: Esquema de virtualizacin con ORACLE VM

    Gracias al comportamiento del firmware, se proporciona un entorno dearranque diferente para cada dominio lgico, y en teora, es posible corrercualquier sistema operativo programado para arquitectura SPARC.

  • 7/23/2019 PFC Ruben Hernandez

    64/121

    64

    Por lo tanto, la versin el sistema operativo Solaris que corre en un dominioinvitado puede ser diferente a la versin que corre en el dominio primario.Consideramos este detalle de cara a la implementacin prctica del proyecto,donde nos valdremos de esto para compatibilizar software medianteconsolidacin de servidores.

    4.2.1 Hipervisor y dominios lgicos

    El hipervisor es una capa firmware que provee de una arquitectura de mquinavirtualizada, estable, en la que un sistema operativo puede escribirse. Comohemos visto anteriormente, el hipervisor, hace de intermediario entre elhardware y los dominios lgicos, y las instancias de sistema operativo quecorren en ellos.

    Un dominio lgico es una mquina virtual que tiene asignados una serie derecursos, tiene su propio sistema operativo y se comporta como un sistemaindependiente.Como sistemas independientes, los dominios lgicos pueden ser creados,destruidos, configurados y reiniciados, sin que sea necesario un reinicio delservidor.Tambin pueden correr diferentes aplicaciones sobre los distintos dominioslgicos con los