lunes, 27 de febrero de 2012

virtual box


Virtual Box

Oracle VM VirtualBox 
Es un software de virtualización para arquitecturas x86/amd64, creado originalmente por la empresa alemana innotek GmbH. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualización. Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual.
Entre los sistemas operativos soportados (en modo anfitrión) se encuentran GNU/Linux, Mac OS X, OS/2 Warp , Microsoft Windows, y Solaris/OpenSolaris, y dentro de ellos es posible virtualizar los sistemas operativos FreeBSD, GNU/Linux, OpenBSD, OS/2 Warp, Windows, Solaris, MS-DOS y muchos otros.
Para instalar el Virtual Box necesitamos revisar nuestros requerimientos mínimos de sistema:

Requisitos del sistema Windows 7


Si desea ejecutar Windows 7 en su equipo, necesitará:
Procesador de 32 bits (x86) o 64 bits (x64) a 1 gigahercio (GHz) o más.
Memoria RAM de 1 gigabyte (GB) (32 bits) o memoria RAM de 2 GB (64 bits).
Espacio disponible en disco rígido de 16 GB (32 bits) o 20 GB (64 bits).
Dispositivo gráfico DirectX 9 con controlador WDDM 1.0 o superior.

Experiencia:
Virtualización
Virtual Box , Instalaremos una maquina Virtual – Windows Server 2003

1.- Inicio
2.- Crear nueva máquina virtual y tipo de sistema,
Nos requiere el nombre, SO Microsof Windows versión Windows 7(64 bit)
3.- Memoria
Nos indica seleccionar la cantidad de memoria base (RAM), que será asignada a la maquina virtual, nos sugiere 512 MB
4.- Disco Duro Virtual
Nos pide seleccionar un disco duro virtual, como no contamos con uno seleccionaremos “crear disco virtual nuevo”, el tamaño que recomienda es de 20.00 GB
5.- Bienvenido al asistente de creación de disco virtual
Seleccionamos VDI (virtualBox Disk Image),
6.- Detalle de almacenamiento de disco virtual
Seleccionamos reservado dinámicamente
7.- Localización y tamaño del archivo de disco virtual
Se le asigna el nombre y se selecciona el tamaño de disco virtual (20.00 GB)
8.- Resumen
Nos detalla las opciones que hemos elegido,
Clik en crear

domingo, 26 de febrero de 2012

Virtualización de SO

Virtualización

   Es un término amplio que se refiere a la abstracción (La abstracción consiste en aislar un elemento de su contexto o del resto de los elementos que lo acompañan. En programación, el término se refiere al énfasis en el "¿qué hace?" más que en el "¿cómo lo hace? " (característica de caja negra). 
El común denominador en la evolución de los lenguajes de programación, desde los clásicos o imperativos hasta los orientados a objetos, ha sido el nivel de abstracción del que cada uno de ellos hace uso.
Los lenguajes de programación son las herramientas mediante las cuales los diseñadores de lenguajes pueden implementar los modelos abstractos. La abstracción ofrecida por los lenguajes de programación se puede dividir en dos categorías:
-          abstracción de datos (pertenecientes a los datos) y
-          abstracción de control (perteneciente a las estructuras de control).
 de los recursos de una computadora. Este término viene siendo usado desde antes de 1960, y ha sido aplicado a diferentes aspectos y ámbitos de la informática, desde sistemas computacionales completos hasta capacidades o componentes individuales. El tema en común de todas las tecnologías de virtualización es la de ocultar los detalles técnicos a través de la encapsulación.

Para lograr esto son necesarios los siguientes componentes: 
1. Un computador físico o CPU o unidad física de hardware.
2. De acuerdo al tipo de virtualización (lo explicamos en tipos de virtualización) la segunda    capa es un sistema operativo o un hipervisor que va instalado como anfitrión o sistema principal, esta es la parte de la capa que coordina los recursos del sistema como memoria, procesador, archivos, impresora, tarjeta de red…
3. Uno o más sistemas operativos que son los invitados.
La grafica anterior vemos como lo primero que tenemos en la parte de abajo es el hardware o la parte física del computador (CPU, Memoria, Tarjeta de red o NIC y Disco Duro), sobre esa capa fisca va una capa de software que es el que coordina el acceso a las partes físicas del computador, esta capa es el hipervisor o un sistema operativo como Windows o Linux que actúan como anfitrión. Dentro del hipervisor o el contenedor que este en un sistema operativo anfitrión van los otros sistemas operativos invitados y es ahí donde se crea una capa virtual que le hace creer a los invitados que ellos tienen los recursos físicos que tiene el computador

Un reciente desarrollo de nuevas plataformas y tecnologías de virtualización han hecho que se vuelva a prestar atención a este maduro concepto.
Existen dos tipos de virtualización:
a.- Virtualización de plataforma que involucra la simulación de máquinas virtuales.
b.- Virtualización de recursos que involucra la simulación de recursos combinados, fragmentados o simples.
a.- Virtualización de plataforma
   El sentido original del término virtualización es el de la creación de una máquina virtual utilizando una combinación de hardware y software. Para nuestra conveniencia vamos a llamar a esto virtualización de plataforma.
   La virtualización de plataforma es llevada a cabo en una plataforma de hardware mediante un software “host” (un programa de control) que simula un entorno computacional (máquina virtual) para su software “guest”. Este software “guest”, que generalmente es un sistema operativo completo, corre como si estuviera instalado en una plataforma de hardware autónoma. Típicamente muchas máquinas virtuales son simuladas en una máquina física dada. Para que el sistema operativo “guest” funcione, la simulación debe ser lo suficientemente robusta como para soportar todas las interfaces externas de los sistemas guest, las cuales pueden incluir (dependiendo del tipo de virtualización) los drivers de hardware.
Virtualización de Plataformas
Existen varias técnicas:
Emulación o simulación: la máquina virtual simula un hardware completo, admitiendo un sistema operativo “guest” sin modificar para una CPU completamente diferente. Este enfoque fue muy utilizado para permitir la creación de software para nuevos procesadores antes de que estuvieran físicamente disponibles. La emulación es puesta en práctica utilizando una variedad de técnicas, desde state machines hasta el uso de la recopilación dinámica en una completa plataforma virtual.
Virtualización nativa y virtualización completa: la máquina virtual simula un hardware suficiente para permitir un sistema operativo “guest” sin modificar (uno diseñado para la misma CPU) para correr de forma aislada. Típicamente, muchas instancias pueden correr al mismo tiempo. Este enfoque fue el pionero en 1966 con CP-40 y CP[-67]/CMS, predecesores de la familia de máquinas virtuales de IBM. Algunos ejemplos: VMware Workstation, VMware Server, Parallels Desktop, Adeos, Mac-on-Linux, Win4BSD, Win4Lin Pro y z/VM.



Virtualización parcial ( “address space virtualization”): la máquina virtual simula múltiples instancias de mucho (pero no de todo) del entorno subyacente del hardware, particularmente address spaces. Este entorno admite compartir recursos y aislar procesos, pero no permite instancias separadas de sistemas operativos “guest”. Aunque no es vista como dentro de la categoría de máquina virtual, históricamente éste fue un importante acercamiento, y fue usado en sistemas como CTSS, el experimental IBM M44/44X, y podría decirse que en sistemas como OS/VS1, OS/VS2 y MVS.
Paravirtualización: la máquina virtual no necesariamente simula un hardware, en cambio ofrece un API especial que solo puede usarse mediante la modificación del sistema operativo “guest”. La llamada del sistema al hipervisor tiene el nombre de “hypercall” en Xen y Parallels Workstation; está implementada vía el hardware instruction DIAG (“diagnose”) en el CMS de VM en el caso de IBM (este fue el origen del término hypervisor). Ejemplo: VMware ESX Server, Win4Lin 9x y z/VM.


Virtualización a nivel del sistema operativo: virtualizar un servidor físico a nivel del sistema operativo permitiendo múltiples servidores virtuales aislados y seguros correr en un solo servidor físico. El entorno del sistema operativo “guest” comparte el mismo sistema operativo que el del sistema “host” (el mismo kernel del sistema operativo es usado para implementar el entorno del “guest”). Las aplicaciones que corren en un entorno “guest” dado lo ven como un sistema autónomo. Ejemplos: Linux-VServer, Virtuozzo, OpenVZ, Solaris Containers y FreeBSD Jails.
Virtualización de aplicaciones: consiste en el hecho de correr una desktop o una aplicación de server localmente, usando los recursos locales, en una máquina virtual apropiada. Esto contrasta con correr la aplicación como un software local convencional (software que fueron “instalados” en el sistema). Semejantes aplicaciones virtuales corren en un pequeño entorno virtual que contienen los componentes necesarios para ejecutar, como entradas de registros, archivos, entornos variables, elementos de uso de interfaces y objetos globales. Este entorno virtual actúa como una capa entre la aplicación y el sistema operativo, y elimina los conflictos entre aplicaciones y entre las aplicaciones y el sistema operativo. Los ejemplos incluyen el ]]Java Virtual Machine]] de Sun, Softricity, Thinstall, Altiris y Trigence (esta metodología de virtualización es claramente diferente a las anteriores; solo una pequeña línea divisoria los separa de entornos de máquinas virtuales como Smalltalk, FORTH, Tel, P-code).
b.- Virtualización de los recursos
El concepto básico de la virtualización de plataforma, descrita anteriormente, se extendió a la virtualización de recursos específicos del sistema como la capacidad de
almacenamiento, nombre de los espacios y recursos de la red.
Objetivo de la Virtualización
 Aumentar el rendimiento del hardware disponible, incrementando el tiempo de
procesamiento de un equipo, ya que se desaprovecha gran parte del tiempo
de procesamiento.
Uso de las Máquinas Virtuales
-Consolidación de servidores.
_ Aislamiento e independencia de servicios y contenidos.
_ Laboratorio de pruebas.
_ Mantenimiento de sistemas antiguos.
_ Virtualización de arquitecturas de las que no disponemos.
_ Sistemas distribuidos.
_ Herramienta de aprendizaje.
Método
 Instalar varios sistemas operativos en una misma máquina real para que funcionen como máquinas virtuales.
Ventajas
_ Seguridad.
_ Fácil migración.
_ Mayor aprovechamiento de recursos.
_ Migración en vivo.
_ Importante ahorro energético.

Inconvenientes
_ Muchos sistemas dependen de un sólo equipo.
_ No hay un proyecto de software libre de virtualización totalmente consolidado.
Programas: