Almacenamiento en Maquinas Virtuales

De Departamento de Informatica
Saltar a: navegación, buscar

Contenido

Máquinas Virtuales

Podríamos definir un sistema de Máquinas virtuales, como un sistema computacional en el cual las instrucciones enviadas por un programas pueden ser distintas de las que actualmente son ejecutadas por el hardware para realizar una cierta tarea. Una máquina virtual es entonces un software que simula a una computadora y puede ejecutar programas como si fuese una computadora real.

En términos conceptuales las máquinas virtuales funcionan en base a la implementación de un software de virtualizado conocido como monitor (VMM de virtual machine monitor).La virtualización se lleva a cabo en una plataforma de hardware mediante un software “anfitrión” (VM host), que es un programa de control que simula un entorno computacional (máquina virtual) para su software "huésped" (VM guest). Este software “huésped”, que generalmente es un sistema operativo completo, se ejecuta como si estuviera instalado en una plataforma de hardware autónoma.

En el tiempo de ejecución, se emula tanto instrucciones de nivel de usuario como del sistema operativo. El VMM la ejecución del instrucciones del hardware virtual, de modo que el software usuario pueda ejecutar una hardware virtual distinto al hardware físico al cual esta relacionado el host. El VMM proporcional hardware virtualizado.

arquitectura maquina virtual

El VMM crea recursos de hardware virtuales, entrega interfaces para el acceso de control de la cpu, memoria, dispositivos I/O y almacenamiento, se mapean los recursos visibles dentro de la interfaz en los recursos del sistema real posiblemente diferente. Por consiguiente, el verdadero sistema aparece como un sistema virtual diferente o como sistema virtuales múltiples.

Discos Virtuales

Un disco duro virtual no es más que un fichero (o varios) con un formato especifico que simula la existencia de un disco duro físico. Cuando se monta un disco virtual (que posee su propia unidad virtual), no existe en realidad ningún disco, sino que es una simulación. Se pueden ocupar distintas técnicas para emular discos duros, como por ejemplo: emular usando memoria ram, obteniendo un disco duro ultra-rápido. Otra técnica y la más usada es emular un disco duro empleando un servicio de almacenamiento online.

Algunos formatos de discos duro virtuales mas conocidos se encuentra VMDK (virtual machine Disk) utilizado por VMware y VHD (virtual Hard Disk), utilizado por productos como virtual PC (microsoft) o XenServer de Citrix.

Almacenamiento Virtual

El almacenamiento virtual permite nuevos enfoques para almacenar información y manipular archivos de una manera flexible, eficiente y confiable.

El almacenamiento virtual puede estar conformado por discos magnéticos u ópticos, discos de estado sólido o cintas magnéticas, incluso, una parte de la memoria RAM de la computadora personal puede ser utilizada como una unidad de disco virtual.

Del mismo modo, un almacenamiento virtual puede integrarse con varios almacenamientos físicos y, a su vez, uno físico puede “dividirse” en varios virtuales. Para el primer caso, el almacenamiento virtual se compone, por ejemplo, de dos o más unidades de disco magnético físico las cuales se agrupan en una o varias unidades virtuales que son visibles a todos los usuarios. Esto es muy útil cuando queremos que nuestros usuarios dispongan del mismo almacenamiento compartido por todos.

El segundo caso sugiere que una unidad de disco magnético físico que puede dividirse en varias unidades virtuales y asignarlas a ciertos usuarios. Esto es adecuado cuando se quiere tener un control más preciso del almacenamiento y controlar el crecimiento de la información de los usuarios por la asignación virtual de una parte del disco físico.

Ventajas

Respecto al almacenamiento virtual, se pueden mencionar las siguientes ventajas:

  • No es necesario acudir físicamente a un ordenador específico, ya que se pueden descargar y subir archivos, documentos, fotografías, etc desde cualquier lugar.
  • Acceso virtual a cualquier sistema, a cualquier hora y lugar.
  • No se debe depender de soportes físicos para transportar recursos digitales, solo es necesario disponer de acceso a Internet.
  • Permite que los datos estén actualizados, disponibles y sincronizados en tiempo real para diferentes usuarios.
  • Liberado de sufrir pérdida de información por deterioro y/o daños de un dispositivo de almacenamiento externo.

Implementación del Almacenamiento Virtual

La virtualización de almacenamiento nos ayuda a lograr la independencia de ubicación abstrayendo la ubicación física de los datos. El sistema de virtualización presenta al usuario un espacio lógico para datos almacenados y maneja el proceso de mapeado a la actual ubicación física. El almacenamiento virtual nos permite que múltiples sistemas de almacenamiento parezcan un único sistema de almacenamiento lógico de forma transparente, pero también existe la posibilidad de que un sistema se sienta como varios sistemas.

Es posible tener múltiples capas de virtualización o mapeado, esto dependerá de la implementación elegida, la cual puede ser limitada por la capacidad de los dispositivos. En los ambientes de almacenaje basado en bloques, se emplean bloques de información y estos son los que se direccionan.

El software de virtualización es responsable por mantener una vista consistente de todo el mapeo de información para el almacén virtualizado. Este mapeo de información es llamada meta-data y es almacenado en tablas de mapeado. Algunas implementaciones no usan tablas de mapeado y emplean algoritmos para calcular la locación de las direcciones.

Tipos de virtualización de almacenamiento

Basado en un anfitrión

Virtualización implementada en un computador anfitrión, en la capa de software que reside sobre el dispositivo de disco intercepta las peticiones de I/O y provee los metadatos buscados y mapea el I/O.

Basado en dispositivos de almacenamiento

Se puede entender como un arreglo de discos que proveen una abstracción lógica a física, como usan esquemas RAID para unir múltiples discos en un solo arreglo. Generalmente estos dispositivos no proveen el beneficio de migración de datos o replicación a través del almacenamiento heterogéneo.

Basado en redes

Almacenamiento virtual opera en un dispositivo basado en redes (normalmente en servidores estándar) y usa iSCSI o FC Fibra channel network para conectarse como una SAN. Esta es la forma que normalmente se implementa la virtualización de almacenamiento. La virtualización de dispositivos en el SAN proporciona la capa de abstracción entre el anfitrión realizando I/O y los controladores del almacén que proveen la capacidad de almacenamiento.

Ejemplos de almacenamiento virtualizado

SANs

Esquema de una SANs

Una SAN (Red de área de almacenamiento) es una red dedicada al almacenamiento que se encuentra conectada a las redes de comunicación de alguna compañia. Esta compuesta por una completa arquitectura que cuenta con:

  • Elementos de almacenamiento de red
  • Una red de alta velocidad de canal de fibra
  • Un equipo de interconexión dedicado

Cabe destacar que una SAN usualmente tiene su propia red de dispositivos de almacenamiento que no suelen ser accesibles a través de la red de área local por otros dispositivos. Además, una red de área de almacenamiento (SANs) tiene la ventaja de poder extenderse de forma casi ilimitada, pudiendo alcanzar cientos y hasta miles de terabytes.

Parallax

Es un sistema de almacenaje distribuido, funciona implementando imágenes de discos virtuales (VDI de virtual disk image) que representan el estado actual del disco duro que permite escritura, los VDI son almacenados en clúster, el sistema va constantemente generando imágenes del sistema en tiempo de ejecución y del estado de la memoria. Las nuevas maquinas virtuales que se generen se componen de las planillas o imágenes ya existentes, por lo que existe una importante cantidad de planillas duplicadas de los VDIs.

implementacion snapshot copy-on-write

El sistema emplea un gestor de block de metadatos por cada maquina virtual , el sistema usa snapshot y copia en escritura(copy-on-write), para poder compartir los bloques. El almacenamiento local en cada maquina fisica es particionado en un cache duradero para hospedad las maquinas virtuales y se emplea un pool de almacenaje distribuido y compartido en forma de cluster para almacenar los registros. Cada disco virtual es distribuido en metadatos como un registro de snapshot y estos se distribuyen de forma de árbol para un eficiente copy-on-write, mapeando los bloques del disco virtual a 64 o 128 bits en el cluster. esta forma permite que los bloques comunes sean compartidos sin que haya exclusión mutua.

Referencias

Herramientas personales
Espacios de nombres
Variantes
Acciones
Navegación
Herramientas