Modelos de servicio de la computación en nube, Parte 1: Infraestructura como un Servicio

Aprenda sobre los conceptos clave de las Infraestructura como un Servicio (IaaS). La IaaS proporciona servicios básicos, como servidores virtuales, almacenamiento de datos y bases de datos dentro de una plataforma para la implementación y ejecución de sus aplicaciones.

En esta serie de tres partes, de ejemplos sencillos y del mundo real sobre computación en nube, ayuda a eliminar la confusión que hay en torno al concepto. Cada artículo de esta serie cubre uno de los tres modelos de servicio: Infraestructura como un Servicio, Plataforma como un Servicio y Software como un Servicio. Después de completar esta serie, la computación en nube será más que un rumor.

Dan Orlando, CEO, Creative RIA

Photo of Dan OrlandoDan Orlando es un reconocido líder en la comunidad de desarrollo empresarial. Como consultor durante largo tiempo, la experticia de Dan en plataformas de tecnología Adobe es solicitado con frecuencia por líderes de la industria y también por publicaciones como IBM developerWorks, Adobe Developer Connection y Amazon Web Services. Dan también puede encontrarse en los blogs con regularidad en DanOrlando.com.



16-01-2012

En este artículo, aprenda sobre la primera de las tres clasificaciones de la nube: Infraestructura como un Servicio (IaaS). Algunos de los conceptos clave incluyen:

  • Cloudbursting
  • Computación multi-tenencia
  • Agrupación de recursos
  • El hypervisor

Acrónimos de uso frecuente

  • API: Interfaz de Programación de Aplicaciones
  • TI: Tecnologías de la Información
  • ROI: Retorno sobre la inversión
  • SLA: Acuerdo de nivel de servicio
  • IU: Interfaz de Usuario

Lo más importante, aprenda sobre las dos facetas principales que hacen que la IaaS sea especial: elasticidad y virtualización.

El valor de la IaaS

Para los negocios, el mayor valor de la IaaS se logra mediante un concepto conocido como cloudbursting—el proceso de descargar tareas hacia la nube durante los periodos en los que se necesita la mayor parte de los recursos computacionales. El potencial para ahorros de capital mediante el cloudbursting es significativo, porque las empresas no necesitarán invertir en servidores adicionales que solo se ejecutan al 70% de su capacidad dos o tres veces por año, descansando el resto del tiempo con el 7-10% de su carga.

No obstante, para que las empresas aprovechen la IaaS en toda su capacidad, los departamentos de TI deben estar en capacidad para construir e implementar el software que maneje la capacidad para reasignar procesos hacia una nube IaaS. Existen cuatro consideraciones importantes en la construcción e implementación de software que pueden administrar tales procesos de reasignación:

  • El desarrollo para IaaS patentadas de un proveedor específico ha comprobado ser un error costoso si el proveedor llegase a salir del negocio.
  • La complejidad del software de reasignación de recursos bien escritos es significativa y generalmente requiere de recursos de desarrollador de primera calidad, que no son baratos. Usted se ahorrará a sí mismo y a su organización bastante tiempo, frustración y gastos imprevistos si calcula un presupuesto con más gastos iniciales para los mejores recursos que pueda encontrar.
  • ¿Que estará usted enviando para que sea procesado en la nube? Enviar datos como identidades personales, información financiera y datos sobre cuidado de la salud, ponen a la organización en riesgo de cumplimiento con las regulaciones de la Ley Sarbanes-Oxley (SOX) de los EE.UU., de la Industria de Tarjetas de Pagos (PCI) o de la Ley de Portabilidad y Responsabilidad de Seguridad Social (HIPAA).
  • Entender los peligros de exportar procesos que sean críticos para el funcionamiento diario de los negocios. Una buena idea es iniciar dibujando una tabla y poner en ella los procesos que involucran datos críticos de cumplimiento en una columna, tareas críticas de negocios en la segunda columna y tareas no-críticas en la tercera. Luego, planifique para hacer que el software descargue únicamente los elementos de la tercera columna para su primera iteración.

Además, las organizaciones necesitan ser cuidadosas en cuanto al estado actual del mercado de la computación en nube en términos de libertad de datos con los proveedores. Tener máquinas virtuales (VMs) que puedan moverse hacia la nube desde centros de datos y entre nubes de proveedores puede ser un activo para los negocios, pero hacer esto requiere que los proveedores soporten un formato de archivo estandarizado, al cual han estado renuentes.

La realidad de la situación es que actualmente no se han establecido especificaciones abiertamente ni bajo la autoridad de ningún cuerpo de estándares. En otras palabras, actualmente no hay un formato verdaderamente estandarizado, lo cual como máximo complica las cosas dado que no hay garantía de que el formato alrededor del cual usted construyó será soportado por alguien más con el paso del tiempo. Vale la pena anotar que, no obstante, con frecuencia es posible portar una aplicación virtual hacia otro formato, siempre y cuando el nuevo formato sea abierto o que usted tenga acceso a él. Otro dato prometedor son los grandes avances que se han efectuado recientemente para soportar el Open Virtualization Format (OVF), que es un candidato prometedor para convertirse en un estándar. Otro candidato prometedor es el formato Virtual Machine Disk (VMDK). El VMDK originalmente fue un formato patentado por VMware, pero ahora que la especificación está abierta, es soportada por diversos terceros.


Infraestructura como un activo

Para ilustrar la evolución de la computación en nube, considere cómo la industria de los automóviles ha evolucionado durante el curso de las últimas cinco décadas. La ventaja competitiva de los fabricantes de autos fue ganada con mayor frecuencia por la cantidad de potencia y torque puros que se podían exprimir del automóvil, hasta la década de los años 1960 y 1970. Sin embargo, durante los años 1980 este paradigma se mostró desfavorable para el mercado y el ambiente, lo cual forzó hacia un cambio de paradigma de la infraestructura como un activo, hacia la infraestructura como un Servicio.

De manera similar, la gran mayoría de las compañías exitosas durante los últimos 50 años han gastado una gran cantidad de tiempo y recursos preciosos construyendo infraestructuras con la meta de lograr ventajas competitivas al crear una red más grande, rápida y fuerte que la de sus competidores. El paradigma de la "infraestructura como un activo" en las TI comparte varias de las mismas (o similares) ineficiencias y características desfavorables que tenían los automóviles musculosos de las décadas de 1960 y 1970. Con respecto a la computación empresarial, estas ineficiencias incluyen:

  • Grandes extensiones de potencia y capacidad computacional sin utilizar que acarrean costos asociados con la gran cantidad de espacio consumido por el hardware en centros de datos grandes y costosos.
  • Costosas necesidades de mano de obra, incluyendo supervisión las 24 horas por administradores de red ubicados en los centros de datos donde se tienen los activos de infraestructura (servidores, enrutadores, conmutadores, y demás).
  • Es una gran barrera para la iniciativa de la Computación Verde como resultado del alto nivel de consumo de energía despilfarrada.

Para ayudarle a entender las tres clasificaciones de la computación en nube, he creado una matriz de conceptos cruzados para su referencia (vea la Tabla 1). Un paradigma es un modelo al cual se ajustan la mayoría de usuarios. Como mencioné hace un momento, la IaaS marca el cambio del paradigma de la infraestructura como un activo hacia el de la Infraestructura como un Servicio. Las otras dos clasificaciones de la computación en nube que se muestran en laTabla 1 también marcan un cambio de paradigma. En la Plataforma como un Servicio (PaaS), el cambio es desde el paradigma de la plataforma como un activo, donde las licencias se compran en cantidades masivas. Lo mismo se puede decir para el Software como un Servicio (SaaS), donde el cambio de paradigma es desde el software como activos de la organización en la forma de licencias, a software que se suministra como un servicio. Usted conocerá más sobre la PaaS y el SaaS en las partes 2 y 3 de esta serie.

Tabla 1. Matriz de conceptos cruzados para las tres clasificaciones de la computación en nube
Cambio de paradigmaCaracterísticasTérminos claveVentajasDesventajas y riesgosCuando no usarla
IaaSInfraestructura como un activoNormalmente independiente de la plataforma; los costos de la infraestructura se comparten y por lo tanto se reducen; SLAs; pago por uso; auto-escalamiento Computación en cuadrícula, computación de herramientas, instancia de computación, hypervisor, cloudbursting, computación multi-tenencia, agrupación de recursos Evita los gastos de capital en hardware y recursos humanos; riesgo de ROI reducido; bajas barreras a la entrada; escalamiento optimizado y automatizado La eficiencia y productividad de los negocios dependen ampliamente de las capacidades de proveedor; costo a largo plazo potencialmente mayor; la centralización requiere nuevas/diferentes medidas de seguridad Cuando el presupuesto de capital es mayor que el presupuesto operacional
PaaSCompra de licenciasConsume infraestructura de nube; se encarga de métodos ágiles para gestión de proyectosPila de soluciónImplementación de versión optimizadaLa centralización requiere nuevas/diferentes medidas de seguridadN/A
SaaSSoftware como un activo (negocios y consumidor)SLAs; IU potenciada por aplicaciones de cliente ligero; componentes de nube; comunicación vía APIs; sin estado; acople ligero; modular; interoperabilidad semántica Cliente ligero; aplicaciones de cliente-servidorEvita los gastos de capital en software y recursos de desarrollo, riesgo de ROI reducido, actualizaciones optimizadas e iterativas La centralización de datos requiere nuevas/diferentes medidas de seguridadN/A

Facetas principales de las IaaS

Más que imaginar a Internet como una sola nube gigante, es tal vez más acertado imaginarle como un sistema de muchas nubes, como una tormenta. Con esta metáfora, se puede afirmar de forma lógica que el relámpago es el sistema climático equivalente a la comunicación entre nubes. Esta metáfora es quizás más acertada en el sentido en que las nubes interactúan sistemáticamente entre sí para crear un solo resultado: Internet.

Es poco probable que Internet vaya a estar compuesta por una sola nube—por lo menos en el futuro cercano—debido a la falta de estándares en la computación en nube y a los intentos obvios de algunas compañías para capitalizar a largo plazo mediante cláusulas de permanencia de los proveedores. Sin embargo, la computación en nube no habría avanzado hasta donde está actualmente si no hubiera sido por la innovación que hay en el espíritu del capitalismo. Tal vez algún día Internet realmente sea una sola nube interconectada en la que las VM se puedan transferir sin esfuerzo hacia "la nube" sin preocupación por los formatos de archivos, y clústeres interconectados de VMs podrán administrarse a lo largo de proveedores de servicios, todo mediante una sola interfaz. Pero ese día todavía está lejos. Mientras tanto, hablaremos de Internet como una formación de muchas nubes. (Irónicamente, estoy usando la nube Apple MobileMe para guardar este artículo, así que puedo trabajar en él mediante diferentes dispositivos).

Conozca la infraestructura elástica

La elasticidad es la primera faceta crítica de la IaaS. Para ilustrar el concepto de elasticidad, voy a pedirle que utilice su imaginación por un momento. Pretenda que las nubes están hechas de clústeres de malvaviscos pegados entre sí, de manera que las personas se pueden sentar en ellas y montarlas. Cada nube de malvavisco puede soportar cierto número de personas, dependiendo del número de clústeres de malvavisco que conformen la nube y de cuántos malvaviscos haya en esos clústeres. Cuando suben más personas a la nube de malvavisco, usted puede expandir los clústeres de malvavisco pegándoles más malvaviscos, aumentando el área de la superficie. Como probablemente usted ya habrá deducido, las personas representan las aplicaciones que requieren servicios de cómputo, como los servicios de hospedaje de sitios Web y de ejecución d software. Los clústeres de malvavisco representan clústeres de VMs, donde cada malvavisco es una VM.

Aunque esto puede sonar como algo que esperaría encontrar en un libro del Dr. Seuss, proporciona los medios para comprender un concepto que para muchos es considerado un arte oscuro: la agrupación elástica en clúster. La agrupación en clúster de servidores físicos para formar una nube virtual es un concepto conocido como agrupación de nube en clúster, y si de hecho es un arte oscuro, entonces la maestría se mide en la escalabilidad en el diseño de sistema de un artista.

Observemos un ejemplo. Digamos que usted es investigador estadístico y que trabaja para el gobierno de los EE.UU. El gobierno está corto de personal y a usted se le acaba de asignar la compilación de todos los datos del censo más reciente de los EE.UU. Usted es responsable de formular los datos estadísticos necesarios para que el Congreso pueda tomar decisiones importantes con respecto a la asignación de fondos de recuperación económica y dólares de impuestos, dentro de tres días. Aunque no es necesario decirlo, este es un trabajo bastante importante y usted está un aprieto de tiempo. Además, la cantidad de datos que usted debe procesar es astronómica, ¡usted acaba de notar que al departamento de TI le tomaría tres semanas tener listos los recursos computacionales necesarios para la compilación!

Este es exactamente el tipo de problema que usted puede mitigar fácilmente usando la IaaS. De hecho, usando la IaaS, usted podría completar el análisis de los datos de todo el censo de los EE.UU. en una hora. Usted comenzaría creando una instancia individual de un servidor que contuviera el software de base de datos para ejecutar consultas sobre los datos. Esto se llama una imagen.

Después, usted implementaría la imagen e importaría los datos hacia una base de datos, luego podría duplicar esa imagen tantas veces como fuera necesario y comenzaría a ejecutar sus tareas de procesamiento de datos. Mientras las tareas se están ejecutando, usted podría añadir y remover recursos manual o automáticamente. Por ejemplo, si las tareas de computación no estuvieran ejecutándose lo suficientemente rápido, simplemente añadiría más instancias de máquina duplicadas al clúster.

Ahora que comprende el concepto de elasticidad, observemos la segunda faceta principal de la IaaS: la virtualización.

Virtualización de máquina

Sergey Brin y Larry Page, los fundadores de Google, tuvieron la idea correcta en 1995 cuando pasaron sus tardes escudriñando los basureros detrás del edificio de ciencias de la computación de la Universidad de Stanford en busca de partes de computadora utilizables. Ellos reunieron estas partes de computadora aleatorias basadas en x86 en su dormitorio para añadirlas a la máquina Frankenstein que hospedaba el travieso buscador Web que hizo caer toda la red de Stanford—dos veces.

Actualmente, se estima que Google tiene más de 1 millón de servidores x86 en 12 centros de datos principales y en cerca de 20 centros más pequeños en diferentes continentes. Esa es una nube bastante grande. Dos factores clave en el diseño del sistema les permitieron escalar la bestia del dormitorio en 1995, y todavía rigen para el poco más de un millón de servidores de la red actual de Google. Hasta hoy en día, Google continúa usando partes x86 poco costosas en lugar de los componentes de servidor corporativos mucho más caros que podemos encontrar en muchos centros de datos corporativos. Segundo, la migración tras error, la redundancia, el monitoreo, el almacenamiento en clúster y otras tareas de administración de infraestructura son manejadas por un sistema de virtualización que se ejecuta por debajo del nivel de sistema operativo, en lugar de usar hardware aparte como balanceadores de carga para manejar tales tareas.

La IaaS es fácil de identificar porque normalmente es independiente en cuanto a plataforma. La IaaS consiste en una combinación de recursos de hardware y software. El software IaaS es código de bajo nivel que se ejecuta independientemente de un sistema operativo—llamado un hypervisor—y es responsable de tomar inventario de recursos de hardware y de asignar tales recursos con base en la demanda (vea la Figura 1). A este proceso se le conoce como agrupación de recursos. La agrupación de recursos por parte del hypervisor hace posible la virtualización, y la virtualización hace posible la computación multi-tenencia—un concepto que se refiere a una infraestructura compartida por muchas organizaciones con intereses similares en cuanto a requisitos de seguridad y consideraciones de cumplimiento.

Figura 1. La relación entre las VMs, el hypervisor y la computadora
La relación entre las VMs, el hypervisor y la computadora

Con la IaaS, usted tiene la capacidad para suministrar procesamiento, almacenamiento, redes y otros recursos computacionales donde usted puede implementar y ejecutar arbitrariamente software como sistemas operativos y aplicaciones. La mayoría de los casos para computación en nube siguen la misma estructura fundamental por capas a la que usted ya está acostumbrado: una pila o plataforma de solución de software es implementada sobre una infraestructura de red y las aplicaciones se ejecutan sobre la plataforma. No obstante, la virtualización hace que el paradigma de la nube sea único.


Conclusión

En este artículo usted aprendió sobre muchos de los principios básicos de la computación en nube, así como sobre la anatomía de la IaaS y cómo podría usarse en una situación de la vida real. El segundo artículo de esta serie profundizará en la segunda calificación principal de la computación en nube: la PaaS. Mientras tanto, consulte la sección Recursos para enlaces hacia más información sobre la IaaS.

Recursos

Aprender

Obtener los productos y tecnologías

  • ElasticFox es una extensión Firefox que le permite administrar sus recursos Amazon EC2.
  • Consulte la sección del tema imágenes de producto disponible en el IBM Smart Business Development y haga Pruebas en la Nube IBM.
  • Consulte la sección del tema imágenes de producto disponible en Amazon Elastic Compute Cloud.

Comentar

  • Participe en la comunidad developerWorks. Conéctese con otros usuarios developerWorks mientras explora los blogs, foros, grupos y wikis dirigidos a desarrolladores.

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Cloud computing
ArticleID=784556
ArticleTitle=Modelos de servicio de la computación en nube, Parte 1: Infraestructura como un Servicio
publish-date=01162012