PDF de programación - Virtualización

<<>>
Imágen de pdf Virtualización

Virtualizacióngráfica de visualizaciones

Publicado el 31 de Marzo del 2021
749 visualizaciones desde el 31 de Marzo del 2021
2,4 MB
24 paginas
Redes de Nueva Generación

Área de Ingeniería Telemática

Virtualización

Redes de Nueva Generación

Área de Ingeniería Telemática

Virtualización: Ejemplos





i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

¿Virtualización?

•  La idea básica de virtualización del host es bastante conocida
•  Una capa software intermedia hace creer a un sistema

operativo que tiene hardware dedicado

OS 1 OS 2 OS 3 OS 4

Hypervisor

Hardware

¿Virtualización?

•  En el entorno informático es un concepto muy antiguo
•  A nivel de virtualización de sistemas operativos ya lo

soportaban los mainframes en los 70s

•  Comercialmente llega al entorno PC a principios de los 00s

(VMware)



i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

OS
CMS

OS
CMS

OS
CMS

OS
CMS

Control Program (CP)

Hardware mainframe





i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

¿Virtualización?

•  La memoria virtual es anterior a la virtualización completa del

hardware

•  Se puede conseguir que un proceso (programa en ejecución)

crea que dispone de toda la memoria

•  De hecho podría ver más memoria que la existente
•  Ve un espacio continuo de direcciones
• 

(…)

Proceso


s
e
n
o
i
c
c
e
r
i
d

e
d

o
i
c
a
p
s
E

000…00

FFF…FF





i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

¿Virtualización?

•  Cuando la CPU intenta acceder a una dirección de memoria se

debe convertir la dirección virtual en la dirección física

•  Con esa dirección física se puede acceder a la RAM (ignorando

las posibles caches)

•  Esta conversión la hace la MMU (Memory Management Unit)
•  Hoy en día es parte de la CPU
•  Es decir, necesitamos (o al menos mejora el rendimiento) apoyo

del hardware

Proceso


s
e
n
o
i
c
c
e
r
i
d

e
d

o
i
c
a
p
s
E

000…00

a054fe40

FFF…FF

02ab45c0

MMU

TLB

¿Virtualización?

•  El mapeo podría no llevar a memoria RAM sino a datos

guardados en disco

•  El disco es un dispositivo mucho más lento así que lo normal es
mover los datos frecuentes utilizados a RAM y los poco
utilizados a disco



i

n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Proceso

02ab45c0


s
e
n
o
i
c
c
e
r
i
d

e
d

o
i
c
a
p
s
E

000…00

a054fe40

FFF…FF





i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

¿Virtualización?

•  Cuando varios procesos se ejecutan pero no disponemos de

varias CPUs

•  Cada proceso cree que dispone de la CPU pero se va

alternando la ejecución entre procesos

•  De nuevo se le está haciendo creer a alguien que dispone de

ciertos recursos de forma exclusiva cuando no es así

Proceso

Proceso

Proceso

Proceso

Virtualización, ¿dónde?

•  Servidor
•  Red
•  Almacenamiento



i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Redes de Nueva Generación

Área de Ingeniería Telemática

Virtualización de servidor





i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Hypervisor

virtual

•  Es una capa software entre el hardware y el sistema operativo “guest”
•  También llamado “Virtual Machine Monitor” (VMM)
•  Oculta el hardware real y puede presentar diferente hardware a cada máquina

•  Esas máquinas virtuales no necesitan cambios para funcionar en otro
hypervisor aunque emplee un hardware diferente siempre que les presente le
mismo hardware virtual
La máquina virtual, todo su sistema operativo instalado y las aplicaciones,
puede ser un solo fichero, sencillo de copiar a otra máquina

• 

“Guest OS”

OS 1 OS 2 OS 3 OS 4

OS 2

Hypervisor

Hardware

Hypervisor

Hardware 2





i

n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Tipos de Hypervisores

•  Tipo 1, nativo o “bare-metal”

–  Se ejecuta directamente sobre el hardware
–  Controla dicho hardware
–  Consume poco espacio y memoria
–  El mejor rendimiento potencial
–  El hypervisor debe contar con drivers para el hardware
–  Ejemplos: Citrix XenServer, Vmware ESXi, Microsoft Hyper-V, Linux KVM
(…)

• 

OS 1

OS 2

OS 3

Hypervisor tipo 1

Hardware





i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Tipos de Hypervisores

•  Tipo 2 o “hosted”

convencional

–  El hypervisor corre como una aplicación sobre un sistema operativo

–  El sistema operativo guest sobre el hypervisor
–  El sistema operativo host tiene un impacto en el rendimiento
–  Es más frecuente la existencia de drivers para el hardware
–  Ejemplos: VMware Workstation, VMware Server, Microsoft Virtual PC,

Parallels Workstation, VirtualBox, QEMU

OS 1

OS 2

OS 3

guest

OS 1

OS 2

OS 3

Hypervisor tipo 2

Hypervisor tipo 1

Hardware

Sistema operativo

host

Hardware

Virtualización de la CPU

•  El kernel de un sistema operativo está pensado para ejecutarse

con máximos privilegios

•  Ciertas instrucciones de la CPU no son sencillas de virtualizar y

no se pueden dejar ejecutar a un proceso



i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

•  Full virtualization

–  Hace traducción (on-the-fly) de instrucciones (binary translation)
–  Se sustituyen las instrucciones no virtualizables por otras

equivalentes

–  No requiere modificar el OS instalado
–  Ejemplos: VMware, Microsoft Virtual Server, Linux KVM, Parallels,

VirtualBox, QEMU

• 

(…)





i

n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Virtualización de la CPU

•  El kernel de un sistema operativo está pensado para ejecutarse

con máximos privilegios

•  Ciertas instrucciones de la CPU no son sencillas de virtualizar y

no se pueden dejar ejecutar a un proceso

•  Full virtualization
•  Paravirtualization (OS assisted virtualization)

–  Se modifica el sistema operativo guest sustituyendo las

instrucciones no virtualizables

–  Requiere menos sobrecarga en ejecución pero hay que poder

modificar el código de ese sistema operativo guest

–  Ejemplos: Xen, VMware (VMTools), Virtualbox (additions), UML
(…)

• 





i

n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Virtualización de la CPU

•  El kernel de un sistema operativo está pensado para ejecutarse

con máximos privilegios

•  Ciertas instrucciones de la CPU no son sencillas de virtualizar y

no se pueden dejar ejecutar a un proceso

•  Full virtualization
•  Paravirtualization (OS assisted virtualization)
•  Hardware-assisted virtualization

–  El hardware se encarga de la traducción de instrucciones

privilegiadas

–  Requiere soporte por el hardware (Intel VT-x, AMD-V)
–  Ejemplos: VMware, Microsoft, Parallels, Xen, Virtualbox

a
c
i
t

Operating-system-level virt.
•  Containers, Virtualization Engines, Virtual Private Servers, Jails
•  El kernel del sistema operativo aísla los procesos como si

l

corrieran en máquinas independientes

•  Su implementación más básica en Unix es el comando chroot



i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

pero solo aísla el sistema de ficheros

•  Es popular en Linux donde el kernel permite:

–  Limitar recursos (CPU, memoria, etc) a un conjunto de procesos
–  Ofrecer visión parcial de lista de procesos, interfaces de red,
usuarios y sistemas de ficheros montados mediante namespaces
•  Ejemplos: OpenVZ, Parallels Virtuozzo Containers, Linux-

VServer, Solaris Zones, FreeBSD Jails, etc

proceso

proceso
proceso
OS 1 OS 2 OS 3

Hypervisor tipo 1

proceso

proceso
proceso
OS 1 OS 2 OS 3

Hypervisor tipo 2

Sistema operativo host

proceso

proceso
proceso
Virtualization layer
Sistema operativo host

Hardware

Hardware

Hardware





i

n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

Virtualización de RAM

•  El sistema operativo guest emplea memoria virtual y la mapea a lo que

él cree que es memoria física

•  Eso no puede ser la auténtica memoria física, así que debe ser de

nuevo mapeada

•  Shadow page tables para hacerlo por soft o nested paging (Second

Level Address Translation) por hardware si lo soporta la CPU

•  Hay que virtualizar la MMU

Máquina virtual

Proceso


l
a
u
t
r
i
v

a
i
r
o
m
e
M


t
s
e
u
g

l
e
d

a
c
i
s
í
f

a
i
r
o
m
e
M

Host

M
e
m
o
r
i
a

f
í
s
i
c
a

d
e
l

h
o
s
t


Virtualización de dispositivos

•  El VMM presenta a la VM unos dispositivos comunes, de forma que



i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

sean fácilmente soportados

•  Puede tener varias opciones, por ejemplo ofrecerle al guest diferentes

modelos de tarjeta de red

•  El hardware puede tener soporte para ser virtualizado

Acceso a disco desde la VM



i



n
ó
c
a
r
e
n
e
G
a
v
e
u
N
e
d
s
e
d
e
R



a
c
i
t

l



á
m
e
e
T
a
í
r
e
n
e
g
n

i

I


e
d



a
e
r
Á

•  En
  • Links de descarga
http://lwp-l.com/pdf19050

Comentarios de: Virtualización (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad