Xen Overview/es

From Xen


Icon todo.png Needs Refactor

This should be a Xen Overview doc: maybe there should be an XCP doc too. However it mixes projects and technology. It should explain the basic concepts and maybe trade-offs between different products.


¿Qué es?

Xen es un sistema robusto, seguro, hypervisor baremetal tipo 1 de alto rendimiento o monitor de máquinas virtuales (VMM, por sus siglas en inglés Virtual Machine Monitor). Xen puede ejecutar de forma segura múltiples máquinas virtuales, cada una ejecutando su propio sistema operativo, en un único sistema físico con rendimiento cercano al nativo. Xen es open source, y es el núcleo de virtualización de muchos proveedores.

Xen es usualmente utilizado como una plataforma de virtualización de servidores, que se ejecutan en servidores sin interfaz gráfica y controlados a través de la red. Algunos usuarios avanzados también corren Xen en sus entornos de escritorio.

Xen es un hypervisor baremetal, por lo que es el primer programa que se carga después de la BIOS. Xen a continuación carga un invitado con privilegios especiales, llamado Domain-0.

Para más información vea http://xen.org o el wiki de la Página Principal, Preguntas Frecuentes de Xen o Como's. También puede echar un vistazo a los documentos PDF siguientes (en inglés):

Funcionalidades de Xen

Puede que también quiera ver:

Xen Domain-0

Domain-0 (abreviado como dom0) es una máquina invitada con privilegios especiales (máquina virtual) que el Xen hypervisor siempre carga con el arranque del sistema. Dom0 tiene ciertos privilegios especiales como el poder acceder al hardware físico, así es capaz de cargar y usar los drivers de los dispositivos para acceder a los controladores de disco y de red. El Dom0 tiene además algunas misiones concretas. El Dom0 se usa para poder ejecutar el conjunto de utilidades de administración para poder controlar y administrar el hypervisor Xen, y es el dom0 el que proporciona los discos virtuales y la red a los otros invitados sin privilegios (=domUs que viene del inglés Unpriviledge Domain).

El Dom0 suele ser un Linux normalmente, pero también puede NetBSD o OpenSolaris. El Dom0 necesita tener habilitado un kernel especial propio para los dom0.

El dom0 de Xen puede entenderse como la "consola de servicio" de Xen.

Vea la página de la wiki XenDom0Kernels para más información sobre los kernels que tienen habilitados el dom0 de Linux.

Tipos de virtualización soportadas por Xen

Xen soporta dos tipos de invitados diferentes como invitados. Los invitados de Xen son conocidos como los domUs (dominios sin privilegios, o en inglés unpriviledged domains). Ambos tipos de invitados (PV, HVM) pueden usarse al mismo tiempo en un sólo sistema Xen.

Paravirtualización con Xen (PV)

La Paravirtualización es una técnica de virtualización eficiente y ligera, introducida por Xen, que más tarde la adoptaron otras soluciones de virtualización. La Paravirtualización no necesita una CPU con soporte especial para virtualización. Sin embargo, los invitados paravirtualizados sí que necesitan de un kernel especial que al correr sobre Xen, los invitados son conscientes de que hay presente un hypervisor que los controla y pueden correr eficientemente sin emulación o emulación virtual de hardware. Los kernels PV de los invitados los hay para sistemas operativos Linux, NetBSD, FreeBSD, OpenSolaris y Novell Netware.

Los invitados PV no hacen uso de ningún hardware que emule virtualización, pero la consola gráfica es posible usando el invitado pvfb (framebuffer paravirtualizado, del inglés paravirtual framebuffer). La consola gráfica del invitado PV puede verse con un cliente VNC, o el virt-viewer de RedHat. Hay un servidor VNC separado en el dom0 para cada uno de los invitados PVFB.

Desde la versión del kernel de Linux 2.6.24, se incluye desde kernel.org el soporte a los invitados Xen PV (domU), basados en la estructura pvops, así que cada vez que se lanza una versión nueva del kernel de Linux, se pueden usar automáticamente como kiernel invitado Xen PV sin instalarle parches o hacerle modificaciones.

Vea la página de la wiki XenParavirtOps para más información sobre el soporte de Linux pvops.

Full-virtualization en Xen (HVM)

Invitados con Full-virtualization, también conocidos como HVM (en inglés, Hardware Virtual Machine), necesitan que la CPU incluya soporte para virtualización hardware (Intel VT, AMD-V). Xen usa una versión modificada de Qemu para la full-virtualization, incluyendo la BIOS, la controladora IDE de disco, la tarjeta VGA, la controladora USB, el adaptador de red, etc, para los invitados HVM. El soporte de virtualización en la CPU sirve para aumentar el rendimiento en la emulación. Los invitados que usen la full-virtualization no necesitan ningún kernel especial, así por ejemplo para sistemas operativos como Windows, se usan como invitados Xen HVM. Tenga en cuenta que los invitados que tienen que emular el entorno por completo (full-virtualization) suelen ser más lentos que los invitados paravirtualizados.

Para aumentar el rendimiento en los invitados HVM completamente virtualizados, se han creado unos drivers paravirtualizados para esquivar la virtualización de las órdenes de E/S d ela red y de disco. Los invitados Windows HVM pueden hacer uso de unos drivers GPLPV opensource. Vea la página de la wiki XenLinuxPVonHVMdrivers para más información sobre drivers PV-en-HVM para invitados HVM Linux.

Versiones del Kernel dom0 de Xen kernel vs. Kernel de invitados PV

La versión del kernel del dom0 de Xen puede ser diferente a la versión del kernel del invitado PV/domU. La interfaz/capa entre los dominios es el hypervisor de Xen, no el kernel del dom0, así pues es importante que el hypervisor de Xen soporte el ABI que el kernel del invitado PV esté usando. Las nuevas versiones del hypervisor de Xen mantienen compatibilidades con versiones anteriores (ABI's de los kernel de los invitados PV).

Ejemplos:

  • Xen hypervisor 3.4.1, dom0 kernel Linux 2.6.18.8-xen, PV domU guest kernel upstream vanilla Linux 2.6.31 pv_ops.
  • Xen hypervisor 3.5-unstable, Dom0 kernel Linux 2.6.31 pv_ops, and PV domU guest kernel Debian 2.6.26-2-xen.
  • Xen hypervisor 3.1.2, dom0 kernel RHEL5/CentOS5 kernel-xen-2.6.18-164.el5 and PV domU guest kernel Debian etch 2.6.18-6-xen.

El kernel del hypervisor de Xen <-> dom0 tiene más dependencias que el hypervisor de Xen <-> kernel del invitado PV. Debería hacer coincidir siempre las versiones del kernel del hypervisor de Xen y la del kernel del dom0, que estén más cerca la una de la otra, para que el dom0 pueda usar todas las características que el hypervisor de Xen proporciona.

Mucha gente prefiere correr el kernel invitado PV domU proporcionado por su distribución, para que así sea más fácil hacer un upgrade y tener las actualizaciones de seguridad automáticamente con todas las actualizaciiones proporcionadas, a su vez, por su distribución. Pygrub o el más seguro pvgrup, puede usarse en el dom0 para cargar el kernel invitado desde el sistema de archivos del invitado en /boot. Algunos prefieren proporcionar el kernel del invitado PV desdel dom0, y no dejando que la raiz de la distribución del invitado cambie/actualice.

Xen management

Las herramientas de administración por defecto en Xen, son por consola (CLI, por sus siglas en inglés "Command Line Interface"). Xen es administrado desde la shell del dom0 con el comando "xm" o a través de red herramientas con API's de administración. Xen se suele ver como el motor del núcleo, así las herramientas de administración incluidas son bastante básicas. Mucha gente usa herramientas adicionales de administración (herramientas web o scripts) que se ejeuctan sobre las herramientas estándar de administración de Xen.

Herramientas de administración adcionales

Hay muchas herramientas externas o de terceros para administrar Xen. Redhat ha desarrollado virsh, virt-install y virt-manager para administrar los hypervisores. Estas herramientas vienen incluidas en RHEL5 (Redhat Enterprise Linux 5), CentOS5 y Debian 5.0. Existen también bastantes paneles de administración basados en la web para Xen.

Más información sobre varias herramientas de control para Xen y a través de la web, están disponibles en la página de la wiki XenManagementTools.

APIs de administración de Xen

Véase la página de la wiki XenManagementTools para más información.

Instalando nuevos invitados

Instalando nuevos invitados Paravirtualizados (PV)

Instalando nuevos invitados PV en Xen puede ser un poco delicado porque los invitados PV son ligeros y no tienen cosas como la BIOS para arrancar desde un CD/DVD. También, la mayoría de los instaladores de distribuciones Linux den CD/DVD no contienen los kernels domU PV de Xen habilitados, por lo que no puedes arrancar el instalador del sistema operativo desde una imagen CD/DVD o desde una .ISO.

  • Las distribuciones RHEL 4 y 5, CentOS 4 y 5, y Fedora tienen incluidos los kernels de invitado PV y también contienen imágenes netinstall para que puedena arrancarse como invitados PV en Xen, permitiendo así que los nuevos invitados se puedan instalar fácilmente usando un instalador normal de la distribución.
  • Si está corriendo un RHEL5/CentOS5/Fedora como un dom0, puede usar "virt-install" o la utilidad gráfica "virt-manager" para instalar fácilmente un invitado PV Xen nuevo RHEL/CentOS/Fedora. Tenga en cuenta que ambas herramientas necesitan la consola gráfica para la instalación del invitado (por defecto), así que asegúrese de que tiene ssh X11 forwarding habilitado para mostrar la consola en su escritorio. No necesita ejecutar ningún servidor X gráfico en el servidor/host de Xen, es suficiente con tener instalado el paquete xorg-x11-xauth y habilitado el ssh X11 forwarding.
  • Para más información sobre virt-install y/o virt-manager, vea (en inglés): http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5.4/html/Virtualization_Guide/index.html
  • El instalador de Ubuntu 10.04 ("Lucid Lynx") puede arrancarse como invitado PV de Xen e instalarse fácilmente de esta forma.
  • El instalador del Debian 6.0 ("Squeeze") puede arrancarse como invitado PV de Xen e instalarse fácilmente de esta forma.
  • Debian provides "xen-tools" package that can be used to easily install new Debian/Ubuntu Xen PV guests
  • Debian también proporciona una utilidad "debootstrap" que puede usarse para configurar manualmente un nuevo invitado PV de Xen Debian/Ubuntu. Tenga en cuenta que necesita configurar absolutamente todo manualmente, por lo que este método sólo está recomendado si ya está familiarizado con Debian/Ubuntu y las órdenes internas de Xen.
  • El Debian "debootstrap" también está disponible como paquete RPM para los usuarios que tengan corriendo RHEL/CentOS/Fedora en un dom0. Fedora 12 contiene la versión 1.0.10 del debootstrap. Hay versiones más recientes disponibles (1.0.19 etc) en el servicio de Fedora koji: http://koji.fedoraproject.org/koji/packageinfo?packageID=5292
  • Siempre podrá hacer uso de los invitados PV que ya tengan imágenes listas.

Instalando nuevos invitados HVM

Desde que los invitados Xen HVM emulan por completo el hardware del PC y la BIOS, los instaladores normales de los sistemas operativos pueden arrancarse y empezar desde una imagen cd CD/DVD normal o una .ISO.

Disponibilidad del kernel de invitado de Linux como PV de Xen

En la linea de trabajo de kernel.org de los kernel de Linux, está contenido el soporte a los invitados paravirtualizados de Xen "pv-ops", out-of-the-box, desde Linux 2.6.23, por lo que los últimos kernels de Linux tiene disponible el soprote para el domU PV de Xen. Vea la página de la wiki XenParavirtOps para más información. También hay soporte PV para el domU de Linux en Xen, disponible para Linux. 2.6.18 desde mercurial aquí: http://xenbits.xen.org/linux-2.6.18-xen.hg

Distribuciones Linux distributions que incluyen soporte para el domU de Xen

Para uns lista de distribuciones de Linux que soportan Xen como kernel invitado del domU, vea XenDomUSupport.

Distribuciones Linux que incluyen soporte para el dom0 de Xen

Para una lista de las distribuciones de Linux que soportan el kernel como dom0, vea XenDom0Kernels.

¿Nuevo con Xen? ¿Cual es la mejor forma de probar la virtualización de Xen?

Los siguientes documentos proporcionan un buen comienzo.

Citrix XenServer / XenCenter

Citrix XenServer es una distribución Linux (basada en CentOS 5) que incluye el hypervisor de Xen, y herramientas adicionales casi privativas por completo. La herramienta de administración "xm" para Xen open source, se sustituye por la herramienta "xe" (Xen Enterprise). Hay una versión de XenServer que puede usar gratuitamente (sin pago).

XenCenter es una herramienta de administración centralizada, basada en Windows, que sirve para administrar múltiples hosts XenServer. XenCenter es el equivalente al Virtual Center de VMware. XenCenter no puede usarse para administrar hosts donde corra la versión open source de Xen.

Citrix proporciona soporte comercial para XenServer / XenCenter.

¡Citrix XenServer (no XenCenter) fue liberado como open source en in 11/2009 como Xen Cloud Platform (XCP)! Entre lo que se liberó, está incluido el conjunto de administración XAPI usado en XenServer/XCP.

Xen Cloud Platform (XCP)

Para más información sobre XCP, vea: http://www.xen.org/products/cloudxen.html

Xen Client Initiative (XCI) y Hosted Xen (HXEN)

Para más información sobre XCI, vea: http://www.xen.org/products/xci.html

Para más información sobre HXEN, vea: http://www.xen.org/products/projects.html

Desarrollo de Xen

Si estás interesado en desarrollar para Xen, vaya a la página de XenDevelopmentProjects. Tiene una lista de proyectos que cualquiera puede escoger y ¡trabajar con ellos!

Enlaces para más información sobre Xen

Languages Language: English  • Deutsch • español • français • 日本語 • 한국어 • português do Brasil • русский • 中文