IMPLEMENTACION DE UNA PLATAFORMA VDI USANDO SOFTWARE OPEN SOURCE
Seminario de Titulo Para optar un ttulo Profesional de la carrera
Nombre: Daniel Galaz V. Profesor: Marco Bravo V.
Diciembre, 2012
2
INDICE DE CONTENIDOS RESUMEN EJECUTIVO ......................................................................................... 3 I. INTRODUCCIN ................................................................................................. 6 QU ES CLOUD COMPUTING? ............................................................................... 6 CARACTERSTICAS ESENCIALES DE CLOUD COMPUTING ............................................. 7 Auto-servicio por demanda ........................................................................ 7 Acceso ubicuo a la red ............................................................................... 7 Fondo comn de recursos ......................................................................... 7 Rpida elasticidad ...................................................................................... 7 Servicio medido ......................................................................................... 7 Cloud Pblico:. ........................................................................................... 7 Cloud Privada: .......................................................................................... 8 Community Cloud:...................................................................................... 8 Cloud hibrida:. ............................................................................................ 9 Software como servicio (SaaS) ........................................................................ 9 Plataforma como servicio (PaaS) ................................................................... 10 Infraestructura como Servicio (IaaS) .............................................................. 11 Hardware como Servicio (HaaS, Hardware As A Service) ............................. 12 VIRTUALIZACIN PARA CLOUD COMPUTING ............................................................ 13 Virtualizacin como base para Cloud Computing ........................................... 13 Multitenancy ................................................................................................... 14 Importancia de la virtualizacin en servidores ................................................ 14 Virtualizacin de sistemas operativos ............................................................. 15 Emulacin de Hardware ................................................................................. 16 Paravirtualizacin ........................................................................................... 16 HIPERVISOR ......................................................................................................... 17 Tipos ............................................................................................................... 18 Hipervisor tipo 1:. ............................................................................................ 18 Hipervisor tipo 2:. ............................................................................................ 18 1.1 JUSTIFICACIN DEL PROYECTO. ............................................................... 21 QU VAMOS HACER? .................................................................................... 21 CMO SE CREARA?...................................................................................... 21 CUNTO VA COSTAR A LA EMPRESA? ............................................................. 21 INNOVACIN:. ................................................................................................ 21 1.2 OBJETIVOS .................................................................................................... 25 1.2.1 OBJETIVO GENERAL..................................................................................... 25 1.2.2. OBJETIVOS ESPECFICOS ............................................................................ 25
3
INDICE DE FIGURAS Figura 1: Imagen de los Servicios de Cloud Computing. ........................................ 6 Figura 2, Cloud Computing Pblico. ........................................................................ 7 Figura 3, Cloud Computing Privado, es el cual vamos a Utilizar. ............................ 7 Figura 4, Cloud Computing Community. ................................................................. 8 Figura 5, Cloud Computing Hbrido. ........................................................................ 8 Figura 6, Servidor con virtualizacin. .................................................................... 12 Figura 7, Procesos de VDI. ................................................................................... 14 Figura 8, Arquitectura de Paravirtualizacin.......................................................... 16 Figura 9, Hipervisor Tipo Uno. .............................................................................. 17 Figura 10, Hipervisor tipo 2. .................................................................................. 17 Figura 11, Gold Members de OpenStack .............................................................. 22 Figura 12, Corporate Sponsors de OpenStack ..................................................... 22 Figura 13, More Supporters de OpenStack ........................................................... 23
4
INDICE DE TABLAS TABLA1, EJEMPLO SOFTWARE COMO SERVICIO (SAAS). --------------------------------------- 10 Tabla 2, Ejemplo Plataforma como servicio (PaaS). --------------------------------------- 11 Tabla 3, Ejemplo Infraestructura como Servicio (IaaS).----------------------------------- 12 Tabla 4, Caractersticas de los hipervisores en OpenStack. ---------------------------- 20
5
RESUMEN EJECUTIVO Segn un estudio realizado por SONDA, el da 30 de Agosto del 2012, Chile es el pas que lidera la regin en lo que respecta a niveles de adopcin de la tecnologa de Cloud Computing, en el segmento de medianas y grandes empresas, seal Sergio Rademacher, Gerente Regional de Cloud Computing de SONDA. En base a la experiencia y trayectoria de SONDA a nivel latinoamericano, el ejecutivo argument que nuestro pas es el que ms rpidamente ha implementado esta tecnologa en este tipo de empresas, por lo que su crecimiento en los prximos aos ser exponencial. A nivel mundial, se espera que entre el 2013 y 2014 existan ms servidores con tecnologa en Cloud que tradicionales. En Chile esperamos que el mercado se comporte de la misma manera, explic Sergio Rademacher. Al realizar una radiografa del estado del Cloud Computing en la regin, el Gerente Regional de SONDA Cloud Computing entreg su anlisis. Cada pas tiene sus desafos. En Brasil la adopcin se ha visto retrasada debido al alto costo de los enlaces de telecomunicaciones y la cobertura geogrfica de las redes. En Mxico hemos visto un gran inters por soluciones de Software como Servicio, como colaboracin. El Cloud Computing est presente en todos los tamaos de mercado. Por ejemplo tenemos pases como Costa Rica, donde hemos detectado una gran propensin a hacer offshoring de servicios de Cloud Computing, agreg Rademacher. El ejecutivo realiz estas declaraciones en el marco del seminario IDC LA Infraestructure & Cloud Solutions.
FALTA!!! ESTE ES UN REPORTAJE NADA MS Y NO EXPLICA TU PROYECTO, ES UNA FUENTE REFERENCIAL PARA VALIDAR TU IDEA PERO TIENES QUE EXPLICAR PRIMERO EL CONCEPTO DE TU PROYECTO Y LUEGO VALIDARLO A TRAVES DEL REPORTAJE SE ES SOLAMENTE LO QUE QUIERES PONER, EL RESUMEN EJECUTIVO NO RESPONDE A ESTO ES UNA PINCELADA DEL DISCURSO DE TU PROYECTO.
6
I. INTRODUCCIN Hoy en da en busca de la optimizacin de espacios y sobre todo del Hardware en empresas y Data Center. Bajo esta premisa podemos implementar el servicio de Cloud Computing, con esta tecnologa podemos simplificar el Hardware en las empresas, es por esto que este proyecto de titulo se llamara Implementacin de una plataforma VDI usando software Open Source. Para comprender con exactitud Cloud Computing y VDI, lo explicaremos con ms detalle a continuacin. Qu es Cloud Computing? El Cloud Computing, o Computacin en la Nube, nace de los trminos: Cloud y Computing. Cloud, o Nube, es el smbolo que se usa generalmente para representar la Internet. Computing, o Computacin, rene los conceptos de informtica, lgica de coordinacin y almacenamiento. Es as como el Cloud Computing consiste en mover la computacin del simple computador personal o centro de datos convencional hacia Internet. A continuacin, se presenta la definicin de Cloud Computing adoptada por la Mesa Sectorial, la cual fue desarrollada por el Instituto Nacional de Estndares y Tecnologa de los Estados Unidos de Amrica (NIST, 2009): Cloud Computing es un modelo para habilitar el acceso a un conjunto de servicios computacionales (e.g. Redes, servidores, almacenamiento, aplicaciones y servicios) de manera conveniente y por demanda, que pueden ser rpidamente aprovisionados y liberados con un esfuerzo administrativo y una interaccin con el proveedor del servicio mnimo.
7
Figura 1: Imagen de los Servicios de Cloud Computing.
Caractersticas esenciales de Cloud Computing El modelo Cloud Computing est compuesto por cinco caractersticas esenciales (NIST, 2009): Auto-servicio por demanda Los servicios pueden ser solicitados por el usuario o cliente a travs de internet directamente. El usuario paga nicamente por el tiempo de uso del servicio. Acceso ubicuo a la red Los servicios estn desplegados en la nube y son accesibles desde cualquier medio con acceso a la red (internet, Intranet, Extranet). Fondo comn de recursos Los servicios se encuentran en la nube para ser usados por mltiples usuarios bajo un modelo multi-arrendatario en diferentes lugares del mundo. Esto genera una independencia de la ubicacin de los recursos aprovechando la naturaleza del internet (Internet, Intranet o Extranet). Rpida elasticidad La cantidad o calidad de los servicios ofrecidos en la Nube puede aumentar o disminuir rpidamente dependiendo de las necesidades cambiantes de los usuarios. Servicio medido Cada recurso que consume el usuario y que es facturable debe ser medido, no solo para fines de tarificacin sino tambin de control. Este servicio puede ser vendido al mismo usuario o cliente dentro de su contexto y/o ambiente. Segn la entidad, National Institute of Standards and Technology Recognizes Staff Achievements (Nist), esta entidad define varios conceptos de Cloud Computing. Los cuales se detallan a continuacin: Cloud Pblico: En trminos sencillos, los servicios Cloud pblicos se caracterizan por estar disponibles para los clientes de un proveedor de servicios externo a travs de Internet.
8
Figura 2, Cloud Computing Pblico.
Cloud Privada: Una nube privada ofrece muchas de las ventajas de un entorno de Cloud Computing pblica. La diferencia entre una nube privada y una nube publica es que en una nube Cloud Privada, los datos y los procesos se gestionan dentro de la organizacin sin las restricciones de ancho de banda de red, riesgos de seguridad y requisitos legales que el uso de los servicios en una Cloud Publica podra conllevar.
Figura 3, Cloud Computing Privado, este Cloud Computing es el cual vamos a Utilizar.
Community Cloud: Es controlada y utilizada por un grupo de organizaciones que tienen intereses comunes, tales como los requisitos especficos de seguridad o funcin comn. Los miembros de la comunidad comparten el acceso a los datos y aplicaciones en la nube.
9
Figura 4, Cloud Computing Community.
Cloud hibrida: Es una combinacin de Cloud Pblicas y privadas que interactan entre ellas. En este modelo los usuarios suelen externalizar la informacin no crtica para el negocio en la Cloud Publica, manteniendo los servicios esenciales para la empresa y los datos bajo su control.
Figura 5, Cloud Computing Hbrido. Tipos de Servicios Cloud Computing A continuacin se presentan los modelos de servicio de Cloud Computing (NIST, 2009): Software como servicio (SaaS) Este modelo, Software como servicio o SaaS (del ingls, Software as a Service) consiste en un despliegue de software en el cual las aplicaciones y los recursos
10
computacionales se han diseado para ser ofrecidos como servicios de funcionamiento bajo demanda, con estructura de servicios llave en mano. De esta forma se reducen los costes tanto de software como hardware, as como los gastos de mantenimiento y operacin. Las consideraciones de seguridad son controladas por el proveedor del servicio. El suscriptor del servicio nicamente tiene acceso a la edicin de las preferencias y a unos privilegios administrativos limitados. Las compaas que ofrecen SaaS Las siguientes empresas ya estn establecidas en el software On-Demand o negocio SaaS. Estas empresas cobran a sus clientes una cuota de suscripcin y en software de la declaracin de acogida en servidores centrales que se tiene acceso por el usuario final a travs de Internet. Salesforce.com Google NetSuite Taleo Concur Technologies
Tabla 1, Ejemplo Software como servicio (SaaS). Plataforma como servicio (PaaS) Este es el modelo de Plataforma como servicio o PaaS (del ingls, Platform as a Service) en el cual el servicio se entrega como bajo demanda, desplegndose el entorno (hardware y software) necesario para ello. De esta forma, se reducen los costes y la complejidad de la compra, el mantenimiento, el almacenamiento y el control del hardware y el software que componen la plataforma. El suscriptor del servicio tiene control parcial sobre las aplicaciones y la configuracin del entorno ya que la instalacin de los entornos depender de la infraestructura que el proveedor del servicio haya desplegado. La seguridad se comparte entre el proveedor del servicio y el suscriptor.
11
Las compaas que ofrecen Paas Las siguientes empresas son algunas que se han desarrollado plataformas que permiten a los usuarios finales acceder a aplicaciones desde servidores centralizados que utilizan Internet. Al lado de cada empresa es el nombre de su plataforma. Google - Aplicaciones Engine Amazon.com - EC2 Microsoft - Windows Live Terremark Worldwide - The Enterprise Cloud Salesforce.com - Force.com NetSuite Suiteflex Mosso - Mosso, una divisin de Rackspace Metrisoft - Metrisoft SaaS Platform
Tabla 2, Ejemplo Plataforma como servicio (PaaS). Infraestructura como Servicio (IaaS) Es un modelo en el cual la infraestructura bsica de cmputo (servidores, software y equipamiento de red) es gestionada por el proveedor como un servicio bajo demanda, en el cual se pueden crear entornos para desarrollar ejecutar o probar aplicaciones. Se denomina Infraestructura como Servicio o IaaS (del ingls, Infrastructure as a Service). El fin principal de este modelo es evitar la compra de recursos por parte de los suscriptores, ya que el proveedor ofrece estos recursos como objetos virtuales accesibles a travs de un interfaz de servicio. El suscriptor mantiene generalmente la capacidad de decisin del sistema operativo y del entorno que instala. Por lo tanto, la gestin de la seguridad corre principalmente a cargo del suscriptor.
12
Las compaas que ofrecen IaaS A continuacin se presentan las empresas que prestan servicios de infraestructura: Google - Managed Hosting, entorno de desarrollo International Business Machines (IBM) - Managed Hosting SAVVIS - Managed Hosting Terremark Worldwide - Managed Hosting Amazon.com - almacenamiento en la nube
Tabla 3, Ejemplo Infraestructura como Servicio (IaaS). Almacenamiento de datos como servicio (DaaS, Data storage A Service) y Comunicaciones como servicio (CaaS, Communications As A Service) Son dos modelos que trabajan horizontalmente y junto a IaaS. DaaS proporciona la gestin y el mantenimiento completo de los datos manejados por los clientes y CaaS provee el equipamiento de redes y la gestin de aspectos como balanceo de carga. Hardware como Servicio (HaaS, Hardware As A Service) Se trata de centros de datos con todo tipo de mquinas que proporcionan la computacin, el almacenamiento, catlogos, etc. La aplicacin que utilizaremos en nuestro proyecto se llama OpenStack con licencia Open Source (licencia gratuita), esta aplicacin nos permitir virtualizar un sistema operativo especfico del mundo de Microsoft, Linux, etc. Estas imgenes podrn ser invocadas desde un terminal con sus respectivas credenciales (usuario y contrasea), las imgenes contendrn el sistema operativo y un hardware configurado previamente por el administrador de Open Stack.
13
Virtualizacin para Cloud Computing Virtualizacin como base para Cloud Computing Virtualizacin La virtualizacin es una tecnologa de software orientado a ahorrar tiempo, dinero y energa; y a usar de una mejor manera el hardware disponible de la empresa. Bsicamente, la virtualizacin permite transformar hardware en software, mediante la utilizacin de software para transformar o virtualizar los recursos de hardware de un ordenador, para crear una mquina virtual completamente funcional que puede ejecutar su propio sistema operativo y aplicaciones de la misma forma que lo hace un computador real. Virtual Desktop Infrastructure (VDI) es la prctica de alojar un sistema operativo de escritorio dentro de una mquina virtual (VM) que se ejecuta en un servidor alojado, centralizado o remoto. Varias mquinas virtuales comparten recursos de hardware sin interferir entre s de modo que se puede ejecutar simultneamente y de forma segura varios sistemas operativos y aplicaciones en un nico Servidor.
Figura 6, Servidor con virtualizacin. Adems de la virtualizacin de servidores existen otros modelos de virtualizacin: Virtualizacin en la red
Virtualizacin del almacenamiento principal
14
Virtualizacin del almacenamiento secundario La virtualizacin no es una moda, est al alcance de los departamentos de IT desde los aos 60, con los Mainframes de IBM y su sistema operativo VM; sin embargo, hoy asistimos a su eclosin gracias al fuerte descenso del coste total de propiedad (TCO) atribuible a tecnologas como VT de Intel y al software Open Source Xen. Multitenancy Multitenancy es un modelo de arquitectura de software, donde una instancia de una aplicacin sirve a varios clientes o departamentos, reduciendo enormemente los costos, desde una misma estructura de servidores. Dos ventajas de los modelos basados en plataformas multitenant son la colaboracin y la integracin, lo cual es posible gracias a que todos los usuarios corren sus aplicaciones en un espacio y pueden acceder a cualquier aplicacin y conjuntos de datos especficos (Salesforce, 2008). Cloud Computing requiere ser Multitenancy dada su naturaleza intrnseca multiusuario y dadas las necesarias economas de escala en hardware y software que para su adopcin esperan los clientes y los usuarios. Por medio de la virtualizacin se puede lograr la capacidad multi-tenancy, pero no es el nico camino. Existen casos notorios como Salesforce, que con su plataforma force.com realiza PaaS, para que un ISV realice SaaS muy eficientemente y en ella no se utiliza el concepto de mquina virtual de ninguna manera. Multitenancy en su esencia ms pura es bsica para Cloud Computing para hacer interfaz fcil y rpida con las aplicaciones heredadas y no necesariamente logra eficiencias a travs de la virtualizacin (como el caso de force.com). Sin embargo, la virtualizacin ofrece un buen enlace y expedito con las aplicaciones legacy y las capacidades de la computacin tradicional. Importancia de la virtualizacin en servidores La virtualizacin de servidores se convierte en una tecnologa que proporciona a las empresas todas las herramientas que necesitan para mejorar la utilizacin, aprovechamiento y escalabilidad de sus sistemas. Una de las principales caractersticas de la virtualizacin de servidores es la particin de los recursos de TI. Esto ayuda a ahorrar dinero, mejorar tiempos de respuesta y optimizar el uso de los procesadores; Caractersticas imprescindibles para satisfacer las exigencias del entorno actual.
15
Figura 7, Procesos de VDI.
La virtualizacin de servidores tambin ayuda a optimizar el almacenamiento y la manera de utilizar el o los servidores y otros recursos informticos. Los servidores se van a utilizar aprovechando al mximo su capacidad, pues se podrn ejecutar mltiples aplicaciones sin penalizar el rendimiento, minimizando tiempo de inactividad y maximizando su productividad. En conclusin, las soluciones de virtualizacin de servidores permiten satisfacer las necesidades de su organizacin, haciendo un uso ms eficiente de los recursos, facilitando la migracin de aplicaciones, y en definitiva un mejor aprovechamiento de sus servidores. Esta es probablemente el tipo de virtualizacin mas usado en todo el mundo, y es por las ventajas que genera el virtualizar un servidor en ahorro de energa, de espacio y en facilidad de administracin de menos servidores fsicos. Para esto no hay definicin especifica que sea diferente de las antes planteadas, pues virtualizacin de servidores es como su nombre lo indica la virtualizacin de un servidor, y sabemos que servidores son aquellos computadores principales a los que los clientes u otros computadores se conectan para obtener archivos, impresoras o en general manejar todos los recursos de la red. Cules son las clases de virtualizacin para servidores que existe. Virtualizacin de sistemas operativos, emulacin de hardware y para virtualizacin: Virtualizacin de sistemas operativos Este tipo de virtualizacin se da cuando primero tenemos un sistema operativo (SO) base o anfitrin en el cual instalamos un programa de virtualizacin que nos permite instalar a su vez otros sistemas operativos (invitados) que trabajan encima del sistema operativo principal, esto gracias a la capa de virtualizacin puesta por un software como virtual PC o vmware workstation. Los invitados funcionan de forma tal que no se dan cuenta que estn siendo virtualizados sobre otro sistema operativo o anfitrin.
16
Las aplicaciones que trabajan dentro de los invitados lo hacen como si estuviesen funcionando en un computador dedicado para ellos. Esta forma de virtualizar tambin es conocida como virtualizacin en contenedores pues los SO invitados estn contenidos en una especie de caja que le permita trabajar de forma casi independiente, claro todo esto basado en la disponibilidad del SO anfitrin quien por obvias razones debe estar funcionando bien primero para permitir el funcionamiento de los invitados. Esta forma de virtualizar es eficiente e ideal cuando se requieren maquinas virtuales con un mismo sistema operativo, tambin reduce los costos de licencias pues con un solo sistema operativo se pueden montar el anfitrin y todas sus maquinas virtuales. Emulacin de Hardware La emulacin de hardware es la instalacin de software de virtualizacin (Hipervisor) antes de la instalacin de cualquier otro SO, este Hipervisor presenta el hardware del computador a todos los sistemas operativos instalados emulando los recursos que este tiene. El Hipervisor tambin coordina el acceso a los recursos del computador que se da por parte de los sistemas operativos instalados haciendo las veces te carabinero de transito que decide quin va primero y quien tiene que esperar para usar los recursos. Esta forma de virtualizar tiene muchas ventajas, pues las maquinas virtuales instaladas pueden ser completamente movidas de un computador fsico a otro, incluso sin tener que apagarlas, esto claro si se cuenta con el software apropiado como OpenStack. Tambin es ideal cuando se requieren diferentes sistemas operativos corriendo en un solo PC fsico; Linux, Windows, Solaris o cualquier otro sistema operativo. Desafortunadamente no todo con esta forma de virtualizar es perfecto, pues el desempeo puede verse levemente afectado al notarse en algunas ocasiones que los programas corren un poco ms lento a como normalmente corren en sistemas que no son virtuales. Es tambin posible que no todos los accesorios o dispositivos que se instalen al computador fsico sea soportados por el Hipervisor pues este es la capa de software que tiene que manejar los dispositivos y pasar los requerimientos de los sistemas operativos invitados. Paravirtualizacin Esta forma de virtualizar servidores no se genera ninguna emulacin de hardware, por el contrario el Hipervisor coordina el acceso de los sistemas operativos invitados a los recursos del computador fsico, mejor dicho para la virtualizacin no es enteramente virtualizacin como en los otros casos, pues los anfitriones interactan de manera directa con los recursos fsicos del computador como cuando se tiene un computador dedicado. Esta forma de virtualizar es ms bien una forma de compartir los recursos por tiempos cortos o a quien los necesite, dndole procesador o memoria o tarjeta de red al anfitrin que lo pide e intercalando el uso de estos entre los anfitriones. Este sistema tiene varias ventajas, entre ellas la poca carga que le da al procesador al no tener que tener una capa completa de virtualizacin que se encarga de administrar los recursos y virtualizarlos. Otra de las ventajas, es que
17
los sistemas invitados no tienen que limitarse a los accesorios de hardware que sean soportados por el Hipervisor, pues al invitado actuar directamente con la parte fsica es posible manejar todos los accesorios que maneja el sistema operativo montado en el invitado. Este sistema utiliza memoria compartida que puede ser usada por dos programas diferentes de esta forma enva y recibe informacin de los invitados para el Hipervisor de esa forma es que se alcanzan buenos niveles de rendimiento. La desventaja es que para poder hacer esto, el Hipervisor necesita modificar los sistemas operativos que se montan como invitados, es decir toma el cdigo del sistema operativo y le agrega algunas lneas, as es como ya se puede imaginar solo sistemas operativos como Linux o BSD al cualquiera de cdigo abierto pueden ser usados. Windows no es una opcin en este caso, pues Bill Gates jams permitira que alguien manipule su cdigo. La buena noticia es que Intel y AMD estn produciendo procesadores que soportan sistemas operativos sin necesidad de modificarlos as es que Windows sigue estando en la baraja de opciones, claro si se tiene uno de estos procesadores como Intel VT o el AMD-V.
Figura 8, Arquitectura de Paravirtualizacin. Para este proyecto vamos a utilizar la tecnologa Cloud Computing Privada y la Virtualizacin de hardware, pero para que esto funcione debemos explicar lo que hace un Hipervisor. Hipervisor Un hipervisor, tambin llamado un gestor de mquina virtual, es un programa que permite a los sistemas operativos mltiples para compartir una gran cantidad de hardware. Cada sistema operativo parece tener el anfitrin procesador, memoria, y otros recursos de todos a s mismo. Sin embargo, el hipervisor es en realidad el control del procesador central y de recursos, la asignacin de lo que se necesita para cada sistema operativo a su vez y asegurarse de que los sistemas operativos invitados (llamadas mquinas virtuales) no pueden interrumpir el uno al otro.
18
Tipos Los hipervisores pueden clasificarse en dos tipos: Hipervisor tipo 1: Tambin denominado nativo, unhosted o bare metal (sobre el metal desnudo), es software que se ejecuta directamente sobre el hardware, para ofrecer la funcionalidad descrita.
Figura 9, Hipervisor Tipo Uno.
Algunos de los hipervisores tipo 1 ms conocidos son los siguientes: VMware ESXi (gratis), VMware ESX (de pago), Xen (libre), Citrix XenServer (gratis), Microsoft Hyper-V Server (gratis). Hipervisor tipo 2: Tambin denominado hosted, es software que se ejecuta sobre un sistema operativo para ofrecer la funcionalidad descrita.
Figura 10, Hipervisor tipo 2. Algunos de los hipervisores tipo 2 ms utilizados son los siguientes: Oracle: VirtualBox (gratis), VirtualBox OSE (libre), VMware: Workstation (de pago), Server (gratis), Player (gratis), QEMU (libre), Microsoft: Virtual PC, Virtual Server. Los siguientes son los Hipervisores que Soporta OpenStack. OpenStack Compute soporta muchos hipervisores. La mayora de las instalaciones, utilizar un nico hipervisor, sin embargo, como la liberacin de Folsom, es posible utilizar el ComputeFilter y ImagePropertiesFilter para permitir la programacin de hipervisores diferentes dentro de la misma instalacin. Aqu est una lista de los hipervisores compatibles:
19
KVM - basada en el Kernel Virtual Machine. Los formatos de disco virtual que soporta y hereda de QEMU, ya que utiliza una versin modificada de QEMU programa para poner en marcha la mquina virtual. Los formatos soportados incluyen imgenes en bruto, el qcow2 y formatos de VMware. Este hipervisor es el cual elegiremos para nuestro proyecto de openStack
LXC - Linux Containers (a travs de libvirt), se utiliza para ejecutar Linux basados en mquinas virtuales.
QEMU - Emulador rpido, por lo general slo se utiliza para fines de desarrollo.
UML - User Mode Linux, por lo general slo se utiliza para fines de desarrollo.
VMWare ESX / ESXi 4.1 Update 1, se ejecuta VMWare imgenes basadas en Linux y Windows a travs de una conexin con el servidor ESX. Xen - XenServer, Xen Cloud Platform (XCP), se utiliza para ejecutar Linux o mquinas virtuales Windows. Debe instalar el servicio nova-clculo en una mquina virtual para-virtualizado.
PowerVM - La virtualizacin de servidores con IBM PowerVM, se utiliza para ejecutar aplicaciones AIX, IBM i y Linux en la tecnologa IBM POWER.
Hyper-V - La virtualizacin de servidores con Microsoft Hyper-V, se utiliza para ejecutar Windows, Linux, FreeBSD y mquinas virtuales. Ejecuta nova-compute de forma nativa en la plataforma de virtualizacin de Windows. OpenStack, nos entrega la siguiente tabla con las caractersticas de los Hipervisores mencionados con antelacin: Caracterstica XenServer / XCP KVM QEMU LXC ESXi Hyper-V Lanzar Reiniciar Terminar Cambiar el tamao de Rescatar Pausa Un-pausa Suspender Reanudar Inyectar Networking * * * * Inyectar Archivo * * Serial Console VNC consola * * *
20
Conecte Volumen Separe Volumen Migracin en vivo Instantnea iSCSI Equipo de administracin Pass Obtener informacin Invitado Obtener informacin de host Resumen de Integracin Servicio de Control Redes VLAN Redes Flat Grupos de seguridad Reglas del cortafuegos Enrutamiento nova diagnstico Config Drive * Auto configure disco
Tabla 4, Caractersticas de los hipervisores en OpenStack. NOTA: indica apoyo, indica que la funcin no se admite, G indica que la funcin se aadir en Grizzly *, indica que hay una salvedad a la funcionalidad (advertencias deben documentarse!), Y una celda en blanco, generalmente indica que hay ms pruebas es necesaria para hacer un juicio.
21
1.1 Justificacin del Proyecto. Las razones principales que justifican la realizacin de este proyecto son: Qu vamos hacer? Se implementara un servicio de Cloud Computing privado para ser aplicado dentro de una empresa con el fin de concentrar la informacin, aumentar la velocidad y acceso a esta.
Cmo se creara? Se recopilara la necesidad de la empresa, por ejemplo, cuantas estaciones de trabajo necesitan actualmente y cuantas estaciones de trabajo a un corto y largo plazo, con el fin de entregar el servidor que cumpla con este requerimiento.
Cunto va costar a la empresa? El precio depender segn la necesidad de cada empresa. Pero el valor va hacer inferior con seguridad al costo que tiene cada empresa con el hardware y mantencin de los computadores.
Innovacin: Desarrollar una estructura que permita la virtualizacin de distintos servicios y sistemas operativos en el mismo Hardware, con la facilidad de aumentar o disminuir Hardware a la misma mquina virtual segn la necesidad del trabajo a ejecutar. Con este servicio nos enfocaremos a solucionar el problema de las empresas que tienen para manipular su informacin y la necesidad de tener un departamento de informtica el cual est a cargo de la administracin y mantencin de los computadores, con OpenStack pueden disminuir el costo en sueldos ya que no va hacer necesario tener varias personas para administrar el servidor y OpenStack, adems si llegase a fallar un terminal solo se debe cambiar y en ningn caso se
22
perder informacin o la persona encargada tendr que instalar un sistema operativo, sin mencionar el bajo costo que tienen estos terminales. Estoy seguro que este proyecto de OpenStack tendr xito en las empresas ya que todos los sistemas que actualmente conocemos y utilizamos estn conectados directamente a una NUBE, como por ejemplo, twitter, DropBox, el espacio ilimitado que nos ofrece gmail. Adems en Chile esta tecnologa no se est explotando como ya se ha realizado en otras partes del mundo como por ejemplo Estados Unidos y Espaa. Sin mencionar las empresas que estn asociadas a este proyecto OpenStack.
23
Figura 11, Gold Members de OpenStack Figura 12, Corporate Sponsors de OpenStack
24
Figura 13, More Supporters de OpenStack Por lo que podemos ver en las figuras 11, 12 y 13, podemos detectar las grandes marcas de la tecnologa que estn mescladas con OpenStack, esto no significa que al utilizar este software se debe pagar a algunas de estas marcas, al contrario los productos de estas empresas son compatibles con OpenStack, recordemos que OpenStack es licencia gratuita.
25
1.2 Objetivos
Al ejecutar un proyecto de esta envergadura se debe cumplir ciertos objetivos, para as alcanzar la conformidad del cliente. 1.2.1 Objetivo General. El objetivo general es la proposicin de una metodologa para la creacin de un sistema de Cloud Computing utilizando el servicio que nos brinda Open Stack. Las tareas necesarias para el cumplimiento de este trabajo son las siguientes: Levantamiento del requerimiento de la empresa.
Adquisicin del Hardware para la implementacin del servicio de OpenStack.
Construccin de una plataforma de Cloud Computing robusta, utilizando Open Stack.
Incluir una solucin integral de la necesidad de la empresa para las distintas estaciones de trabajo.
Integracin e implementacin del servicio y/o puesta en marcha.
Integridad, disponibilidad y confidencialidad de la informacin.
Implementacin de estndares Internacionales de gestin de seguridad y calidad.
1.2.2. Objetivos Especficos Los objetivos especficos que se han contemplado, al finalizar la etapa de implementacin del proyecto se detallan a continuacin: Revisin de la conectividad de la red.
Recomendaciones, segn fuese necesario segn el punto anterior
Instalacin del o los servidores, segn requerimiento de la empresa
Pruebas de conectividad entre los terminales y el servidor dentro de la plataforma Open Stack.
Implementacin de la seguridad y disponibilidad de la informacin.