SlideShare a Scribd company logo
Cloud APIs Overview



    What they are
    How they work
     Discussion



                    Lew Tucker
                    VP, CTO Cloud Computing
                    Sun Microsystems, Inc
                    1/20/2010
Computing Economics - P.O.V
●   Fall in cost of computing bounded only by the
    cost of power
●   Commoditization is inevitable and good
●   The sustainable value that a provider can
    charge for a service will all be above this base
●   So, accelerate commoditization of base-level
    APIs through agreed upon standards to
    accelerate development of higher-level, higher-
    value services
What Cloud APIs Do
●   Application level: SaaS
    ●   Programatic way interact with App
    ●   Very app specific
●   Development environment: PaaS
    ●   Application development
    ●   Language/programming model/service specific
●   Access to raw compute and storage: IaaS
    ●   Create and manage computational resources
        – Typically: virtual, shared, dynamically provisioned
    ●   Lowest level – best chance of standardization
    ●   Large amount of commonality
                                    our focus is here – cloud resources
Today each cloud provider makes their own
                  ...and the number is growing

●   Today:
    ●   Amazon's AWS set: EC2, S3, SQS, …
    ●   Microsoft's Azure
    ●   Google App Engine
    ●   RackSpace
    ●   VMware Vcloud
    ●   Sun's Cloud API
    ●   GoGrid,
    ●   IBM Developer Cloud API
    ●   Several standards groups, software libraries .........
EC2 Query API example
GET:
https://ec2.amazonaws.com/
?Action=RunInstances &ImageId=ami-60a54009 &MaxCount=3
&MinCount=1
&Placement.AvailabilityZone=us-east-1b &...auth parameters...

RESPONSE:
<RunInstancesResponse
xmlns="http://ec2.amazonaws.com/doc/2008-08-08">
 <reservationId>r-47a5402e</reservationId>
 <ownerId>495219933132</ownerId>
   :
 <instancesSet>
   <item>
     <instanceId>i-2ba64342</instanceId>
     <imageId>ami-60a54009</imageId>
     <instanceState>
      <code>0</code>
      <name>pending</name>
     </instanceState>
     <keyName>example-key-name</keyName>
     <amiLaunchIndex>0</amiLaunchIndex>
     <InstanceType>m1.small</InstanceType>
     <launchTime>2007-08-07T11:51:50.000Z</launchTime>
</instancesSet>
</RunInstancesResponse>
Feature Set Catalog
       http://forge.ogf.org/sf/wiki/do/viewPage/projects.occi-wg/wiki/FeatureMatrix




                                see Rich Miller's Catalog
API Differences
●   Language bindings vs http protocols
●   Use of HTTP: RESTful vs query vs SOAP
●   Authentication
●   Resource properties and representations
●   Error codes and response handling
●   Machine images
●   Level of detail and variability of resources
Interfaces and Providers




           http://architects.dzone.com/news/opennebula-14-challenges
Let's start with basic HTTP resource
            representations
Open Cloud Computing Interface
         (Open Grid Forum)




                        http://forge.ogf.org/sf/projects/occi-wg
Cloud Data Management Interface
             (SNIA)




                        CDMI
OCCI Example: Get VM
> GET /us-east/webapp/vm01 HTTP/1.1
> User-Agent: occi-client/1.0 (linux) libcurl/7.19.4 OCCI/1.0
> Host: cloud.example.com
> Accept: */*
-------------------------------------------------------------------------------------
< HTTP/1.1 200 OK
< Content-Type: application/ovf
< Link: </us-east/webapp/vm01;start>;
<       rel="http://purl.org/occi/action#start";
<       title="Start"
< Link: </us-east/webapp/build.pdf>;
<       rel="related";
<       title="Documentation";
<       type="application/pdf"
< Category: compute;
<       label="Compute Resource";
<       scheme="http://purl.org/occi/kind#"
< Server: occi-server/1.0 (linux) OCCI/1.0
< Connection: close
<
< <?xml version="1.0" encoding="UTF-8"?>
...
Security Requirements
●   Identity, Roles, Access Control, Policies
●   Cryptography, Key and Certificate Mgmt
●   Network Security
●   Data/Storage Security
●   Even Auditing and Reporting
●   Federation Patterns
    ●   ID, Trust, Access Mgmt, SSO, Audit, Config Mgmt

                    Cloud Computing Interoperability Forum
                    http://groups.google.com/group/cloud-computing-use-cases/files
The Network is the Computer
Clo u d
The Network is the Computer



       Are we getting there yet?
What's this “cloud” computer like?
●   MPP-like distributed system of CPU's, memory,
    disks, network, and more
●   Programmed through multiple service interfaces
●   Physically remote and managed by one or more
     rd
    3 party providers
●   Dynamic allocation of resources as needed
●   Accessed according to account priviledges
How is it programmed
●   Individual nodes programmed using variety of
    programming languages, tools, methods.
●   OS and applications loaded via virtual machine
    images or higher-level constructs (jar, maven,
    etc.)
●   Administrative interfaces for resource allocation
    and management
●   Means for expressing application architecture
    covering multiple resources and their network
    connectivity
Discussion:
        What is the API for this new Computer?
●   Open, common, CC API – of course
    ●   Common vocabulary – ontology (OWL?)
●   Directory of services
●   Universal machine image format (OVF?)
●   Identity (OpenID, multiple?), account and
    certificate managment
●   Orchestration
    ●   Mgmt of ensembles of resources, reservations
●   Service-provider vs customer APIs

More Related Content

What's hot (20)

PPTX
Front-end architecture for cloud applications and Polymer
uEngine Solutions
 
PDF
What’s new in WSO2 Enterprise Integrator 6.6
WSO2
 
PDF
The MEAN stack - SoCalCodeCamp - june 29th 2014
Simona Clapan
 
PPTX
Asp.net core 1.0 (Peter Himschoot)
Visug
 
PPTX
Introduction to ASP.NET 5
mbaric
 
PDF
From MEAN to the MERN Stack
Troy Miles
 
PDF
Introduction To Cloud Foundry - SpringPeople
SpringPeople
 
PDF
Evaluating and Choosing ZK Framework
southerncrossie
 
PPTX
Microservices with .Net - NDC Sydney, 2016
Richard Banks
 
PPTX
How do we drive tech changes
Jaewoo Ahn
 
PPTX
Cas implementation at oakland university
bpowell29a
 
PDF
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2
 
PPTX
Designing REST services with Spring MVC
Serhii Kartashov
 
PPTX
Micro service architecture
uEngine Solutions
 
PDF
Productivity Acceleration Tools for SOA Testers
WSO2
 
PPTX
Cf summit2014 roadmap
James Bayer
 
ODP
Building Ajax apps with the Google Web Toolkit
vivek_prahlad
 
PPTX
Serverless Computing With Azure Functions
Jaliya Udagedara
 
PDF
Building Killer RESTful APIs with NodeJs
Srdjan Strbanovic
 
DOC
Resume
Ragesh kn
 
Front-end architecture for cloud applications and Polymer
uEngine Solutions
 
What’s new in WSO2 Enterprise Integrator 6.6
WSO2
 
The MEAN stack - SoCalCodeCamp - june 29th 2014
Simona Clapan
 
Asp.net core 1.0 (Peter Himschoot)
Visug
 
Introduction to ASP.NET 5
mbaric
 
From MEAN to the MERN Stack
Troy Miles
 
Introduction To Cloud Foundry - SpringPeople
SpringPeople
 
Evaluating and Choosing ZK Framework
southerncrossie
 
Microservices with .Net - NDC Sydney, 2016
Richard Banks
 
How do we drive tech changes
Jaewoo Ahn
 
Cas implementation at oakland university
bpowell29a
 
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
WSO2
 
Designing REST services with Spring MVC
Serhii Kartashov
 
Micro service architecture
uEngine Solutions
 
Productivity Acceleration Tools for SOA Testers
WSO2
 
Cf summit2014 roadmap
James Bayer
 
Building Ajax apps with the Google Web Toolkit
vivek_prahlad
 
Serverless Computing With Azure Functions
Jaliya Udagedara
 
Building Killer RESTful APIs with NodeJs
Srdjan Strbanovic
 
Resume
Ragesh kn
 

Viewers also liked (20)

PPTX
Cloud Computing Demystified
Samer Meqdad
 
PPT
The value of cloud computing to ITSM
Patrick Keogh
 
PDF
Cloud APIs and Cloud Frameworks
Praveen Hanchinal
 
PPTX
Ase 251 automatic transmission
guestb9ab1f
 
PPTX
COMPLETE Cloud – Capgemini’s Business Platform – Powered by AWS/SUSE
Dirk Oppenkowski
 
PPT
Managed Services - Explained
Ghassan Chahine
 
PPTX
Cloud computing technology
Youssef Elsalhawy
 
PPTX
Microsoft Cloud Services Presentation
kamutef
 
KEY
Introduction to Cloud Computing - CCGRID 2009
James Broberg
 
PPTX
Cloud Computing by AGDMOUN Khalid
خالد اكدمون
 
PPT
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...
Svetlin Nakov
 
PPT
Managed Services Presentation
Scott Gombar
 
PDF
Microsoft Cloud Services Architecture
David Chou
 
PPTX
Microsoft Cloud Computing
David Chou
 
PDF
Cloud computing Basics
Sagar Sane
 
PPT
Cloud computing ppt
Datta Dharanikota
 
PPT
Seminar on cloud computing by Prashant Gupta
Prashant Gupta
 
PPT
Cloud computing simple ppt
Agarwaljay
 
PPTX
cloud computing ppt
himanshuawasthi2109
 
PPTX
Introduction of Cloud computing
Rkrishna Mishra
 
Cloud Computing Demystified
Samer Meqdad
 
The value of cloud computing to ITSM
Patrick Keogh
 
Cloud APIs and Cloud Frameworks
Praveen Hanchinal
 
Ase 251 automatic transmission
guestb9ab1f
 
COMPLETE Cloud – Capgemini’s Business Platform – Powered by AWS/SUSE
Dirk Oppenkowski
 
Managed Services - Explained
Ghassan Chahine
 
Cloud computing technology
Youssef Elsalhawy
 
Microsoft Cloud Services Presentation
kamutef
 
Introduction to Cloud Computing - CCGRID 2009
James Broberg
 
Cloud Computing by AGDMOUN Khalid
خالد اكدمون
 
Architectural Patterns and Software Architectures: Client-Server, Multi-Tier,...
Svetlin Nakov
 
Managed Services Presentation
Scott Gombar
 
Microsoft Cloud Services Architecture
David Chou
 
Microsoft Cloud Computing
David Chou
 
Cloud computing Basics
Sagar Sane
 
Cloud computing ppt
Datta Dharanikota
 
Seminar on cloud computing by Prashant Gupta
Prashant Gupta
 
Cloud computing simple ppt
Agarwaljay
 
cloud computing ppt
himanshuawasthi2109
 
Introduction of Cloud computing
Rkrishna Mishra
 
Ad

Similar to Cloud APIs Overview Tucker (20)

PDF
Public Cloud Workshop
Amer Ather
 
PPT
Fowa Miami 09 Cloud Computing Workshop
Mark Masterson
 
PPTX
Open Stack Cloud Services
Saurabh Gupta
 
PPT
Distributed_and_cloud_computing-unit-2.ppt
lunalovegood66
 
PDF
Accion Labs - Cloud in practice - Cloud computing platforms
Accion Labs, Inc.
 
PDF
Accion Cloud in Practice - Cloud Comuting Platforms Classification
Ashutosh Bijoor
 
PPT
Cloud Connectivity Service
jhpark
 
PPT
cloud computing
Abhijeet Shah
 
PPT
Avoiding cloud lock-in
Sebastien Goasguen
 
PPTX
CLOUD COMPUTING In Brief UNIT I PPT.pptx
DheekshithaPasala
 
PPTX
Cloud computing by prabhunath sharma
Prabhunath Sharma
 
PPTX
Open Stack Cloud Services
Saurabh Gupta
 
PDF
Cloud Computing
chrismik
 
PDF
Charlton Barreto - The OGF | Open Cloud Computing Interface
CloudCamp Hamburg
 
PDF
Txlf2012
Joe Brockmeier
 
PPT
Cloud computing
karthiklreddy
 
PPTX
Microservices approach for Websphere commerce
HARIHARAN ANANTHARAMAN
 
PPTX
CC-Module 1-Update module 2 in cloud computing.pptx
AshokKumar788526
 
PPT
Scalable networking in Apache CloudStack
Chiradeep Vittal
 
PPTX
Dbms
vatsaanadi
 
Public Cloud Workshop
Amer Ather
 
Fowa Miami 09 Cloud Computing Workshop
Mark Masterson
 
Open Stack Cloud Services
Saurabh Gupta
 
Distributed_and_cloud_computing-unit-2.ppt
lunalovegood66
 
Accion Labs - Cloud in practice - Cloud computing platforms
Accion Labs, Inc.
 
Accion Cloud in Practice - Cloud Comuting Platforms Classification
Ashutosh Bijoor
 
Cloud Connectivity Service
jhpark
 
cloud computing
Abhijeet Shah
 
Avoiding cloud lock-in
Sebastien Goasguen
 
CLOUD COMPUTING In Brief UNIT I PPT.pptx
DheekshithaPasala
 
Cloud computing by prabhunath sharma
Prabhunath Sharma
 
Open Stack Cloud Services
Saurabh Gupta
 
Cloud Computing
chrismik
 
Charlton Barreto - The OGF | Open Cloud Computing Interface
CloudCamp Hamburg
 
Txlf2012
Joe Brockmeier
 
Cloud computing
karthiklreddy
 
Microservices approach for Websphere commerce
HARIHARAN ANANTHARAMAN
 
CC-Module 1-Update module 2 in cloud computing.pptx
AshokKumar788526
 
Scalable networking in Apache CloudStack
Chiradeep Vittal
 
Ad

More from Infrastructure 2.0 (7)

PDF
Workgroup Issues
Infrastructure 2.0
 
KEY
Application Mobility - Lightning Talk
Infrastructure 2.0
 
PPTX
OCC Intercloud Testbed Status Jan 20, 2010
Infrastructure 2.0
 
PDF
Intercloud Registry
Infrastructure 2.0
 
PDF
20100120 Pvm Cherchez La Federation
Infrastructure 2.0
 
PPT
Infrastructure2.0 Model Proposal 1 19 10
Infrastructure 2.0
 
PDF
Lighthouse 20100120
Infrastructure 2.0
 
Workgroup Issues
Infrastructure 2.0
 
Application Mobility - Lightning Talk
Infrastructure 2.0
 
OCC Intercloud Testbed Status Jan 20, 2010
Infrastructure 2.0
 
Intercloud Registry
Infrastructure 2.0
 
20100120 Pvm Cherchez La Federation
Infrastructure 2.0
 
Infrastructure2.0 Model Proposal 1 19 10
Infrastructure 2.0
 
Lighthouse 20100120
Infrastructure 2.0
 

Cloud APIs Overview Tucker

  • 1. Cloud APIs Overview What they are How they work Discussion Lew Tucker VP, CTO Cloud Computing Sun Microsystems, Inc 1/20/2010
  • 2. Computing Economics - P.O.V ● Fall in cost of computing bounded only by the cost of power ● Commoditization is inevitable and good ● The sustainable value that a provider can charge for a service will all be above this base ● So, accelerate commoditization of base-level APIs through agreed upon standards to accelerate development of higher-level, higher- value services
  • 3. What Cloud APIs Do ● Application level: SaaS ● Programatic way interact with App ● Very app specific ● Development environment: PaaS ● Application development ● Language/programming model/service specific ● Access to raw compute and storage: IaaS ● Create and manage computational resources – Typically: virtual, shared, dynamically provisioned ● Lowest level – best chance of standardization ● Large amount of commonality our focus is here – cloud resources
  • 4. Today each cloud provider makes their own ...and the number is growing ● Today: ● Amazon's AWS set: EC2, S3, SQS, … ● Microsoft's Azure ● Google App Engine ● RackSpace ● VMware Vcloud ● Sun's Cloud API ● GoGrid, ● IBM Developer Cloud API ● Several standards groups, software libraries .........
  • 5. EC2 Query API example GET: https://ec2.amazonaws.com/ ?Action=RunInstances &ImageId=ami-60a54009 &MaxCount=3 &MinCount=1 &Placement.AvailabilityZone=us-east-1b &...auth parameters... RESPONSE: <RunInstancesResponse xmlns="http://ec2.amazonaws.com/doc/2008-08-08"> <reservationId>r-47a5402e</reservationId> <ownerId>495219933132</ownerId> : <instancesSet> <item> <instanceId>i-2ba64342</instanceId> <imageId>ami-60a54009</imageId> <instanceState> <code>0</code> <name>pending</name> </instanceState> <keyName>example-key-name</keyName> <amiLaunchIndex>0</amiLaunchIndex> <InstanceType>m1.small</InstanceType> <launchTime>2007-08-07T11:51:50.000Z</launchTime> </instancesSet> </RunInstancesResponse>
  • 6. Feature Set Catalog http://forge.ogf.org/sf/wiki/do/viewPage/projects.occi-wg/wiki/FeatureMatrix see Rich Miller's Catalog
  • 7. API Differences ● Language bindings vs http protocols ● Use of HTTP: RESTful vs query vs SOAP ● Authentication ● Resource properties and representations ● Error codes and response handling ● Machine images ● Level of detail and variability of resources
  • 8. Interfaces and Providers http://architects.dzone.com/news/opennebula-14-challenges
  • 9. Let's start with basic HTTP resource representations
  • 10. Open Cloud Computing Interface (Open Grid Forum) http://forge.ogf.org/sf/projects/occi-wg
  • 11. Cloud Data Management Interface (SNIA) CDMI
  • 12. OCCI Example: Get VM > GET /us-east/webapp/vm01 HTTP/1.1 > User-Agent: occi-client/1.0 (linux) libcurl/7.19.4 OCCI/1.0 > Host: cloud.example.com > Accept: */* ------------------------------------------------------------------------------------- < HTTP/1.1 200 OK < Content-Type: application/ovf < Link: </us-east/webapp/vm01;start>; < rel="http://purl.org/occi/action#start"; < title="Start" < Link: </us-east/webapp/build.pdf>; < rel="related"; < title="Documentation"; < type="application/pdf" < Category: compute; < label="Compute Resource"; < scheme="http://purl.org/occi/kind#" < Server: occi-server/1.0 (linux) OCCI/1.0 < Connection: close < < <?xml version="1.0" encoding="UTF-8"?> ...
  • 13. Security Requirements ● Identity, Roles, Access Control, Policies ● Cryptography, Key and Certificate Mgmt ● Network Security ● Data/Storage Security ● Even Auditing and Reporting ● Federation Patterns ● ID, Trust, Access Mgmt, SSO, Audit, Config Mgmt Cloud Computing Interoperability Forum http://groups.google.com/group/cloud-computing-use-cases/files
  • 14. The Network is the Computer
  • 15. Clo u d The Network is the Computer Are we getting there yet?
  • 16. What's this “cloud” computer like? ● MPP-like distributed system of CPU's, memory, disks, network, and more ● Programmed through multiple service interfaces ● Physically remote and managed by one or more rd 3 party providers ● Dynamic allocation of resources as needed ● Accessed according to account priviledges
  • 17. How is it programmed ● Individual nodes programmed using variety of programming languages, tools, methods. ● OS and applications loaded via virtual machine images or higher-level constructs (jar, maven, etc.) ● Administrative interfaces for resource allocation and management ● Means for expressing application architecture covering multiple resources and their network connectivity
  • 18. Discussion: What is the API for this new Computer? ● Open, common, CC API – of course ● Common vocabulary – ontology (OWL?) ● Directory of services ● Universal machine image format (OVF?) ● Identity (OpenID, multiple?), account and certificate managment ● Orchestration ● Mgmt of ensembles of resources, reservations ● Service-provider vs customer APIs