Download virtualización

Document related concepts

Máquina virtual wikipedia , lookup

VMware wikipedia , lookup

Hipervisor wikipedia , lookup

VMware ESXi wikipedia , lookup

Servidor virtual privado wikipedia , lookup

Transcript
UNIVERSIDAD TECNOLÓGICA
ECOTEC
FACULTAD DE INGENIERÍA DE SISTEMAS
COMPUTACIONALES
Y
TELECOMUNICACIONES
VIRTUALIZACIÓN
SISTEMAS OPERATIVOS I
ANA MARÍA
ALARCÓN ORDÓÑEZ
ING. SARA NORIEGA
DE LA CRUZ
GUAYAQUIL, JUNIO 17 DEL 2012
Tabla de contenido
1.1 Introducción ................................................................................................................... 3
2.1 Virtualización ............................................................................................................... 4-7
2.1.1 Concepto ............................................................................................................................ 4
2.1.2 Características ................................................................................................................. 4
2.1.3 Tipos ............................................................................................................................. 5
2.1.4 Ventajas .................................................................................................................. 6-7
2.1.5 Desventajas ............................................................................................................ 7
3.1 Máquinas Virtuales ...................................................................................................... 7-8
3.1.1 Concepto ............................................................................................................................ 7
3.1.2 Funcionamiento ............................................................................................................... 7
3.1.3 Características ............................................................................................................. 8
4.1 Técnicas de Virtualización - Explicación ........................................................................... 8
5.1 Paravirtualización ........................................................................................................... 9
5.1.1 Concepto ............................................................................................................................ 9
5.1.2 Características ................................................................................................................. 9
5.1.3 Funcionamiento ........................................................................................................... 9
5.1.4 Uso ............................................................................................................................ 9
5.1.5 Ventajas ................................................................................................................ 9
5.1.6 Desventajas ........................................................................................................ 9
6.1 Virtualización asistida por hardware - Explicación ......................................................... 10
7.1 Descripción de KVM, Virtualbox, VMWare, OpenVZ, Exokernel .................................10-11
8.1 Hyper-V ......................................................................................................................... 11
9.1 Conclusión .................................................................................................................... 12
10.1 Bibliografía ................................................................................................................. 13
Introducción
Hace ya algún tiempo que nos encontramos en un tremendo boom de la virtualización de
sistemas informáticos. Gran cantidad de empresas están migrando sus sistemas a entornos
virtualizados seducidos por las grandes ventajas que aportan estos sistemas en cuanto a
comodidad y eficiencia.
Virtualizar ha sido considerado históricamente y de manera general como tomar algo en cierto
estado y hacer parecer que se encuentra en otro estado diferente. A partir de ello, dos
aproximaciones han ido evolucionando: hacer parecer que un computador se trata de múltiples
computadores y no solamente de uno –virtualización- o lograr que múltiples computadores
sean uno sólo; esto, más que virtualización, comúnmente es llamado Grid Computing o
Server Aggregation.
En el presente, la virtualización ha llegado al escritorio, lo que ha hecho que incremente
exponencialmente de nuevo su popularidad y esto provoque que sea una de las tecnologías
más innovadoras del momento debido a las notables ventajas que supone su aplicación. Uno de
los hechos que justifican esto es que prácticamente todas las grandes empresas dentro del
mundo informático han desarrollado productos de virtualización o han adquirido empresas que
los ofrecían.
VIRTUALIZACIÓN
Concepto
Virtualización describe como en un solo computador físico se coordina el uso de los recursos
para que varios sistemas operativos puedan funcionar al mismo tiempo de forma
independiente y sin que los SO’s sepan que están compartiendo recursos con otros sistemas
operativos. Es decir, se dividen los recursos de un ordenador (servidor) en uno o más entornos
de ejecución; que se comportarán a su vez como servidores reales.
Características
 Las organizaciones están optando por invertir en tecnologías como la virtualización, que
ofrecen un rápido retorno de la inversión, reducen costes e incrementan la
productividad.
 Se automatizan las tareas de TI y se agiliza la gestión, al mismo tiempo se reacciona con
mayor rapidez ante las oportunidades de negocio o fallo del sistema, garantizando la
continuidad del servicio.
 La tecnología nos ofrece la posibilidad de disponer de varios servidores con
características muy distintas pero instalando físicamente una sola máquina.
 Las características de configuración son independientes. Estos recursos pueden ser
compartidos o se pueden bloquear de forma que cada máquina virtual tenga su propia
memoria RAM, CPU, disco duro, recursos de red. Lo mismo ocurre con las aplicaciones y
el S.O.
 Se instala en el ordenador huésped un Hypervisor o VMM, un gestor de máquinas
virtuales que se ocupa de gestionar los recursos del servidor y de distribuirlos entre las
máquinas virtuales. Este software o sistema operativo para máquinas virtuales se puede
encontrar distribuido por empresas como Microsoft, VMWare, Parallels, Citrix y otras.
Tipos
 Virtualización de plataforma: se trata de simular una máquina real (servidor o PC) con
todos sus componentes (no necesariamente son todos los de la máquina física) y
prestarle todos los recursos necesarios para su funcionamiento. En general, hay un
software anfitrión que es el que controla que las diferentes máquinas virtuales sean
atendidas correctamente. Dentro de este esquema caben la mayoría de las formas de
virtualización más conocidas, incluidas la virtualización de sistemas operativos, la
virtualización de aplicaciones y la emulación de sistemas operativos.

Virtualización de sistema operativo: uso de un software que permite al sistema
ejecutar múltiples instancias de diferentes sistemas operativos de forma simultánea, en
una única computadora. Así, se ejecutan diferentes aplicaciones que son requeridas por
los sistemas operativos, garantizando que no interfieran entre sí, ni a las aplicaciones.

Virtualización de red: trata a todos los servidores y servicios en la red como un único
grupo de recursos que pueden ser accedidos sin considerar sus componentes físicos. Se
logra instalando software y servicios para gestionar el almacenamiento compartido, los
ciclos de computación y las aplicaciones. Balanceo de carga.

Virtualización de servidor: se particiona un servidor físico en pequeños servidores
virtuales. Los recursos del propio servidor son escondidos o enmascarados a los
usuarios. El software es usado para dividir el servidor físico en múltiples entornos
virtuales, llamados servidores virtuales o servidores privados. Esta tecnología se utiliza
en los servidores web.

Virtualización de aplicaciones: separa las aplicaciones del S.O y las convierte en
servicios virtuales gestionados y administrados de forma centralizada. Estas aplicaciones
se ejecutan en su propio entorno, los conflictos asociados con el S.O son totalmente
eliminados.

Virtualización de recursos: esta permite agrupar
varios dispositivos para que sean vistos como uno
solo, o al revés, dividir un recurso en múltiples
recursos independientes. Generalmente se aplica a
medios de almacenamiento. También existe una
forma de virtualización de recursos muy popular que
no es sino las redes privadas virtuales o VPN,
abstracción que permite a un PC conectarse a una red
corporativa a través de la Internet como si estuviera
en la misma sede física de la compañía.
Ventajas
Las ventajas de disponer de servidores virtualizados frente a servidores físicos son las
siguientes:
 Ahorro de costos: Podremos adquirir un solo servidor, aunque más potente, y no tener
que comprar más servidores sino solamente ir creándolos en el gestor de máquinas
virtuales. También permite ahorro en el costo de mantenimiento y en el de personal,
además de ahorrar espacio.
 Crecimiento más flexible: Instalar un nuevo servidor es mucho más sencillo y rápido
frente a hacerlo con un servidor físico.
 Administración simplificada: Desde la consola del gestor de máquinas virtuales
podemos aumentar o reducir los recursos para una determinada máquina, reiniciarla,
instalar parches o simplemente borrarla en caso de problemas.
 Aprovechamiento de aplicaciones antiguas: Una de las ventajas de la virtualización es la
posibilidad de conservar aplicaciones que funcionan en sistemas antiguos y aun así
modernizar la infraestructura informática de la empresa. Esa aplicación puede
“sobrevivir” en una máquina virtual independiente sin que haga falta conservar el
ordenador antiguo.
 Centralización de tareas de mantenimiento: Podemos realizar copias de seguridad de
un solo golpe de todas las máquinas, programar actualizaciones y otras actividades
desde el gestor de máquinas virtuales.
 Disminuye tiempos de parada: Una ventaja importante, solucionar problemas o realizar
copias de seguridad son tareas que se realizan en mucho menos tiempo. Por ejemplo, se
puede clonar una máquina y seguir dando servicio mientras se realiza mantenimiento de
la máquina virtual de producción como actualizaciones.
 Mejor gestión de recursos: Se puede aumentar la memoria o almacenamiento de la
máquina huésped para aumentar los recursos de todas las máquinas virtuales a la vez,
por lo que se aprovecha mucho mejor las inversiones en hardware.
 Balanceo de recursos: Es posible asignar un grupo de servidores físicos para que
proporcionen recursos a las máquinas virtuales y asignar una aplicación que haga un
balanceo de los mismos, otorgando más memoria, recursos de la CPU, almacenamiento
o ancho de banda de la red a la máquina virtual que lo necesite.
 Movilidad: El uso de dispositivos utilizados o que pueden ser utilizados en máquinas
virtuales, junto con los datos virtuales en los archivos de copia de seguridad o de
volumen de discos virtuales, hace que sea fácil el desplazar o mover las máquinas
virtuales de un sistema físico a otro, para funciones de mantenimiento y la utilización
más eficaz de los recursos.
Desventajas
 El uso de la virtualización representa conflictos con el licenciamiento que aplican los
fabricantes de software.
 El software de virtualización representa un desafío para los tipos de licencia por usuario
existentes actualmente, por lo cual es probable que cambien las reglas respecto al
licenciamiento de software.
 Su instalación y administración requiere de personal calificado en TI, mas su uso puede
ser transparente para un usuario promedio corporativo.
MÁQUINAS VIRTUALES
Definición
Es un software que crea un entorno virtual entre el sistema informático que la alberga y el
usuario final, permitiendo que se ejecute un software determinado.
Funcionamiento
La idea principal es la de permitir ejecutar varios sistemas operativos sobre el mismo hardware.
El corazón del sistema es conocido como monitor de máquina virtual, y se ejecuta sobre el
hardware proporcionando varias máquinas virtuales al siguiente nivel de software. De esta
forma cada una puede estar ejecutando un sistema operativo distinto y no interferir con los
demás.
Una máquina virtual es como una capa intermedia entre el hardware de la computadora y
algún software y puede encargarse de funciones como traducir instrucciones o simular el
funcionamiento de una computadora específica. Hay desde las más complejas que emulan una
computadora en su totalidad (Incluyendo tarjetas de video, discos duros, etc.), hasta otras más
sencillas y especializadas que brindan solo una capa de abstracción entre plataformas de
hardware y software muy específico.
Arquitectura típica de una máquina virtual.
Características
 Los procesos que ejecutan las máquinas virtuales están limitados por los recursos
proporcionados por ellas. Estos procesos no pueden escaparse de este ordenador
virtual.
 Se puede instalar el S.O que se desee
 Compatibilidad
 Uno de los usos domésticos más extendidos de las máquinas virtuales es ejecutar
sistemas operativos para "probarlos". De esta forma podemos ejecutar un sistema
operativo que queramos probar desde nuestro sistema operativo habitual, sin
necesidad de instalarlo directamente en nuestra computadora y sin miedo a que se
desconfigure el sistema operativo primario.
TÉCNICAS DE VIRTUALIZACIÓN
 Emulación del hardware (ejecución nativa): Esta técnica se suele llamar virtualización
completa del hardware ya que permite
ejecutar sistemas operativos propietarios
como Windows sin que sea modificado.
Utiliza un hypervisor de tipo 1 y2:
- Tipo 1.- se ejecuta directamente
sobre el hardware.
- Tipo 2.- se ejecuta sobre otro sistema
operativo como Linux.
 Emulación de un sistema no nativo: Pueden actuar como emuladores de hardware,
permitiendo que aplicaciones y sistemas operativos diseñados para algún una
plataforma específica puedan correr sobre otra plataforma con la cuál técnicamente no
es compatible. Ej: Máquina virtual de Java, del entorno de .NET.
 Paravirtualización: El host no ofrece una emulación del hardware. Pero sin embargo
ofrece un API que permite que los guests puedan acceder a los recursos de la máquina,
controlados por el host por supuesto. Los guests corren de forma aislada y segura de
forma tal que no se afectan en caso de problemas. El kernel de los guests tiene que ser
modificado para permitir acceder al API del host y poder manejar y acceder a los
recursos del host (disco, red, usb, etc). Ej.: Incluyen el VMWare ESX Server y el XEN.
 Virtualización a nivel de sistema operativo: Esta técnica consiste en dividir una
computadora en varios compartimentos independientes de manera que en cada
compartimento podamos instalar un servidor. A estos compartimentos se los llama
"entornos virtuales".
Desde el punto de vista del usuario, el sistema en su conjunto actúa como si realmente
existiesen varios servidores ejecutándose en varias máquinas distintas. Ej.: Las zonas de
Solaris (Solaris Zones) y la técnica de Micro Partioning de AIX.
PARAVIRTUALIZACIÓN
Definición
Consiste en ejecutar sistemas operativos invitados sobre otro sistema operativo que actúa
como hypervisor (host). Los invitados tienen que comunicarse con el hypervisor para lograr la
virtualización. Esta técnica permite que cada uno pueda colaborar para obtener un alto
rendimiento al realizar operaciones importantes relacionadas al uso de los recursos de
hardware y cuando se ejecute una máquina virtual.
Características
Esta técnica requiere que el sistema operativo del las maquinas virtuales sea modificado.
Sistemas operativos como Linux, FreeBSD, NetBSD, OpenSolaris son buenos candidatos para
ejecutarse en entornos de Paravirtualización.
Funciones
El hypervisor interactúa directamente con el hardware y se encarga de gestionarlo entre las
máquinas virtuales que se encuentran en la capa superior. De esta forma el hardware se
gestiona de forma mucho más eficiente y el rendimiento de las máquinas virtuales se
incrementa de forma considerable.
Usos
El término hypervisor viene de supervisor, que es como se llama al software que maneja las
maquinas virtuales en la virtualización completa (VMware). Se podría describir como
un microkernel con las siguientes funciones:
- Planificación del tiempo de CPU.
- Protección de memoria entre máquinas virtuales.
- Encaminamiento de interrupciones.
- Mantenimiento del tiempo.
- Paso de mensajes entre máquinas virtuales.
El hypervisor se ejecuta por debajo del S.O anfitrión proporcionando estabilidad, aislamiento
entre maquinas y políticas de QoS (Calidad del servicio). La empresa VMware tiene en uno de
sus productos un hypervisor con funciones parecidas a las de Xen (VMware Server ESX)
Ventajas
 La gran ventaja de estos hipervisores es el rendimiento.
 Según el software, permiten cambiar la asignación de memoria RAM y memoria en disco
de una máquina virtual dinámicamente, de forma que no hace falta reiniciar la máquina
virtual para que el cambio surta efecto.
 También se permite mover máquinas virtuales de un servidor a otro en caliente, sin
necesidad de apagar la máquina virtual.
 Además se obtienen todas las ventajas de la virtualización.
Desventajas
 Los sistemas operativos invitados deben ser modificados para funcionar con este
esquema.
VIRTUALIZACIÓN ASISTIDA POR HARDWARE (VIRTUALIZACIÓN COOPERATIVA).
El propio hardware provee la tecnología para que las máquinas virtuales puedan ejecutar el
sistema operativo en el nivel privilegiado que utilizaría si estuviera instalado físicamente. La
traducción binaria parte de la base de la existencia de un monitor de máquinas virtuales (VMM)
que vigila a cada segundo las instrucciones que el sistema operativo huésped envía al
procesador. Si existe algún problema inmediatamente las reescribe y las envía al huésped. En
otras palabras, lo que antes se hacía con una traducción binaria ahora se ejecuta directamente.
Lógicamente, la performance en los procesadores modernos es mayor con este método.
La desventaja es que el hardware que se utilice debe tener incorporada la tecnología de
virtualización.
Esta virtualización es posible gracias a las extensiones de virtualización de los procesadores
actuales, como la Intel VT y la AMD-V. Intel y AMD han desarrollado independientemente
extensiones de virtualización a la arquitectura x86 .No son directamente compatibles entre sí,
pero proporcionan las mismas funciones. Ambos permiten que una máquina virtual se ejecute
en un huésped no modificado.
DESCRIPCIÓN DE KVM, VIRTUALBOX, VMWARE, XEN, OPEN VZ, EXOKERNEL.
KVM (Kernel-based Virtual Machine): utiliza virtualización completa
por hardware y requiere que el sistema operativo host sea Linux. Es
open source y gratuito.
Virtualbox: propiedad de Sun desde hace ya un tiempo, es un
producto open source con versiones para Windows, Linux, Mac OS X
y OpenSolaris. VirtualBox permite realizar virtualización completa
eligiendo traducción binaria o asistida por hardware.
VMware: VMware es quizá el producto con más experiencia y
madurez en el mercado. Tiene muchísimas versiones diferentes
que soportan múltiples técnicas de virtualización. Entre ellas, la
gama ESX instala directamente el hypervisor sobre el
hardware, sin necesidad de otro sistema operativo que le sirva
de host. Este tipo de plataforma se denomina precisamente
non-hosted. Puede accederse a varias versiones gratuitas y
otras son pagas.
Xen: corre sobre hosts Linux y soporta paravirtualización y
virtualización completa por hardware. Es un muy buen producto
muy popular entre los usuarios de Linux, sobre todo en plataformas
de paravirtualización. También es open source.
OpenVZ: Desarrollado por SWsoft, Inc. Permite que un servidor
físico ejecute múltiples instancias de sistemas operativos aislados,
conocidos como Servidores Privados Virtuales (VPS) o Entornos
Virtuales (EV). Ofrece menor flexibilidad en la elección del sistema operativo: tanto los
huéspedes como los anfitriones deben ser Linux. Sin embargo, la virtualización en el nivel de
S.O de OpenVZ proporciona mejor rendimiento, escalabilidad, densidad, administración de
recursos dinámicos y facilidad de administración.
Exokernel: Radica en reducir la función del kernel del sistema
logrando multiplexar los recursos físicos. Un exokernel provee a las
aplicaciones la misma interfaz que provee el hardware, con ello no
se necesita de una virtualización ni abstracción del mismo. Son de
naturaleza
Sistemas
Centralizados.
Un exonúcleo elimina la noción de que un sistema operativo debe
proveer abstracciones en las que se construyen las aplicaciones, se
concentran en seguridad. Trabaja con direcciones de memoria
específica. Función principal multiplexar y proteger recursos.
HYPER-V
Hyper-V es un rol de Windows Server 2008 R2 de 64x que
proporciona las herramientas y los servicios necesarios para
crear un entorno servidor virtualizado. Este entorno virtualizado
se puede usar para abordar diversos objetivos empresariales
orientados a mejorar la eficacia y reducir los costos. Además,
este tipo de entorno es útil en el sentido de que permite crear y
administrar máquinas virtuales.
Características:
 Tiene una mejor arquitectura con lo cual se consigue mayor rendimiento y mayor
seguridad.
 Diversidad de sistemas operativos tanto 32x, 64x, Windows y Linux.
 Soporte de memoria, direccionamiento de memoria para cada máquina virtual.
 Acceso mejorado al sistema de almacenamiento.
 Integración de Linux, aunque de manera limitada.
 Pruebas y desarrollo
 Escalabilidad verticalmente para dar soporte a un mayor número de máquinas virtuales.
 Crea una infraestructura de IT más dinámica
CONCLUSIÓN PERSONAL
Actualmente existen diversas empresas que se encargan de ofrecer servicios de virtualización.
Sin embargo compararé VMware y Hyper-V de Microsoft.
VMware es obviamente la compañía con más experiencia con respecto a los productos de
virtualización. La organización tiene 10 años de experiencia en este campo y durante este
tiempo ha conseguido establecer una gran base de clientes a nivel mundial. En contraste HyperV es un producto relativamente nuevo, teniendo poca experiencia en el área de virtualización.
Microsoft no tiene un modelo de soporte exclusivo para Hyper-V.
Hyper-V requiere hardware de 64 bits y descarta por completo aquellas empresas que han
aplazado la renovación de equipos. De hecho, este es uno de los beneficios de la virtualización,
poder aprovechar el hardware existente para maximizar el rendimiento de sistemas.
Desde el punto de vista de fiabilidad, se estima que ESX Server puede funcionar más de 1.000
días sin requerir un reinicio. Sin embargo, Hyper-V requiere un reinicio cada 30 días por los
updates y parches de Microsoft.
Con respecto a la funcionalidad VMWare tiene alta disponibilidad, se pueden realizar
migraciones de máquinas “en vivo”, distribución dinámica de recursos, etc.; no son soportadas
o lo son de una forma muy limitada por la solución de Microsoft.
Una característica fundamental de WMWare es su
herramienta de conversión gratuita (VMWare
Converter), que sirve tanto para la conversión de
máquinas reales a virtuales, como para la conversión
entres las distintas plataformas de VMWare. Además de
la facilidad para trasladar las máquinas virtuales, basta
con copiar los ficheros asociados a la máquina a otro
servidor o medio de almacenamiento y volverla a
arrancar. Esto, no funciona en el caso de Hyper-V, ya
que deberemos exportar la máquina para poder migrarla a otro servidor, pero tendremos que
volver a crear la máquina con todas las opciones originales.
Es cierto que una licencia de VMware Infrastructure Enterprise Suite con Virtual Center
requiere una inversión costosa que la solución de Microsoft. Sin embargo, cuando se trata de
aplicaciones de misión crítica, el precio nunca debe ser el único parámetro.
BIBLIOGRAFIA
 Ernesto Pérez. Técnicas de Virtualización. Recuperado el 28 de febrero de 2007 de
http://www.ecualug.org/2007/02/28/comos/1_t_cnicas_de_virtualizaci_n
 IT





News
(2011).
Tipos
de
Virtualización.
Recuperado
de
http://www.itnews.ec/marco/000039.aspx
Rodolfo de Juana (2010). Cómo funciona la virtualización y para qué sirve. Recuperado el 21 de
abril de 2010 de http://www.muypymes.com/2010/04/21/como-funciona-la-virtualizacion-ypara-que-sirve
Eugenio Velásquez (2009). Virtualización. Recuperado el 8 de enero de 2009 de
http://www.tecnologiapyme.com/software/que-es-la-virtualizacion
Eugenio Velásquez (2009). Virtualización. Recuperado el 8 de enero de 2009 de
http://www.tecnologiapyme.com/software/que-es-la-virtualizacion
Técnicas de Virtualización. Recuperado el 5 de octubre de 2009 de
http://www.baitic.com/productividad/paravirtualizacion-expande-tus-posibilidades.html
Microsoft
Hyper-V.
Recuperado
el
22
de
marzo
de
2012
de
http://www.tecnicobat.com/2012/03/22/que-es-microsoft-hyper-v/