master thesis presentation on 'cloud service broker
DESCRIPTION
Throughout the history of computer systems, experts have been reshaping IT infrastructure for improving the efficiency of organizations by enabling shared access to computational resources. The advent of cloud computing has sparked a new paradigm providing better hosting and service delivery over the Internet. It offers advantages over traditional solutions by providing ubiquitous, scalable and on-demand access to shared pools of computational resources. Over the course of these last years, we have seen new market players offering cloud services at competitive prices and different Service Level Agreements. With the unprecedented increasing adoption of cloud computing, cloud providers are on the look out for the creation and offering of new and value-added services towards their customers. Market competitiveness, numerous service options and business models led to gradual entropy. Mismatching cloud terminology got introduced and incompatible APIs locked-in users to specific cloud service providers. Billing and charging become fragmented when consuming cloud services from multiple vendors. An entity recommend- ing cloud providers and acting as an intermediary between the cloud consumer and providers would harmonize this interaction. This dissertation proposes and implements a Cloud Service Broker focusing on assisting and encouraging developers for running their applications on the cloud. Developers can easily describe their applications, where an intelligent algorithm will be able to recommend cloud offerings that better suit application requirements. In this way, users are aided in deploying, managing, monitoring and migrating their applications in a cloud of clouds. A single API is required for orchestrating the whole process in tandem with truly decoupled cloud managers. Users can also interact with the Cloud Service Broker through a Web portal, a command-line interface, and client libraries.TRANSCRIPT
CLOUD SERVICE BROKER Carlos Gonçalves <[email protected]> Mestrado Integrado em Engenharia de Computadores e Telemática Supervised by: Prof. Dr. Diogo Gomes & Prof. Dr. João Paulo Barraca
DETI – University of Aveiro 20 December 2013
Outline • Introduction & Motivation
• Brokering Cloud Services
• Solution for a Cloud Service Broker
• Results
• Conclusions
20 December 2013 Cloud Service Broker 2
INTRODUCTION
20 December 2013 3 Cloud Service Broker
20 December 2013 Cloud Service Broker 4
More devices & more broadband!
20 December 2013 Cloud Service Broker 5
Is It born in us?
20 December 2013 Cloud Service Broker 6
We’ve been producing data …
20 December 2013 Cloud Service Broker 7
… lots of data!
20 December 2013 Cloud Service Broker 8
Photos, videos, music, docs, emails …
20 December 2013 Cloud Service Broker 9
Anywhere
20 December 2013 Cloud Service Broker 10
Anytime
20 December 2013 Cloud Service Broker 11
Anyhow
20 December 2013 Cloud Service Broker 12
Everything accessible at user’s fingertips
20 December 2013 Cloud Service Broker 13
Cloud computing in a nutshell
Definition
“Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing
resources […] that can be rapidly provisioned and released with minimal management effort or service provider interaction.”
— NIST
20 December 2013 Cloud Service Broker 14
Essential characteristics 1. On-demand self-service 2. Rapid elasticity 3. Ubiquitous network access 4. Resource pooling 5. Measured service
20 December 2013 Cloud Service Broker 15
Delivery models
Networking
Storage
Servers
Virtualization
Operating System
Middleware
Runtime
Data
Applications
Networking
Storage
Servers
Virtualization
Operating System
Middleware
Runtime
Data
Applications
Networking
Storage
Servers
Virtualization
Operating System
Middleware
Runtime
Data
Applications
Del
iver
ed a
s a
serv
ice
Use
r man
ages
Use
r man
ages
Del
iver
ed a
s a
serv
ice
Del
iver
ed a
s a
serv
ice
Infrastructure as a Service Platform as a Service Software as a Service
20 December 2013 Cloud Service Broker 16
Deployment models • Public cloud • Private cloud • Community cloud • Hybrid cloud
20 December 2013 Cloud Service Broker 17
Community cloud
On premise
Private cloud
Community cloud
Off premise
Public cloud
Community cloud
Community cloud
Interoperability Ability to easily move resources from one provider to another and between
same or different deployment models
• Heterogeneity of solutions • Different data models, interfaces, authentication and authorization
mechanisms, … • Vendor lock-in!
• Standardization initiatives • OVF, OCCI, CIMI, TOSCA, CAMP, …
20 December 2013 Cloud Service Broker 18
Motivation • Functional requirements • Location • Elasticity • Billing / business models
20 December 2013 Cloud Service Broker 19
BROKERING CLOUD SERVICES
20 December 2013 20 Cloud Service Broker
Cloud Service Broker “An entity that manages the use, performance and delivery of cloud services
and negotiates relationships between cloud providers and cloud consumers”
— Gartner
20 December 2013 Cloud Service Broker 21
Enterprise
CSB Platform
CSPN
CSP1
CSP2
Enterprise
CSB Platform
CSPN
CSP1
CSP2CSB
Platform
CSPN
CSP1
CSP2
Enterprise
CSB Platform
Tools and CSBs • Multi-cloud tools
• Jclouds, Deltacloud, Fog, Libcloud, Pkgcloud, Gophercloud
• Ongoing CSB projects • Industry: Appsecute, Jamcracker • Research: MOSAIC, STRATOS, Broker@Cloud
20 December 2013 Cloud Service Broker 22
SOLUTION FOR A CLOUD SERVICE BROKER
20 December 2013 23 Cloud Service Broker
Cloud Service Broker
Intelligent and autonomous CSB capable of recommending CSPs and easing applications lifecycle, orchestrating the whole process in a cloud
of clouds
20 December 2013 Cloud Service Broker 24
Architecture overview
20 December 2013 Cloud Service Broker 25
Cloud Service Broker
PaaSManager
Heroku Cloud Foundry ...
Web PortalCLI SCM
Private PaaS
Private PaaSManager
IaaSManager
Amazon EC2 Open Stack Rackspace Microsoft Azure
PaaS Manager PaaS Manager API
MonitoringEngine
CloudBees API
App#1
CloudFoundry APIApp#1 App#2
App#3
Heroku API
App#1 App#2
InformationResources
ManagementResources
IronFoundry APIApp#1 App#2
NewRelic NewRelic NewRelic
Git Server
PaaSManagerDatabase
Mgmt PaaS Adapters Info PaaS Adapters
20 December 2013 Cloud Service Broker 26
IaaS Manager
20 December 2013 Cloud Service Broker 27
IaaS Manager API
Data store
IaaS 1 IaaS 2 IaaS 3 ...
Common Cloud API
Images
MachinesCIMI
Private PaaS Manager
20 December 2013 Cloud Service Broker 28
Private Paas Manager API
Cloud Foundry Mgmt
PaaS 1 PaaS 2 PaaS N
…Data store
Job queueing
SSH / NATS
…
App deployment
SCM Manager API
SVNGit Hg
User
1. Push to SCM(git/svn/hg/https)
CSB API
PM client
ApplicationsResource
PaaS Manager
PaaS Manager API
Common PaaS API
PaaS 1 PaaS 2 PaaS N
SCM client
4. REST3. REST
CSB pluginRepository Hooks
Plugins
2. REST
ACM
20 December 2013 Cloud Service Broker 29
RESULTS
20 December 2013 30 Cloud Service Broker
Recommendation <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <manifest> <rules> <rule> <name>runtime</name> <params> <param>Ruby</param> <param>less-equal</param> <param>1.9.3</param> </params> </rule> <rule> <name>framework</name> <params> <param>Rails</param> <param>greater-equal</param> <param>3.0</param> </params> </rule> <rule> <name>service</name> <params> <param>POSTGRESQL_9_1</param> </params> </rule> <rule> <name>metric</name> <params> <param>response_time</param> </params> </rule> <rule> <name>metric</name> <params> <param>usage_cpu</param> </params> </rule> </rules> </manifest>
20 December 2013 Cloud Service Broker 31
0
50
100
150
200
250
0 100 200 300 400 500 600 700 800 900 1000
Tim
e (m
s)
Requests
Total timeCSB time
PaaS Manager CSB Total
Average (ms) 35.878 10.893 52.976
Confidence interval (95%) 0.645 0.819 0.710
Standard deviation (ms) 10.387 1.641 11.449
Error (%) 1.797 0.935 1.341
Web API • RESTful
• CSP recommendation • Application CRUD operations • Service CRUD operations • Resources scaling • Monitoring • Migration • Logging
• Security • OAuth 1.0a • HTTP Basic Authentication
20 December 2013 Cloud Service Broker 32
User Consumer Service
request_token
grant request_token
redirect to auth page
authorize request_token
acknowledge authorization
redirect to consumeraccess_token
grant access_token
access protected resource
return requested data
access protected resource
return requested data
access protected resource
return requested data
Authentication completed
App provisioning on a Private PaaS
20 December 2013 Cloud Service Broker 33
1. Create VM 2. Bootstrap Private PaaS 3. Register Private PaaS 4. Deploy pending apps
VM @ IaaS
Cloud Service Broker
PaaSManager
Private PaaSManager
IaaSManager
Private PaaS
User
1. Push application)
2
2.1
3
3.1
4, 5
4.1, 5.1
User interfaces • Web portal • RubyGem library • Command-line Interface
20 December 2013 Cloud Service Broker 34
CONCLUSIONS
20 December 2013 35 Cloud Service Broker
Conclusions • Cloud computing presents a new paradigm to explore
new ways of offering better solutions to customers
• Migrating from one CSP to another can be tricky, time-consuming and expensive
• Cloud interoperability should be of paramount importance
• A CSB architecture was proposed and implemented • Recommends the most appropriate platform from a catalog of
miscellaneous PaaS offerings
• Delivers cloud services on a cloud of clouds
20 December 2013 Cloud Service Broker 36
Future work • PT Inovação S.A. is integrating the CSB in a larger project • PaaS CSPs have different business models
• Predicting costs for clients is troublesome
• Reevaluate the CAMP API
20 December 2013 Cloud Service Broker 37
Contributions • C. Gonçalves, D. Cunha, P. Neves, P. Sousa, J. P. Barraca, and D. Gomes, “Towards a Cloud
Service Broker for the Meta-Cloud” in 12a Conferência sobre Redes de Computadores, 2012, pp. 7–13
• http://revistas.ua.pt/index.php/crc/article/view/2035
• DMTF CIMI Java model and client library • LGPLv3
• https://github.com/cgoncalves/cimi-java
• DeltaCloud • Discussions and testing
• Code contribution
• OpenStack cloud on ATNoG • Code contributions to OpenStack
• Add commands used by NFS volume driver to rootwrap (Cinder)
• No handler for NFS volume (Nova)
20 December 2013 Cloud Service Broker 38
Acknowledgments
20 December 2013 Cloud Service Broker 39
Q & A
Thank you
DETI – University of Aveiro 20 December 2013
CLOUD SERVICE BROKER Carlos Gonçalves <[email protected]> Mestrado Integrado em Engenharia de Computadores e Telemática Supervised by: Prof. Dr. Diogo Gomes & Prof. Dr. João Paulo Barraca
DETI – University of Aveiro 20 December 2013