Virtualizacion Intro v3d Preview

Post on 27-Nov-2015

14 views 0 download

description

intro virtualization

Transcript of Virtualizacion Intro v3d Preview

UNIVERSIDAD CARLOS III DE MADRID

Máster en Administración y Gestión de Sistemas Informáticos

Introducción a virtualización

Alejandro Calderón Mateos

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID 2

Contenidos

� ¿Qué es la virtualización?

� Usos de la virtualización.

� ¿Para qué utilizar virtualización?

� ¿Qué opciones hay para virtualizar?

� Aspectos en el diseño de un sistema virtualizado� Selección de plataforma tecnológica

� Plan de migración

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID 3

Contenidos

� ¿Qué es la virtualización?

� Usos de la virtualización.

� ¿Para qué utilizar virtualización?

� ¿Qué opciones hay para virtualizar?

� Aspectos en el diseño de un sistema virtualizado� Selección de plataforma tecnológica

� Plan de migración

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

‘Googlear’ sobre Virtualización

� Es posible buscar información en diversas fuentes:

� Wikipedia:http://en.wikipedia.org/wiki/Virtualization

� Foros:http://virt.kernelnewbies.org/

� Curos on-line:http://www.govirtual.org/docs/DOC-1024

� Etc.

4

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

‘Googlear’ sobre Virtualización

� Aspectos importantes que encontraremos:

1. El término virtualización no es nuevo:

�Se ha usado desde los años 60

2. Se ha aplicado a diferentes aspectos y ámbitosde la computación:

�Componentes, computador completo, servidores, desktop, etc.

5

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización en computación

� Virtualización es término muy amplio que se refiere a la abstracción de los recursos de un computador.

� Una técnica para ocultar las características físicasde los recursos de computación de la forma en la cual otros sistemas, aplicaciones o usuarios finales interactúan con esos recursos.

Recurso virtual

6

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID 7

Contenidos

� ¿Qué es la virtualización?

� Usos de la virtualización.

� ¿Para qué utilizar virtualización?

� ¿Qué opciones hay para virtualizar?

� Aspectos en el diseño de un sistema virtualizado� Selección de plataforma tecnológica

� Plan de migración

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización en computación

� Virtualización es término muy amplio que se refiere a la abstracción de los recursos de un computador.

� Una técnica para ocultar las características físicasde los recursos de computación de la forma en la cual otros sistemas, aplicaciones o usuarios finales interactúan con esos recursos.

Recurso virtual

• Dispositivo

• Proceso

• Computador

• Etc.

8

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de dispositivo…

– Almacenamiento:

• Ej.: RAID

– Conectividad:

• Ej.: IP bonding, IP aliasing, NAT

– Procesador:

• Ej.: emulación de juego de

instrucciones diferente

9

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de dispositivo…

– Almacenamiento:

• Ej.: RAID

– Conectividad:

• Ej.: IP bonding, IP aliasing, NAT

– Procesador:

• Ej.: emulación de juego de

instrucciones diferente

eth0:1

eth0

“b0“

3com eepro100

aliases bonding

inte

rfa

zn

ic

163.117.142.54a54.lab.inf.uc3m.es

163.117.142.55a55.lab.inf.uc3m.es

163.117.142.55a55.lab.inf.uc3m.es

10

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de dispositivo…

– Almacenamiento:

• Ej.: RAID

– Conectividad:

• Ej.: IP bonding, IP aliasing, NAT

– Procesador:

• Ej.: emulación de juego de

instrucciones diferente

Rosetta: usado por Apple en la

transición PowerPC a Intel.

11

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de proceso…

– Emulación de entorno privado de la aplicación:

• Ej.: Modo compatibilidad de Windows Vista/7

– Construcción a nivel de lenguaje:

• Ej.: Java y .NET

12

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de proceso…

– Emulación de entorno privado de la aplicación:

• Ej.: Modo compatibilidad de Windows Vista/7

– Construcción a nivel de lenguaje:

• Ej.: Java y .NET

13

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de computador…

– Escritorio anfitrión:

• Ej.: VMWare, VirtualBox, etc.

– Escritorio remoto:

• Ej.: XEN, VMWare ESX,

VirtualBox Headless, etc.

http://redmonk.com/cote/2006/06/21/apples-new-cluefull-test-parallels/ 14

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de computador…

– Escritorio anfitrión:

• Ej.: VMWare, VirtualBox, etc.

– Escritorio remoto:

• Ej.: XEN, VMWare ESX,

VirtualBox Headless, etc.

http://michaelverdi.com/index.php/2006/12/02/parallels-screencast/

Coherence mode, fluid view, etc.

No una ventana con todo el escritorio, ventana por aplicación.

15

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de computador…

– Escritorio anfitrión:

• Ej.: VMWare, VirtualBox, etc.

– Escritorio remoto:

• Ej.: XEN, VMWare ESX,

VirtualBox Headless, etc.

16

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplos de virtualización a nivel de computador…

– Escritorio anfitrión:

• Ej.: VMWare, VirtualBox, etc.

– Escritorio remoto:

• Ej.: XEN, VMWare ESX,

VirtualBox Headless, etc.

17

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Resumen:Virtualización en computación

� Virtualización es término muy amplio que se refiere a la abstracción de los recursos de un computador.

� Una técnica para ocultar las características físicasde los recursos de computación de la forma en la cual otros sistemas, aplicaciones o usuarios finales interactúan con esos recursos.

Recurso virtual

• Proceso

• Dispositivo

• Plataforma

• Etc.

18

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Resumen:Virtualización en computación

� Esto incluye:

� Hacer un único recurso físico (como un servidor, un sistemaoperativo operativo, una aplicación, etc.) se presentecomo un recurso lógico diferente.

� Hacer un único recurso físico (como dispositivos de almacenamiento, servidores, etc.) aparentar que funcionacomo varios recursos lógicos.

� Hacer que múltiples recursos físicos (como dispositivos de almacenamiento, servidores, etc.) aparezcancomo un único recurso lógico.

19

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización de plataforma

� Nos centraremos en la virtualización de una plataforma en términos de máquinas virtuales

� Para la clase, usaremos Windows como sistema operativo anfitrión (host)

20

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplo: Windows sobre Linux

http://www.kitty.in.th/files/376/qemu.png 21

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID 22

Contenidos

� ¿Qué es la virtualización?

� Usos de la virtualización.

� ¿Para qué utilizar virtualización?

� ¿Qué opciones hay para virtualizar?

� Aspectos en el diseño de un sistema virtualizado� Selección de plataforma tecnológica

� Plan de migración

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Razones por las que usar virtualización

� Consolidación de servidores

� Aislamiento de servicios

� Recuperación de desastres

� Pruebas o formación

� Portabilidad de aplicaciones

23

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Consolidación

� Consolidación de servidores: � Ahorro de costes (y mejor aprovechamiento)

� Simplificación de la administración y gestión

1000 € 1000 € 1000 € 1000 €

24

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Consolidación

� Consolidación de servidores: � Ahorro de costes (y mejor aprovechamiento)

� Simplificación de la administración y gestión

3000 €

25

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Aislamiento

� Mejora de la seguridad:� Aislar servicios en máquinas diferentes.

� Diferente política de seguridad a cada máquina.

26

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Aislamiento

� Mejora de la seguridad:� Aislar servicios en máquinas diferentes.

� Diferente política de seguridad a cada máquina.

27

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Tolerancia a fallos

� Recuperación de desastres:� Ejecución de una máquina en espera

� Rearranque automático

28

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Tolerancia a fallos

� Recuperación de desastres:� Ejecución de una máquina en espera

� Rearranque automático

29

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Tolerancia a fallos

� Recuperación de desastres:� Ejecución de una máquina en espera

� Rearranque automático

30

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Entornos de prueba

� Pruebas o formación:� Ejecución de otro entorno de trabajo

� Facilitar restauración del sistema (no inmediato, pero si fácil)

31

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Entornos de prueba

� Pruebas o formación:� Ejecución de otro entorno de trabajo

� Facilitar restauración del sistema (no inmediato, pero si fácil)

32

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Portabilidad de aplicaciones

� Portabilidad de aplicaciones:� Ejecución de aplicaciones del sistema X en el sistema Y

� Ejecución de aplicaciones del sistema X versión A en versión A+1

33

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Resumen de las principales ventajas

http://www.intel.com/technology/magazine/computing/intel-virtualization-0405.htm 34

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Razones por las que NO usar virtualización

� Dificultad en el dimensionamiento

� Necesidad de mayores recursos en un solo ordenador

� Doble nivel de administración

� Pérdida de rendimiento

35

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Dimensionamiento

� Necesidad de un correcto dimensionamiento: � Los servidores (virtuales) cambian sus necesidades (uso de memoria, cpu, etc.)

� Un incorrecto dimensionamiento puede tener impacto en todos los servidores

36

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Mayores recursos

� Necesidad de mayores recursos en un solo ordenador: � 8 servidores de 1 GB consolidados en 1 servidor de 8 GB

� No siempre es fácil (y barato) comprar un servidor con n tarjetas de red, n GB de RAM, n TB de disco, etc.

37

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Mayores recursos

� Necesidad de mayores recursos en un solo ordenador: � 8 servidores de 1 GB consolidados en 1 servidor de 8 GB

� No siempre es fácil (y barato) comprar un servidor con n tarjetas de red, n GB de RAM, n TB de disco, etc.

38

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Más administración

� Doble nivel de administración: � Administración de las máquinas reales

� Administración de las máquinas virtuales

� Monitorización y control de la asociación máquina virtual y máquina real

� Si una máquina real presenta problemas, entonces es necesario migrar las máquinas virtuales asociadas a ella

ssh real

39

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Pérdida de rendimiento

� ‘Ligera’ pérdida de rendimiento: � En CPU puede ser poco: entre un 3% y un 12%

� ¿Tarjeta gráfica?

� ¿Disco duro compartido entre varias máquinas virtuales?

40

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID 41

Contenidos

� ¿Qué es la virtualización?

� Usos de la virtualización.

� ¿Para qué utilizar virtualización?

� ¿Qué opciones hay para virtualizar?

� Aspectos en el diseño de un sistema virtualizado� Selección de plataforma tecnológica

� Plan de migración

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Muchas opciones…

42

UserUserUserUser ModeModeModeMode LinuxLinuxLinuxLinux

OpenVZOpenVZOpenVZOpenVZ

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Muchas opciones…

� Conocer cómo es internamente.� Dependencias, restricciones, etc.

� Conocer las arquitecturas de los sistemas de virtualización.� Agrupar soluciones por

características comunes.

43

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Cómo es internamente…

44

Apps Apps

Guest OS

Hardware

Apps Apps Apps

Guest OS Guest OS Guest OS

Monitor/Hipervisor

Hardware

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Cómo es internamente…

� Se añade una capa entre el sistema operativo y el hardware � Se encarga de hablar con todo tipo de hardware

� Arbitra los recursos hardware entre los distintos sistemas operativos

� El sistema operativo (o los sistemas operativos) se ejecutan en modo privilegiado pero el monitor/hipervisor intercepta sus peticiones para atenderlas

45

Apps Apps Apps

Guest OS Guest OS Guest OS

Monitor/Hipervisor

Hardware

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Tipos de virtualización arquitectura de monitores

http://www-128.ibm.com/developerworks/library/l-linuxvirt/index.html

� Emulación Hardware

� Virtualización completa

� Paravirtualización

� Vitualización a nivel del sistema operativo

46

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Apps Apps Apps

Guest OS Guest OS Guest OS

Hardware VM A

Hardware

Hardware VM B

Emulación Hardware

� Se crea una M.V. en el sistema host para emular el hardware que interesa

� Ventaja: se puede ejecutar un sistema operativo para CPU1 en CPU2 sin ser modificado

� Desventaja: lentitud (del orden de x100)

47

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Emulación Hardware

� Bochs

� QemuLinux/W95 W95/WXP

W2k/Linux(F) Linux(K)/WXP

48

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa

� El hardware es compartido por todos los sistemas operativos invitados (Guests) a través del hipervisorhipervisorhipervisorhipervisor

� Ventaja: no se necesita modificar el sistema operativo

� Desventaja: es necesario usartrampas para capturar los accesosdel sistema operativo invitado alhardware� Soporte hardware � Interpretación de binarios y sustitución al vuelo

49

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa

� VMware

� z/VM

WXP/MacOS WXP/Linux

z/Linux sobre z/VM

50

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Paravirtualización

� Similar a la virtualización completa, pero los invitados colaboran

� Ventaja: El sistema operativo colabora con el hipervisor (el tiempo perdido en trampas para interceptar peticiones se disminuye)

� Desventaja: El sistema operativo ha de modificarse para interactuar con el hipervisor

51

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Paravirtualización

� XEN

� Hiper-v

Linux(S,F,D)/Linux(F)

Windows S2008+Vista+Suse / Windows

52

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Paravirtualización

� User Mode Linux (UML)

Linux/Linux

53

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización a nivel del sistema operativo

� Enfoque totalmente diferente: el sistema operativo en si mismo ofrece servidores virtuales

� Desventaja: NO es posible ejecutar distintos sistemas operativos

� Ventaja: Mejor rendimiento y más cantidad de máquinas virtuales ejecutadas (ahorro de memoria)

54

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización a nivel del sistema operativo

� OpenVZ

Densidad de OpenVZ en un equipo de 768 Mb (¾ Gb) de RAM

55

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Cómo es internamente…

� Se añade una capa entre el sistema operativo y el hardware � Se encarga de hablar con todo tipo de hardware

� Arbitra los recursos hardware entre los distintos sistemas operativos

� El sistema operativo (o los sistemas operativos) se ejecutan en modo privilegiado pero el monitor/hipervisor intercepta sus peticiones para atenderlas

56

Apps Apps Apps

Guest OS Guest OS Guest OS

Monitor/Hipervisor

Hardware

1

2

3

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónInterceptar peticiones…

� El sistema operativo ha sido diseñado para ejecutar en el hardware a nivel privilegiado� En procesadores x86, en el anillo 0

� Hay que ejecutar código privilegiado como si no lo fuera (el hipervisor lo es ahora)� Binary patching� Nuevas instrucciones de virtualización

User

KernelLevel 0

Level 1

Level 2

http://pdc-amd01.poly.edu/~wein/cs6243/ppts/CPUVirtualization.pptx

1

57

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónInterceptar peticiones…

� Binary translation/patching:� Parcheado de instrucciones al vuelo� Se analiza el código del sistema invitado y

se cambia las instrucciones privilegiadas por llamadas al hipervisor

� Aceleración mediante caché de los fragmentos parcheados

vPC mov ebx, eax

cli

and ebx, ~0xfff

mov ebx, cr3

sti

ret

mov ebx, eax

call HANDLE_CLI

and ebx, ~0xfff

mov [CO_ARG], ebx

call HANDLE_CR3

call HANDLE_STI

jmp HANDLE_RET

start

Guest Code Translation Cache

Translator

Guest

Code

Translation

CacheCalloutsTC

Index

CPU

Emulation

Routines

1

58

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónInterceptar peticiones…

• Intel ofrece:• VT-x como las extensiones IVT para IA-32 (Vanderpool) • VT-i como las extensiones IVT para IA-64 (Silvervale)• VT-d en 32/64 para ‘Directed I/O’

• AMD ofrece:• AMD-V (Pacifica) para 32/64• IOMMU para ‘Directed I/O’ o ‘PCI-Passthrough’

� Instrucciones hardware:� Anillo -1 donde se ejecuta el hipervisor

� Permitiría la mínima penalización en rendimiento al evitar traducción.

� Intel y AMD han desarrollado extensiones para virtualización, no compatibles entre sí pero son similar funcionalidad.

User

monitorLevel -1

Level 0

Level 1

Kernel

Level 2

http://en.wikipedia.org/wiki/Virtualization_Technology

1

59

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónDespliegue del hipervisor…

� El monitor/hipervisor ha de ser capaz de tratar con todo tipo de hardware� Ha de tener drivers para todos� Es muy difícil conseguir que se escriban

drivers/controladores para un S.O.

� Usar un sistema operativo modificado:� Hosted o Split� Hipervisor

http://www.ibm.com/developerworks/linux/library/l-pci-passthrough/

2

60

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónDespliegue del hipervisor…

� Hosted o Split.� Transformar un sistema operativo existente

en un hipervisor� Una M.V. es un proceso en el sistema host

� I: Doble planificación� I: Acceso al hardware costoso� V: Fácil instalación (otra aplicación más)

http://www.govirtual.org/servlet/JiveServlet/download/1024-4-1042/IntroToVMs.pptx

2

Hardware

Virtual Machine Monitor

Guest OS (Linux)

Host OS (Window XP)

User App

Kernel

Module

1. Device I/O

2. CPU/Mem

61

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplo de sistema hosted o split

� KVM

� KVM está incluido en el kernel de Linux desde la versión 2.6.20� KVM transforma el kernel de Linux en un hipervisor usando un módulo

� Otros sistemas operativos invitados puedan ejecutar en espacio de usuario � Se usa un proceso QEMU modificado

2

62

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónDespliegue del hipervisor…

� Hipervisor.� Quitar a un sistema operativo existente todo

lo que le sobra para convertirlo en un hipervisor.

� Se precisa arrancar el hipervisor primero y luego cada máquina virtual lo usa

� V: menos interferencias entre máquinas� I: más difícil instalación

2

63

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Ejemplo de sistema hipervisor

� XEN

� XEN no está incluido en el kernel de Linux (XEN PVops en 2.6.23)� XEN es un sistema Linux al que se le ha dejado lo necesario para que

funcione como hipervisor.� Inicialmente diseñado como sistema paravirtualizado

http://www.ibm.com/developerworks/linux/library/l-xen/

2

64

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónAcceso a los dispositivos…

� El monitor/hipervisor ha de ser capaz de tratar con todo tipo de hardware� Ha de tener drivers para todos� Ha de ofrecer el acceso al hardware

subyacente.

� Ofrecer el hardware al S.O. invitado:� Emulación de dispositivo en el hipervisor� Emulación de disp. en espacio de usuario� Pasarela a dispositivo� SR-IOV y MR-IOV

http://www.ibm.com/developerworks/linux/library/l-pci-passthrough/

3

65

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónAcceso a los dispositivos…

� Emulación de dispositivo en hipervisor.� Ej.: VMware workstation� V: fácil de migrar

3

66

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónAcceso a los dispositivos…

� Emulación de dispositivo en espacio de usuario.� Ej.: KVM� V: fácil migrar (incluso a otro hipervisor) y seguro (no privilegiado)

3

67

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónAcceso a los dispositivos…

� Pasarela a dispositivo.� Ej.: VMware, XEN, etc.� V: eficiente

3

68

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Virtualización completa/ParavirtualizaciónAcceso a los dispositivos…

� SR-IOV y MR-IOV.� Single-Root I/O Virtualization (servidor único)� Multi-Root I/O Virtualization (blades)

3

69

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID

Resumen ¿qué opciones hay para virtualizar?

� Emulación Hardware

� Virtualización completa

� Paravirtualización

� Virtualización a nivel

del sistema operativo

v

P

C

mov ebx, eax

cli

and ebx, ~0xfff

mov ebx, cr3

sti

ret

mov ebx, eax

call HANDLE_CLI

and ebx, ~0xfff

mov [CO_ARG], ebx

call HANDLE_CR3

call HANDLE_STI

jmp HANDLE_RET

s

t

a

r

t

Guest Code Translation Cache

User

monitorLevel -1

Level 0Level 1

Kernel

Level 2

� Nuevas instrucciones

� Binary translation (patching)� Emulación del disp. en

el hipervisor

� Emulación del disp. en

espacio de usuario

� Pasarela a dispositivo

� SR-IOV y MR-IOV

Apps Apps

Guest OS

Hardware

Apps Apps Apps

Guest OS Guest OS Guest OS

Monitor/Hipervisor

Hardware

70

3

1

2

Hardware

Virtual Machine Monitor

Guest OS (Linux)

Host OS (Window XP)

User

App

K

e

r

n

e

l

M

o

d

u

l

e

1.

Devi

ce

I/O

� Hosted o split

� Hipervisor

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID 71

Contenidos

� ¿Qué es la virtualización?

� Usos de la virtualización.

� ¿Para qué utilizar virtualización?

� ¿Qué opciones hay para virtualizar?

� Aspectos en el diseño de un sistema virtualizado� Selección de plataforma tecnológica

� Plan de migración

Máster en Administración y Gestión de Sistemas Informáticos

UNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRIDUNIVERSIDAD CARLOS III DE MADRID 72

Contenidos

� ¿Qué es la virtualización?

� Usos de la virtualización.

� ¿Para qué utilizar virtualización?

� ¿Qué opciones hay para virtualizar?

� Aspectos en el diseño de un sistema virtualizado� Selección de plataforma tecnológica

� Plan de migración