Upgrade to Pro — share decks privately, control downloads, hide ads and more …

III. El arte de la virtualización

III. El arte de la virtualización

Tercera sesión del curso de Integración de Sistemas del Máster Oficial de Software Libre de la URJC (2012-13).

Miguel Vidal

April 20, 2013
Tweet

More Decks by Miguel Vidal

Other Decks in Education

Transcript

  1. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on III. El arte de la virtualizaci´ on Integraci´ on de Sistemas Miguel Vidal Jose Castro Twitter: @mvidallopez Twitter: @jfcastroluis M´ aster oficial en Software Libre 19 de abril 2013 1 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  2. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on c 2010-2013 Miguel Vidal, Jose Castro This work is licensed under a Creative Commons Attribution 3.0 License http://creativecommons.org/licenses/by/3.0 2 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  3. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Contenidos del curso Sesi´ on I: Introducci´ on al software libre en servidores Sesi´ on II: El Almacenamiento como Servicio Sesi´ on III: El Arte de la Virtualizaci´ on Sesi´ on IV: De la Virtualizaci´ on al Cloud Computing Sesi´ on V: Clusters de Alta Disponibilidad 3 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  4. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Qu´ e es la virtualizaci´ on 4 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  5. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Qu´ e es la virtualizaci´ on Es la combinaci´ on de hardware y software que permite a un recurso f´ ısico funcionar como m´ ultiples recursos l´ ogicos. Tambi´ en se puede definir como la abstracci´ on o la multiplexaci´ on de un recurso f´ ısico. 5 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  6. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 6 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  7. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Virtualizaci´ on: Or´ ıgenes remotos Figure: IBM System/360 Modelo 91 de la NASA a fines de los 60 (Fuente: Wikipedia) Figure: System/360 operando en Volkswagen (Fuente: Wikipedia) T´ ermino acu˜ nado en los a˜ nos 60 (tambi´ en conocido como “pseudo m´ aquina”). En los ’70 IBM desarroll´ o varios sistemas con soporte de virtualizaci´ on. Un componente llamado Virtual Machine Monitor (VMM) corr´ ıa directamente sobre el hardware “real”. Se pod´ ıan crear varias m´ aquinas virtuales y cada instancia ejecutaba su propio SO. 7 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  8. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Antecedentes modernos 1999: VMware introduce el primer producto de virtualizaci´ on x86, VMware Virtual Platform. 2005: VMWare distribuye gratuitamente virtualizaci´ on para escritorio. Finales de 2005: Intel introduce VT-x. 2006: AMD-V. 2006: Parche de Xen para kernel Linux 2.6.18. 2007: KVM aparece en la rama oficial del kernel Linux 2.6.20. 2007: Sun publica LDOM para Sparc. 8 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  9. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 9 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  10. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Requerimientos de virtualizaci´ on de Popek y Goldberg Equivalencia / Fidelidad: Un programa corriendo bajo un VMM debe tener un comportamiento esencialmente id´ entico a cuando se ejecuta en una m´ aquina f´ ısica equivalente. Control de recursos / Seguridad: El VMM debe tener control completo de los recursos virtualizados. Eficiencia / Rendimiento: Una fracci´ on estad´ ısticamente dominante de las instrucciones de m´ aquina debe ser ejecutada sin intervenci´ on del VMM. [Gerald J. Popek, Robert P. Goldberg, 1974, ACM: “Formal Requirements for Virtualizable Third Generation Architectures”] 10 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  11. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Conceptos b´ asicos anfitri´ on (host): el sistema operativo que ejecuta el software de virtualizaci´ on. El anfitri´ on controla el hardware real. invitado o hu´ esped (guest): el SO virtualizado. Puede haber varios invitados en un mismo anfitri´ on. Los invitados no deben interferir entre ellos ni con el anfitri´ on. 11 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  12. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Conceptos de virtualizaci´ on Al software de virtualizaci´ on se le llama: Hipervisor. Virtual Machine Manager or VMM. El VMM o Hipervisor corre como parte del sistema operativo del anfitri´ on (o es el anfitri´ on). A una instancia del hardware virtualizado se la conoce como M´ aquina Virtual o VM. Los sistemas operativos invitados corren dentro de una VM. 12 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  13. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Hipervisor Los Virtual Machine Monitors (aka hipervisores) permiten que diferentes SOs, tareas y configuraciones de software coexistan en una misma m´ aquina f´ ısica. Abstrae los recursos f´ ısicos de la m´ aquina anfitriona para las distintas “m´ aquinas virtuales”. Garantiza nivel de aislamiento entre los invitados. Tambi´ en proporciona una interfaz ´ unica para el hardware. 13 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  14. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Clases de hipervisores 1 Tipo 1 (“nativo”/“bare-metal”): el hipervisor es una capa entre el hardware y el sistema operativo. 2 Tipo 2 (“hosted”): el hipervisor es una capa de software que corre sobre el sistema operativo anfitri´ on. [*] Robert P. Goldberg, 1973: “Architectural Principles for Virtual Computer Systems” 14 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  15. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Extensiones nativas para x86 2005: Intel y AMD a˜ naden soporte hardware para la virtualizaci´ on. Intel Virtualization Technology (Intel VT) codename Vanderpool AMD Virtualization (AMD-V) codename Pacifica Permiten a los hipervisores un rendimiento mayor en modo virtualizaci´ on completa. La virtualizaci´ on completa es m´ as sencilla de implementar. 15 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  16. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 16 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  17. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Razones para virtualizar (1) Permite el aislamiento de aplicaciones y usuarios sobre la misma m´ aquina para que no se interfieran entre s´ ı. Consolidaci´ on: fusiona varios servidores o servicios en una misma m´ aquina (email, web, dns, etc.). Ejecutar diferentes sistemas operativos o software espec´ ıfico para un tipo de CPU. 17 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  18. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Razones para virtualizar (y 2) Entornos de prueba sencillos y seguros: depuraci´ on, desarrollo y aislamiento para estudiar virus, etc. F´ acil desarrollo de software utilizando aplicaciones de software virtuales. Desde la perspectiva del negocio, es posible reducir los costes totales de propiedad (TCO). Minimiza el consumo de energ´ ıa y la infraestructura de refrigeraci´ on en los datacenters. 18 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  19. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones ¿No hay inconvenientes? 19 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  20. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones ¿No hay inconvenientes? “You are absolutely deluded, if not stupid, if you think that a worldwide collection of software engineers who can’t write operating systems or applications without security holes, can then turn around and suddenly write virtualization layers without security holes.” Theo de Raadt) 19 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  21. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones ¿No hay inconvenientes? “You are absolutely deluded, if not stupid, if you think that a worldwide collection of software engineers who can’t write operating systems or applications without security holes, can then turn around and suddenly write virtualization layers without security holes.” Theo de Raadt) 19 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  22. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones ¿No hay inconvenientes? “You are absolutely deluded, if not stupid, if you think that a worldwide collection of software engineers who can’t write operating systems or applications without security holes, can then turn around and suddenly write virtualization layers without security holes.” Theo de Raadt) El aislamiento no siempre es perfecto: es software. C´ odigo complejo: mayor exposici´ on a bugs. 19 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  23. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones Virtualizaci´ on y Cloud Computing El Cloud Computing (IaaS) no es lo mismo que la gesti´ on de la virtualizaci´ on. Pero es cierto que la inmensa mayor´ ıa de los entornos de Cloud Computing hacen uso intensivo de la virtualizaci´ on. La gesti´ on del hardware est´ a totalmente abstra´ ıda. La capacidad de la infraestructura en Cloud Computing es el´ astica (tanto para crecer como para menguar). El cloud (IaaS) son recursos hardware convertidos en un “pool de recursos” 20 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  24. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Tipos de virtualizaci´ on 21 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  25. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Tipos de virtualizaci´ on El objetivo es crear la impresi´ on de tener hardware separado en un ´ unico sistema f´ ısico. Hay 4 maneras de hacer esto: 1 Emulaci´ on 22 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  26. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Tipos de virtualizaci´ on El objetivo es crear la impresi´ on de tener hardware separado en un ´ unico sistema f´ ısico. Hay 4 maneras de hacer esto: 1 Emulaci´ on 2 Virtualizaci´ on completa 22 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  27. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Tipos de virtualizaci´ on El objetivo es crear la impresi´ on de tener hardware separado en un ´ unico sistema f´ ısico. Hay 4 maneras de hacer esto: 1 Emulaci´ on 2 Virtualizaci´ on completa 3 Paravirtualizaci´ on 22 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  28. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Tipos de virtualizaci´ on El objetivo es crear la impresi´ on de tener hardware separado en un ´ unico sistema f´ ısico. Hay 4 maneras de hacer esto: 1 Emulaci´ on 2 Virtualizaci´ on completa 3 Paravirtualizaci´ on 4 Virtualizaci´ on a nivel de sistema operativo 22 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  29. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Tipos de virtualizaci´ on El objetivo es crear la impresi´ on de tener hardware separado en un ´ unico sistema f´ ısico. Hay 4 maneras de hacer esto: 1 Emulaci´ on 2 Virtualizaci´ on completa 3 Paravirtualizaci´ on 4 Virtualizaci´ on a nivel de sistema operativo 22 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  30. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Tipos de virtualizaci´ on El objetivo es crear la impresi´ on de tener hardware separado en un ´ unico sistema f´ ısico. Hay 4 maneras de hacer esto: 1 Emulaci´ on 2 Virtualizaci´ on completa 3 Paravirtualizaci´ on 4 Virtualizaci´ on a nivel de sistema operativo ¿Alguno m´ as? 22 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  31. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 23 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  32. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Emulaci´ on La m´ aquina virtual simula el hardware completo. Hu´ espedes sin modificar de diferentes arquitecturas hardware corren dentro de una VM. Utilizado para sandboxes o para desarrollar software sin que el hardware est´ e disponible f´ ısicamente. Ejemplos: Qemu; basilisk II (un emulador de Mac (m68k) para x86). 24 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  33. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Emulaci´ on: arquitectura Ventajas: Simular hardware que no est´ a f´ ısicamente disponible. Desventajas: Bajo rendimiento y baja densidad (coste alto). 25 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  34. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 26 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  35. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Virtualizaci´ on completa Parecido a la emulaci´ on: anfitriones sin modificar. Diferencia de la emulaci´ on: los SOs a virtualizar dise˜ nados para correr en la misma arquitectura que el anfitri´ on. Combinado con hardware: CMT, Intel VT, AMD-V, estas CPUs controlan el acceso a instrucciones de virtualizaci´ on. Ejemplos: KVM, VirtualBox, Xen + Intel VT. 27 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  36. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Virtualizaci´ on completa: arquitectura Ventajas: Flexibilidad, ejecuta diferentes sistemas operativos de distintos fabricantes. Desventajas: No se pueden emular otras arquitecturas. Rendimiento (en CPUs est´ andar). 28 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  37. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 29 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  38. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Paravirtualizaci´ on El hipervisor ofrece una versi´ on modificada del anfitri´ on. La VM ofrecida tiene la misma arquitectura que el anfitri´ on. Ejemplo: Xen con CPUs est´ andar. 30 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  39. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Paravirtualizaci´ on: arquitectura Ventajas: Rendimiento (ligero y r´ apido), escalabilidad y facilidad de gesti´ on; fuerte aislamiento; permite virtualizar sin necesidad de CPUs especiales. Desventajas: Para la misma arquitectura. Requiere modificar el SO del invitado. 31 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  40. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 32 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  41. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Virtualizaci´ on ligera Tambi´ en conocida como virtualizaci´ on a nivel de SO o virtual hosts. La virtualizaci´ on se hace instanciando la imagen del SO (sin hipervisor). El SO est´ a modificado para permitir m´ ultiples procesos en diferentes espacios de usuario aislados unos de otros, cada uno con su configuraci´ on de red. Ejemplos: Jaulas (FreeBSD), zonas (OpenSolaris), LXC (Linux). 33 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  42. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Virtualizaci´ on ligera: arquitectura Figure: Virtualizaci´ on a nivel de SO (OS-level) Ventajas: R´ apida, capa ligera de virtualizaci´ on. Rendimiento cercano al nativo. Densidad. Desventajas: Es dif´ ıcil implementar el aislamiento fuerte. Tampoco se pueden (a priori) virtualizar distintos SO. 34 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  43. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 35 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  44. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Otros tipos de virtualizaci´ on (1) Virtualizaci´ on de bibliotecas: biblioteca Wine (subconjunto de la API de Win32 para poder ejecutar aplicaciones Windows) Virtualizaci´ on de aplicaci´ on: entorno de ejecuci´ on virtual (con una API para la ejecuci´ on en diferentes plataformas). Ejemplo: Java Virtual Machine. Virtualizaci´ on de escritorio: se implementa el escritorio como servicio. Ejemplo: SunVDI. 36 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  45. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos Otros tipos de virtualizaci´ on (y 2) Virtualizaci´ on de almacenamiento: arrays y pools de discos. Ejemplos: LVMs en Linux y ZFS en OpenSolaris. Tambi´ en los FS distribuidos (OCFS2, GFS2). Virtualizaci´ on de red: Crossbow (nativa de OpenSolaris/illumos) permite crear switches e interfaces de red virtuales. Memoria virtual, particiones de bases de datos... 37 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  46. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Tecnolog´ ıas de virtualizaci´ on 38 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  47. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 39 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  48. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen: Paravirtualizaci´ on Xen utiliza paravirtualizaci´ on. El sistema operativo invitado (DomU) tiene que estar modificado para usar el hipervisor. 40 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  49. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen: HVM Tambi´ en admite virtualizaci´ on completa (con Intel VT o AMD-V): hu´ espedes sin modificar permite que sistemas operativos privativos (como Windows) puedan ser virtualizados. 41 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  50. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen: protecci´ on Es capaz de hacer migraci´ on de m´ aquinas virtuales. Xen (HV) se ejecuta en el anillo de protecci´ on 0 mientras que los dominios se ejecutan en el anillo 1 o anillo 3. Figure: Anillos: dominios de protecci´ on jer´ arquica (x86) 42 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  51. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen: Prestaciones (1) Independencia entre los sistemas virtualizados. Se puede reiniciar y crear independientemente. Uso mejorado del hardware: balanceo de recursos. Una m´ aquina virtual puede hacer uso de los recursos que no utilizan las otras m´ aquinas virtuales. Backup sencillo. S´ olo con copiar la m´ aquina virtual se puede levantar en un nuevo servidor. Xen tambi´ en permite la migraci´ on en caliente, siendo muy flexible y minimizando el tiempo de recuperaci´ on en caso de fallo. 43 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  52. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen: Prestaciones (2) Se pueden modificar par´ ametros como la RAM, el n´ umero de CPUs y el espacio en disco para cada necesidad espec´ ıfica de cada m´ aquina virtual. Entornos de prueba y desarrollo: m´ ultiples m´ aquinas virtuales en un ´ unico servidor f´ ısico para probar y desarrollar. No solo Linux: portado a BSD (NetBSD) y a (Open)Solaris (Sun xVM). 44 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  53. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen: C´ omo funciona 45 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  54. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos ¿Xen integrado en Linux? 46 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  55. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen: Linux 3.0 En Linux 3.0 los drivers paravirtualizados de Xen se integran en el kernel oficialmente. Ahora pueden usarse Dom-0 (host) y DomU sin modificar/hackear el kernel. El hipervisor Xen sigue siendo un proyecto desarrollado aparte de Linux. KVM sigue siendo el ´ unico hipervisor integrado en el kernel Linux. 47 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  56. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen en kernel Linux 2.x 48 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  57. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Xen en kernel Linux 3.x 49 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  58. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos KVM: Virtualizaci´ on completa en Linux KVM: Kernel-based Virtual Machine Es un infraestructura de virtualizaci´ on espec´ ıfica del kernel Linux. Virtualizaci´ on nativa (completa) utilizando los micros Intel VT y AMD-V. La primera versi´ on fue incluida en Linux 2.6.20 (febrero 2007). Ha sido portada por Joyent a illumos (fork libre de OpenSolaris). 50 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  59. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos KVM: caracter´ ısticas Soporta muchos SOs invitados: Linux, BSD, Solaris, Windows, Haiku, ReactOS y MacOS X. No requiere emulaci´ on: un programa en espacio de usuario (Qemu) utiliza la interfaz /dev/kvm para configurar las VMs. 51 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  60. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos KVM: arquitectura Dos componentes: 1 Un driver del kernel Linux (/dev/kvm). 2 Un componente en espacio de usuario para emular el hardware del PC (Qemu). 52 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  61. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos KVM: Virtualizaci´ on completa en Linux 53 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  62. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos KVM: SmartOS (illumos) Figure: KVM en SmartOS, virtualizando Windows XP. 54 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  63. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 55 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  64. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Jails - Jaulas Instancias (r´ eplicas) del kernel FreeBSD aisladas, cada una con su IP, cuentas de usuario, etc. Virtualizaci´ on ligera (un solo kernel). 56 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  65. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos bhyve - hypervisor para BSD Nuevo hypervisor de tipo 2 para FreeBSD y derivados. Procesadores Intel (AMD en desarrollo) con EPT. 57 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  66. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos ´ Indice 1 Qu´ e es la virtualizaci´ on Or´ ıgenes Conceptos b´ asicos Razones 2 Tipos de virtualizaci´ on Emulaci´ on Completa Paravirtualizaci´ on Ligera Otros tipos 3 Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos 58 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  67. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Contenedores y zonas Tipo de virtualizaci´ on que ejecuta varias instancias del mismo sistema operativo (y el mismo kernel). Zona Global y Zonas Locales: no se puede acceder al sistema de ficheros global (un chroot mejorado). Sin hipervisor ni hardware espec´ ıfico para virtualizaci´ on. Despliegue y administraci´ on muy simple: zonecfg y zoneadm. x86: con soporte para “branding”. Desde 2005 forman parte de Solaris 10 (y de OpenSolaris). Funcionalmente parecido a las jaulas de FreeBSD o a LXC (contenedores Linux). 59 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  68. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Virtualizaci´ on con LDOMs “Virtualizaci´ on completa”, basada en un hipervisor tipo 1. Requiere CPUs especiales (Chip Multithreading = CMT). Cada dominio es una m´ aquina virtual completa con un conjunto configurable de recursos. Los sistemas operativos que corren dentro del Dominio L´ ogico pueden iniciarse, pararse y reiniciarse de forma independiente. OS base: Solaris 10 / Opensolaris 2009.06 OS de m´ aquina virtual: Solaris 10, Opensolaris 2009.06, Sparc Linux y otros que soporten estan arquitectura. Pero por ahora, tan solo SunOS est´ a soportado. 60 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  69. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Chip Multithreading (CMT) UltraSparc T1 / T2. Multithread: Un thread es similar a una CPU. Ejemplo: T1 tiene 8 cores con 4 threads/core. SSL directamente soportado por el hardware (1 MAU/core). LDOMs pueden asignar cores a las VMs. El hipervisor ejecuta en el firmware del servidor. Free/Open Hardware: http://www.opensparc.net Sun Fire T / Enterprise T / Blade T servers. 61 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  70. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos SmartOS: la soluci´ on total Kernel illumos (derivado de OpenSolaris / Solaris 11) KVM Zonas ZFS 62 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  71. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos SmartOS: la soluci´ on total Kernel illumos (derivado de OpenSolaris / Solaris 11) KVM Zonas ZFS ¡OpenStack! (en progreso) Cloud OS: sistema operativo para construir IaaS 62 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  72. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos Referencias Amit Singh “An Introduction to Virtualization” (2004): http://www.kernelthread.com/publications/ virtualization/ Comparison of platform virtual machines: http://en.wikipedia.org/wiki/Comparison_of_ platform_virtual_machines Jeanne Matthews et al. Running Xen. Prentice Hall, 2008 (Chapter 1: “Background and Virtualization Basics”) 63 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on
  73. Qu´ e es la virtualizaci´ on Tipos de virtualizaci´ on

    Tecnolog´ ıas de virtualizaci´ on Linux FreeBSD OpenSolaris / illumos III. El arte de la virtualizaci´ on Integraci´ on de Sistemas Miguel Vidal Jose Castro Twitter: @mvidallopez Twitter: @jfcastroluis M´ aster oficial en Software Libre 19 de abril 2013 64 / 64 Miguel Vidal – Jose Castro III. El arte de la virtualizaci´ on