virtualización libre para sistemas linux

29
Grupo de Usuarios Linux del Uruguay Grupo de Usuarios Linux del Uruguay Rodolfo Pilas Rodolfo Pilas [email protected] http://www.pilas.net 21.ago.2008 – Jornadas Regionales de Software Libre – Buenos Aires 06.jul.2007 – Curso Actualización – Inst. Empower-U - Montevideo Virtualizacion libre Virtualizacion libre para sistemas Linux para sistemas Linux

Upload: rodolfo-pilas

Post on 03-Jul-2015

7.372 views

Category:

Technology


0 download

DESCRIPTION

Presentación de los distintos paradigmas de virtualización y los diferentes software libres que lo implementan

TRANSCRIPT

Page 1: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del UruguayGrupo de Usuarios Linux del Uruguay

R odolfo P ila sR odolfo P ila srodolfo@pilas .ne t http://www.pilas .ne t21.ago.2008 – Jornadas Regionales de Software Libre – Buenos Aires06.jul.2007 – Curs o Actualización – Ins t. Empower-U - Montevideo

Virtualizacion libre Virtualizacion libre para sistemas Linuxpara sistemas Linux

Page 2: Virtualización Libre para sistemas Linux

VirtualizaciónVirtualización

Page 3: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

33

VirtualizaciónVirtualizaciónen el tiempo...en el tiempo...

● Concepto con más de 40 años

● IBM 7044

● Compatible Time Sharing System (CTSS) - M.I.T. – Atlas Proyect

Page 4: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

44

Virtualización por hardwareVirtualización por hardware

● IBM Sistem/360 Model 67

● supervisor

● Virtual Machine Monitor VVM

Page 5: Virtualización Libre para sistemas Linux

Tipos de VirtualizaciónTipos de Virtualización

Page 6: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

66

VirtualizaciónVirtualizaciónde procesadorde procesador

● Simular el procesador

● P-code (Pseudo Code) – 1970 Universidad de California, San Diego (UCSD) Pascal

● Java Virtual Machine (JVM)

Page 7: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

77

VirtualizaciónVirtualizaciónde set de instruccionesde set de instrucciones

● Traducción binaria a espacios de hardware

● Semejante al manejo de la memoria y el cache de memoria

● Procesador Crusoe (Trasmeta) – Code Morphing

Page 8: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

88

VirtualizaciónVirtualizacióncompatibilidad códigocompatibilidad código

● Wine

● Capa de compatibilidad para ejecutar programas Windows y presentarlos al kernel Linux

● Implementa la API de Windows con código 100% no-Microsoft

Page 9: Virtualización Libre para sistemas Linux

Virtualización de computadorasVirtualización de computadoras

1 – Emulación2 – Nativa3 – Para-virtualización4 – Hardware5 – Sistema operativo

Page 10: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1010

VirtualizaciónVirtualizaciónpor emulaciónpor emulación

de máquinade máquina

● Se emula a nivel de software todo el hardware

● Se puede emular distinto hardware en un mismo host

● Se unifica el hardware

● Corre sistema operativo sin cambios

● Es lento (1/100 o incluso 1/1000)

1

Page 11: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1111

MAME (emulación)MAME (emulación)

Page 12: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1212

DOSBOXDOSBOX

● Emulación 286/386 (real/protected mode)

● Emula sistema de archivos

● Emula sistemas gráficos: Tandy, Hercules, CGA, EGA, VGA, VESA

● Muy portado: Windows, MacOSX, Linux, BeOS, etc.

Page 13: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1313

Bochs (emulación)Bochs (emulación)

● Simulador de x86 (386, 486, Pentium, PPro)

● Corre sobre x86, PowerPC, Alpha, SPARC y MIPS

● Corre Linux, MS Windows, BSD, FreeBSD, OpenBSD, etc.

Page 14: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1414

QEMU (sin aceleración)QEMU (sin aceleración)

● Emulación completa (semejante a Bochs)

● Emula diferentes arquitecturas x86, x86_64, ARM, SPARC, PowerPC y MIPS

● Emula multiples procesadores

Page 15: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1515

● Se virtualiza la mínima cantidad de recursos (solo los necesarios para correr SO sin modificar)

● Los procesos emulados se ejecutan directo en la CPU

● No es necesario correr un SO modificado

● Más performante que emulación completa

● Mediación consume recursos

VirtualizaciónVirtualizaciónnativanativa

2

Page 16: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1616

QEMUQEMU

● Emulando con aceleración (kqemu)

● Solo para procesadores x86

Page 17: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1717

Mac-On-LinuxMac-On-Linux

● Emulador para PowerPC

● Permite correr MacOS y MacOSX

● Corre sobre PPC 603, 604, G3 y G4

● Para Linux 2.4 y 2.6

Page 18: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1818

VirtualBox (emulación)VirtualBox (emulación)

● Basado en QEMU

● Corre sobre Linux y Windows

● Virtualiza MS-Windows, Linux, OS/2, OpenBSD, FreeBSD

● Interfaz gráfica “muy trabajada” para su configuración

● Muy buen sopore USB

● Acceso Remote Desktop a la máquina virtual

Page 19: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

1919

ParavirtualizaciónParavirtualización

● Un sistema hypervisor abstrae el hardware real

● Puede emular hardware (procesadores)

● El SO debe “saber” que está siendo virtualizado

● Método muy performante (similar al no virtualizado)

3

Page 20: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2020

● Desarrollo Universidad de Cambridge

● Corre Linux, NetBSD, FreeBSD, Plan9, Netware y Windows XP*

● Migración de máquinas virtuales

XEN XEN (paravirtualizacion)(paravirtualizacion)

Page 21: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2121

● Kernel 2.6 Linux

● Arranca kernel independiente y corren como proceso de usuario

● El kernel UML debe saber que es virtualizado

UML UML (paravirtualizacion)(paravirtualizacion)

Page 22: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2222

Virtualización Virtualización habilitada por habilitada por

hardwarehardware

● Procesadores: Intel Vanderpool Amd Pacífica

● Permiten correr OS aislados.

● El sistema operativo no necesita saber que está siendo emulado.

4

Page 23: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2323

● Muy nuevo, a partir de Kernel 2.6.20

● Módulo del Kernel

● Sistema virtualizado corre sobre QEMU

● Corre sobre HW que soporta virtualización (CPU)

KVM KVM (kernel virtual machine)(kernel virtual machine)

Page 24: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2424

● Corre Windows sin modificar con Xen hipervisor

XENXEN

Page 25: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2525

VirtualizacionVirtualizaciona nivel dea nivel de

Sistema OperativoSistema Operativo

● Crea máquinas virtuales dentro del mismo SO

● Cada máquina virtual corre mismo SO

● Aisla una máquina de otra

● Se comparten los recursos de hardware

● Diferentes técnicas de virtualización

5

Page 26: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2626

● Virtual Private Servers (VPS) - “contenedor”

● Aisla espacio de usuario uno de otro

● Utiliza jaulas chroot

Linux-VServerLinux-VServer(virtualizacion OS)(virtualizacion OS)

Page 27: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2727

● Se basa en Virtuozzo* y es desarrollado por la empresa Wsoft Inc.

● Kenrel Linux Modificado

● Herramientas optimizadas

● Manejo de recursos para VPS

● Snapshot y restore

● Permite congelamiento y migración

OpenVZOpenVZ(virtualizacion OS)(virtualizacion OS)

Virtualizacion de Sistema OperativoLa niña bonita sin novio

Viernes 22 – 15:00hs – Aula 10.1

Page 28: Virtualización Libre para sistemas Linux

Existen múltiples formas de virtualizar licenciadas como Software Libre

El problema es que no solemos considerarlas

Cada uno debe optar por la virtualización que se adapta a sus necesidades

Virtualizacion LibreVirtualizacion Libre

Page 29: Virtualización Libre para sistemas Linux

Grupo de Usuarios Linux del Uruguay - UYLUGGrupo de Usuarios Linux del Uruguay - UYLUGhttp://www.linux.org.uyhttp://www.linux.org.uy http://www.uylug.org.uy http://www.uylug.org.uy

2929

PREGUNTAS(...por favor) Rodolfo PilasRodolfo Pilas

rodolfo @ pilas.netrodolfo @ pilas.nethttp: // www. pilas.nethttp: // www. pilas.net

Presentación diseñada con:Presentación diseñada con:Kubuntu, Kernel version 2.6.24Kubuntu, Kernel version 2.6.24

Ambiente gráfico KDE 3Ambiente gráfico KDE 3

OpenOffice Impress 2.4OpenOffice Impress 2.4