SmartOS: Crear una VM


SmartOS ofrece dos posibilidades para virtualizar un SO:

  • OS VM (OS Virtualized Machine) – La virtualización se realiza utilizando zonas. Solo podremos utilizar como SO huésped SmartOS.
  • HVM (Hypervisor Virtualized Machine) – Gracias al port de KVM, SmartOS tiene la capacidad de virtualizar sistemas operativos como Linux, Windows, BSD, etc.

Antes de comenzar, debemos recordar del post anterior que SmartOS puede funcionar como SO anfitrión para administrar máquinas virtuales o como SO huésped de propósito general.

Datasets

SmartOS se basa en un concepto muy simple, utilizar imágenes de máquinas virtuales pre-instaladas. Estas imágenes de VM se  identifican como Datasets. Por tanto, los Datasets o imágenes virtuales, serán los elementos con los que nos tendremos que acostumbrar a trabajar en SmartOS.  Un Dataset está formado por dos componentes:

  • Una imagen del SO que será un snapshot ZFS del SO.
  • Un fichero con la descripción de la máquina virtual.

La imagen puede ser o bien un filesystem ZFS para el caso de que la máquina virtual corresponda con una VM de tipo OS-VM  o bien un volumen ZFS (zvol) para el caso de que se trate de máquinas virtuales del tipo HVM (Hardware Virtual Machine).

Continue reading

Solaris: Memory Leak o ZFS usando cache ARC.

Si estas apuntado a la lista perf-discuss@opensolaris.org, habrás podido ver el revuelo que se ha generado durante esta semana debido a un posible problema de fuga de memoria en el Kernel de Solaris 10, todo ha sido un mal entendido, debido a que ZFS utiliza la cache ARC (Adaptive replacement cache). El este tipo de algoritmo de remplazo de cache mejora al clásico LRU (Least Recently Used), ZFS hace uso de la cache ARC para mejorar el rendimiento en el acceso a los datos de los distintos pools. La implementación de ARC en Solaris utiliza memoria del Kernel, esto puede llevarnos a una confusión, haciendonos creer que se está produciendo una fuga de memoria en el propio Kernel. Continue reading