Virtualización con código abierto y su relación con OpenStack: un modelo viable?

Share Embed


Descripción

Virtualización con código abierto y su relación con OpenStack: un modelo viable? Kernel-Based Virtual Machine (KVM) es un hipervisor de virtualización de código abierto, además de ser parte inherente de Linux, lo que le permite actuar como un host de virtualización. KVM hace su camino en un mercado de la virtualización que ya está maduro, con servidores virtuales que constituyen una parte creciente de las implementaciones de servidores lógicos en la actualidad. Los proyectos de virtualización han madurado más allá de la consolidación. En la actualidad se centran en los beneficios de agilidad tales como el abastecimiento (o también llamado aprovisionamiento) más rápido. La virtualización también sirve como la base de la nube (cloud), que ha comenzado a cambiar la visión de TI. El concepto y práctica de cloud (nube) ha sido de ayuda para el código abierto, ya que parte de la nube pública se construye en las capas de código abierto que incluyen el hipervisor, el sistema operativo, la infraestructura-como-un-servicio, software y aplicaciones ‘middleware’. KVM juega un papel basándose en la virtualización de código abierto, tanto en la gestión empresarial y actual de la virtualización, así como en aplicaciones de próxima generación que se ejecuten en nuevas infraestructuras de nube como OpenStack. KVM se basa actualmente en el crecimiento y el éxito de Linux y OpenStack, ambos proyectos de código abierto con un futuro promisorio. KVM ha hecho logros técnicos en los últimos años en el hipervisor básico, pero el éxito de la virtualización de hoy requiere de un enfoque holístico de extremo a extremo. Para que KVM pueda ganar más adhesión debe incorporar: gestión avanzada y una estrecha integración y funcionalidad con el almacenamiento, redes, seguridad. Está obligado a ser una solución completa de virtualización. Situación actual La virtualización de servidores, en el lapso de un poco más de una década, ha crecido hasta convertirse en el modelo de implementación de servidor por defecto para muchas organizaciones. El 80% de las nuevas ventas de servidores son virtualizados (2014) y se prevé que aumentará al 88% en 2017. Los compradores fueron atraídos inicialmente a los beneficios de consolidación surgidos de la virtualización y la flexibilidad para pruebas y desarrollo. Sin embargo, usos adicionales se han desarrollado, y hoy en día la virtualización se utiliza ampliamente por los beneficios que surgen de la agilidad como el

aprovisionamiento más rápido, la alta disponibilidad y la recuperación ante desastres. También es la base que sustenta las iniciativas de nube privada. VMware creó el mercado de la virtualización de servidores x86 y dominó el mercado durante muchos años. Sin embargo, los competidores redujeron la brecha tecnológica y ahora el mercado de la virtualización es más competitivo, con las ofertas de Microsoft y varias implementaciones comerciales de los proyectos de código abierto Xen y KVM. KVM es el más competidor más nuevo en el mercado, después de haber sido incluido en los núcleos Linux en 2007, ha llamado la atención por sus estrechos vínculos con el sistema operativo Linux y, más recientemente, estrechamente unido a las implementaciones de nube OpenStack. Se prevé que el mercado de servidores Linux mostrará un crecimiento en los próximos años, con 5.200.000 millones de nuevos envíos de licencia previstos en 2014 y el aumento a 7.200.000 millones en 2017, lo que conduce a una mayor oportunidad para KVM. De acuerdo con el artículo virtualización de servidores de IDC, los nuevos envíos de KVM son más de 278.000 unidades en total desde 2011. A medida que la virtualización ha madurado, los hipervisores también se han hecho menos un producto independiente y cada vez más parte de una pila (o stack) más grande. Soluciones de virtualización son una parte integral de un sistema operativo o ‘es parte’ de un paquete más grande o "pila" de software en la nube. A medida que más hipervisores orientados a la empresa llegaron al mercado, los ‘multihipervisor’ comenzaron a ser investigados por las organizaciones. En el año 2013 el 16% de los usuarios ya había implementado o tenía previsto desplegar más de un hipervisor y un adicional de 45% estaban abiertos a la idea en el futuro. Los ‘drivers’ para la adopción de un segundo hipervisor incluyen el cumplimiento de las estrategias de aprovisionamiento de múltiples proveedores, reducción de costos, el aumento de la relación tecnológica con proveedores, y la optimización de licencias de software. Sin embargo, los beneficios de un entorno multi-hipervisor tienen que ser equilibrados con el costo y la complejidad de la adición de un segundo entorno, haciendo que la decisión sea compleja y diferente para cada usuario. Las máquinas virtuales que migran (VM) de un hipervisor a otro no es una estrategia generalizada, la mayoría de las implementaciones de segundos hipervisores se utilizarán para nuevas cargas de trabajo.

Al igual que Linux, KVM es multiplataforma, lo que añade flexibilidad y opciones adicionales. KVM ha sido portado tanto a ARM y a IBM Power; y existen documentos técnicos disponibles para plataformas adicionales que incluyen Linux en System z. Hacemos una mención particular respecto a ARM, ya que es tal vez de las menos mencionadas. Un procesador ARM es uno de los microprocesadores de 32 bits RISC (reduced instruction set computing) desarrollados por Advanced RISC Ltd. La arquitectura ARM fue concebida originalmente por Acorn Computers Ltd. en la década de 1980. Desde entonces, se ha convertido en una familia de microprocesadores utilizados en dispositivos electrónicos de consumo tales como s teléfono móvil, reproductores multimedia, calculadora de bolsillo s y PDA s (asistentes digitales personales). Características del procesador ARM incluyen: • Arquitectura tecnológica llamada ‘load/store’. • Un conjunto de instrucciones ortogonal. • Ejecución de instrucciones en un solo ciclo • Un registro de 16x32 bits • Ahorro de energía optimizado. Presentación de KVM Un hipervisor puede considerarse de diversas maneras como un sistema operativo muy especializada (OS) diseñado para ejecutar máquinas virtuales en lugar de aplicaciones arbitrarias. Además de la propia virtualización, el hipervisor realmente se ocupa de las tareas estándar del sistema operativo tales como la gestión de la memoria, procesos de programación, los controladores, gestión de I /O, etc. El módulo KVM implementa dentro de Linux las capacidades esenciales para la virtualización, pero adopta la filosofía de no reinventar lo ya existente, y utiliza las funciones del sistema operativo Linux establecidas y probadas, para las actividades de virtualizar. Al no tener que reescribir las funciones básicas, los desarrolladores pueden centrar sus esfuerzos en la optimización de Linux para los procesos de VM - no replicar las funciones dentro de la pila de código del hipervisor. KVM ha sido una parte principal del núcleo de Linux desde 2007, y con ella vienen determinadas ventajas e implicaciones:

• KVM está integrado y probado con Linux e incluido en casi todas las distribuciones de Linux. • Aunque construido sobre Linux, KVM puede virtualizar Linux y otros huéspedes, por ejemplo, Windows en sistemas x86. • El software de código abierto ofrece diversos modelos de consumo a los usuarios. Algunos tomarán el código fuente abierto en bruto y lo implementarán, lo modificarán y se brindarán soporte ellos mismos. Otros querrán una versión probada y con soporte comercial, y la naturaleza abierta de software de código abierto significa que cualquier fabricante puede ofrecer comercialmente, lo que lleva a los usuarios la posibilidad de abastecerse de múltiples proveedores para reducir su riesgo. • KVM es parte de la comunidad de desarrollo de Linux, por lo que las mejoras a Linux en general benefician a KVM. El software de código abierto puede madurar rápidamente por medio de la comunidad y la contribución de recursos intelectuales. KVM, al ser parte de Linux, puede recurrir a uno de los mayores proyectos de código abierto y ha demostrado madurez. • KVM hereda los drivers y una amplia compatibilidad de hardware de Linux, lo que le permite ejecutar casi cualquier plataforma que ejecute Linux, y no se requiere un esfuerzo individual para producir nuevos controladores específicos para KVM. • KVM reutiliza muchas de las tecnologías Linux ya establecidas, como la gestión de procesos, drivers, gestión de memoria, I/O mejorado y Seguridad Linux (SELinux). SELinux se utiliza para asegurar KVM por ‘circunscribir’ procesos, así que si parte de un sistema o VM se ve comprometido, el problema se aísla y no afecta a todo el sistema.

‘Contenedores’ y VMs (Máquinas Virtuales) El reciente interés en la tecnología de contenedores Linux, tal como Docker ha planteado muchas preguntas sobre cuándo utilizar contenedores y cuándo usar las máquinas virtuales. Docker es una plataforma abierta para los desarrolladores y administradores de sistemas. Usada para la construcción y ejecución de aplicaciones distribuidas. Consta de un Docker Engine, una herramienta portátil, ‘liviana’ para la ejecución y distribución de aplicaciones. Docker Hub, un servicio en la nube para compartir aplicaciones y la automatización de flujos de trabajo. Docker permite que las aplicaciones se ensamblen a partir de componentes y elimina la fricción entre los entornos de desarrollo, control de calidad y producción. Como resultado, puede ejecutar la misma aplicación, sin cambios, en los procesadores portátiles, las máquinas virtuales, y la nube.

Los contenedores son una tecnología de virtualización a nivel de sistema operativo, esencialmente virtualización del sistema operativo. Gran parte de lo que se discute hoy en día es como "contenedores" es más que la tecnología de aislamiento actual, que para Docker es LXC, una parte fundamental del núcleo de Linux al igual que KVM. Gran parte del valor de los contenedores es desde el sistema de gestión, que organiza los contenedores de todo el centro de procesamiento datos y también ‘empaqueta e incorpora’ ítems en el contenedor. Operando a nivel de sistema operativo hace que los contenedores sean eficientes y de alto rendimiento, ya que no tienen que emular un servidor físico completo, como un hipervisor. Pero los contenedores también vienen con un conjunto diferente de características: • Las aplicaciones escritas para un contenedor seguirán atados a un sistema operativo. Por ejemplo, un contenedor de Linux no sería movible a un host Solaris, pero sólo a otro host Linux. • El modelo de aislamiento no es tan fuerte como en las máquinas virtuales, al referirnos a seguridad. Mientras que los contenedores pueden hacer un buen trabajo de aislamiento de los recursos, el aislamiento de seguridad es con un núcleo compartido y por lo tanto puede no ser suficiente para un entorno ‘multitenant’ o para aplicaciones de alta sensibilidad. Las máquinas virtuales y los contenedores se pueden utilizar juntos en este caso para aumentar el aislamiento - por ejemplo, poniendo cada ‘tenant/consumidor’ en un contenedor diferente, y luego la separación de estos contenedores en máquinas virtuales. • La aplicación y uso de los contenedores está en plena evolución. Aunque la mayoría de las aplicaciones de Linux pueden transportarse hoy a contenedores, la pregunta es: para qué cargas de trabajo es mejor un contenedor, comparado con VMs y servidores físicos? Mucho de esto dependerá de las herramientas que se desarrollan para gestionar los contenedores. Recordemos que las máquinas virtuales han tenido muchos años para madurar sus herramientas. Hoy en día, los gestores de contenedores son ‘orientados al y por él desarrollador’, usados sobre todo para las nuevas aplicaciones escritas para un modelo de contenedores - y en la nube. Es poco probable que el mercado vea una migración masiva de VMs al contenedor para aplicaciones virtualizadas ya existente, pero no es muy claro aún cuándo los contenedores competirán(y si llegarán a hacerlo) como una tecnología de virtualización de cargas de trabajo tradicionales. • Los contenedores mejorarán la portabilidad en las distribuciones de Linux (que se mueva una aplicación entre diferentes versiones de Linux y sus distribuciones), pero es probable que no se ocupará de todos los escenarios. Mientras que los contenedores están haciendo un impacto en el mercado, son una herramienta diferente que un hipervisor y, a menudo se pueden usar en combinación con las máquinas virtuales.

Las VM hicieron su impacto como herramienta de la infraestructura, mientras que los contenedores han sido centrados en el desarrollador, a menudo visto más como paquetes, control de versiones, y herramienta de repositorio de código, más que estrictamente una herramienta de virtualización. Estos diferentes casos de uso significan que probablemente contenedores y máquinas virtuales coexistirán en el futuro inmediato como herramientas con diferentes objetivos. OpenStack: la clave del futuro de KVM OpenStack es un proyecto ‘open source’ dirigido a desarrollar software para construir y operar la infraestructura-como-un-servicio de nubes. El proyecto tiene un impulso de la comunidad detrás de él, con la mayoría de los principales proveedores de TI siendo participantes. El proyecto está dirigido por la fundación independiente OpenStack, encargada de promover el desarrollo, la distribución y la adopción de OpenStack. OpenStack se desarrolló de forma modular, con módulos para procesamiento, ‘bloques’ de almacenamiento, objetos de software, la creación de redes definidas por software, autenticación, etc. Más módulos se proponen y desarrollan constantemente, ampliando la funcionalidad de OpenStack. OpenStack en muchos sentidos es un marco que proporciona acceso por medio de APIs a la infraestructura. Sin embargo, para ciertas funciones, OpenStack requiere un backend para conectarse, como es el caso de Nova, la función de cómputo de OpenStack. OpenStack no incluye una funcionalidad o hipervisor de virtualización, lo que requiere un hipervisor ya existente para ser integrado a través de un conductor. Mientras OpenStack tiene controladores para la mayoría de los hipervisores principales, KVM juega un papel especial en OpenStack, siendo el hipervisor más usado para los despliegues de OpenStack. La mayoría del desarrollo de OpenStack y las implementaciones utilizan Linux como el sistema operativo anfitrión para sus controladores de la nube. KVM, al ser parte de Linux, fue una elección natural para actuar como hipervisor. Al ser Linux y KVM código abierto actúan como un ‘stack’ totalmente abierto, que permite el desarrollo, prueba y depuración a través de todo el stack de ‘la nube’. Esto llevó a que KVM esté mejor soportado, más fácilmente implementable, y quien mayor cantidad de funciones en OpenStack. Con KVM jugando un papel relevante en OpenStack, el éxito de OpenStack también significa el éxito para KVM. NTT Com: Implementación de OpenStack

NTT Com, una empresa de comunicaciones líder a nivel mundial con sede en Japón, es una de las primeras organizaciones en adoptar OpenStack, y está basando uno de sus servicios, ofrecer ‘nube pública’ con base en OpenStack y el hipervisor KVM. NTT ha participado activamente con la comunidad OpenStack y KVM desde sus inicios y sigue contribuyendo al desarrollo de ambos proyectos, con énfasis en el caso de uso de ser ‘proveedor de servicios cloud’. Como portador de comunicaciones, uno de los principales beneficios de OpenStack a NTT Com, es la flexibilidad de vincularse a la infraestructura, lo que le permite ser utilizado como un ‘orquestador unificado’ tanto de los recursos informáticos y de redes/comunicaciones. NTT Com utiliza OpenStack para integrar su red definida por software (SDN) potenciada por el servicio VPN existente (Arcstar Uno Universal), que permite a sus usuarios crear centros de procesamiento de datos virtuales que pueden abarcar dos o más ubicaciones físicas. Software

Defined Networking (SDN) es una arquitectura emergente que es dinámica, y adaptable, lo que es ideal para el consumo actual de ancho de banda, y la naturaleza dinámica de las aplicaciones de hoy en día. Esta arquitectura desacopla el control de la red y funciones de reenvío, lo que permite que el control de la red se convierta en programable y la infraestructura subyacente sea ‘abstracta’ para las aplicaciones y servicios de red. El protocolo OpenFlow es un elemento fundamental para la construcción de soluciones SDN.

La combinación de OpenStack y SDN ofrece flexibilidad en el diseño de un centro de procesamiento de datos virtual y su correspondiente red virtual. NTT Com también desarrolló un portal GUI por sus servicios en la nube, que utiliza APIs nativas de OpenStack, permitiendo a los usuarios administrar máquinas virtuales, redes y almacenamiento sin necesidad de conocer las APIs de OpenStack.

Lineamientos esenciales KVM es una tecnología de código abierto que proporciona capacidades de virtualización a Linux. Mientras los usuarios siguen en su camino hacia la virtualización y la nube, KVM ayuda en la oportunidad de aumentar la tasa de adopción. Los usuarios están empezando a adoptar múltiples hipervisores, y el interés en estas implementaciones está creciendo. Sin embargo, el desafío no reside en las capacidades de la propia plataforma de virtualización, sino en la forma de gestionar el costo y la complejidad de múltiples entornos. Claves para el éxito futuro de KVM incluyen: • La mejora continua de la gestión de KVM, centrada principalmente en oVirt. oVirt continúa ganando adherentes y mejora con un plan de trabajo agresivo. Como los hipervisores empiezan a convertir en ‘commodities’, la diferenciación comienza a moverse hacia altas capas de la pila, como la gestión avanzada. oVirt es un administrador de centros de procesamientos de datos virtualizados, que ofrece una gestión de múltiples máquinas virtuales en varios hosts. Usando KVM y libvirt, oVirt se puede instalar en hosts Fedora, CentOS o Red Hat Enterprise, para configurar y administrar el centro de datos virtualizado. • KVM está disponible en la mayoría de las distribuciones de Linux. Acercar usuarios al uso de KVM incluirá llevarlos a Linux. Las capacidades de Linux son muy aplicables a KVM, y se requerirá capacitación y documentación para Linux y KVM para ampliar la base de conocimientos y la disponibilidad de la fuerza laboral de TI. • OVA sigue fomentando el ecosistema KVM, y se suma el trabajo que se ha hecho por sus más de 200 miembros y organizaciones de apoyo. Una medida clave para el éxito del sistema actual es el tamaño y la fuerza de su ecosistema y KVM ha logrado importantes avances en esta área. El impulso continuo del ecosistema será clave para los usuarios de KVM, para obtener mayor valor de KVM y crítico para el futuro del mismo.

OpenStack es uno de los puntos más relevantes para KVM. Como las implementaciones de nubes ganan en adopción, OpenStack es la opción de código abierto y tiene impulso de la comunidad detrás de él. OpenStack traerá KVM a nuevos entornos de la nube, más allá del tradicional mercado de virtualización de la empresa. KVM continúa creciendo en porcentaje del mercado de la virtualización y proyectos innovadores como OpenStack seguirán abriendo más puertas para KVM. La comunidad KVM continúa creciendo y los miembros han hecho contribuciones en diversas áreas para mejorar KVM y las tecnologías relacionadas. A medida que las empresas consideran nuevos hipervisores, tales como KVM y tecnologías en la nube como OpenStack, son signos promisorios de impulso de KVM. Gráfico de integración OpenStack y KVM

Origen: http://cloudenabled.in/openstack-iaas-expert.php

Lihat lebih banyak...

Comentarios

Copyright © 2017 DATOSPDF Inc.