TallerXen

download TallerXen

of 20

Transcript of TallerXen

  • 8/8/2019 TallerXen

    1/20

    Virtualizando con Xen

    Tcnicas y herramientas de virtualizacin enentornos de servidor basadas en Software Libre

    por @canonigos

  • 8/8/2019 TallerXen

    2/20

    Presentacin

    Quin Soy:

    Mi Nombre: Javier Funes Mi Empresa: CANNIGOS (2008) Mi Correo:[email protected] Mi Twitter: @canonigos

    A qu me dedico: Soluciones Informticas basadas en Software Libre Redes Inalmbricas, servidores e infraestructuras de red Desarrollo de apps. con metodologas giles Digenes de arquitecturas exticas (sparc, ppc, arm, pa-risc) Debianita Colaborador activo en listas de correo: Xen-users, Bacula-Users, PHP-ES, ror-

    es, Symfony, rtorrent-l10n, PostFix, Open-iSCSI

  • 8/8/2019 TallerXen

    3/20

    Introduccin

    Qu es la Virtualizacin Xen como proyecto de Software Libre Terminologa base Xen como sistema de Virtualizacin (I,II,III) Caractersticas de Xen Paravirtualizacin (PV) vs Virtualizacin Hardware (HVM) Xen Networking Herramientas de gestin y control consola (I,II) Herramientas de gestin y control X Bibliografa y Enlaces de inters

  • 8/8/2019 TallerXen

    4/20

    Qu es la Virtualizacin ?

    Conjunto de tecnologas que nos permiten simplificar y aprovechar almximo nuestra infraestructura tecnolgica.

    Capacidad de ejecutar aplicaciones, sistemas operativos y dispositivos enun entorno lgico independiente de un sistema o hardware fsico

    especfico. No es un trmino nuevo, la virtualizacin se viene utilizando desde los 60

    en MAINFRAMES de IBM.

    Actualmente funciona en equipos asequibles, desde pequeosdispositivos pasando por porttiles y grandes servidores lo cual ha

    extendido su uso y ayudado a su difusin. Cuando nos referimos a Xen estamos hablando de Virtualizacin a nivel

    servidor y sistema (hardware). Otros tipos (Aplicacin: ByteCode en Java yCLR en .NET ; Escritorio: VNC, RDP, LTSP; Red: TUN, TAP, VRF;Almacenamiento: RAID, LVM, EVMS)

  • 8/8/2019 TallerXen

    5/20

    Ventajas de la Virtualizacin

    Mejor uso del hardware existente.

    Reduccin del gasto en hardware.

    Reduccin de los costes en infraestructura.

    Green Computing

    Administracin simplificada y unificada (centralizacin).

    Mayor uptime y recuperacin de errores ms rpida.

    Aumento de capacidad se realiza ms rpido y transparente.

    Desarrollo simplificado de soluciones tcnicas.

    Instalacin de equipos rpida y simple. Desarrollo y testeo de aplicaciones ms fcilmente.

  • 8/8/2019 TallerXen

    6/20

    Desventajas de la Virtualizacin

    SPOF: Si falla el hardware que utilizamos para virtualizar pueden fallarvarios servicios hospedados en las mquinas virtuales. (A la vez!)

    Diseo previo a la implantacin ms tedioso.

    Congestin o uso excesivo de los recursos de Red.

    Mayor complejidad de las configuraciones de Red.

    Mayor complejidad de las tareas de Administracin en general

    (sistemas distribuidos).

  • 8/8/2019 TallerXen

    7/20

    Xen como proyecto de Software Libre

    Nace en la University of Cambridge Computer Laboratory en 2001 comocontinuacin del proyecto XenoServers liderado por Ian Pratt*.

    Es presentado oficialmente en 2003 en su versin 1.0 junto con undocumento llamado Xen and the Art of Virtualization **.

    En 2005 se libera la versin 2.0.5 y se funda XenSource para dirigir laingente comunidad de desarrolladores y empresas apoyando el proyecto.

    En 2006 se aade soporte para caractersticas vmx-svm de los fabricantesIntel/AMD en su versin 3.0 as como soporte SMP.

    En 2007 CITRIX compra XenSource (500 mill. $) y convierte al equipo de

    desarrollo en parte del XenServer Product Group. Se libera la versin 3.1. En 2008 se da soporte para los siguientes kernels: Linux Kernel 2.6.18,

    Solaris 10, OpenSolaris, FreeBSD 6.3, Net/OpenBSD.

    En la actualidad se trabaja en la rama 4.0.x y 3.4.x

    * http://www.cl.cam.ac.uk/~iap10/** http://www.cl.cam.ac.uk/research/srg/netos/papers/2003-xensosp.pdf

  • 8/8/2019 TallerXen

    8/20

    Terminologa Base

    Hypervisor Monitor de mquina virtual

    dom0 Sistema operativo privilegiado de caracter administrativo paragestin de Xen.

    domU Mquina virtual (PV oHVM) que corre encima del sistema

    Hypervisor Paravirtualizacin o PV Virtualizacin de componentes del sistema

    mediante simplificacin de los mismos.

    Virtualizacin hardware o HVM No requiere modificacin del sistemaoperativo virtualizado. Requiere un procesador compatible con

    instrucciones vmx-svm. Rendimiento menor que PV.

  • 8/8/2019 TallerXen

    9/20

    Xen como sistema de Virtualizacin - I

    Basado en Hypervisor: Se sita entre el hardware y las mquinas virtuales(domUs) dndo una porcin de los recursos fsicos a cada una de ellas.

    Gestiona la prioridad de acceso a los recursos fsicos de la mquina(scheduling, quotas).

    Utiliza un sistema operativo privilegiado de carcter administrativo paragestionar las mquinas virtuales (dom0).

    Necesita de un kernel modificado tanto para dom0 como para domU. Encaso de virtualizacin hardware (hvm) utiliza un emulador (QEMU).

    Provee un conjunto de herramientas para interactuar con las mquinas

    virtuales. Tambin disponemos de una API. Permite una gran portabilidad al tener una interfaz uniforme para el

    hardware.

    Caractersticas avanzadas como PCI-Passtrough y Live Migration

  • 8/8/2019 TallerXen

    10/20

    Xen como sistema de Virtualizacin - II

    xend Hypervisor corre encima del hardware y controla el dom0para gestionar las mquinas virtuales.

    xendomains Mquinas virtuales controladas por el Hypervisorde Xen.

    xenstore Base de datos que contiene informacin de estado paraser consultada por los xendomains.

    xenbus Gestor virtual de dispositivos que trabaja sobre xenstore.

  • 8/8/2019 TallerXen

    11/20

    Xen como sistema de Virtualizacin - III

  • 8/8/2019 TallerXen

    12/20

    Caractersticas clave de Xen*

    Hypervisor Ligero (2Mb aprox.) y Open Source

    Mnimas modificaciones en el cdigo fuente del sistema operativo quehospeda los xendomains y en stos mismos.

    Gran aislamiento entre xendomains (mquinas virtuales), evita riesgos

    de seguridad

    Paravirtualizacin sin apenas penalizacin de rendimiento (2%)

    Soporte HVM y drivers GPLPV** con frecuentes actualizaciones

    Lista de correo de usuarios y desarrolladores muy activa

    Usado por multitud de empresas en La Nube (Amazon, Rackspace,GoGrid.com)

    http://www.xen.org/files/Marketing/WhyXen.pdf** http://www.meadowcourt.org/downloads/

  • 8/8/2019 TallerXen

    13/20

    Paravirtualizacin (PV) vs VirtualizacinHardware (HVM)

    ParaVirtualizacin: Se utiliza cuando los sistemas operativospueden ser modificados y su uso como mquina virtual no implica unadisminucin de rendimiento, permite conectar dispositivos dedicados a lamquina virtual (Tarjeta PCI, Ethernet, etc..). Ejemplo: Linux en la mayora

    de sus distribuciones, FreeBSD, NetBSD, OpenSolaris

    HVM: En caso contrario, si el sistema operativo no puede sermodificado por algn motivo (Licencia, Binarios, etc.) o si queremosutilizar ciertas caractersticas de paso de dispositivos (usb) que slo

    estn disponibles por ahora en HVM. Necesitamos drivers paramejorar rendimiento.

  • 8/8/2019 TallerXen

    14/20

    Xen Networking

    Bridged Networking: La tarjeta de red (vif0) de la mquinavirtual se conecta dirctamente a la red (se puede aprovechar undhcpd interno). Configuracin por defecto. El domU aparece como unequipo ms en la red.

    NAT Networking: Permite que las mquinas virtuales secomuniquen entre s mediante sus interfaces de red virtuales (vifX).Configuracin simple pero sin control de lo que hace cada mquina virtual.Posibles problemas de conectividad.

    Routed Networking:El sistema dom0 (que hospeda las

    mquinas virtuales) tiene que contar con una lnea en su configuracin deenrutamiento por cada mquina virtual. stas se conectan directamente ala red sin problemas de conectividad.Dos redes diferentes, real y virtual.

  • 8/8/2019 TallerXen

    15/20

    Herramientas de gestin y control consola - I

    xm : permite interactuar con el hypervisor, controlarlos recursos y su disponibilidad as como crear y pararxendomains. xm create fichero_de_configuracion.cfg [-c] xm delete nombre_maquina_virtual xm list xm log xm migrate xendomainid destino [-l]

    xm shutdown nombre_maquina_virtual xm help xm top xm subcomando help

  • 8/8/2019 TallerXen

    16/20

    Herramientas de gestin y control consola - II

    Xen-Tools*

    Permite la instalacin y configuracin de mquinasvirtuales basadas en GNU/Linux Debian y

    derivados. Automatiza procesos de creacin

    Utiliza debootstrap para instalar el sistemaoperativo de la mquina virtual. xen-create-image xen-delete-image

    xen-list-images

    http://www.xen-tools.org/software/xen-tools/examples.html

  • 8/8/2019 TallerXen

    17/20

    Herramientas de gestin y control X

    OpenXenManager: Clon de la aplicacinpropietaria de CITRIX XenCenter. Escrita enpython. Multiplataforma. http://www.openxenmanager.com/

    XenWebManager: http://www.openxenmanager.com/

    OpenNebula: http://www.opennebula.org/

    Enomaly:

    http://www.enomaly.com/

    Convirture: http://www.convirture.com/index.php

  • 8/8/2019 TallerXen

    18/20

    Bibliografa y enlaces de inters

    Libros (en):

    Running Xen: A hands-on guide to the Art of Virtualization (ISBN: 978-0-13-234966-3)

    Professional Xen Virtualization (ISBN: 978-0-470-13811-3)

    The Definitive Guide to: Xen Hypervisor (ISBN: 978-0132349710)

    Papers (en):

    Why Xen: http://www.xen.org/files/Marketing/WhyXen.pdf

    New to Xen: http://www.xen.org/files/Marketing/NewtoXenGuide.pdf

    Xen and the Art of Virtualization:http://www.cl.cam.ac.uk/research/srg/netos/papers/2003-xensosp.pdf

    Enlaces: XenFAQ: http://wiki.xensource.com/xenwiki/XenFaq

    XenBLOG: http://blog.xen.org

    XenPAPERS: http://www.xen.org/community/xenpapers.html

  • 8/8/2019 TallerXen

    19/20

    Preguntas

  • 8/8/2019 TallerXen

    20/20

    Creative Commons

    http://creativecommons.org/licenses/by-nc-sa/3.0/es/