Está en la página 1de 4

Nubes vs.

Grillas: Computacin distribuida


Carlos Fernando Marca Choque
Calle David Toro #1194 Urbanizacin 16 de Febrero Zona Rio Seco +591-77238552

carlitosesminombre@hotmail.com RESUMEN
Quieres conocer ms sobre la computacin en grilla y en nube? En este artculo vamos a aprender a usar la Infraestructura como Servicio para obtener una infraestructura computacional completa utilizando Amazon Elastic Compute Cloud (EC2). Veremos las similitudes, diferencias y temas a considerar en la computacin en grilla y en nube. Exploraremos algunos de los temas de seguridad y opciones para el desarrollo Web en la nube, y veremos cmo podemos ser ecolgicos usando estas dispares para crear una nica gran infraestructura, aprovechando los recursos sin uso. Los servicios de computacin es lo que pagamos por usar servidores compartidos, al igual que pagamos por un servicio pblico (como electricidad, gas, y dems). Con la computacin en grilla podemos proveer recursos de computacin como servicios que pueden ser prendidos y apagados. La computacin en nube da un paso ms brindando recursos bajo demanda. Esto elimina la necesidad de sobreadquisicin de equipos para satisfacer la demanda de millones de usuarios..

2. 2.1 ms

MARCO TERICO La Infraestructura como Servicio y

tecnologas. Figura 1. Cloud Computing (Computacin en las nubes)

Un cliente puede obtener servicios de una infraestructura completa de computadoras a travs de Internet. Este tipo de servicio se llama Infraestructura como Servicio (IaaS - Infraestructure as a Service). Los servicios basados en Internet, como almacenamiento y bases de datos, forman parte de IaaS. Otro tipo de servicios en Internet son la Plataforma como Servicio (PaaS Platform as a Service) y el Software como Servicio (SaaS Software as a Service). PaaS ofrece un desarrollo de aplicacin completo o parcial que los usuarios pueden acceder, mientras que SaaS ofrece aplicaciones completas que almacenan datos propios, como ser un Enterprise Resource Management (ERP) a travs de Internet. Como ejemplo de cmo se usa IaaS en la vida real, consideremos el diario The New York Times que proces varios terabytes de datos archivados usando las cientos de instancias de Amazon EC2, en 36 horas. Si The New York Times no hubiera usado EC2, le hubiera llevado meses procesar estos datos. Las IaaS se dividen en dos tipos de uso: pblico y privado. Amazon EC2 usa un pool de servidores pblicos en la nube de la infraestructura. Una nube de servicios privada utiliza grupos de pooles de servidores pblicos o privados desde un centro de datos corporativo interno. Se pueden usar ambos tipos para desarrollar software dentro del ambiente del centro de datos corporativo, y, con EC2, extender temporalmente los recursos a un bajo costo (por ejemplo, para realizar pruebas). Esta mezcla brinda una forma ms rpida para desarrollar aplicaciones con ciclos de desarrollo y testing ms cortos.

Palabras Clave
Computacin, nube, grilla, internet, servidor, almacenamiento, aplicacin, desarrollo, web, tecnologa, cliente, servicio, plataforma, computadora, sistema, datos, costos, software.

1.

INTRODUCCIN

Quizs alguna vez te preguntaste sobre cul es la diferencia entre la computacin en nube (cloud computing) y la computacin en grilla (grid computing). En este artculo hablaremos sobre los tipos de computacin en nube, y sus similitudes y diferencias entre la computacin en nube y en grilla. Veremos por qu la computacin en nube puede ser ms beneficiosa que la computacin en grilla, que temas hay que considerar en ambos casos, y algunos asuntos de seguridad. Usaremos Amazon Web Services como ejemplo. Para hacer que funcione la computacin en nube necesitamos tres cosas: clientes livianos, computacin en grilla, y servicios de computacin. La computacin en grilla vincula a computadoras

2.2

Amazon Web Services

Con EC2, los clientes crean sus propias Imgenes de Mquinas Amazon (AMI - Amazon Machine Images) que contienen un

sistema operativo, aplicaciones y datos, y controlan cuntas instancias de cada AMI se ejecutan a la vez. El cliente paga por las horas-instancia (y ancho de banda) que usa, agregando recursos en horarios pico y quitndolos cuando no se necesitan ms. EC2, Simple Storage Service (S3) y otros productos de Amazon escalan para entregar servicios a travs de Internet de manera masiva a millones de usuarios. Amazon brinda cinco tipos diferentes de servidores, desde servidores de un solo procesador x86 hasta servidores de ocho procesadores x86_64. No es necesario saber qu servidores se estn usando para crear instancias de servicios. Se pueden ubicar instancias en ubicaciones geogrficas distintas, o en zonas.

hardware asociado para operar y mantenerlos pueden contribuir a grandes costos de adquisicin y gastos operativos.

2.5

Similitudes y diferencias

La computacin en nube y la computacin en grilla son escalables. La escalabilidad se logra a travs del balanceo de carga de instancias de la aplicacin, que se ejecutan de forma separada en distintos sistemas operativos conectados a travs de Servicios Web. La CPU y el ancho de red se reservan y liberan a demanda. La capacidad de almacenamiento del sistema aumenta y disminuye dependiendo del nmero de usuarios, instancias, y la cantidad de datos que se transfieren en un momento dado. Ambos tipos de computacin soportan la multitarea, es decir, muchos clientes pueden realizar distintas tareas, accediendo a una o a mltiples instancias de aplicaciones. Al compartir recursos para un gran pool de usuarios se logra reducir los costos de infraestructura y la capacidad de carga pico. La computacin en nube y en grilla tienen Acuerdos de Niveles de Servicio (SLA) para garantizar la disponibilidad (por ejemplo, 99%). Si el servicio est por debajo del nivel acordado, el consumidor recibir crdito de servicio por recibir tarde los datos. Amazon S3 tiene una interfaz de servicios web para el almacenamiento y recuperacin de datos en una nube. Se puede establecer un limite mximo de objetos que se almacenan en S3. Se pueden almacenar objetos tan pequeos como 1 byte, y tan grandes como 5GB o incluso varios terabytes. S3 utiliza el concepto de "baldes" como contenedores para cada ubicacin de almacenamiento de los objetos. Los datos se almacenan de forma segura usando la misma infraestructura de almacenamiento que utiliza Amazon para su e-commerce web. Si bien el almacenamiento en grilla funciona bien para almacenar muchos datos, no es econmicamente conveniente almacenar objetos tan pequeos como 1 byte. En las grillas de datos, la cantidad de datos distribuidos debe ser grande para maximizar el beneficio.

Figura 2. Logo Amazon Web Services

2.3

Computacin en nube

Con la computacin en nube, las empresas pueden escalar en un instante y de forma masiva la capacidad de procesamiento, sin tener que invertir en infraestructura nueva, entrenar personal, o licenciar software. La computacin en nube es particularmente beneficiosa para pequeas y medianas empresas que desean delegar a terceros la infraestructura de su centro de datos, o para empresas grandes que desean tener picos de capacidad de procesamiento sin incurrir en el mayor costo que implicara construir centros de datos internos ms potentes. En ambos casos, los consumidores de servicios usan lo que necesitan a travs de Internet y pagan slo por lo que utilizaron. Los consumidores de servicios ya no necesitan estar en una PC, usar una aplicacin desde una PC, o comprar una versin especfica que se configura en los smartphones, PDAs, u otros dispositivos. Los consumidores no son dueos de la infraestructura, del software, o de la plataforma en la nube. Tiene menores costos iniciales, menor costo de adquisicin, y menor costo operativo. Al consumidor no le importa cmo se mantienen los servidores de la nube. El consumidor puede acceder a mltiples servidores desde cualquier lugar del planeta, sin saber cules son ni donde estn ubicados.

2.4

Computacin en grilla

La computacin en nube es una evolucin de la computacin en grilla y brinda provisionamiento de recursos a demanda. La computacin en grilla puede o no estar en la nube, dependiendo del tipo de usuarios que la utilicen. Si los usuarios son administradores de sistemas e integradores, les importa cmo se mantiene la nube. Actualizan, instalan y virtualizan servidores y aplicaciones. Si los usuarios son consumidores, no les interesa cmo funciona el sistema. La computacin en grilla requiere del uso de software que pueda dividir y agrupar piezas de un programa como si fuera un gran sistema a travs de miles de computadoras. Un problema con la grilla es que si una pieza del software en un nodo falla, otros piezas del software podran fallar tambin. Esto puede aliviarse si ese componente tiene algn otro componente de respaldo en otro nodo, pero igual pueden surgir problemas si los componentes necesitan de otras piezas de software para lograr realizar uno o ms tareas en la grilla. Las imgenes de sistemas grandes y el

Figura 3. Desde donde acceder a los Servicios Web.

3.

TEMAS A CONSIDERAR

Hay cuatro temas que destacan con la computacin en nube y en grilla: polticas de niveles de uso, temas de interoperabilidad, costos ocultos, y comportamiento inesperado.

3.1

Polticas de niveles de uso

Supongamos que tenemos un programa que hace la validacin de tarjeas de crdito en la nube, y llegamos al pico de ventas para la Navidad. Se detectara una demanda mayor, y se crearan ms

instancias para satisfacer la demanda. A medida que nos alejamos de la Navidad, la demanda bajara y se liberaran instancias de los recursos para usarlos en otra cosa. Para comprobar si este programa funciona, hay que desarrollar, o mejorar e implementar, una poltica de niveles de uso en una prueba piloto antes de mover el programa a un entorno productivo. Hay que verificar si esta poltica detecta incrementos repentinos en la demanda y realmente crea instancias adicionales para satisfacer los pedidos. Tambin hay que comprobar cmo se deben liberar los recursos una vez que queden ociosos.

Otro tema son los potenciales problemas con los datos en la nube. Para proteger los datos sera bueno utilizar claves privadas propias. Verificar con el proveedor cmo es la gestin de claves privadas. Amazon ofrece el certificado si se pide.

5. DESARROLLO DE SOFTWARE EN LA NUBE


Para desarrollar software usando bases de datos, la eleccin ms usada es utilizar pooles de servidores en nube en el centro de datos corporativo interno, y extender los recursos de forma temporal con un proveedor externo para propsito de pruebas. Esto les permite a los lderes de proyecto controlar costos, gestionar la seguridad, y asignar recursos a la nube del proyecto. El lder del proyecto tambin podra asignar recursos de hardware individuales a diferentes tipos de nubes: nubes para desarrollo web, nubes para pruebas, y nubes para produccin. El costo asociado a cada tipo de nube puede variar. El costo por hora de uso en la nube de desarrollo seguramente ser menor al de la nube de produccin, ya que esta ltima necesita de caractersticas adicionales, como ser cumplir con SLAs y seguridad. Los lderes pueden limitar los proyectos en ciertas nubes. Por ejemplo, servicios de porciones de la nube de produccin slo pueden ser usados por la configuracin de produccin. Los servicios de la nube de desarrollo slo pueden ser usados con propsitos de desarrollo. Para optimizar la infraestructura en las distintas etapas de un desarrollo, los gerentes pueden pedir informacin de costos para seguir la utilizacin de cada proyecto y usuario. Si los costos son muy altos, los gerentes pueden utilizar Amazon EC2 para extender de forma temporal los recursos a un muy bajo costo.

3.2

Temas de interoperabilidad

Si una organizacin crea una aplicacin con un proveedor de computacin en nube, podra resultarle difcil cambiar hacia otro proveedor que tiene su API propietaria y formatos distintos para importar y exportar datos. Esto ocasiona problemas de interoperabilidad de aplicaciones entre estos dos proveedores de computacin en nube. Es posible que se necesite reformatear los datos o cambiar la lgica de las aplicaciones. Aunque no existe un API estndar para la computacin en nube o para importar y exportar datos, IBM y Amazon trabajaron juntos para lograr esta interoperabilidad.

3.3

Costos ocultos

La computacin en nube cules son los costos ocultos. Por ejemplo, las empresas podran incurrir en mayores cargos por trfico de red de su proveedor de servicios por el almacenamiento y aplicaciones de bases de datos que contienen terabytes de informacin en la nube. Esto podra superar los costos que tendran por una infraestructura nueva, capacitar personal o licenciar software. En otro caso relacionado con la red, las organizaciones que estn ubicadas lejos de su proveedor de servicios podran sufrir latencia, especialmente en das de mucho trfico.

6. COMPUTACIN EN NUBE ECOLGICA


Un incentivo para usar la computacin en nube es que puede resultar ms ecolgica. Se reduce el nmero de componentes que se necesitan para ejecutar aplicaciones, ya que se agrupan todos en sistemas remotos, los cuales pueden gestionarse ms eficientemente como grupo (costos de energa, enfriamiento, etc.).

3.4

Comportamiento inesperado

Supongamos que la aplicacin de validacin de tarjetas de crdito funciona bien en los centros de datos de la empresa. Es importante probar la aplicacin en la nube con una estudio piloto para comprobar cualquier comportamiento inesperado. Por ejemplo, habra que probar cmo la aplicacin valida la tarjeta, y cmo funciona esta aplicacin bajo alta carga (simulando, por ejemplo, las ventas de Navidad).

7.

CONCLUSIONES

4.

TEMAS DE SEGURIDAD

En febrero de 2008, Amazon S3 y EC2 sufrieron una cada de tres horas. Aunque los SLA ofrecen recuperacin de datos y crdito adicional por este tipo de problemas, los consumidores perdieron oportunidades de venta y los gerentes no pudieron acceder a informacin crtica del negocio durante estas horas. En vez de esperar a que ocurra un problema, los consumidores deberan hacer pruebas de seguridad ellos mismos - es decir, comprobar qu tan capaz es el proveedor de recuperar datos. Esta prueba es muy simple y no necesita de herramientas. Todo lo que se necesita es pedir encontrar datos antiguos, y ver cunto le toma al proveedor recuperarlos. Si les lleva mucho tiempo, hay que preguntarle al proveedor por qu, y cunto crdito recibiramos en los distintos escenarios. Por ltimo, verificar si los checksums coinciden con los datos originales.

Hasta aqu vimos cmo se comparan la computacin en nube y en grilla, y cmo resuelven problemas y qu problemas y riesgos de seguridad existen. La demanda de potenciales consumidores a travs de Internet presenta un desafo para los desarrolladores y los equipos de proyectos. Es bueno tener en vista esta alternativa para enfrentar posibles problemas, que podran resolverse muy fcilmente con estas tcnicas.

8.

BIBLIOGRAFIA

[1] Leonardo de Seta. Nubes vs. Grillas: computacin distribuida. Marzo 6, 2009. Disponible: http://www.dosideas.com/noticias/actualidad/451-nubes-vsgrillas-computacion-distribuida.html Ledo en fecha de 15 de octubre de 2011. [2] Alexis. Qu es el Cloud Computing? Definicin, tendencias y precauciones. Agosto 21, 2009. Disponible: http://www.newwebstar.com/noticias/43880yiquj-es-el-cloud-computing-definiciuntendencias.html Ledo en fecha de 22 de octubre de 2011.

[3] Judith Myerson. Cloud computing versus grid computing. Marzo 3, 2009. Disponible: https://www.ibm.com/developerworks/web/library/wacloudgrid/ Ledo en fecha de 5 de noviembre de 2011.

[4] Hernn. Qu es el Cloud Computing?. Abril 15, 2011. Disponible: http://tusitiogeek.blogspot.com/2011/04/tipsgeeks-iii-que-es-el-cloud.html Ledo en fecha de 12 de noviembre de 2011.

También podría gustarte