Download Máster en Administración y Gestión de Sistemas - Arcos

Document related concepts

Hipervisor wikipedia , lookup

VMware ESXi wikipedia , lookup

Xen wikipedia , lookup

Paravirtualización wikipedia , lookup

Máquina virtual wikipedia , lookup

Transcript
Máster en Administración y Gestión de
Sistemas Informáticos
Introducción a virtualización
Alejandro Calderón Mateos
UNIVERSIDAD CARLOS III DE MADRID
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 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 MADRID
3
‘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.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
4
‘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 ámbitos
de la computación:
Componentes, computador completo, servidores,
desktop, etc.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
5
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ísicas
de los recursos de computación de la forma en la cual otros sistemas,
aplicaciones o usuarios finales interactúan con esos recursos.
Recurso virtual
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
6
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 MADRID
7
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ísicas
de los recursos de computación de la forma en la cual otros sistemas,
aplicaciones o usuarios finales interactúan con esos recursos.
•
•
•
•
Dispositivo
Proceso
Computador
Etc.
Recurso virtual
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
8
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
9
Ejemplos de virtualización
a nivel de dispositivo…
– Almacenamiento:
163.117.142.54
a54.lab.inf.uc3m.es
• Ej.: RAID
163.117.142.55
a55.lab.inf.uc3m.es
163.117.142.55
– Conectividad:
a55.lab.inf.uc3m.es
bonding
eth0:1
“b0“
3com
eepro100
interfaz
eth0
• Ej.: IP bonding, IP aliasing, NAT
nic
aliases
– Procesador:
• Ej.: emulación de juego de
instrucciones diferente
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
10
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.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
11
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
12
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
13
Ejemplos de virtualización
a nivel de computador…
– Escritorio anfitrión:
• Ej.: VMWare, VirtualBox, etc.
– Escritorio remoto:
• Ej.: XEN, VMWare ESX,
VirtualBox Headless, etc.
Máster en Administración y Gestión de Sistemas Informáticos
http://redmonk.com/cote/2006/06/21/apples-new-cluefull-test-parallels/
UNIVERSIDAD CARLOS III DE MADRID
14
Ejemplos de virtualización
a nivel de computador…
– Escritorio anfitrión:
• Ej.: VMWare, VirtualBox, etc.
– Escritorio remoto:
• Ej.: XEN, VMWare ESX,
VirtualBox Headless, etc.
Coherence mode, fluid view, etc.
No una ventana con todo el escritorio, ventana por aplicación.
Máster en Administración y Gestión de Sistemas Informáticos
http://michaelverdi.com/index.php/2006/12/02/parallels-screencast/
UNIVERSIDAD CARLOS III DE MADRID
15
Ejemplos de virtualización
a nivel de computador…
– Escritorio anfitrión:
• Ej.: VMWare, VirtualBox, etc.
– Escritorio remoto:
• Ej.: XEN, VMWare ESX,
VirtualBox Headless, etc.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
16
Ejemplos de virtualización
a nivel de computador…
– Escritorio anfitrión:
• Ej.: VMWare, VirtualBox, etc.
– Escritorio remoto:
• Ej.: XEN, VMWare ESX,
VirtualBox Headless, etc.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
17
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ísicas
de los recursos de computación de la forma en la cual otros sistemas,
aplicaciones o usuarios finales interactúan con esos recursos.
•
•
•
•
Proceso
Dispositivo
Plataforma
Etc.
Recurso virtual
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
18
Resumen:
Virtualización en computación
Esto incluye:
Hacer un único recurso físico (como un servidor, un sistema
operativo operativo, una aplicación, etc.) se presente
como un recurso lógico diferente.
Hacer un único recurso físico (como dispositivos de
almacenamiento, servidores, etc.) aparentar que funciona
como varios recursos lógicos.
Hacer que múltiples recursos físicos (como dispositivos de
almacenamiento, servidores, etc.) aparezcan
como un único recurso lógico.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
19
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)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
20
Ejemplo: Windows sobre Linux
Máster en Administración y Gestión de Sistemas Informáticos
http://www.kitty.in.th/files/376/qemu.png
UNIVERSIDAD CARLOS III DE MADRID
21
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 MADRID
22
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
23
Consolidación
Consolidación de servidores:
Ahorro de costes (y mejor aprovechamiento)
Simplificación de la administración y gestión
1000 €
1000 €
1000 €
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
1000 €
24
Consolidación
Consolidación de servidores:
Ahorro de costes (y mejor aprovechamiento)
Simplificación de la administración y gestión
3000 €
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
25
Aislamiento
Mejora de la seguridad:
Aislar servicios en máquinas diferentes.
Diferente política de seguridad a cada máquina.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
26
Aislamiento
Mejora de la seguridad:
Aislar servicios en máquinas diferentes.
Diferente política de seguridad a cada máquina.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
27
Tolerancia a fallos
Recuperación de desastres:
Ejecución de una máquina en espera
Rearranque automático
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
28
Tolerancia a fallos
Recuperación de desastres:
Ejecución de una máquina en espera
Rearranque automático
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
29
Tolerancia a fallos
Recuperación de desastres:
Ejecución de una máquina en espera
Rearranque automático
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
30
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)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
31
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)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
32
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
33
Resumen de las principales ventajas
Máster en Administración y Gestión de Sistemas Informáticos
http://www.intel.com/technology/magazine/computing/intel-virtualization-0405.htm
UNIVERSIDAD CARLOS III DE MADRID
34
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
35
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
36
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.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
37
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.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
38
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
39
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?
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
40
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 MADRID
41
Muchas opciones…
User Mode Linux
OpenVZ
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
42
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.
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
43
Cómo es internamente…
Apps
Apps
Guest OS
…
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 MADRID
Hardware
44
Cómo es internamente…
…
Apps
Apps
Apps
Guest OS
Guest OS
Guest OS
…
Monitor/Hipervisor
Hardware
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
45
Tipos de virtualización
arquitectura de monitores
Emulación Hardware
Virtualización completa
Paravirtualización
Vitualización a nivel del sistema operativo
Máster en Administración y Gestión de Sistemas Informáticos
http://www-128.ibm.com/developerworks/library/l-linuxvirt/index.html
UNIVERSIDAD CARLOS III DE MADRID
46
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
Apps
Apps
Apps
Guest OS
Guest OS
Guest OS
Hardware VM A
Desventaja: lentitud
(del orden de x100)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
…
Hardware VM B
Hardware
47
Emulación Hardware
Bochs
Linux/W95
W95/WXP
Qemu
W2k/Linux(F)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
Linux(K)/WXP
48
Virtualización completa
El hardware es compartido por todos
los sistemas operativos invitados
(Guests) a través del hipervisor
Ventaja: no se necesita modificar
el sistema operativo
Desventaja: es necesario usar
trampas para capturar los accesos
del sistema operativo invitado al
hardware
Soporte hardware
Interpretación de binarios y sustitución al vuelo
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
49
Virtualización completa
VMware
WXP/MacOS
WXP/Linux
z/VM
z/Linux sobre z/VM
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
50
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
51
Paravirtualización
XEN
Linux(S,F,D)/Linux(F)
Hiper-v
Windows S2008+Vista+Suse / Windows
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
52
Paravirtualización
User Mode Linux (UML)
Linux/Linux
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
53
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)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
54
Virtualización a nivel del sistema operativo
OpenVZ
Densidad de OpenVZ en un
equipo de 768 Mb (¾ Gb) de RAM
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
55
Cómo es internamente…
…
Apps
Apps
Apps
Guest OS
Guest OS
Guest OS
…
Monitor/Hipervisor
Hardware
Se añade una capa entre el sistema operativo y el hardware
2
3
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
1 monitor/hipervisor intercepta sus peticiones para atenderlas
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
56
1
Virtualización completa/Paravirtualización
Interceptar peticiones…
User
Kernel
Level 0
Level 1
Level 2
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
Máster en Administración y Gestión de Sistemas Informáticos
http://pdc-amd01.poly.edu/~wein/cs6243/ppts/CPUVirtualization.pptx
UNIVERSIDAD CARLOS III DE MADRID
57
1
Virtualización completa/Paravirtualización
Interceptar peticiones…
Binary translation/patching:
Guest
Code
Parcheado de instrucciones al vuelo
Se analiza el código del sistema invitado y
Translator
TC
Index
Translation
Cache
se cambia las instrucciones privilegiadas por
llamadas al hipervisor
Aceleración mediante caché de los
fragmentos parcheados
Callouts
Guest Code
vPC
CPU
Emulation
Routines
mov
cli
and
mov
sti
ret
ebx, eax
ebx, ~0xfff
ebx, cr3
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
Translation Cache
mov
call
and
mov
call
call
jmp
ebx, eax
HANDLE_CLI
ebx, ~0xfff
[CO_ARG], ebx
HANDLE_CR3
HANDLE_STI
HANDLE_RET
start
58
1
Virtualización completa/Paravirtualización
Interceptar peticiones…
Instrucciones hardware:
Anillo -1 donde se ejecuta el hipervisor
User
Permitiría la mínima penalización en
Kernel
rendimiento al evitar traducción.
Intel y AMD han desarrollado extensiones
para virtualización, no compatibles entre sí
pero son similar funcionalidad.
monitor
Level -1
Level 0
Level 1
Level 2
•
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’
Máster en Administración y Gestión de Sistemas Informáticos
http://en.wikipedia.org/wiki/Virtualization_Technology
UNIVERSIDAD CARLOS III DE MADRID
59
2
Virtualización completa/Paravirtualización
Despliegue 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
Máster en Administración y Gestión de Sistemas Informáticos
http://www.ibm.com/developerworks/linux/library/l-pci-passthrough/
UNIVERSIDAD CARLOS III DE MADRID
60
2
Virtualización completa/Paravirtualización
Despliegue 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)
1. Device I/O
Guest OS (Linux)
User App
Kernel
Module
2. CPU/Mem
Host OS (Window XP)
Virtual Machine Monitor
Hardware
Máster en Administración y Gestión de Sistemas Informáticos
http://www.govirtual.org/servlet/JiveServlet/download/1024-4-1042/IntroToVMs.pptx
UNIVERSIDAD CARLOS III DE MADRID
61
2
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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
62
2
Virtualización completa/Paravirtualización
Despliegue 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
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
63
2
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
Máster en Administración y Gestión de Sistemas Informáticos
http://www.ibm.com/developerworks/linux/library/l-xen/
UNIVERSIDAD CARLOS III DE MADRID
64
3
Virtualización completa/Paravirtualización
Acceso 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
Máster en Administración y Gestión de Sistemas Informáticos
http://www.ibm.com/developerworks/linux/library/l-pci-passthrough/
UNIVERSIDAD CARLOS III DE MADRID
65
3
Virtualización completa/Paravirtualización
Acceso a los dispositivos…
Emulación de dispositivo en hipervisor.
Ej.: VMware workstation
V: fácil de migrar
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
66
3
Virtualización completa/Paravirtualización
Acceso 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)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
67
3
Virtualización completa/Paravirtualización
Acceso a los dispositivos…
Pasarela a dispositivo.
Ej.: VMware, XEN, etc.
V: eficiente
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
68
3
Virtualización completa/Paravirtualización
Acceso a los dispositivos…
SR-IOV y MR-IOV.
Single-Root I/O Virtualization (servidor único)
Multi-Root I/O Virtualization (blades)
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
69
Resumen
Apps
Apps
Apps
Guest OS
Apps
Apps
Guest OS
Guest OS
Guest OS
…
…
Monitor/Hipervisor
¿qué opciones hay para virtualizar?
Guest Code
v
P
C
mov
Hardware
Translation Cache
ebx, eax
mov
cli
Emulación Hardware
Hardware
call
ebx, eax
HANDLE_CLI
and
ebx, ~0xfff
and
ebx, ~0xfff
mov
ebx, cr3
mov
[CO_ARG], ebx
sti
call
ret
call
HANDLE_STI
jmp
HANDLE_RET
s
t
a
r
t
HANDLE_CR3
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
User
Kernel
monitor
Level -1
Level 0
Level 1
Level 2
Virtualización completa
Nuevas instrucciones
User
App
K
e
r
n
e
l
Paravirtualización
1.
Devi
ce
I/O
1
Guest OS (Linux)
M
o
d
u
l
e
Host OS (Window XP)
Virtual Machine Monitor
Hardware
Virtualización a nivel
del sistema operativo
Hosted o split
Hipervisor
Máster en Administración y Gestión de Sistemas Informáticos
UNIVERSIDAD CARLOS III DE MADRID
2
3
70
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 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 MADRID
72