unitec virtualización

29
Si un sueño se siente real, entonces ¿cómo se siente un sueño después de que crees que te has despertado del sueño? ¿Y si sigue pasando? VIRTUALIZACI ÓN Egdares Futch H. Agosto 2013

Upload: egdares-futch

Post on 04-Jun-2015

500 views

Category:

Technology


0 download

DESCRIPTION

Presentación sobre Virtualización, preparada para la Semana de Ingenierías 2014, UNITEC

TRANSCRIPT

Page 1: Unitec   virtualización

Si un sueño se siente real, entonces ¿cómo

se siente un sueño después de que crees

que te has despertado del

sueño? ¿Y si sigue pasando?

VIRTUALIZACIÓN

Egdares Futch H.Agosto 2013

Page 2: Unitec   virtualización
Page 3: Unitec   virtualización

¿Qué es Virtualización?• Real vs. Virtual

– Cuentan con una esencia o efecto similar– “Formalmente” son diferentes

• Es un marco de referencia (idea/concepto) que combina o divide recursos para presentar una vista transparente de uno o más – Particionamiento de hardware/software– Simulación parcial o completa de una máquina– Emulación (igual, parcial o completa)– Tiempo compartido (cualquier tipo de compartir)

• En general, puede ser cualquier mapeo de M-a-N (M recursos “reales”, N recursos “virtuales”)

Page 4: Unitec   virtualización

Mapeos

• 1 -> N– Multitasking

• M -> 1– Grid Computing, Clustering

• M -> N– Máquinas virtuales

Page 5: Unitec   virtualización

No es un concepto nuevo

• Concepto con más de 40 años– IBM 7044

• Compatible Time Sharing System (CTSS)– M.I.T. – Atlas

Proyect

Page 6: Unitec   virtualización

• Popek y Goldberg establecieron en 1974 los requerimientos para una arquitectura virtualizable

Page 7: Unitec   virtualización

Requerimientos para una arquitectura virtualizable – Popek & Goldberg

• Equivalencia/Fidelidad– Un proceso corriendo bajo un Administrador de Máquina Virtual

(VMM) debe mostrar comportamiento idéntico a cuando se ejecuta directamente en una máquina equivalente

• Control de recursos/Seguridad– El Administrador de Máquina virtual (VMM) debe estar en control

completo de los recursos virtualizados

• Eficiencia/Desempeño– Una gran proporción de instrucciones de máquina deben ser

ejecutadas sin intervención del Administrador de Máquina Virtual (VMM)

Page 8: Unitec   virtualización

¿Para qué podemos usar virtualización?

• Consolidación de servidores• Consolidación de aplicaciones/reducción de

licenciamiento• Hardware virtual• Debugging• Máquinas de propósito dedicado (Appliances)• Pruebas/Aseguramiento de Calidad• Recuperación de desastres

Page 9: Unitec   virtualización

Hardware

Kernel

Librerías de Usuario

Aplicaciones

Llamadas a un API

System Calls

Instrucciones de hardware

User Space

Kernel Space

Si analizamos una arquitectura apilada

Virtualización

Virtualización

Virtualización

Page 10: Unitec   virtualización

ConceptosVirtualización completaParavirtualización

“Virtualización" de sistema operativo

Page 11: Unitec   virtualización

Técnicas de virtualización en hardware

• Arquitectura del Conjunto de Instrucciones (Instruction Set Architecture)– Emular el ISA en software

• Interpretar, traducir al ISA anfitrión (si se requiere)• Dispositivos implementados en software• Generalmente es ineficiente• Ejemplo: SPIM, el emulador de MIPS32

• Capa de abstracción de hardware (Hardware Abstraction Layer – HAL)– Entre “máquina real” y “emulador”– Maneja arquitecturas no virtualizables (validar, insertar código)

Page 12: Unitec   virtualización

Ejemplos de virtualización de conjunto de instrucciones

• Traducción binaria a espacios de hardware

• Procesador Crusoe (Trasmeta)– Tecnología Code

Morphing interpretaba diversos conjuntos de instrucciones

Page 13: Unitec   virtualización

MAME (Emulación)

Page 14: Unitec   virtualización

Bochs

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

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

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

Page 15: Unitec   virtualización

Qemu

• Emulación completa (semejante a Bochs)

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

• Emula múltiples procesadores

• Emulación en modo usuario (solo en Linux)

Page 16: Unitec   virtualización

No sólo plataformas x86

• IBM Logical Partitioning (LPAR)– Sistemas pSeries (Power Architecture)

– Feature interesante: Microparticionamiento

Page 17: Unitec   virtualización

Arquitectura de vmWare

Page 18: Unitec   virtualización

vmWare internamente

Page 19: Unitec   virtualización

Virtualización completa

• Un sistema hipervisor administra el metal

• No es necesario correr un OS modificado

• Mejor desempeño que emulación de hardware

• Mediación consume recursos

• El OS debe soportar hardware real

Page 20: Unitec   virtualización

Xen

• Desarrollado en la Universidad de Cambridge

• Corre Linux, NetBSD, FreeBSD, Plan9, Netware y Windows

• Virtualización completa con Intel VT o con AMD Pacífica

• Permite migración de máquinas virtuales

Page 21: Unitec   virtualización

Virtualización dentro del OS

• Crea máquinas virtuales dentro del mismo OS

• Cada máquina virtual corre mismo SO

• Aisla una máquina de otra

• Se comparten los recursos de hardware

Page 22: Unitec   virtualización

Virtualización en móviles

• Máquina virtual Dalvik– Provee el entorno en el cual

todas las aplicaciones Android corren

– Cada aplicación Android corre dentro de su propio proceso, con su propia instancia de Dalvik

– Dalvik fue diseñado para correr en múltiples instancias de forma eficiente

Page 23: Unitec   virtualización

Caso de Implementación en una empresa en Honduras

• Antes: servidores multiuso– Un solo equipo era servidor de base de datos,

DNS, impresión, etc.• Luego evolucionó a tener un servidor para

cada uso– Bueno desde el punto de vista de seguridad, pero

es caro y cuesta administrar– Problemas de licenciamiento: por CPU, por socket,

por «Processor Value Units», etc.

Page 24: Unitec   virtualización

Plataforma de máquinas virtuales

• Se inicia el uso de máquinas virtuales para desarrollo y testing.

• Evolución: un «banco» de máquinas virtuales preconfiguradas

• Capacidades estáticas de procesamiento

• Siguiente paso: capacidades elásticas– Utility computing?

Page 25: Unitec   virtualización

Plataforma de máquinas virtuales

• Sistemas operativos variados– Windows 2003, 2008, XP– Linux en varios sabores (Red Hat, Debian, Ubuntu)

• Capacidades de manejo de cargas mejoradas– Microparticionamiento– Sizing en demanda

• Capacidades de respaldo y recuperación mejoradas– VMware Vmotion– Acronis Universal Restore– Tivoli Storage Manager

Page 26: Unitec   virtualización

Virtualización de almacenamiento

• Los controladores de disco tipo Grid permitieron «virtualizar» el almacenamiento

Page 27: Unitec   virtualización

Amarrando todo

• Estos componentes juntos, forman una arquitectura empresarial virtualizada

Page 28: Unitec   virtualización

Otras direcciones en virtualización…

• Virtualización de pantallas (Terminal Services, Citrix, Remote Desktop, VNC)

• Virtualización de stack de comunicaciones o redes (Software Defined Networking)

• Grid Computing / Virtual Private Servers• …

Page 29: Unitec   virtualización

El cielo es el límite…Muchas gracias por su atención

[email protected]• Twitter: @efutch• http://efutch.blogspot.com• http://maestros.unitec.edu/~efutch