Ciertamente hay mucha literatura al respecto sobre Virtualbox para construir sencillos o robustos Servidores de Virtualización, pero muchas veces las misma no nos llevan directamente al grano en las opciones más practicas con sus respectivas aclaratorias y posibles escenarios reales de uso, es decir, siempre encontramos mucha información pero no ajustada a las necesidades de muchos y sobre todo novatos o principiantes en el área.
Primeramente les dejo las características técnicas del Computador de bajos recursos utilizado:
Hardware:
- Computador Clon: Genérico
- Tarjeta Madre: AsRock Conroe 1333-D667 con Dual Channel
- Procesador: Intel(R) Pentium(R) Dual CPU E2140 @ 1.60GHz
- Memoria: 2 GB (Ramaxel 1GB 1RX8 PC2-6400U-666 LF / Corsair VS1GB533D2)
- Disco Duro principal (320 GB): Samsung HD322HJ
- Disco Duro secundario (500 GB): WDC WD5000AAKC-001CAD
- Tarjeta de Red inalámbrica: D-Link (RaLink RT2561/RT61 Rev. B – 802.11g)
- Tarjeta de Vídeo: NVIDIA GT218 [GeForce 210]
Nota: Lo ideal es tener un Servidor con 4GB de RAM para estos fines, sin embargo, en este caso practico con un (1) GB de RAM podemos para el Servidor Físico y 1 GB de RAM para una Maquina Virtual (MV) en VirtualBox (VBox) simulando cualquier Sistema Operativo GNU/Linux o MS Windows en versiones de 32 Bits es suficiente.
Software:
- Sistema Operativo: DEBIAN Testing (9 / Stretch)
Plataforma de Virtualización a usar:
- Plataforma de Virtualización: VirtualBox 5.0.14
Primeramente, para los pocos entendidos nos adentraremos brevemente en el concepto de Virtualización:
1.- Introducción a la Virtualización:
Todo Administrador de Servidores / Sistemas / Redes (SysAdmin), Especialistas de Soporte Tecnológico Avanzado ó Entusiasta de la Tecnología, sobre todo del Área del Software Libre y Sistemas Operativos GNU/Linux deben estar al día sobre los cambios sobre los diversos Sistemas Operativos y programas disponibles en el mercado o la Comunidad. Sobre todo para estar al día en cuanto a las técnicas y/o procedimientos necesarios sobre los mismos para mejorar la productividad en las Instituciones – Empresas (Publicas/Privadas) donde cumple sus funciones y para facilitar la ejecución de su propio trabajo.
Una de las tecnologías que facilita este objetivo es la Virtualización de Sistemas Operativos, que básicamente permite compartir en un mismo Computador / Servidor (Hardware) varios Sistemas Operativos operando de forma totalmente independiente. Todo esto mediante un Software de Virtualización.
A continuación realizaremos un análisis detallado del funcionamiento de esta tecnología. Algunos de los puntos a tratar son las ventajas e inconvenientes de usar esta tecnología, análisis de los mejores virtualizadores del momento para usuarios y empresas, entre otros. Para darnos cuenta vía resultados, como la potencia de un Sistema Operativo Virtualizado puede ser igual o incluso superior a la de un Sistema Operativo Real.
2.- Sobre la Virtualización de Sistemas Operativos (S.O.):
Como en muchas otras esferas del conocimiento humano, la Tecnología de la Información (TI) se incrementa rápidamente, tanto que muchas veces no da tiempo de asimilar todos los conceptos nuevos que se presentan día a día. Y así el modelo de Administración de Sistemas para los Administradores de TI está llegando a los Usuarios (Medios/Avanzados) de la mano de la Virtualización de Sistemas Operativos. La Virtualización puede significar muchas cosas, pero relacionado a los Sistemas Operativos, consiste básicamente en poder compartir una misma infraestructura de Hardware para varios Sistemas Operativos operando de forma totalmente independiente. Es decir, que teniendo un mismo Servidor, con un mismo Disco Duro o Dispositivos de Almacenamiento, un(os) Procesador(es) y una capacidad instalada de Memoria RAM (por ejemplo, y sin mencionar el resto de elementos de Hardware que lo componen), podamos disponer de varias instalaciones de Sistemas Operativos Privativos MS Windows, Apple, ó Libres como GNU/Linux u otros, funcionando en paralelo, totalmente independientes los unos de los otros. Si una de ellos se detiene (congela) o tiene problemas, las otras ni se enteran y hasta podrían reaprovechar los recursos de velocidad de proceso que quedarían liberados.
3.- Ventajas e inconvenientes de la Virtualización de S.O.:
Los usos y ventajas que nos ofrece la Virtualización de S.O. son las siguientes:
- Ahorro de costes
- Compatibilidad de programas
- Clonación y migración de sistemas en caliente
- Entornos de prueba
- Aislamiento y seguridad
- Flexibilidad y agilidad
La Virtualización de S.O. también tiene algunos puntos débiles a destacar:
- Rendimiento inferior
- Limitaciones en el Hardware
- Proliferación de Máquinas Virtuales
- Desaprovechamiento de recursos
- Centralización de las máquinas en un único servidor
- Portabilidad limitada entre virtualizadores
4.- El Hipervisor como plataforma de virtualización:
El Hipervisor ó Monitor de Máquina Virtual (Virtual Machine Monitor – VMM) es una plataforma de virtualización que permite utilizar, a la vez, múltiples Sistemas Operativos en un Computador (Servidor).
Los Hipervisores pueden clasificarse en dos tipos:
Tipo 1 (Nativo, bare-metal): Software que se ejecuta directamente sobre el Hardware real del equipo para controlar el Hardware y monitorizar los S.O. virtualizados. Los Sistemas Virtualizados se ejecutan en otro nivel por encima del Hipervisor.
Diagrama de representación conceptual del Hipervisor de Tipo 1
Algunos de los Hipervisores de Tipo 1 más conocidos son los siguientes:
- VMware: ESX/ESXi/ESXi Free.
- Xen.
- Citrix XenServer.
- Microsoft Hyper-V Server.
Tipo 2 (Hosted): Aplicación que se ejecuta sobre un S.O. convencional (Linux, Windows, Mac OS) para virtualizar sistemas. De esta forma la virtualización se produce en una capa más alejada del Hardware si lo comparamos con los Hipervisores de tipo 1. Lógicamente esto hace que el rendimiento sea menor en los Hipervisores de Tipo 2.
Diagrama de representación conceptual del Hipervisor de Tipo 2
Algunos de los Hipervisores de Tipo 2 más utilizados son los siguientes:
- Sun: VirtualBox, VirtualBox OSE.
- VMware: Workstation, Server, Player.
- Microsoft: Virtual PC, Virtual Server.
Equipo con Sistema Operativo nativo (Sin Virtualización)
Equipo con Sistema Operativo y Virtualización con Hipervisor de Tipo 1
Equipo con Sistema Operativo y Virtualización con Hipervisor de Tipo 2
5.- Historia de la Virtualización de S.O. :
La virtualización no es un tema novedoso en informática, de hecho se considera que existe, aproximadamente, desde hace cuatro o cinco décadas. Por aquel entonces y hasta hace pocos años era aplicada en ámbitos exclusivos, sólo prácticamente para los grandes centros de cálculo, tanto bancarios como militares y universitarios.
Con el tiempo la tecnología se desarrollo a pasos agigantados y se masifico, causando que el uso de Supercomputadores y Mainframes declinará a favor de la llegada de los compactos Servidores empresariales y Computadores personales de Alto rendimiento que hicieron que el concepto de acceso al mismo tiempo a los recursos de un único supercomputador desapareciera, dando la estocada final a la era dorada pasada de la virtualización.
En el presente, la virtualización ha llegado nuevamente a las Salas de Servidores de manera renovada gracias las nuevas tecnologías de Virtualización por Hardware y Software, y llegado ha la Computación de Escritorio, lo que ha incrementado eficientemente de nuevo su popularidad, provocando que sea una de las tecnologías más innovadoras del momento debido a las notables ventajas que supone su aplicación.
Actualmente hay 2 tecnologías lideres en este ámbito:
INTEL: La tecnología diseñada e implementada por Intel, y que incluye en sus procesadores de gamas media y alta es Intel VT (Virtualization Technology). Intel introduce mejoras en sus procesadores x86 (VT-x) e Itanium (VT-i).
AMD: Por su parte, AMD dispone de una tecnología análoga a la de Intel denominada AMD-V o AMD-SVM (originalmente bajo el nombre Pacífica) que incluye también igualmente en sus procesadores tanto de gama media como de gama alta.
Ambos estándares son prácticamente idénticos y equivalentes en cuanto a funcionalidad ofrecida a las soluciones de Software de Virtualización que quieran hacer uso de sus características.
6.- Resumen :
La virtualización es el efecto de abstraer los recursos de un computador, es decir, proporcionar acceso lógico a recursos físicos, por ende, la virtualización separa de manera lógica la petición de algún servicio y los recursos físicos que realmente proporcionan el servicio. Y dependiendo del recurso que se abstraiga, ya sea un recurso individual (Unidad de Almacenamiento, Unidad de Red) o una plataforma (Servidor, PC) y de por quién sea usado ese recurso, el mismo corresponderá ha un especifico modelo de virtualización.
Por lo tanto, es importante distinguir los mismos para entender con mayor claridad la virtualización entre dos conceptos como son el recurso virtual que se abstrae y el ente (aplicación, sistema operativo, máquina, entre otros) que, virtualizado, dispone de ese recurso, ya que esto es lo que nos da un modelo de virtualización implementado.
Teniendo en mente todo esto, podemos distinguir cuatro modelos principales de virtualización:
Virtualización de plataforma
- Sistemas Operativos invitados
- Emulación
- Virtualización completa
- Paravirtualización
- Virtualización a nivel del S.O.
- Virtualización a nivel del Kernel
Virtualización de recursos
- Encapsulación
- Memoria virtual
- Virtualización de almacenamiento
- Virtualización de red
- Unión de interfaces de red (Ethernet Bonding)
- Virtualización de Entrada/Salida
- Virtualización de memoria
Virtualización de aplicaciones
- Virtualización de aplicaciones limitada
- Virtualización de aplicaciones completa
Virtualización de escritorio
7.- Profundización del tema sobre Virtualización de Sistemas Operativos:
Y como no siempre es suficiente con leer las hojas de datos de los productos, también es necesario poder realizar una prueba en nuestro «Entorno de trabajo u Hogar» para conocer de primera mano como funcionan las cosas sobre la virtualización, en la parte 2 de este post les comentaré mi experiencia personal de Instalación y configuración del Software VirtualBox 5.0.14 sobre DEBIAN 9 en un Computador de bajos recursos.
12 comentarios, deja el tuyo
Buen articulo. Muy completo y detallado, aunque yo habría añadido también Proxmox dentro de los hipervisores de capa uno, pues está basado en Debian y es una solución muy recomendable para aquellos que quiere recurrir a tecnología 100% libre.
Cómo que Sun, respeto a Oracle (?)
Estimado Tabris, tienes razón! Fue un pequeño lapsus brutis!
KVM
http://www.linux-kvm.org/
Ciertamente, KVM es una de las mas importantes soluciones de Virtualización modernas y eficientes para Software Libre actualmente!
Para mayor información sobre virtualización, actualizada y desde la fuente, pueden ver este link: http://planet.virt-tools.org/
En realidad virtualbox es para otras cosas, como virtualizar algo puntual, como una alternativa al doble booteo, o para un par de VMs puntuales.
Para un servidor de produccion tiene muchisimo mas rendimiento y estabilidad KVM, de paso consume muchos menos recursos, y no es mas que instalar libvirt, el cliente virt-manager y darle (no tenes que hacer la vuelta del modulo de kernel de virtualbox, por ejemplo).
Los pro de virtualbox es que tiene una interfaz mas user friendly, y esta pensado mas para virtualizar SO de escritorios de uso cotidiano, con los guest tools para que el windows y el linux que pongas te anden mas fluidos, copies en el SO host y te pegue en la VM, etc.
Mas de una vez tuve que virtualizar Windows con KVM, y el mouse parece que anda a 20hz de lo cortado que se mueve jaja, pero esta pensado para servidores y no para que sea lindo para el usuario final.
Concuerdo mucho contigo! VBox para Pruebas (Test) caseras, Técnicas y problemas puntuales en Equipos de bajo rendimiento (Poder de Computo) y KVM para Servidores y Equipos de Alto rendimiento!
Sin embargo, una plataforma sencilla, amigable y robusta en VBox también es posible.
No hay que olvidar Docker y Citrix.
Buenas, si bien es condensado y simple su explicacion, aun me parece no es claro para y porque virtualizar. Tengo un pequeño servidor de datos con xp. En mi caso ¿conviene virtualizar?. ¿Me conviene crear dos servidores virtuales para limitar acceso de usuarios? Que por ahora es lo mas importante.
tienes algun tutorial con proxmox? en especial con la virtualization de win 7
como la enunciación de un concepto está bien, pero para eso me parece demasiado rollo o demasiado espacio
Un ignorante como yo no necesita tanta cosa para entender el concepto, y lo que hay en el post no aclara cómo implementarlo ni con que, (a menos que sepas lo mismo que el que lo ha escrito) Yo creo que esta gente que se dedica a contarnos lo que sabe mas que a enseñarnos lo que sabe, debería ponerse en la piel del que entra motivado por el título del post, a leerlos. Si no quieres, no me lo expliques, pero al menos, dime donde lo puedo investigar, y si no, no postees. Gracias lo mismo