SlideShare una empresa de Scribd logo
1 de 42
Sistemas multicloud: retos y oportunidades
Estado del arte y perspectivas de futuro
Carlos Canal
Cáceres, Mayo de 2014
Carlos Canal
Grupo GISUM
Universidad de Málaga
e-mail: canal@lcc.uma.es
http://www.lcc.uma.es/~canal
Sistemas multicloud. Mayo de 2014
Cloud Computing
Modelo de computación basado en
• conjunto de recursos compartidos y configurables
– redes, servidores, almacenamiento, servicios
• fácilmente accesibles a través de la red
• acceso ubicuo y bajo demanda
• rápidamente asignados y liberados
– con mínimo esfuerzo e interacción con el proveedor del servicio
(NIST, 2011)
Sistemas multicloud. Mayo de 2014
Orígenes y evolución
1950’s. Mainframes con terminales (remotos)
– time sharing, remote job entry (RJE)
1960’s. “Computation may someday be organized
as a public utility” (McCarthy)
1990’s. Virtual Private Networks (VPN)
– conmutación de redes, equilibrio de carga
2000’s. Virtualización (VirtualBox, VMware)
2000’s. Amazon EC2 (2006)
2010’s. Explosión del fenómeno cloud
Sistemas multicloud. Mayo de 2014
Tipos de clouds
• Cloud privado
– operado por una única organización para uso propio
• Cloud comunitario
– compartido por varias organizaciones con intereses similares
• Cloud público
– ofrecido por un proveedor (cloud vendor) al público en general
• Cloud híbrido
– combinación de dos o más clouds (públicos, privados…)
• Cloud heterogéneo
– formado por diversos tipos de servidores
• Cloud distribuido
– formado por servidores distribuidos geográficamente
Sistemas multicloud. Mayo de 2014
Modelos de servicio
• IaaS. Infrastructure as a Service
• PaaS. Platform as a Service
• SaaS. Software as a Service
• XaaS, *-aaS. Anything as a Service
– STaaS
– DBaS
– CaaS
– NaaS
– Maas
– PeaaS
– …
Sistemas multicloud. Mayo de 2014
Infrastructure as a Service
IaaS ofrece servicios básicos de:
• máquinas virtuales, con distintas configuraciones
• control y equilibrado de carga, autoescalado (hipervisor)
• almacenamiento en disco, bloques u objetos
• direccionamiento IP, firewall
• software básico preinstalalado
en donde el usuario instala y ejecuta sus aplicaciones
Proveedores
– Amazon EC2, Google Compute Engine, Microsoft Azure
– AT&T, HP, Oracle, IBM, …
– CloudStack (Datapipe), OpenStack (RackSpace), …
Sistemas multicloud. Mayo de 2014
Platform as a Service
PaaS ofrece:
• herramientas para crear aplicaciones web
– lenguajes de programación (Java, Python, Ruby, PHP,…)
– bibliotecas
– base de datos (MySQL, MongoDB,…)
– …
que después se ejecutan sobre la propia plataforma
Proveedores
– Google App Engine, Microsoft Azure Websites
– Heroku (Salesforce.com)
– Cloud Foundry (AppFog, Tier3, Pivotal)
Sistemas multicloud. Mayo de 2014
Software as a Service
SaaS ofrece:
• aplicaciones o servicios web
– de propósito general o específicos
– que se ejecutan en la plataforma del proveedor
– destinados a usuarios finales (GUI, navegador web)
– pero también accesibles a través de una API
Servicios
• Google Drive, Office 365, Dropbox
• Youtube, Flickr, Picassa
• Spotify, Grooveshark
• Wikia
• …
Sistemas multicloud. Mayo de 2014
Fortalezas y Oportunidades
• Eficiencia
– optimiza el uso de los recursos disponibles
– reduce costes medioambientales
– reduce el tiempo de llegada al mercado
• Economía de escala
– ofrece soluciones asequibles (pay-as-you-go o suscripción)
– reduce drásticamente la inversión inicial
– ajusta dinámicamente el coste al uso de los recursos
Las tecnologías cloud
– son una alternativa a los centros de datos de empresa
– resultan muy adecuadas para startups
Sistemas multicloud. Mayo de 2014
Debilidades y Amenazas
• Volatilidad
– mercado aún joven e inestable
– cualquier proveedor puede desaparecer a corto o medio plazo
– o cambiar significativamente sus políticas de negocio y facturación
• Heterogeneidad
– oferta de recursos similares de manera heterogénea
• sistemas propietarios; falta de estándares
• disparidad en lenguajes de desarrollo y bibliotecas
• infraestructura tecnológica y servicios ofertados
Las tecnologías cloud
– pueden ser causa de morir de éxito
– presentan serios problemas de vendor lock-in
Sistemas multicloud. Mayo de 2014
Vendor Lock-in
• Dependencia de un cliente respecto a los productos y
servicios ofrecidos por su proveedor
– elevados costes para cambiar de proveedor
– fragmenta el mercado y dificulta la libre competencia
• En sistemas cloud
– falta de estándares y disparidad de sistemas propietarios
• El vendor lock-in dificulta
– portabilidad
– interoperabilidad
– migración
el desarrollo de sistemas multicloud
Sistemas multicloud. Mayo de 2014
Vendor lock-in
• Diferencias en
– mecanismos de acceso (HTTP, REST, SOAP, línea comandos)
– APIs ofrecidas
• IaaS
– VM ofertadas y software preinstalado
– hipervisores (VMware, KVM, Xen, ... )
• PaaS
– lenguajes de programación y bibliotecas disponibles
– bases de datos y otras infraestructuras (Google Cloud DataStore)
• SaaS
– funcionalidad y semántica del servicio
– mecanismos específicos para servicios locales (Azure Service Bus)
– representación de los datos (XML, JSON)
MODELSWARD , Barcelona, February 20, 2013
Vendor Lock-in
Escenario
• Dependencias entre una app
y el proveedor cloud
1. entre componentes cloud y
el resto del sistema
2. entre componentes cloud y
los servicios de la plataforma
subyacente
3. entre componentes cloud
y servicios externos alojados
en clouds distintos
1
2
3
Sistemas multicloud. Mayo de 2014
Sistemas multicloud
• Orientados a la portabilidad, interoperabilidad, y migración
– integran diversas tecnologías para crear un mercado común
– eliminan o mitigan los riesgos asociados al vendor lock-in
Nivel 0. Sistemas monocloud específicos
– diseñados para ejecutarse en un cloud determinado (incl. estándar)
Nivel 1. Sistemas monocloud agnósticos
– portabilidad: la asignación se retrasa a etapas tardías de desarrollo
Nivel 2. Sistemas multicloud de topología estática
– interoperabilidad: formado por artefactos en clouds distintos
Nivel 3. Sistemas multicloud de topología dinámica
– migración: los artefactos pueden moverse de un cloud a otro
– monitorización
Sistemas multicloud. Mayo de 2014
Sistemas multicloud
• Gran cantidad de iniciativas
– falta de estándares
– inestabilidad
– trasladan el lock-in del cloud vendor al multicloud vendor
• Clasificación
– Estandarización
– APIs y middleware
– MDD
• Ámbito
– la mayoría para IaaS
– algunas incursiones en PaaS
Sistemas multicloud. Mayo de 2014
CloudStack
Apache Software Foundation (2013)
– originalmente Cloud.com y Citrix
• creación de clouds IaaS (públicos, privados o híbridos)
– estándar de código abierto
• arquitectura simple, aunque rígida
– 2 VM incluso en la misma máquina física
– Management Server: API RESTful y tb. compatible Amazon WS
– Cloud Infrastructure: hipervisor e infraestructura cloud
– hipervisores: XenServer, Oracle VM, VMware, KVM, vSphere, …
• sin demasiado respaldo industrial
– uso escaso como cloud público (p.ej. Datapipe)
Sistemas multicloud. Mayo de 2014
OpenStack
OpenStack Software Foundation
– originalmente Rackspace y NASA
– numerosos participantes: Red Hat, Oracle, IBM, VMWare, …
• creación de clouds IaaS con gran número de servidores
– estándar de código abierto (licencia Apache 2.0)
– portabilidad entre clouds
• arquitectura más compleja y difícil de instalar
– integración con tecnologías de almacenamiento y virtualización
– hipervisores: Xen, KVM, otros parcialmente
– segura y resistente
• autoescalado, equilibrado de carga, firewall, detección de intrusos
• mayor comunidad de usuarios y perspectivas
Sistemas multicloud. Mayo de 2014
jclouds
Apache Software Foundation
• toolkit y API multicloud IaaS de código abierto
– wrapper que abstrae de particularidades de los clouds
– portabilidad, interoperabilidad, migración dinámica
– interfaz Java; no precisa usar tecnologías cloud y WS (REST, etc.)
– bajo nivel, no hay noción de arquitectura o topología
• ComputeService: gestión de VMs (nodos), instalación de software…
• Blobstore: almacenamiento de datos clave-valor
• Clouds soportados
– +30: Google, Amazon EC2, Azure , HP, OpenStack, CloudStack, …
– amplia comunidad de usuarios
Sistemas multicloud. Mayo de 2014
OCCI
Open Cloud Computing Interface
Open Grid Forum (OGF, 2011)
– inicialmente Sun Microsystems, RabbitMQ y UCM
– +250 miembros: Rackspace, Oracle, OpenNebula, …
• especificación de API estándar para IaaS
– código abierto
– RESTful, HTTP
– integración, portabilidad e interoperabilidad multicloud
– despliegue, autoescalado, monitorización, …
• implementaciones para:
– Amazon EC2, CloudStack, OpenStack, jclouds, …
• iniciativa más bien académica
– no ha despertado el interés de los grandes proveedores
Sistemas multicloud. Mayo de 2014
Cloud Foundry Core
Cloud Foundry Foundation
– originalmente desarrollado por VMware
– CloudFoundry.com (Pivotal), CenturyLink (AppFog), Tier 3, …
• cloud PaaS virtual para el desarrollo de aplicaciones web
– estándar de código abierto (licencia Apache 2.0)
– precisa de middleware para la ejecución sobre otros clouds
• Amazon WS, Microsoft Azure, HP,…
– lenguajes: Java, Python …
– frameworks: Spring, Django, …
– bases de datos: MySQL, Postgres, MongoDB, …
• el middleware sobrecarga la ejecución (y el coste)
– se despliega "la planta con la maceta"
Sistemas multicloud. Mayo de 2014
Brooklyn
Apache Software Foundation
– originalmente desarrollado por CloudSoft
– precursor de CAMP
• biblioteca Java para aplicaciones distribuidas multicloud
– construido sobre jclouds
– portabilidad, interoperabilidad, migración
– despliegue, monitorización y adaptación dinámica
– cierto nivel de descripción arquitectónica y topológica
• panel de control
– interfaz gráfica, de comandos y REST
– almacenamiento de credenciales
– se elige proveedor(es) y se despliega con un solo clic
Sistemas multicloud. Mayo de 2014
Brooklyn: Conceptos
• Entidad
– componente de una aplicación (WAR, JBox, BD, cluster,…)
– atributos de configuración (localización, memoria, usr/pwd,…)
– sensores: auditan la entidad (latencia, CPU,…) y generan eventos
– efectores: actúan sobre la entidad (arranque, apagado,…)
• Política (regla de adaptación)
– se suscribe a sensores y actúa sobre los efectores
– pueden arrancarse y apagarse
– Enricher: genera eventos de alto nivel a partir de otros
• Aplicación
– contenedor jerárquico de entidades
– no hay representación explícita de conexiones
– define despliegue y políticas
Sistemas multicloud. Mayo de 2014
Brooklyn: Arquitectura
Sistemas multicloud. Mayo de 2014
TOSCA
Topology & Orchestration Specification for Cloud Apps
Estándar OASIS (2013)
– comité de +70 miembros: IBM, Red Hat, CISCO, CapGemini,…
• especificación agnóstica de apps. (mono-)cloud complejas
– portabilidad (redefiniendo operaciones)
– arquitectura, topología, nodos (artefactos) y relaciones
– operaciones para despliegue, escalado y apagado de artefactos
– archivo CSAR (comprimido, XML)
– gran complejidad e interdependencias en el CSAR
– Winery: editor gráfico que ayuda a crear el CSAR
• Management Plan
– workflow: BPMN, BPEL,…
– describe el comportamiento operacional
– creación de VMs, asignación de artefactos…
Sistemas multicloud. Mayo de 2014
TOSCA
Conceptos
• Service Template
– describe arquitectura de la aplicación cloud
– tipos, topología y planes
• Types
– interfaces, propiedades,
capacidades y
requisitos
• Topology Template
– estructura
(nodos y relaciones)
• Planes
– comportamiento
– llama a operaciones de los nodos
Sistemas multicloud. Mayo de 2014
TOSCA
Management Plans
Sistemas multicloud. Mayo de 2014
OpenTOSCA
Open Source Runtime Environment for TOSCA
Universidad de Stuttgart
– actualmente en desarrollo (v1.1, cierta inestabilidad)
– código abierto
• entorno de ejecución TOSCA
– interpreta el archivo CSAR
– admite planes en BPEL y (recientemente) YAML
– realiza las operaciones de despliegue en el cloud elegido
– ejecuta la aplicación como un WS sobre Apache Tomcat
• clouds soportados
– en principio cualquier IaaS
• otras implementaciones basadas en TOSCA
– IBM SmartCloud Orchestrator (anunciada en 2013), …
Sistemas multicloud. Mayo de 2014
Cloud4SOA
Cloud Interoperability Framework for SOA design,
deployment and distributed execution
– EU FP7-ICT (2010-2013). 2,730M€
– ATOS, CERTH, Cyntelix, Telecom Portugal, …
•Framework abierto de interoperabilidad semántica
– portabilidad a nivel PaaS para aplicaciones (mono-)cloud
•Modelo de recursos y servicios
– proporciona información QoS sobre distintos PaaS
•Discovery & matchmaking
– ayuda el proceso de decisión para el despliegue
•Repositorio
– define adaptadores para conseguir portabilidad cloud
Cloud4SOA
Sistemas multicloud. Mayo de 2014
Cloud4SOA
Arquitectura
Sistemas multicloud. Mayo de 2014
Sistemas multicloud. Mayo de 2014
MODAClouds
Model-Driven Approach for Design and Execution
of Applications on Multiple Clouds
– EU FP7-ICT (2012-2015)
– ATOS, Polimi, SINTEF, Imperial College London, Siemens, …
•Entorno de desarrollo (IDE) y ejecución (mono-)cloud
– generación semi-automática de código
– portabilidad
– despliegue cloud agnóstico garantizando QoS
•Entorno de monitorización y auto-adaptación
– data collectors: IaaS, PaaS, SaaS
– data analysers: determinístico, estadístico (predicciones)
– C-SPARQL (consultas sobre flujos de datos RDF)
Sistemas multicloud. Mayo de 2014
MODAClouds
Arquitectura
Sistemas multicloud. Mayo de 2014
MODAClouds
Monitorización
Sistemas multicloud. Mayo de 2014
CAMP
Cloud Application Management for Platforms
Estándar OASIS
– comité de +20 miembros: Oracle, Red Hat, Rackspace, Cloudsoft,…
– en desarrollo, aun muy inestable
– basado en REST
• Definición conceptual de recursos e interfaces para:
– construir, administrar, ejecutar, parchear y monitorizar aplicaciones
– portabilidad entre plataformas PaaS
– despliegue monocloud
– fomentar el desarrollo de herramientas
Recursos
• plataformas, ensamblados,
componentes, sensores,
planes, servicios, relaciones...
• identificados mediante URI
• accedidos con HTTP y JSON
Self Service API PaaS
• acceso y gestión de recursos
• no realiza la implementación
– se deja al proveedor PaaS
Sistemas multicloud. Mayo de 2014
CAMP
Self Service API PaaS
Sistemas multicloud. Mayo de 2014
CAMP
Planes y despliegue
Plan
• archivo YAML con metadatos que describe
– capacidades de una aplicación
– artefactos que la forman
– servicios para usar los artefactos
– relaciones entre artefactos y servicios
Platform Deployment Package (PDP)
• archivo (zip, tar…) que contiene
– plan
– artefactos
– certificados y credenciales
Sistemas multicloud. Mayo de 2014
Seaclouds
Seamless adaptive multi-cloud management of
service-based applications
– EU FP7-ICT (2013-2016). 2,190M€
– ATOS, UMA, UNIPI, Polimi, CloudSoft, Nuro Games
•Framework y tools para aplicaciones multicloud complejas
– modelado (arquitectura y requisitos QoS)
– planificación y despliegue (asignación de artefactos a clouds)
– monitorización y reconfiguración runtime para asegurar QoS
•Agility after Deployment
•promoción de estándares y tecnologías ya existentes
– TOSCA, MODAClouds, Brooklyn, jclouds
Sistemas multicloud. Mayo de 2014
Seaclouds
Arquitectura
Sistemas multicloud. Mayo de 2014
Comparativa
Reflexiones
Estandarización
Iniciativas
– CloudStack, OpenStack, OVF, OCCI, OGF, TOSCA, CAMP,…
• Fortalezas y oportunidades
– una interfaz común para todos los proveedores
– no se produce vendor lock-in
– permiten portabilidad e interoperabilidad
• Debilidades y amenazas
– poco impacto y/o estado preliminar de desarrollo
– los grandes proveedores no están interesados en la
estandarización
– no serán una solución a medio y corto plazo
– pueden consolidarse varios estándares
Sistemas multicloud. Mayo de 2014
Reflexiones
Middleware y APIs
Iniciativas
– CloudFoundry, OpenTosca, Clod4SOA, SOCCA, IBM AltoCumulus,
MODAClouds, SeaClouds, …
– OCCI, jclouds, Brooklyn, mOSAIC, …
• Fortalezas y oportunidades
– aíslan la aplicación de la plataforma y servicios subyacentes
– evitan o mitigan la mayoría de los inconvenientes del vendor lock-in
– abordan monitorización y migración
– soluciones efectivas y actualmente disponibles
• Debilidades y amenazas
– el efecto lock-in se desplaza del proveedor al API o middleware
– pueden comprometer eficiencia y coste (en particular middlewares)
Sistemas multicloud. Mayo de 2014
Sistemas multicloud. Mayo de 2014
Agradecimientos
• Grupo GISUM – Scenic
http://www.gisum.uma.es
Ernesto, Paco, Javi, Jose, Adrián, Samuel, Miguel, Antonio,…
• Seaclouds EU FP7-ICT Project
http://www.seaclouds-project.eu
• Slideshare.net
http:www.slideshare.net
• Wikia
http://multicloud.wikia.com
¡Gracias por vuestra atención!

Más contenido relacionado

Destacado

OpenStack: Retos y oportunidades- OpenExpo Day 2015
OpenStack: Retos y oportunidades- OpenExpo Day 2015OpenStack: Retos y oportunidades- OpenExpo Day 2015
OpenStack: Retos y oportunidades- OpenExpo Day 2015OpenExpoES
 
Jt2013 Exprimiendo la Infraestructura TIC con OpenNebula
Jt2013 Exprimiendo la Infraestructura TIC con OpenNebulaJt2013 Exprimiendo la Infraestructura TIC con OpenNebula
Jt2013 Exprimiendo la Infraestructura TIC con OpenNebulaJordi Guijarro
 
Novedades en la release Juno de OpenStack
Novedades en la release Juno de OpenStackNovedades en la release Juno de OpenStack
Novedades en la release Juno de OpenStackNimbus Concept
 
Aplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasAplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasJavier García Puga
 
Pasos para instalar un nodo fiware lab
Pasos para instalar un nodo fiware labPasos para instalar un nodo fiware lab
Pasos para instalar un nodo fiware labFernando Lopez Aguilar
 
meaning and scope of political science (1)
meaning and scope of political science (1)meaning and scope of political science (1)
meaning and scope of political science (1)Jaiveer Singh Suin
 

Destacado (8)

OpenStack: Retos y oportunidades- OpenExpo Day 2015
OpenStack: Retos y oportunidades- OpenExpo Day 2015OpenStack: Retos y oportunidades- OpenExpo Day 2015
OpenStack: Retos y oportunidades- OpenExpo Day 2015
 
"Cloudificación" de servicios: retos y oportunidades
"Cloudificación" de servicios: retos y oportunidades"Cloudificación" de servicios: retos y oportunidades
"Cloudificación" de servicios: retos y oportunidades
 
Jt2013 Exprimiendo la Infraestructura TIC con OpenNebula
Jt2013 Exprimiendo la Infraestructura TIC con OpenNebulaJt2013 Exprimiendo la Infraestructura TIC con OpenNebula
Jt2013 Exprimiendo la Infraestructura TIC con OpenNebula
 
Novedades en la release Juno de OpenStack
Novedades en la release Juno de OpenStackNovedades en la release Juno de OpenStack
Novedades en la release Juno de OpenStack
 
Openstack 2013 1
Openstack 2013 1Openstack 2013 1
Openstack 2013 1
 
Aplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasAplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las Cosas
 
Pasos para instalar un nodo fiware lab
Pasos para instalar un nodo fiware labPasos para instalar un nodo fiware lab
Pasos para instalar un nodo fiware lab
 
meaning and scope of political science (1)
meaning and scope of political science (1)meaning and scope of political science (1)
meaning and scope of political science (1)
 

Similar a Multicloud

Presentacion capitulo 3 Arquitectura de las nubes
Presentacion capitulo 3 Arquitectura de las nubes Presentacion capitulo 3 Arquitectura de las nubes
Presentacion capitulo 3 Arquitectura de las nubes GlendalizzethGarcaBe
 
Presentación capitulo 3 Arquitectura de las nubes
Presentación capitulo 3 Arquitectura de las nubes Presentación capitulo 3 Arquitectura de las nubes
Presentación capitulo 3 Arquitectura de las nubes GlendalizzethGarcaBe
 
Introducción a las nubes privadas con OpenStack
Introducción a las nubes privadas con OpenStackIntroducción a las nubes privadas con OpenStack
Introducción a las nubes privadas con OpenStackSoftware Guru
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nubeGersonReyes11
 
Gestión de Recursos Computacionales en el Cloud para Actividades Educativas
Gestión de Recursos Computacionales en el Cloud para Actividades EducativasGestión de Recursos Computacionales en el Cloud para Actividades Educativas
Gestión de Recursos Computacionales en el Cloud para Actividades EducativasGermán Moltó
 
Contenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesContenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesBitnami
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nubeJoseZavala73
 
Presentacion Cloud Computing Navarparty
Presentacion Cloud Computing NavarpartyPresentacion Cloud Computing Navarparty
Presentacion Cloud Computing Navarpartyapocalipsis1234
 
Arquitectura en la nube, modelos de servicio y despliegue
Arquitectura en la nube, modelos de servicio y  despliegueArquitectura en la nube, modelos de servicio y  despliegue
Arquitectura en la nube, modelos de servicio y despliegueBESSYRAMOS5
 
Arquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y despliegueArquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y desplieguekimberlymuoz5
 
Arquitectura de la nube modelos de servicios y despliegue
Arquitectura de la nube modelos de servicios y despliegueArquitectura de la nube modelos de servicios y despliegue
Arquitectura de la nube modelos de servicios y despliegueNombre Apellidos
 
Cloud Native en Azure impartido en Microsoft Madrid y Barcelona
 Cloud Native en Azure impartido en Microsoft Madrid y Barcelona Cloud Native en Azure impartido en Microsoft Madrid y Barcelona
Cloud Native en Azure impartido en Microsoft Madrid y BarcelonaSanti Macias Rodriguez
 

Similar a Multicloud (20)

To Cloud or not To Cloud, That is the question!
To Cloud or not To Cloud, That is the question!To Cloud or not To Cloud, That is the question!
To Cloud or not To Cloud, That is the question!
 
Cloud Computing Amazon
Cloud Computing AmazonCloud Computing Amazon
Cloud Computing Amazon
 
Curso Cloud Computing, Parte 1: Amazon Web Services
Curso Cloud Computing, Parte 1: Amazon Web ServicesCurso Cloud Computing, Parte 1: Amazon Web Services
Curso Cloud Computing, Parte 1: Amazon Web Services
 
Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL) Bases de Datos No Relacionales (NoSQL)
Bases de Datos No Relacionales (NoSQL)
 
Repositorios en la nube
Repositorios en la nubeRepositorios en la nube
Repositorios en la nube
 
Cloud Computing (Open Source)
Cloud Computing (Open Source)Cloud Computing (Open Source)
Cloud Computing (Open Source)
 
Presentacion capitulo 3 Arquitectura de las nubes
Presentacion capitulo 3 Arquitectura de las nubes Presentacion capitulo 3 Arquitectura de las nubes
Presentacion capitulo 3 Arquitectura de las nubes
 
Presentación capitulo 3 Arquitectura de las nubes
Presentación capitulo 3 Arquitectura de las nubes Presentación capitulo 3 Arquitectura de las nubes
Presentación capitulo 3 Arquitectura de las nubes
 
Introducción a las nubes privadas con OpenStack
Introducción a las nubes privadas con OpenStackIntroducción a las nubes privadas con OpenStack
Introducción a las nubes privadas con OpenStack
 
Plataformas Libres del Cloud
Plataformas Libres del CloudPlataformas Libres del Cloud
Plataformas Libres del Cloud
 
Cloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológicaCloud Computing: una perspectiva tecnológica
Cloud Computing: una perspectiva tecnológica
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nube
 
Gestión de Recursos Computacionales en el Cloud para Actividades Educativas
Gestión de Recursos Computacionales en el Cloud para Actividades EducativasGestión de Recursos Computacionales en el Cloud para Actividades Educativas
Gestión de Recursos Computacionales en el Cloud para Actividades Educativas
 
Contenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesContenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de Aplicaciones
 
Arquitectura de la nube
Arquitectura de la nubeArquitectura de la nube
Arquitectura de la nube
 
Presentacion Cloud Computing Navarparty
Presentacion Cloud Computing NavarpartyPresentacion Cloud Computing Navarparty
Presentacion Cloud Computing Navarparty
 
Arquitectura en la nube, modelos de servicio y despliegue
Arquitectura en la nube, modelos de servicio y  despliegueArquitectura en la nube, modelos de servicio y  despliegue
Arquitectura en la nube, modelos de servicio y despliegue
 
Arquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y despliegueArquitectura de la nube modelos de servicio y despliegue
Arquitectura de la nube modelos de servicio y despliegue
 
Arquitectura de la nube modelos de servicios y despliegue
Arquitectura de la nube modelos de servicios y despliegueArquitectura de la nube modelos de servicios y despliegue
Arquitectura de la nube modelos de servicios y despliegue
 
Cloud Native en Azure impartido en Microsoft Madrid y Barcelona
 Cloud Native en Azure impartido en Microsoft Madrid y Barcelona Cloud Native en Azure impartido en Microsoft Madrid y Barcelona
Cloud Native en Azure impartido en Microsoft Madrid y Barcelona
 

Multicloud

  • 1. Sistemas multicloud: retos y oportunidades Estado del arte y perspectivas de futuro Carlos Canal Cáceres, Mayo de 2014 Carlos Canal Grupo GISUM Universidad de Málaga e-mail: canal@lcc.uma.es http://www.lcc.uma.es/~canal
  • 2. Sistemas multicloud. Mayo de 2014 Cloud Computing Modelo de computación basado en • conjunto de recursos compartidos y configurables – redes, servidores, almacenamiento, servicios • fácilmente accesibles a través de la red • acceso ubicuo y bajo demanda • rápidamente asignados y liberados – con mínimo esfuerzo e interacción con el proveedor del servicio (NIST, 2011)
  • 3. Sistemas multicloud. Mayo de 2014 Orígenes y evolución 1950’s. Mainframes con terminales (remotos) – time sharing, remote job entry (RJE) 1960’s. “Computation may someday be organized as a public utility” (McCarthy) 1990’s. Virtual Private Networks (VPN) – conmutación de redes, equilibrio de carga 2000’s. Virtualización (VirtualBox, VMware) 2000’s. Amazon EC2 (2006) 2010’s. Explosión del fenómeno cloud
  • 4. Sistemas multicloud. Mayo de 2014 Tipos de clouds • Cloud privado – operado por una única organización para uso propio • Cloud comunitario – compartido por varias organizaciones con intereses similares • Cloud público – ofrecido por un proveedor (cloud vendor) al público en general • Cloud híbrido – combinación de dos o más clouds (públicos, privados…) • Cloud heterogéneo – formado por diversos tipos de servidores • Cloud distribuido – formado por servidores distribuidos geográficamente
  • 5. Sistemas multicloud. Mayo de 2014 Modelos de servicio • IaaS. Infrastructure as a Service • PaaS. Platform as a Service • SaaS. Software as a Service • XaaS, *-aaS. Anything as a Service – STaaS – DBaS – CaaS – NaaS – Maas – PeaaS – …
  • 6. Sistemas multicloud. Mayo de 2014 Infrastructure as a Service IaaS ofrece servicios básicos de: • máquinas virtuales, con distintas configuraciones • control y equilibrado de carga, autoescalado (hipervisor) • almacenamiento en disco, bloques u objetos • direccionamiento IP, firewall • software básico preinstalalado en donde el usuario instala y ejecuta sus aplicaciones Proveedores – Amazon EC2, Google Compute Engine, Microsoft Azure – AT&T, HP, Oracle, IBM, … – CloudStack (Datapipe), OpenStack (RackSpace), …
  • 7. Sistemas multicloud. Mayo de 2014 Platform as a Service PaaS ofrece: • herramientas para crear aplicaciones web – lenguajes de programación (Java, Python, Ruby, PHP,…) – bibliotecas – base de datos (MySQL, MongoDB,…) – … que después se ejecutan sobre la propia plataforma Proveedores – Google App Engine, Microsoft Azure Websites – Heroku (Salesforce.com) – Cloud Foundry (AppFog, Tier3, Pivotal)
  • 8. Sistemas multicloud. Mayo de 2014 Software as a Service SaaS ofrece: • aplicaciones o servicios web – de propósito general o específicos – que se ejecutan en la plataforma del proveedor – destinados a usuarios finales (GUI, navegador web) – pero también accesibles a través de una API Servicios • Google Drive, Office 365, Dropbox • Youtube, Flickr, Picassa • Spotify, Grooveshark • Wikia • …
  • 9. Sistemas multicloud. Mayo de 2014 Fortalezas y Oportunidades • Eficiencia – optimiza el uso de los recursos disponibles – reduce costes medioambientales – reduce el tiempo de llegada al mercado • Economía de escala – ofrece soluciones asequibles (pay-as-you-go o suscripción) – reduce drásticamente la inversión inicial – ajusta dinámicamente el coste al uso de los recursos Las tecnologías cloud – son una alternativa a los centros de datos de empresa – resultan muy adecuadas para startups
  • 10. Sistemas multicloud. Mayo de 2014 Debilidades y Amenazas • Volatilidad – mercado aún joven e inestable – cualquier proveedor puede desaparecer a corto o medio plazo – o cambiar significativamente sus políticas de negocio y facturación • Heterogeneidad – oferta de recursos similares de manera heterogénea • sistemas propietarios; falta de estándares • disparidad en lenguajes de desarrollo y bibliotecas • infraestructura tecnológica y servicios ofertados Las tecnologías cloud – pueden ser causa de morir de éxito – presentan serios problemas de vendor lock-in
  • 11. Sistemas multicloud. Mayo de 2014 Vendor Lock-in • Dependencia de un cliente respecto a los productos y servicios ofrecidos por su proveedor – elevados costes para cambiar de proveedor – fragmenta el mercado y dificulta la libre competencia • En sistemas cloud – falta de estándares y disparidad de sistemas propietarios • El vendor lock-in dificulta – portabilidad – interoperabilidad – migración el desarrollo de sistemas multicloud
  • 12. Sistemas multicloud. Mayo de 2014 Vendor lock-in • Diferencias en – mecanismos de acceso (HTTP, REST, SOAP, línea comandos) – APIs ofrecidas • IaaS – VM ofertadas y software preinstalado – hipervisores (VMware, KVM, Xen, ... ) • PaaS – lenguajes de programación y bibliotecas disponibles – bases de datos y otras infraestructuras (Google Cloud DataStore) • SaaS – funcionalidad y semántica del servicio – mecanismos específicos para servicios locales (Azure Service Bus) – representación de los datos (XML, JSON)
  • 13. MODELSWARD , Barcelona, February 20, 2013 Vendor Lock-in Escenario • Dependencias entre una app y el proveedor cloud 1. entre componentes cloud y el resto del sistema 2. entre componentes cloud y los servicios de la plataforma subyacente 3. entre componentes cloud y servicios externos alojados en clouds distintos 1 2 3
  • 14. Sistemas multicloud. Mayo de 2014 Sistemas multicloud • Orientados a la portabilidad, interoperabilidad, y migración – integran diversas tecnologías para crear un mercado común – eliminan o mitigan los riesgos asociados al vendor lock-in Nivel 0. Sistemas monocloud específicos – diseñados para ejecutarse en un cloud determinado (incl. estándar) Nivel 1. Sistemas monocloud agnósticos – portabilidad: la asignación se retrasa a etapas tardías de desarrollo Nivel 2. Sistemas multicloud de topología estática – interoperabilidad: formado por artefactos en clouds distintos Nivel 3. Sistemas multicloud de topología dinámica – migración: los artefactos pueden moverse de un cloud a otro – monitorización
  • 15. Sistemas multicloud. Mayo de 2014 Sistemas multicloud • Gran cantidad de iniciativas – falta de estándares – inestabilidad – trasladan el lock-in del cloud vendor al multicloud vendor • Clasificación – Estandarización – APIs y middleware – MDD • Ámbito – la mayoría para IaaS – algunas incursiones en PaaS
  • 16. Sistemas multicloud. Mayo de 2014 CloudStack Apache Software Foundation (2013) – originalmente Cloud.com y Citrix • creación de clouds IaaS (públicos, privados o híbridos) – estándar de código abierto • arquitectura simple, aunque rígida – 2 VM incluso en la misma máquina física – Management Server: API RESTful y tb. compatible Amazon WS – Cloud Infrastructure: hipervisor e infraestructura cloud – hipervisores: XenServer, Oracle VM, VMware, KVM, vSphere, … • sin demasiado respaldo industrial – uso escaso como cloud público (p.ej. Datapipe)
  • 17. Sistemas multicloud. Mayo de 2014 OpenStack OpenStack Software Foundation – originalmente Rackspace y NASA – numerosos participantes: Red Hat, Oracle, IBM, VMWare, … • creación de clouds IaaS con gran número de servidores – estándar de código abierto (licencia Apache 2.0) – portabilidad entre clouds • arquitectura más compleja y difícil de instalar – integración con tecnologías de almacenamiento y virtualización – hipervisores: Xen, KVM, otros parcialmente – segura y resistente • autoescalado, equilibrado de carga, firewall, detección de intrusos • mayor comunidad de usuarios y perspectivas
  • 18. Sistemas multicloud. Mayo de 2014 jclouds Apache Software Foundation • toolkit y API multicloud IaaS de código abierto – wrapper que abstrae de particularidades de los clouds – portabilidad, interoperabilidad, migración dinámica – interfaz Java; no precisa usar tecnologías cloud y WS (REST, etc.) – bajo nivel, no hay noción de arquitectura o topología • ComputeService: gestión de VMs (nodos), instalación de software… • Blobstore: almacenamiento de datos clave-valor • Clouds soportados – +30: Google, Amazon EC2, Azure , HP, OpenStack, CloudStack, … – amplia comunidad de usuarios
  • 19. Sistemas multicloud. Mayo de 2014 OCCI Open Cloud Computing Interface Open Grid Forum (OGF, 2011) – inicialmente Sun Microsystems, RabbitMQ y UCM – +250 miembros: Rackspace, Oracle, OpenNebula, … • especificación de API estándar para IaaS – código abierto – RESTful, HTTP – integración, portabilidad e interoperabilidad multicloud – despliegue, autoescalado, monitorización, … • implementaciones para: – Amazon EC2, CloudStack, OpenStack, jclouds, … • iniciativa más bien académica – no ha despertado el interés de los grandes proveedores
  • 20. Sistemas multicloud. Mayo de 2014 Cloud Foundry Core Cloud Foundry Foundation – originalmente desarrollado por VMware – CloudFoundry.com (Pivotal), CenturyLink (AppFog), Tier 3, … • cloud PaaS virtual para el desarrollo de aplicaciones web – estándar de código abierto (licencia Apache 2.0) – precisa de middleware para la ejecución sobre otros clouds • Amazon WS, Microsoft Azure, HP,… – lenguajes: Java, Python … – frameworks: Spring, Django, … – bases de datos: MySQL, Postgres, MongoDB, … • el middleware sobrecarga la ejecución (y el coste) – se despliega "la planta con la maceta"
  • 21. Sistemas multicloud. Mayo de 2014 Brooklyn Apache Software Foundation – originalmente desarrollado por CloudSoft – precursor de CAMP • biblioteca Java para aplicaciones distribuidas multicloud – construido sobre jclouds – portabilidad, interoperabilidad, migración – despliegue, monitorización y adaptación dinámica – cierto nivel de descripción arquitectónica y topológica • panel de control – interfaz gráfica, de comandos y REST – almacenamiento de credenciales – se elige proveedor(es) y se despliega con un solo clic
  • 22. Sistemas multicloud. Mayo de 2014 Brooklyn: Conceptos • Entidad – componente de una aplicación (WAR, JBox, BD, cluster,…) – atributos de configuración (localización, memoria, usr/pwd,…) – sensores: auditan la entidad (latencia, CPU,…) y generan eventos – efectores: actúan sobre la entidad (arranque, apagado,…) • Política (regla de adaptación) – se suscribe a sensores y actúa sobre los efectores – pueden arrancarse y apagarse – Enricher: genera eventos de alto nivel a partir de otros • Aplicación – contenedor jerárquico de entidades – no hay representación explícita de conexiones – define despliegue y políticas
  • 23. Sistemas multicloud. Mayo de 2014 Brooklyn: Arquitectura
  • 24. Sistemas multicloud. Mayo de 2014 TOSCA Topology & Orchestration Specification for Cloud Apps Estándar OASIS (2013) – comité de +70 miembros: IBM, Red Hat, CISCO, CapGemini,… • especificación agnóstica de apps. (mono-)cloud complejas – portabilidad (redefiniendo operaciones) – arquitectura, topología, nodos (artefactos) y relaciones – operaciones para despliegue, escalado y apagado de artefactos – archivo CSAR (comprimido, XML) – gran complejidad e interdependencias en el CSAR – Winery: editor gráfico que ayuda a crear el CSAR • Management Plan – workflow: BPMN, BPEL,… – describe el comportamiento operacional – creación de VMs, asignación de artefactos…
  • 25. Sistemas multicloud. Mayo de 2014 TOSCA Conceptos • Service Template – describe arquitectura de la aplicación cloud – tipos, topología y planes • Types – interfaces, propiedades, capacidades y requisitos • Topology Template – estructura (nodos y relaciones) • Planes – comportamiento – llama a operaciones de los nodos
  • 26. Sistemas multicloud. Mayo de 2014 TOSCA Management Plans
  • 27. Sistemas multicloud. Mayo de 2014 OpenTOSCA Open Source Runtime Environment for TOSCA Universidad de Stuttgart – actualmente en desarrollo (v1.1, cierta inestabilidad) – código abierto • entorno de ejecución TOSCA – interpreta el archivo CSAR – admite planes en BPEL y (recientemente) YAML – realiza las operaciones de despliegue en el cloud elegido – ejecuta la aplicación como un WS sobre Apache Tomcat • clouds soportados – en principio cualquier IaaS • otras implementaciones basadas en TOSCA – IBM SmartCloud Orchestrator (anunciada en 2013), …
  • 28. Sistemas multicloud. Mayo de 2014 Cloud4SOA Cloud Interoperability Framework for SOA design, deployment and distributed execution – EU FP7-ICT (2010-2013). 2,730M€ – ATOS, CERTH, Cyntelix, Telecom Portugal, … •Framework abierto de interoperabilidad semántica – portabilidad a nivel PaaS para aplicaciones (mono-)cloud •Modelo de recursos y servicios – proporciona información QoS sobre distintos PaaS •Discovery & matchmaking – ayuda el proceso de decisión para el despliegue •Repositorio – define adaptadores para conseguir portabilidad cloud
  • 31. Sistemas multicloud. Mayo de 2014 MODAClouds Model-Driven Approach for Design and Execution of Applications on Multiple Clouds – EU FP7-ICT (2012-2015) – ATOS, Polimi, SINTEF, Imperial College London, Siemens, … •Entorno de desarrollo (IDE) y ejecución (mono-)cloud – generación semi-automática de código – portabilidad – despliegue cloud agnóstico garantizando QoS •Entorno de monitorización y auto-adaptación – data collectors: IaaS, PaaS, SaaS – data analysers: determinístico, estadístico (predicciones) – C-SPARQL (consultas sobre flujos de datos RDF)
  • 32. Sistemas multicloud. Mayo de 2014 MODAClouds Arquitectura
  • 33. Sistemas multicloud. Mayo de 2014 MODAClouds Monitorización
  • 34. Sistemas multicloud. Mayo de 2014 CAMP Cloud Application Management for Platforms Estándar OASIS – comité de +20 miembros: Oracle, Red Hat, Rackspace, Cloudsoft,… – en desarrollo, aun muy inestable – basado en REST • Definición conceptual de recursos e interfaces para: – construir, administrar, ejecutar, parchear y monitorizar aplicaciones – portabilidad entre plataformas PaaS – despliegue monocloud – fomentar el desarrollo de herramientas
  • 35. Recursos • plataformas, ensamblados, componentes, sensores, planes, servicios, relaciones... • identificados mediante URI • accedidos con HTTP y JSON Self Service API PaaS • acceso y gestión de recursos • no realiza la implementación – se deja al proveedor PaaS Sistemas multicloud. Mayo de 2014 CAMP Self Service API PaaS
  • 36. Sistemas multicloud. Mayo de 2014 CAMP Planes y despliegue Plan • archivo YAML con metadatos que describe – capacidades de una aplicación – artefactos que la forman – servicios para usar los artefactos – relaciones entre artefactos y servicios Platform Deployment Package (PDP) • archivo (zip, tar…) que contiene – plan – artefactos – certificados y credenciales
  • 37. Sistemas multicloud. Mayo de 2014 Seaclouds Seamless adaptive multi-cloud management of service-based applications – EU FP7-ICT (2013-2016). 2,190M€ – ATOS, UMA, UNIPI, Polimi, CloudSoft, Nuro Games •Framework y tools para aplicaciones multicloud complejas – modelado (arquitectura y requisitos QoS) – planificación y despliegue (asignación de artefactos a clouds) – monitorización y reconfiguración runtime para asegurar QoS •Agility after Deployment •promoción de estándares y tecnologías ya existentes – TOSCA, MODAClouds, Brooklyn, jclouds
  • 38. Sistemas multicloud. Mayo de 2014 Seaclouds Arquitectura
  • 39. Sistemas multicloud. Mayo de 2014 Comparativa
  • 40. Reflexiones Estandarización Iniciativas – CloudStack, OpenStack, OVF, OCCI, OGF, TOSCA, CAMP,… • Fortalezas y oportunidades – una interfaz común para todos los proveedores – no se produce vendor lock-in – permiten portabilidad e interoperabilidad • Debilidades y amenazas – poco impacto y/o estado preliminar de desarrollo – los grandes proveedores no están interesados en la estandarización – no serán una solución a medio y corto plazo – pueden consolidarse varios estándares Sistemas multicloud. Mayo de 2014
  • 41. Reflexiones Middleware y APIs Iniciativas – CloudFoundry, OpenTosca, Clod4SOA, SOCCA, IBM AltoCumulus, MODAClouds, SeaClouds, … – OCCI, jclouds, Brooklyn, mOSAIC, … • Fortalezas y oportunidades – aíslan la aplicación de la plataforma y servicios subyacentes – evitan o mitigan la mayoría de los inconvenientes del vendor lock-in – abordan monitorización y migración – soluciones efectivas y actualmente disponibles • Debilidades y amenazas – el efecto lock-in se desplaza del proveedor al API o middleware – pueden comprometer eficiencia y coste (en particular middlewares) Sistemas multicloud. Mayo de 2014
  • 42. Sistemas multicloud. Mayo de 2014 Agradecimientos • Grupo GISUM – Scenic http://www.gisum.uma.es Ernesto, Paco, Javi, Jose, Adrián, Samuel, Miguel, Antonio,… • Seaclouds EU FP7-ICT Project http://www.seaclouds-project.eu • Slideshare.net http:www.slideshare.net • Wikia http://multicloud.wikia.com ¡Gracias por vuestra atención!