Actualizado el 21 de Marzo del 2018 (Publicado el 5 de Marzo del 2018)
475 visualizaciones desde el 5 de Marzo del 2018
4,1 MB
65 paginas
Creado hace 17a (25/03/2007)
I
Introducción y toma de contacto
d
Virtualización:
d
ió
ALEJANDRO CALDERÓN MATEOS
ACALDERO @ ARCOS.INF.UC3M.ES
Contenidos
1
ió ?
1. ¿Qué es la virtualización?
l i t
Q é
li
2. ¿Es difícil usar la virtualización?
2 ¿Es difícil usar la virtualización?
3 ¿Para qué utilizar la virtualización?
3. ¿Para qué utilizar la virtualización?
4. ¿Qué soluciones hay de virtualización?
¿Q
y
5. ¿Qué factores considerar para la
virtualización?
ió ?
li
i
2
¿QUÉ ES LA VIRTUALIZACIÓN?
3
Wikipedia: virtualización
p
http://en.wikipedia.org/wiki/Virtualization
4
Virtualización en computación
Virtualización en computación
• Virtualización es término muy amplio que se refiere a la abstració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
computación de la forma en la cual otros sistemas aplicaciones o usuarios
finales interactuan con esos recursos.
– Esto incluye hacer un único recurso físico (como un
Esto incluye hacer un único recurso físico (como un
servidor, un sistema operativo operativo, una aplicación
o un dispositivo de almacenamiento) aparentar que
funciona como varios recursos lógicos
– Esto támbién incluye hacer que múltiples recursos
(
fí i
físicos (como dispositivos de almacenamiento o
servidores) aparezcan como un único recurso lógico.
iti
di
i
t
d
l
5
Virtualización de una plataforma
Virtualización de una plataforma
• El término virtualización no es nuevo:
• El término virtualización no es nuevo:
– Se ha usado desde los años 60
li d
dif
t
t
• Se ha aplicado a diferentes aspectos y ámbitos de
S h
la computación:
– Desde un computador completo hasta componentes
p
á bit
d
p
p
• Nos centraremos en la virtualización de una
• Nos centraremos en la virtualización de una
plataforma en términos de máquinas
i t
virtuales en Linux
Li
l
http://virt.kernelnewbies.org/
6
Windows sobre Linux
Windows sobre Linux
http://www.kitty.in.th/files/376/qemu.png
7
Windows sobre MacOS
Windows sobre MacOS
http://redmonk.com/cote/2006/06/21/apples‐new‐cluefull‐test‐parallels/
8
Windows sobre Mac:
Coherence mode
http://michaelverdi.com/index.php/2006/12/02/parallels‐screencast/
9
¿ES DIFÍCIL USAR LA
VIRTUALIZACIÓN?
C Ó ?
10
No es difícil… si todo funciona
En línea de mandatos
Con interfaz gráfica
http://virt.kernelnewbies.org/
11
Intefaz gráfica (creación):
virt‐manager (kvm xen
)
virt manager (kvm, xen, …)
3
1
4
2
5
http://www.phoronix.com/scan.php?page=article&item=656&num=1
12
Intefaz gráfica (gestión):
virt‐manager (kvm xen
)
virt manager (kvm, xen, …)
http://people.redhat.com/berrange/virt‐manager/screenshots.html
13
Línea de mandatos (creación)
2. Crear un disco duro
(o partición) virtual
3. Arrancar la M.V.
para instalar el S.O. en
el disco/partición virtual
4 Arrancar la M V
4. Arrancar la M.V.
para instalar el S.O. en
el disco/partición virtual
14
KVM+qemu
1 Disponer de un Linux con soporte KVM:
1. Disponer de un Linux con soporte KVM:
–
http://kvm.qumranet.com/kvmwiki
15
KVM+qemu
2. Crear la imagen de disco:
# qemu-img create -f qcow vdisk.img 10G
16
KVM+qemu
3. Instalar el sistema operativo:
_
# sudo qemu-kvm-x86_64 \
-hda vdisk.img \
-cdrom /path/to/boot-media.iso \
-boot d \
-m 384 -no-acpi
17
KVM+qemu
4. Ejecutar el sistema operativo ya instalado:
# sudo qemu-kvm-x86 64 \
# sudo qe u
86_6 \
-hda vdisk.img \
-boot d \
-m 384
18
XEN: fedora (cli)
1 Disponer de un Linux con soporte XEN:
1. Disponer de un Linux con soporte XEN:
–
http://www.cl.cam.ac.uk/research/srg/netos/xen/
http://www‐128.ibm.com/developerworks/library/l‐xen/
19
XEN: fedora (cli)
2. Crear la imagen de disco:
# dd if=/dev/zero of=/xen-vd/fc4.img bs=1024k count=10000
# dd if=/dev/zero of=/xen-vd/fc4-swap.img bs=1024k count=1000
# dd if /dev/zero of /xen vd/fc4 swap.img bs 1024k count 1000
# mkfs.ext3 / xen-vd/fc4.img
# /xen-vd/fc4.img is not a block special device.
## Proceed anyway? (y,n) <-- y
# mkswap /xen-vd/fc4-swap.img
20
XEN: fedora (cli)
3 a Pre instalar el sistema operativo:
3.a. Pre‐instalar el sistema operativo:
# mount -o loop /xen-vd/fc4.img /mnt/vm
# mkdir –p /var/cache/yum
# mkdir –p /var/log
# yum
-c http://people.redhat.com/~katzj/yum-xen.conf \
--installroot=/mnt/vm/ -y groupinstall Base
installroot /mnt/vm/ y groupinstall Base
# umount /mnt/vm
21
XEN: fedora (cli)
http://people.redhat.com/~katzj/yum-xen.conf
l t
[main]
cachedir=/var/cache/yum
debuglevel=2
l 2
d b
l
logfile=/var/log/yum.log
exclude=*-debuginfo
gpgcheck=0
obsoletes=1
1
b
reposdir=/dev/null
[base]
name=Fedora Core 4 - $basearch – Base
F d
mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-4
enabled=1
d]
[updates-released]
[
name=Fedora Core 4 - $basearch - Released Updates
mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc4
enabled=1
d t
h
B
l
C
4
$b
22
XEN: fedora (cli)
3 c /etc/xen/fedora sxp:
3.c. /etc/xen/fedora.sxp:
name =“fedora"
kernel ="/boot/<kernel>-xenU"
root ="/dev/hda1"
memory =64
disk = ['file:/xen-vd/fedora img hda1 w' 'file:/xen-vd/fedora-
disk [ file:/xen vd/fedora.img,hda1,w , file:/xen vd/fedora
swap.img,hda2,w']
nics=1
dhcp ="off"
ip="192.168.0.103"
netmask="255.255.255.0"
gateway="192 168 0 1"
gateway 192.168.0.1
hostname=“fedora.acme.com"
23
XEN: fedora (cli)
4. Ejecutar el sistema operativo ya instalado:
# xm create -c /etc/xen/fedora.sxp
24
No es difícil… si todo funciona
Línea de mandatos:
• Fácil automatización
Interfaz gráfica:
Interfaz gráfica:
• Fácil creación y gestión
http://virt.kernelnewbies.org/
25
¿PARA QUÉ UTILIZAR LA
VIRTUALIZACIÓN?
C Ó ?
26
Razones por las que usar virtualización
Razones por las que usar virtualización
27
Consolidación
Consolidación
• Consolidación de servidores:
– Ahorro de costes (y mejor aprovechamiento)
Ahorro de costes (y mejor aprovechamiento)
– Simplificación de la administración y gestión
1000 €
1000 €
1000 €
1000 €
1000 €
1000 €
1000 €
1000 €
2000 €
28
Tolerancia a fallos
Tolerancia a fallos
• Recuperación de desastres:
– Ejecución de una máquina en espera
Ejecución de una máquina en espera
– Rearranque automático
29
Entornos de prueba
Entornos de prueba
• Pruebas o formación:
– Ejecución de otro entorno de trabajo
Ejecución de otro entorno de trabajo
– Facilitar restauración del sistema (no inmediato, pero si fácil)
30
Portabilidad de aplicaciones
Portabilidad de aplicaciones
• Portabilidad de aplicaciones:
– Ejecución de aplicaciones del sistema X en el sistema Y
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
31
Resumen de las principales ventajas
Resumen de las principales ventajas
http://www.intel.com/technology/magazine/computing/intel‐virtualization‐0405.htm
32
Razones por las que NO usar
virtualización
33
Dimensionamiento
Dimensionamiento
• Necesidad de un correcto dimensionamiento:
– Los servidores (virtuales) cambian sus necesidades (uso de memoria, cpu, etc.)
Los servidores (virtuales) cambian sus necesidades (uso de memoria cpu etc )
– Un incorrecto dimensionamiento puede tener impacto en todos los servidores
34
Mayores recursos
Mayores recursos
• Necesidad de mayores recursos en un solo ordenador:
– 8 servidores de 1 GB consolidados en 1 servidor de 8 GB
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.
35
Más administración
Más administración
• Doble nivel de administración:
– Administración de las máquinas reales
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
á
bl
•
t
l
i
á
Si una máquina real presenta problemas, entoces es necesario migrar las máquinas virtuales
Si
asociadas a ella
i t
t
i
i
l
i
l
ssh real
36
Pérdida de rendimiento
Pérdida de rendimiento
•
‘Ligera’ perdida de rendimiento:
– En CPU puede ser poco: entre un 3% y un 12%
En CPU puede ser poco entre un 3% y un 12%
– ¿Tarjeta gráfica?
– ¿Disco duro compartido entre varias máquinas virtuales?
37
¿QUÉ SOLUCIONES HAY DE
VIRTUALIZACIÓN?
C Ó ?
38
Tipos de virtualización
(punto de vista más técnico)
http://www‐128.ibm.com/developerworks/library/l‐linuxvirt/index.html
39
Emulación Hardware
• Se crea una MV en el sistema
host para emular el hardware
que interesa
• Desventaja: lentitud
(del orden de x100)
j
j
p
• Ventaja: se puede ejecutar un
sistema operativo para CPU1
en CPU2 sin ser modificado
40
Emulación Hardware
• Bochs
Li
/W95
Linux/W95
• Qemu
W95/WXP
W95/WXP
W2k/Linux(F)
Linux(K)/WXP
41
Virtualización completap
• El hardware es compartido por
El hardware es compartido por
todos los sistemas operativos
invitados (Guests) a través del
hipervisor
hipervisor
• Ventaja: no se necesita modificar
el sistema operativo
el sistema operativo
• Desventaja: es necesario usar
l
t
trampas para capturar los
accesos del sistema operativo
invitado al hardware
t
42
Virtualización completap
• VMware
WXP/M OS
WXP/MacOS
WXP/Li
WXP/Linux
• z/VM
z/Linux sobre z/VM
43
Virtualización completap
• KVM
– KVM es la primera solución de virtualización que forma parte ya del
kernel (desde el 2.6.20)
– KVM transforma el kernel de linux en un hipervisor usando un
módulo de kernel
• Este módulo permite que otros sistemas operativos invitados
puedan ejecutar en espacio de usuario
• El módulo de kernel KVM ofrece el hardware virtualizado a
través del dispositivo /dev/kvm
• El sistema operativo se comunica con el módulo usando un
proceso QEMU modificado
proceso QEMU modificado
44
Paravirtualización
• Similar a la virtualización completa
• Similar a la virtuali
Comentarios de: Virtualización: Introducción y toma de contacto (0)
No hay comentarios