SlideShare uma empresa Scribd logo
1 de 123
Introduction to Cloud
     Computing
Dr. James Broberg (brobergj@csse.unimelb.edu.au)
          Australian Postdoctoral Fellow
             University of Melbourne




                       1
Introduction to Cloud
     Computing
• Programme:
 • Part I - An Introduction to Cloud
    Computing.
 • Part II - “Get your head in the Clouds” -
    MetaCDN Cloud Case Study.
 • Part III - Open Research Issues in Cloud
    Computing.

                     2
Cloud Computing -
        Part I
• What is “cloud computing”?
• What type of clouds exist?
• How does cloud computing differ from
  Cluster, Grid & Utility Computing?
• Examples of Computational Clouds
• Examples of Storage Clouds
• Examples of Platform/Application Clouds
                     3
Cloud Computing -
        Part II

• Case Study: MetaCDN
 • Cloud CDN Overlay application that
    uses Compute and Storage Clouds
    combined with traditional physical
    resources.


                     4
Cloud Computing -
         Part III
•   Open Research Issues in Cloud Computing

    •   Interoperability

    •   Portability

    •   Reliability & Monitoring

    •   Data Security and Jurisdiction

    •   Innovative Cloud Pricing Models

    •   Innovative Service Models
                           5
An Introduction to
Cloud Computing



        6
What is Cloud
        Computing?
• How can we define Cloud Computing?
 • What does (and does not) constitute a
    “cloud” platform?
• Enabling technologies for cloud computing
 • Virtual Machines
 • Virtualised Storage
 • Web Services
                     7
Cloud Computing
        defined...

• “.. a style of computing in which dynamically
  scalable and often virtualized resources are
  provided as a service over the Internet” -
  Wikipedia




                      8
Cloud Computing
        defined...
• “Clouds are hardware-based services
  offering compute, network and storage
  capacity where: Hardware management is
  highly abstracted from the buyer, Buyers
  incur infrastructure costs as variable
  OPEX, and Infrastructure capacity is highly
  elastic” - McKinsey & Co. Report:
  “Clearing the Air on Cloud
  Computing”
                     9
Cloud Computing
        defined...
• “Cloud computing has the following
  characteristics: (1) The illusion of infinite
  computing resources… (2) The elimination
  of an up-front commitment by Cloud
  users… (3). The ability to pay for use…as
  needed…”– UCBerkeley RADLabs



                     10
Cloud Computing
        defined...
• “... a pay-per-use model for enabling
  available, convenient, on-demand network
  access to a shared pool of configurable
  computing resources (e.g., networks,
  servers, storage, applications, services) that
  can be rapidly provisioned and released
  with minimal management effort or service
  provider interaction.” - National
  Institute of Standards and
  Technology (NIST)
                      11
Cloud Computing
          defined...
•   “Clouds are a large pool of easily usable and
    accessible virtualized resources (such as hardware,
    development platforms and/or services). These
    resources can be dynamically re-configured to adjust
    to a variable load (scale), allow-ing also for an
    optimum resource utilization. This pool of resources
    is typically exploited by a pay-per-use model in
    which guarantees are offered by the Infrastructure
    Provider by means of customized SLAs.” - Paper
    by Vaquero et. al.: “A break in the clouds:
    towards a cloud definition”

                           12
Common Ground?

• Pay-per-use (no commitment, utility prices).
• Elastic capacity - scale up/down on demand.
• Self-service interface.
• Resources are abstracted / virtualised.

                     13
Enabling Technologies
• Several key components have matured and
  are essential building blocks of many Cloud
  services:
 • Virtual Machines
 • Virtualised Storage
 • Web Services
                     14
Virtual Machines
• In the last 5 years VM technology has
  become pervasive and “cheap” / free
• The main players are:
‣ VMWare [ESX/GSX Server, Workstation]
‣ XenSource [XenEnterprise/Server/Express]
‣ SWsoft/Parallels [Virtuozzo, Desktop]
‣ Microsoft [Virtual Server]
Virtual Machines
• Factors contributing to rising profile:
 • Commodity multi-core, 64bit machines
    [dual/quad core, >>4 gig memory]
 • Hardware assisted virtualisation - using
    Intel VT(tm) and AMD Pacifica(tm) - runs
    unmodified OS at near native speeds
 • Integration of VM tech. into mainstream
    server OS’s (RHEL, Ubuntu, Windows)
Virtual Machines
• Improves utilisation by multiplexing many
  VMs on one physical host (consolidation)
• Allows agile deployment and management
  of services.
• On demand cloning, (live) migration &
  checkpoint improves reliability.
• VM can be a self-contained unit of
  execution and migration!
Virtualised Storage
• Distributed File Systems:
 • Google File System (GFS)
 • Hadoop Distributed File System (HDFS)
• Cluster File Systems:
 • VMware vStorage VMFS
 • XenServer Storage Pool
Web Services
• SOAP
  • XML Messages
  • Web Services Description Language
    (WSDL)
 • WS-*
• REST / RESTful
  • GET, POST, PUT, DELETE for HTTP (crud)
  • More lightweight HTTP / JSON schemes
Types of Clouds?




       20
Public Cloud
• Publicly accessible, self-service model:
 • Access via well-defined & published Web
    Services (i.e. SOAP or REST).
 • Access via management portal.
• Free or pay-per-use.
• No ongoing contract or commitment.
                     21
Private Cloud
•   Emulate Public Cloud on private / internal
    resources.
•   Gives benefit of Clouds (elasticity, dynamic
    provisioning, multiplexing) while:
    •   Maintaining control of resources (security).
    •   Meeting Corporate/Regulatory req.
        (governance).
    •   Option to scale out to Public Cloud ...

                           22
Hybrid Cloud
• Combination of private/internal and
  external Cloud resources.
• “Cloudbursting” to handle “Flash Crowds”
 • Provision additional resources from
    Public Clouds on-demand.
  • Release resource when no longer
    needed.
• Can outsource non-critical functions.
                     23
How did we get here?
                         Cluster
                        Computing

• What about:
 • Cluster Computing?     Grid
 • Grid Computing?      Computing

 • Utility Computing?
                          Utility
                        Computing
                  24
Cluster Computing
• Clusters are linked computer systems that
  can co-operate to perform computations
  and deliver services:
 • Often function / appear as single server.
 • Typically linked over LAN.
 • Offers scalability over single-server.
 • Used for high-availability (redundant),
    load balancing, shared compute (w/ IPC).
                     25
Grid Computing
•   Grids are autonomous and dynamic distributed
    resources contributed by multiple organisations.
    •   Can offer computing, network, sensor and
        storage resources.
    •   Resources are loosely coupled,
        heterogeneous, geographically dispersed.
    •   Used in diverse fields: climate modelling, drug
        design and protein analysis to solve “Grand
        Challenges”.
                           26
Grid Computing
•   Traditional Grid resource management
    techniques did not ensure fair and equitable
    access to resources in many systems:
    •   Traditional metrics (throughput, waiting time,
        slowdown) failed to capture the more subtle
        requirements of users.
    •   No incentives for users to be flexible about
        resource req. or job deadlines.
    •   No provisions to accommodate users with
        urgent work.
                           27
Utility Computing
•   Users assign a “utility” value to their jobs:
    •   Utility is a fixed or time-varying valuation that captures
        various QoS constraints (deadline, importance, satisfaction)
    •   Valuation is amount they are willing to pay a service provider
        to satisfy demands.
•   Service providers attempt to maximise their own utility:
    •   Utility may directly correlate with their profit.
    •   Prioritise high yield (i.e. profit per unit of resource) user jobs.
•   Shared Grid systems are then viewed as a marketplace, where
    users compete for resources based on the perceived utility /
    value of their jobs.

                                   28
Utility Computing




        29
Utility Computing




        30
Public Compute Clouds -
Infrastructure as a Service

• Amazon EC2
• GoGrid
• Slicehost
• Mosso Cloud Servers

                   31
Amazon Elastic
Compute Cloud (EC2)
• Provides resizable compute capacity in the
  cloud.
• Can be leveraged via:
 • Web Services (SOAP or REST).
 • AWS Management Console.
 • EC2 Command Line Tools.
• Provides hundreds of pre-made AMIs.
                     32
Amazon Elastic
Compute Cloud (EC2)
• Standard Instances (S, L, XL)
  • Prop. more RAM than CPU
• High CPU Instances (M, XL)
  • Prop. more CPU than RAM
• Choice of Windows or Linux Images
  • US-East and EU-West Regions ($EU>$US)
  • “Value-added” AMIs cost more
                   33
Amazon EC2 On-
Demand Instances




       34
Amazon EC2 Reserved
     Instances




         35
Amazon EC2 Windows
      Server




        36
Amazon EC2 IBM
   Platforms




      37
Amazon EC2 Success
      Stories
• SmugMug - Online Photo Sharing
  • EC2 instances handles batch ops: upload,
    rotate, transcode, watermark, etc...
  • Hybrid approach: Own datacenter +
    Cloud, autoscale up/down as needed.
• Animoto - Creates Cool Videos from Photos
  & Music
  • Scaled from 50 instances of EC2 up to
    3,500 instances of EC2 within days.
                      38
GoGrid Cloud Hosting
• Provides pre-made images:
 • Windows and Linux.
 • “Value-added” stacks on top.
• Range of (fixed) instance sizes.
• Offers hybrid dedicated / cloud server
  infrastructure.
• Free hardware LB and autoscaling.
                     39
Slicehost VPS Hosting
• Fixed size “slices”.
 • Slice size measured by RAM, not CPU.
• Pre-made Linux images.
• No SLA, simply “best effort”.
• Monthly billing (not per-hour).
 • Does that fit “Cloud” definition?
                   40
Mosso Cloud Servers
• Fixed size Cloud Servers.
 • Server size measured by RAM, not CPU
• Offers range of pre-made Linux instances
• Offers hybrid dedicated / cloud server
  infrastructure.
• Offers fixed IPs and A-DNS by default.
                    41
Compute Cloud
                      Comparison
                                                                                  Mosso Cloud
                       Amazon EC2              GoGrid             Slicehost
                                                                                    Servers
  Instance Cost       $0.10-$1.28 / hr     $0.095-$1.32 / hr   $20-$80 / month   $0.015-$0.96 / hr
  Linux Support             Yes                  Yes                 Yes               Yes
Windows Support             Yes                  Yes                  No               No
   Cores/CPU               1-20                   1-6            4 (weighted)      4 (weighted)
     Memory            1.7GB -15GB           0.5GB - 8GB       256MB - 15.5GB     256MB - 15GB
Persistent Storage   No (req. S3/EBS)            Yes                 Yes               Yes
 Default Public IP   No (req. Elast. IP)         Yes                 Yes               Yes
  Managed DNS               No                   Yes                  No               Yes
  Support Cost       $400 / 20% Spend            Free                Free             $A100
  Hybrid Cloud?             No                   Yes                  No               Yes
       SLA                99.95%                100%                 N/A              100%
Running instances           20*                    ?                   ?            Unlimited*
        API                 Yes                  Yes                 Yes               Yes

                                                  42
Public Storage Clouds -
 Storage as a Service
• Amazon Simple Storage Service (S3)
• Amazon CloudFront
• Nirvanix Storage Delivery Network
• Mosso Cloud Files
• Microsoft Azure Storage Services
                    43
Amazon Simple Storage
    Service (S3)
• Amazon S3 was launched US in March
  2006, and EU in November 2007.
• REST/SOAP interfaces to storage resources
• Users can read, write or delete an
  unlimited # of objects, 1 byte to 5 GB each.
• Files stored in flat “bucket” structure.
• BitTorrent can be used to minimise cost.
                     44
Amazon CloudFront
• Launched in November 2008.
• CDN service that adds 14 edge locations
  (8 in the US, 4 in EU, and 2 in Asia).
• CloudFront does not offer persistent
  storage.
 • Analogous to proxy cache, with files
    deployed to and removed from CF
    locations based on demand.
                      45
Nirvanix Storage
Delivery Network (SDN)
• Launched on September 2007.
• Has 3 US locations (San Diego, Seacaucus,
  Houston), 1 EU (Frankfurt), 1 Asia (Tokyo)
• Launched with SLA-backed uptime
  guarantee when S3 was only best-effort.
• Offers automatic file replication over sites
  in the SDN, and supports file sizes up to
  256 GB.
                      46
Mosso CloudFiles
• Launched late 2008.
• Base storage location in Dallas Texas.
• Files stored in flat “bucket” structure.
• Offers integration with Limelight CDN.
 • Adds more than 70 locations.
 • No transfer costs from origin to CDN.
                    47
Microsoft Azure
      Storage Service
• CTP launched in late 2008.
• Hosts Blobs, tables, and queues.
• Blobs (files) stored in flat “bucket”
  structure.
• Simple language agnostic REST interfaces.

                     48
Cost Structures
                     Nirvanix  Amazon Amazon       Amazon       Mosso
                    Global SDN S3 USA S3 Europe   CloudFront   CloudFiles
                      < 2TB    < 10TB < 10 TB      < 10 TB       < 5TB
Incoming data ($/
      GB)             0.18      0.1      0.1        N/A         0.08
Outgoing data ($/
      GB)             0.18     0.17     0.17      0.17-0.21     0.22
    Storage
 ($/GB/month)         0.25     0.15     0.18        N/A         0.15
    Requests
 ($/1,000 PUT/
  POST/LIST)
                      0.00     0.01    0.012        N/A         0.02
    Requests
 ($/10,000 GET)       0.00     0.01    0.012 0.010-0.013 0.00
Feature Comparison
                         Nirvanix                 Amazon       Mosso
                                     Amazon S3
                        Global SDN               CloudFront   CloudFiles
        SLA               99.9       99-99.9     99-99.9       99.9
  Max File Size         256GB         5GB          5GB         5GB
      US PoP               Yes          Yes         Yes          Yes
      EU PoP                Yes         Yes          Yes         Yes
      Asia PoP              Yes         No           Yes         Yes
      AUS PoP               No          No           No          Yes

    Per file ACL           Yes          Yes         Yes          Yes
Automatic replication
      of files             Yes          No          Yes          Yes
  Developer API’s /
   Web Services           Yes          Yes         Yes          Yes
40000
                         Pricing comparison
                         Amazon CF USA/EU
                             Amazon CF HK
                             Amazon CF JP
             35000


             30000


             25000
$USD/month




             20000


             15000


             10000


              5000


                 0
                     0               50      100              150    200   250
                                            Outgoing TB Data/month
Public App Clouds -
    Platform as a Service

•   Google AppEngine

•   Microsoft Azure Services Platform

•   Salesforce.com / Force.com

•   Mosso Cloud Sites

•   Heroku


                         52
Google AppEngine
• Python stack
• Java stack (J2EE 6, JDO, JPA, JSP) [new]
• App Engine serving architecture allows real
  time auto-scaling without virtualization.
  • ...provided you use limited native APIs.
  • ...provided you use Google APIs.
   • URLFetch, Datastore, memcache, etc.
                      53
Google AppEngine -
           Free vs Billed




Source: http://code.google.com/appengine/docs/quotas.html
                            54
Google AppEngine -
        Billed
• $0.10 per CPU core hour (actual CPU time
  an app uses to process requests and any
  Datastore usage).
• $0.10 per GB bandwidth incoming, $0.12
  per GB bandwidth outgoing. (in/out data,
  data usage of URLFetch API and Email API).
• $0.15 per GB of data stored per month.
• $0.0001 per email recipient for emails sent
                     55
Azure Services
              Platform
•   Hosted .NET Stack (C# ,VB.Net, ASP.NET).
•   Java & Ruby SDK for .NET Services also available.
•   Windows Azure Fabric Controller:
    •   Provides Scaling and reliability.
    •   Manages memory resources and load balancing.
•   .NET Service Bus registers & connects applications together.
•   .NET Access Control identity providers, including enterprise
    directories and Windows LiveID.
•   .NET Workflow allows construction and execution of
    workflow instances.
                                  56
Salesforce.com
• Force.com PaaS allows developers to
  create add-on functionality that integrates
  into main Salesforce CRM SaaS app.
• Hosted Apex/Visualforce app
 • Apex is a proprietary Java-like language.
 • Visialforce is a XML-like syntax for
    building UIs in HTML, AJAX or Flex.
• AppExchange paid & free app directory.
                     57
Mosso Cloudsites
• Windows and Linux stacks:
 • Linux - PHP 5, Perl, Python, MySQL 5
 • Win - .Net 2.0, 3+3.5, ASP, MS SQL 2k8
• Runs application with very little (if any)
  modification (no custom APIs)
• Transparent load balancing and autoscale.
• Can run PHP, ASP, HTML, Python, and Perl
  pages concurrently from 1 site!
                      58
Heroku
• A platform for instant deployment of Ruby/
  Rails web apps.
• Servers are invisibly managed by the
  platform, and are never exposed to you.
• Apps are dispersed across different CPU
  cores, maximizing performance and
  minimizing contention.
• Logic can route around failures.
                     59
Private / DYI Clouds
• Many platforms exist to run your own
  Cloud:
 • OpenNebula
 • Eucalyptus
 • Nimbus / Globus Workspaces
 • Others ...
                    60
OpenNebula
•   Open-source Virtual Infrastructure management
    software.
•   Supports dynamic resizing, partitioning and scaling of
    resources
•   Supports Private / Public / Hybrid Cloud models:
    •   Turn cluster into private cloud.
    •   Can expose service to public.
    •   Cloud plugins (EC2, GoGrid) enable hybrid model.
•   Offers XML-RPC Web Services
                             61
Eucalyptus
• Open-source (BSD) software infrastructure
  for implementing quot;cloud computingquot; on
  clusters.
• Public or Private Cloud
• Web Service is fully AWS API compliant:
 • EC2, S3 and EBS are all emulated.
 • Enables a Hybrid approach - mix and
    match EC2 and Eucalyptus resources.
                     62
Nimbus / Globus
• Open-source framework to turn your
  cluster into an IaaS cloud.
• Offers two Web Service interfaces:
  • Amazon EC2 WSDLs.
  • Grid community WSRF.
• Several test “Science Clouds” deployed:
  • U. of Chicago, Florida, Perdue & Marsarky
    U.
                      63
Get your head in the
      Clouds

   Cloud Case Study - MetaCDN




               64
MetaCDN: Enabling High
  Performance, Low Cost
Content Storage and Delivery
       via the Cloud
 Dr. James Broberg (brobergj@csse.unimelb.edu.au)
      http://www.csse.unimelb.edu.au/~brobergj

             http://www.metacdn.org
Content Delivery
        Networks (CDNs)
•   What is a CDN?
    •   Content Delivery Networks (CDNs) such as
        Akamai, Mirror Image and Limelight place web
        server clusters in numerous geographical
        locations to improve the responsiveness and
        locality of the content it hosts for end-users.
Existing CDN providers
•   Akamai is the clear leader in coverage and
    market share (approx. 80%), however...
    •   Price is prohibitive for SME, NGO, Gov...
    •   Anecdotally 2−15 times more expensive
        than Cloud Storage, and require 1−2 year
        commitments and min. data use (10TB+)
•   Academic CDNs include Coral, Codeen,
    Globule, however...
    •   No SLA / QoS provided, only ‘best effort’
Major CDN pricing
•   Most major CDN providers do not publish
    prices
•   “Average” prices from the 4-5 major CDNs
    in the market:
    •   50TB: $0.40 - $0.50 per GB delivered
    •   100TB: $0.25 - $0.45 per GB delivered
    •   250TB: $0.10 - $0.30 per GB delivered
•   Information taken from Dan Rayburn @
    www.cdnpricing.com, StreamingMedia.com
Storage Clouds
         ‘Storage as a Service’

Now!




??????
80000
                         Pricing comparison
                          Amazon S3 USA/EU
                                 Nirvanix SDN
                            Mosso Cloud Files
             70000       Major CDNs (average)



             60000


             50000
$USD/month




             40000


             30000


             20000


             10000


                 0
                     0              50           100              150    200   250
                                                Outgoing TB Data/month
Introducing MetaCDN
•   What if we could create a low-cost, high performance overlay
    CDN using these storage clouds?

    •   MetaCDN harnesses the diversity of multiple storage cloud
        providers, offering a choice of deployment location, features
        and pricing.

    •   MetaCDN provides a uniform method / API for harnessing
        multiple storage clouds.

    •   MetaCDN provides a single namespace to cover all supported
        providers, making it simple to integrate into origin sites, and
        handles load balancing for end-users.

    •   The MetaCDN system offers content creators (who are not
        necessarily programmers!) a trivial way to harness the power
        of multiple cloud storage providers via a web portal
How MetaCDN works
      Amazon S3 &                                                 Mosso Cloud                              Microsoft Azure
                                   Nirvanix SDN                                          Coral CDN
       CloudFront                                                  Files CDN                               Storage Service




     JetS3t toolkit               Nirvanix SDK                 Cloud Files SDK         CoralConnector      AzureConnector
     Java SDK                     Java SDK                     Java SDK             Java stub           Java stub
     Open Source                  Nirvanix, Inc                Mosso, Inc           MetaCDN.org         MetaCDN.org


  AmazonS3Connector             NirvanixConnector          CloudFilesConnector
 Java stub                    Java stub                   Java stub                                        Shared/Private
 MetaCDN.org                  MetaCDN.org                 MetaCDN.org                                          Host


                                       MetaCDN
                                                                                                         WebDAVConnector
                                                                                                        Java stub
     MetaCDN             MetaCDN QoS              MetaCDN                MetaCDN
                                                                                                        MetaCDN.org
     Manager                Monitor               Allocator              Database
                                                                                                           SCPConnector
                                                                                                        Java stub
        Web Portal                  Load Redirector                  Web Service                        MetaCDN.org
Java (JSF/EJB) based portal   Random redirection              SOAP Web Service                              FTPConnector
Support HTTP POST             Geographical redirection        RESTful Web Service                       Java stub
New/view/modify deployment    Least cost redirection          Programmatic access                       MetaCDN.org
How MetaCDN works
        AmazonS3Connector                                                          NirvanixConnector
createFolder(foldername, location)             DefaultConnector           createFolder(foldername, location)
deleteFolder(foldername)             DEPLOY_USA                           deleteFolder(foldername)
createFile(file, foldername,          DEPLOY_EU                            createFile(file, foldername,
           location, date)           DEPLOY_ASIA                                      location, date)
createFile(fileURL, foldername,       DEPLOY_AUS                           createFile(fileURL, foldername,
           location, date)           createFolder(foldername, location)
                                                                                      location, date)
renameFile(filename, newname,         deleteFolder(foldername)
                                                                          renameFile(filename, newname,
           location) throws          createFile(file, foldername,
                                                                                      location)
     FeatureNotSupportedException                location, date)
                                                                          createTorrent(file) throws
createTorrent(file)                   createFile(fileURL, foldername,
                                                                               FeatureNotSupportedException
createTorrent(fileURL)                            location, date)
                                                                          createTorrent(fileURL) throws
deleteFile(file, location)            renameFile(filename, newname,
                                                                               FeatureNotSupportedException
listFilesAndFolders()                            location)
                                                                          deleteFile(file, location)
deleteFilesAndFolders()              createTorrent(file)
                                                                          listFilesAndFolders()
                                                                          deleteFilesAndFolders()
                                     createTorrent(fileURL)
           <<exception>>             deleteFile(file, location)
  FeatureNotSupportedException       listFilesAndFolders()
FeatureNotSupportedException(msg)    deleteFilesAndFolders()
MetaCDN Allocator
•   The MetaCDN Allocator allows users to
    deploy files either directly or from a public
    origin URL, with the following options:
    •   Maximise coverage and performance
    •   Deploy content in specific locations
    •   Cost optimised deployment
    •   Quality of Service (QoS) optimised
MetaCDN Manager
•   The MetaCDN Manager ensures that:
    •   All current deployments are meeting QoS
        targets (where applicable)
    •   Replicas are removed when no longer
        required (minimising cost)
    •   A users’ budget has not been exceeded, by
        tracking usage (i.e. storage/download)
MetaCDN QoS Monitor

•   The MetaCDN QoS Monitor:
    •   Tracks the performance of participating
        providers at all times
    •   Monitors and records throughput, response
        time and uptime from a variety of locations
    •   Ensures that upstream providers are
        meeting their Service Level Agreements
MetaCDN Database
MetaCDN   1               0:M      CDN        1                 1        CDN
                 has                                  for
  User                          Credentials                             Provider

 1                                                              1         1

                                                     hosted
  has                                                                      has
                                                       by
                                              M
 1                                                                       M
          1    deployed   0:M   MetaCDN       M      hosted         1   Coverage
Content           as             Replica               at               locations

                                                                          1

                                                                    M
                                                  QoS Monitor           measures
MetaCDN Web Portal
•   Developed using Java Enterprise and Java
    Server Faces (JSF) technologies
•   JPA/MySQL back-end to store persistent data
•   Web portal acts as the entry point to the
    system and application-level load balancer
•   Most suited for small or ad-hoc deployments,
    and especially useful for less technically
    inclined content creators.
Don't have a MetaCDN account?                    Sign in


 Register                                        Username:         master


                                                 Password:         ••••••


                                                                     Login


 All trademarks mentioned herein are the exclusive property of their respective owners.
                    This project is supported by the:
Register new MetaCDN account:


Username:                  joebloggs                        Full Name:                 Joe Bloggs


Password:                  ••••••                           Email:                     joe@blogs.com


Preferred Providers:          Nirvanix SDN                      Amazon S3


                              Mosso Cloud Files                 Microsoft Azure Storage Service


                              Shared/Private Host


  Nirvanix SDN      Amazon S3          Mosso Cloud Files      Microsoft Azure Storage Service   Shared/Private Host

  Enter your Amazon S3 Credentials:
  AWS Access Key:                      ******************************

  AWS Secret Key:                      ******************************

  Enable CloudFront:




 Register        Cancel
 All trademarks mentioned herein are the exclusive property of their respective owners.
                       This project is supported by the:
Welcome to the MetaCDN Portal!


     Deploy content                   View existing content                Deployment Map


                                      View existing replicas              MetaCDN Analytics


                                         Edit Account                           Logout


All trademarks mentioned herein are the exclusive property of their respective owners.
                   This project is supported by the:
Sideload Content:


Choose URL:              http://pitchfork.com/media/frontend/images/header_logo.gif


Deployment region(s):          North America                Europe
                               Asia                         Australasia


Host Until:              30/05/2009

 Deploy        Cancel


 All trademarks mentioned herein are the exclusive property of their respective owners.
                    This project is supported by the:
Deployment Map:




                  Terms of Use




 Back
MetaCDN Web Service
•   Makes all functionality available via Web
    Services (SOAP & REST/HTTP)
    •   Web interface is useful for novices and for
        ad-hoc deployments, but doesn’t scale
    •   Larger customers have 1,000’s - 10,000 -
        100,000s of files that need deployment
    •   Let them automate their deployment and
        management via Web Services!
    •   Perfect for Mashup developers!!!
MetaCDN Load
             Redirector
•   We have created a unified namespace to
    simply deployment, routing, management
•   Currently, file deployment results in multiple
    URLs, each mapping to a replica
    •   http://metacdn-eu-user.s3.amazonaws.com/myfile.mp4

    •   http://metacdn-us-user.s3.amazonaws.com/myfile.mp4

    •   http://node3.nirvanix.com/MetaCDN/user/myfile.mp4

•   Single namespace is created for fine control
    •   http://www.metacdn.org/FileMapper?itemid=2
MetaCDN Load
        Redirector (cont.)
•   Actual load redirection logic depends on deployment
    option used by MetaCDN user:

    •   Maximise coverage and performance? - Find closest
        physical replica

    •   Deploy content in specific locations? - Find closest
        physical replica

    •   Cost optimised deployment? - Find cheapest
        replica, minimises cost to maximise lifetime

    •   Quality of Service (QoS) optimised? - Find best
        (historically) performing replica
MetaCDN Load
               Redirector (cont.)
MetaCDN end-user                                        DNS Server                  MetaCDN gateway
             Resolve www.metacdn.org

                Return IP of closest MetaCDN gateway,
                www-na.metacdn.org


                              GET http://metacdn.org/MetaCDN/FileMapper?itemid=1

                                                                                                 processRequest ()




                                                                                                geoRedirect ()




                         HTTP 302 Redirect to
                         http://metacdn-us-username.s3.amazonaws.com/filename.pdf

          Resolve metacdn-us-username.s3.amazonaws.com                              Amazon S3 USA

         Return IP of metacdn-us-username.s3.amazonaws.com

                      GET http://metacdn-us-username.s3.amazonaws.com/filename.pdf

                      Return replica
Redirector Overhead
          1.8
                from USA
                 S3 USA
                MetaCDN
          1.6


          1.4


          1.2


           1
Seconds




          0.8


          0.6


          0.4


          0.2


           0
                0         5   10          15   20   25
                                   Hour
Redirector Overhead
           0.9
              from Australia
                                          Nirvanix SDN #3
                                                 MetaCDN

          0.85



           0.8



          0.75
Seconds




           0.7



          0.65



           0.6



          0.55
                 0   5   10          15        20           25
                              Hour
Evaluating MetaCDN
        performance
•   Ran tests over 24 hour period (mid-week)
•   Downloading test replicas (1KB, 10MB) 30
    times per hour, take average and conf. inter.
    •   10MB - Throughput, 1KB - Response Time
•   Ran test from 6 locations: Melbourne (AUS),
    Paris (FRA), Vienna (AUT), San Diego & New
    Jersey (USA), Seoul (KOR)
•   Replicas located across US, EU, ASIA, AUS
Summary of Results -
              Throughput (KB/s)
                S3    S3   SDN   SDN   SDN   SDN
                                                   Coral
                US    EU    #1    #2    #3    #4
Melbourne
 Australia     264.3 389.1 30 366.8 408.4 405.5 173.7
Paris France   703.1 2116 483.8 2948 416.8 1042 530.2
   Vienna
  Austria      490.7 1347 288.4 2271 211 538.7 453.4
   Seoul
South Korea    312.8 376.1 466.5 411.8 2456 588.2 152
 San Diego
    USA        1234 323.5 5946 380.1 506.1 820.4 338.5
New Jersey
    USA        2381 1949 860.8 967.1 572.8 4230 636.4
Summary of results -
               Response Time (Sec)
                S3    S3   SDN   SDN    SDN   SDN
                                                    Coral
                US    EU    #1    #2     #3    #4
Melbourne
 Australia     1.378 1.458 0.663 0.703 1.195 0.816 5.452
Paris France   0.533 0.2 0.538 0.099 1.078 0.316 3.11
   Vienna
  Austria      0.723 0.442 0.585 0.099 1.088 0.406 3.171
   Seoul
South Korea    1.135 1.21 0.856 0.896   1     0.848 3.318
 San Diego
    USA        0.232 0.455 0.23 0.361 0.775 0.319 4.655
New Jersey
    USA        0.532 0.491 0.621 0.475 1.263 0.516 1.916
Summary of results
         (cont)
•   Clients benefited greatly from local replicas

•   Results are consistent in terms of response time
    and throughput with previous studies of
    dedicated CDNs

•   Back-end cloud providers have sufficient
    performance and reliability to be used to host
    replicas in the MetaCDN system

•   Adding “CDN” Cloud Providers (Amazon
    CloudFront, Mosso Cloud Files) will likely
    significantly improve results.
How can we make
        MetaCDN scale?
•   Already grown from 1 gateway to multiple
    gateways:
    •   1 gateway in Melbourne, Australia (physical)
    •   1 gateway in Seattle, WA (EC2 “USA-East”)
    •   1 gateway in Dublin, IRE (EC2, “EU-West”)
•   Deploy more gateways on-demand as required:
    •   Based on locality of requests, add gateways
    •   As demand decreases, remove gateways.
How do we make
        MetaCDN scale?
•   Use DNS-based redirection to closest
    gateway.
    •   Dynamically update A-DNS entries using
        Web Service API.
•   Fill Cloud black holes with seamlessly
    integrated non-“Cloud” storage:
    •   Add shared / private host support.
    •   FTP, WebDAV, SCP accessible.
MetaCDN features in
planning / development
•   Support as many providers as possible

    •   Windows Azure Storage Service support will
        be finished very shortly.

•   Integrated Flash video and MP3 audio streaming
    with embeddable players for customers to place
    on their origin sites.
MetaCDN features in
planning / development
•   Autonomic deployment management
    (expansion/contraction) based on demand
•   Autonomic deployment management
    (expansion/contraction) based on QoS
•   Security / ACL framework that spans all
    cloud storage providers
•   “One time” MetaCDN URLs
Collaborations
•   Always looking for people to collaborate on
    the project
•   Work to be done on:
    •   Load balancing / redirection algorithms
    •   Intelligent Caching / replication algorithms
    •   Security / Access Control of content
    •   Improving MetaCDN Web Services
•   Please contact me if you are interested...
Publications
•   J. Broberg and Z. Tari. MetaCDN: Harnessing Storage Clouds for High
    Performance Content Delivery. In Proceedings of The Sixth International
    Conference on Service-Oriented Computing [Demonstration Paper]
    (ICSOC 2008), LNCS 5364, pp. 730–731, 2008.

•   J. Broberg, R. Buyya and Z. Tari. Creating a ‘Cloud Storage’ Mashup for High
    Performance, Low Cost Content Delivery, Second International Workshop
    on Web APIs and Services Mashups (Mashups’08), In Proceedings of The
    Sixth International Conference on Service-Oriented Computing
    Workshops, LNCS 5472, pp. 178–183, 2009.

•   J. Broberg, R. Buyya, and Z. Tari, MetaCDN: Harnessing ‘Storage Clouds’ for
    high performance content delivery, Journal of Network and Computer
    Applications (JNCA), To appear, 2009

•   R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, and I. Brandic. Cloud computing
    and emerging IT platforms: Vision, hype, and reality for delivering computing
    as the 5th utility, Future Generation Computer Systems. To appear, 2009.
Open Research Issues
in Cloud Computing



         102
Research Issues
•   Interoperability
•   Portability
•   Reliability & Monitoring
•   Data Security and Jurisdiction
•   Innovative Cloud Pricing Models
•   Innovative Service Models
Interoperability
• Many ongoing “open” standards efforts:
 • Cloud Computing Interoperability Forum
 • Open Grid Forum (OGF) Open Cloud
    Computing Interface Working Group
 • DMTF Open Cloud Standards Incubator
 • GoGrid API (CC licensed)
 • Sun Cloud API (CC licensed)
 • Amazon Web Services as “de-facto”
                   104
Portability
• Amazon Machine Image (AMI)
• VMWare Virtual Machine Disk Format
  (VMDK)
• Citrix XenServer / Microsoft Hyper-V
  Virtual Hard Disk (VHD)
• Open Source Xen Virtual Block Device
  (VBD) - File or LVM based

                    105
Portability - Solutions?
•   Virtual to Virtual (V2V):
    •   VMware vCenter Converter
    •   Citric XenConvert
•   DMTF Virtualization Management Initiative
    •   Open Virtualization Format (OVF)
    •   Initial support in XenServer / VMWare
        •   Project Kensho (Xenserver/Citrix)
        •   OVF Tool Technology Preview (VMWare)
                            106
Reliability & Monitoring
• Outages happen!
 • Amazon AWS: 8hrs (7/08), 2hrs (2/08),
    48hrs (10/07)
 • Google GMail - 2hrs (2/09)
 • Google - 1.5hrs (5/09) - “An error in one
    of our systems caused us to direct some
    of our web traffic through Asia.”

                    107
Reliability & Monitoring

• Full transparency is needed:
 • Cloudstatus.com (Hyperic)
 • http://trust.salesforce.com/
    (Salesforce.com)
  • http://status.aws.amazon.com/ (Amazon)

                       108
Learn More about CloudStatus

                                                                                                                                 Updated 17:10:06. Updates in 44
Amazon Service Summary
                                   Amazon Web Services Health Summary
Elastic Compute Cloud (EC2)
                                   These charts display real-time health status and the last twenty four hours of health history for key Amazon Web
Simple Storage Service (S3)
                                   Services. Click a Service in the left panel for detailed service health status, metrics, and more history. More information
Simple Queue Service (SQS)         on CloudStatus.

Simple DB (SDB)
                                                                                                                   Healthy    Service Issues     Service Failure
Flexible Payment Service (FPS)
                                                                                                                   CURRENT
                                                                                                                                   Hyperic: EC2
                                                                                                                                   deployment latency
                                                                                                                                   affected by SQS outage.
                                    EC2
                                                                                                                                   Excessive amounts of
                                             7/20/08 12:09 AM                                        7/21/08 12:09 AM              EC2 zombies created @
                                                                                                                                   7/20/08 8:46 AM
Sign-up for CloudStatus Updates.
                                                                                                                   CURRENT
                                                                                                                                   Hyperic: S3 reports
                                                                                                                                   numerous internal
                                                                                                                                   server errors @ 7/20/08
                                    S3
                                                                                                                                   8:46 AM
                                             7/20/08 12:09 AM                                        7/21/08 12:09 AM



                                                                                                                   CURRENT
                                                                                                                                   Hyperic: SQS reports
                                                                                                                                   numerous internal
                                                                                                                                   server errors @ 7/20/08
                                    SQS
                                                                                                                                   8:46 AM
                                             7/20/08 12:09 AM                                        7/21/08 12:09 AM



                                                                                                                   CURRENT


                                    SDB
                                             7/20/08 12:09 AM                                        7/21/08 12:09 AM



                                                                                                                   CURRENT


                                    FPS
                                             7/20/08 12:09 AM                                        7/21/08 12:09 AM



                    About CloudStatus Beta          CloudStatus Forums          About Hyperic         Hyperic HQ         Hyperic Blog
                                             Problems with the website? Send us an email at webmaster@hyperic.com
                                                                              109
                                                                      ©2008 Hyperic, Inc.
Home   Security      System Status       Customer Login

                  View Upcoming Maintenance Schedule

              Wednesday May 6, 2009 | 9:02 am PDT
                                        AP0     AP1    EU0   NA0
                  Service System                                             NA1      NA2     NA3      NA4      NA5     NA6      CS0     CS1     CS2    CS3
                                      (Japan) (APAC) (EMEA) (SSL)
                             Status




                  All Systems Operational
                  No issues reported.




              Service Performance History †
              Updated 5/6/2009 9:01 am PDT                                                           System Status
                                                    Avg.
                               Number of                      AP0     AP1    EU0   NA0
                   Date                            Speed*                               NA1 NA2 NA3 NA4 NA5 NA6 CS0 CS1 CS2 CS3
                              Transactions                  (Japan) (APAC) (EMEA) (SSL)
                                                  (seconds)
                  05/06/09     59,249,466          0.342

                  05/05/09     192,641,081         0.326

                  05/04/09     178,749,530         0.327

                  05/03/09     66,264,679          0.251

                  05/02/09     70,840,532          0.260

                  05/01/09     165,414,591         0.311

                  04/30/09     194,557,330         0.328

                  04/29/09     191,071,439         0.303

                  04/28/09     198,498,961         0.323

                  04/27/09     194,860,414         0.321

                  04/26/09     66,081,408          0.227

                  04/25/09     70,805,190          0.231

                  04/24/09     182,156,924         0.285

                  04/23/09     191,111,300         0.282

                  04/22/09     190,279,196         0.334

                  04/21/09     192,991,907         0.334

                  04/20/09     189,647,185         0.331

                  04/19/09     61,745,868          0.220

                  04/18/09     68,755,196          0.252

                  04/17/09     177,727,343         0.323

                  04/16/09     188,910,455         0.310

                  04/15/09     191,104,119         0.340

                  04/14/09     190,953,644         0.353

                  04/13/09     166,227,451         0.319

                  04/12/09     63,256,822          0.237

                  04/11/09     69,538,950          0.242

                  04/10/09     139,355,992         0.284

                  04/09/09     179,285,342         0.297

                             Instance available     Performance issues      Service disruption      Informational message        Status not available

                                                                                  110
              † Service Performance History is updated four times daily. Today's date may reflect partial day's data.
              * Salesforce.com service transaction speed. Your on-site page load times may vary based on your bandwidth and network latency.
111
112
113
114
Why is monitoring
        important?
•   “To be eligible, the credit request must (i)
    include your account number in the subject
    of the e-mail message [..]; (ii) include, in the
    body of the e-mail, the dates and times of
    each incident of non-zero Error Rates that
    you claim to have experienced; (iii) include
    your server request logs that document the
    errors and corroborate your claimed outage
    [..]; and (iv) be received by us within ten (10)
    business days after the end of the billing cycle
    in which the errors occurred.” - SLA for S3
Why is monitoring
        important?
•   “To receive a credit, you must contact your
    The Rackspace Cloud account team within
    thirty (30) days following the end of the
    downtime. You must show that your use of
    the Cloud Servers was adversely affected in
    some way as a result of the downtime to be
    eligible for the credit.” - SLA for Mosso
    Cloud Servers
Why is monitoring
        important?
•   “Customer must open a support case (a
    quot;Casequot;) during the Failure in question.
    Customer will open all Cases through the
    Customer Portal. In opening a Case,
    Customer will provide complete information
    regarding the nature of the problem, including
    any information reasonably necessary for
    diagnosis and correction, by following the
    Case opening procedures at the Customer
    Portal. [...]” - SLA for GoGrid
Why is monitoring
          important?
•   Service credits are not automatic!
•   Requires immediate user action:
    •   Claim within certain time period
    •   Note specific dates and times of outage
    •   Provide proof (i.e. logs) of outage
•   Automated monitoring & alert services are
    invaluable in this environment.
Data Security and
Jurisdiction in the Cloud
•   Cloud Servers abstract where processing
    occurs and where your data is stored.
•   Software/data are subject to laws & regs. of
    where they are executed & stored.
•   Consider:
    •   Digital Millennium Copyright Act (DMCA)
    •   Cryptography Export laws
    •   Other regs (SEC, Sarbanes-Oxley, HIPPA)
Innovative Cloud Pricing
         Models
•   Pricing for Cloud services is very static
•   Lets take some cues from traditional utilities:
    •   Peak / Off Peak pricing.
    •   Spreads demand, making capacity planning
        more predictable for providers.
    •   Flexible Cloud Consumers can save money.
Innovative Service
        Models for Clouds.
•   Create framework for Cloud Consumers to
    be Cloud Providers.
•   Again, cues from utilities like power:
    •   End-users & businesses can sell back
        electricity generated by solar energy to grid
    •   Enable sell back of under-utilised resources
        using same tech. cloud providers’ use!
•   Win-win situation as companies could resell
    these resources and expand their footprint.
Introduction to Cloud
     Computing
• What we covered:
 • Part I - An Introduction to Cloud
    Computing.
 • Part II - “Get your head in the Clouds” -
    MetaCDN Cloud Case Study.
 • Part III - Open Research Issues in Cloud
    Computing.

                    122
Thanks
Any questions?




      123

Mais conteúdo relacionado

Mais procurados

5 BENEFITS OF HYBRID CLOUD
5 BENEFITS OF HYBRID CLOUD5 BENEFITS OF HYBRID CLOUD
5 BENEFITS OF HYBRID CLOUDTyrone Systems
 
Cloud Computing - An Introduction
Cloud Computing - An IntroductionCloud Computing - An Introduction
Cloud Computing - An IntroductionRavindra Dastikop
 
Summer School Scale Cloud Across the Enterprise
Summer School   Scale Cloud Across the EnterpriseSummer School   Scale Cloud Across the Enterprise
Summer School Scale Cloud Across the EnterpriseWSO2
 
Cloud computing - Latest Trend
Cloud computing - Latest TrendCloud computing - Latest Trend
Cloud computing - Latest Trendpoojanov04
 
Architectures for open and scalable clouds
Architectures for open and scalable cloudsArchitectures for open and scalable clouds
Architectures for open and scalable cloudsRandy Bias
 
Cloud Computing & CloudStack Open Source
Cloud Computing & CloudStack Open SourceCloud Computing & CloudStack Open Source
Cloud Computing & CloudStack Open SourceAhmadShah Sultani
 
IT Geek Week 2016 - Introduction To Cloud Computing
IT Geek Week 2016 - Introduction To Cloud ComputingIT Geek Week 2016 - Introduction To Cloud Computing
IT Geek Week 2016 - Introduction To Cloud ComputingHaim Ateya
 
How to Think Multi-Cloud
How to Think Multi-CloudHow to Think Multi-Cloud
How to Think Multi-CloudRightScale
 
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...LicensingLive! - SafeNet
 
Cloud Computing Introduction
Cloud Computing IntroductionCloud Computing Introduction
Cloud Computing IntroductionCraig Dickson
 
Introduction to Cloud computing
Introduction to Cloud computingIntroduction to Cloud computing
Introduction to Cloud computingMathews Job
 
What is cloud computing
What is cloud computingWhat is cloud computing
What is cloud computingDan Morrill
 
An Introduction To Infarstructures For Cloud Computing V0.2
An Introduction To Infarstructures For Cloud Computing V0.2An Introduction To Infarstructures For Cloud Computing V0.2
An Introduction To Infarstructures For Cloud Computing V0.2Ignacio M. Llorente
 

Mais procurados (20)

5 BENEFITS OF HYBRID CLOUD
5 BENEFITS OF HYBRID CLOUD5 BENEFITS OF HYBRID CLOUD
5 BENEFITS OF HYBRID CLOUD
 
Enterprise Journey to the Cloud
Enterprise Journey to the CloudEnterprise Journey to the Cloud
Enterprise Journey to the Cloud
 
Cloud Computing - An Introduction
Cloud Computing - An IntroductionCloud Computing - An Introduction
Cloud Computing - An Introduction
 
Summer School Scale Cloud Across the Enterprise
Summer School   Scale Cloud Across the EnterpriseSummer School   Scale Cloud Across the Enterprise
Summer School Scale Cloud Across the Enterprise
 
Hybrid cloud computing explained
Hybrid cloud computing explainedHybrid cloud computing explained
Hybrid cloud computing explained
 
Cloud computing - Latest Trend
Cloud computing - Latest TrendCloud computing - Latest Trend
Cloud computing - Latest Trend
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Cloud Computing Technology Overview 2012
Cloud Computing Technology Overview 2012Cloud Computing Technology Overview 2012
Cloud Computing Technology Overview 2012
 
Architectures for open and scalable clouds
Architectures for open and scalable cloudsArchitectures for open and scalable clouds
Architectures for open and scalable clouds
 
Cloud Computing & CloudStack Open Source
Cloud Computing & CloudStack Open SourceCloud Computing & CloudStack Open Source
Cloud Computing & CloudStack Open Source
 
Cloud computing Fundamentals
Cloud computing FundamentalsCloud computing Fundamentals
Cloud computing Fundamentals
 
Cloud computing What Why How
Cloud computing What Why HowCloud computing What Why How
Cloud computing What Why How
 
IT Geek Week 2016 - Introduction To Cloud Computing
IT Geek Week 2016 - Introduction To Cloud ComputingIT Geek Week 2016 - Introduction To Cloud Computing
IT Geek Week 2016 - Introduction To Cloud Computing
 
How to Think Multi-Cloud
How to Think Multi-CloudHow to Think Multi-Cloud
How to Think Multi-Cloud
 
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
 
Cloud Computing Introduction
Cloud Computing IntroductionCloud Computing Introduction
Cloud Computing Introduction
 
Introduction to Cloud computing
Introduction to Cloud computingIntroduction to Cloud computing
Introduction to Cloud computing
 
What is cloud computing
What is cloud computingWhat is cloud computing
What is cloud computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
An Introduction To Infarstructures For Cloud Computing V0.2
An Introduction To Infarstructures For Cloud Computing V0.2An Introduction To Infarstructures For Cloud Computing V0.2
An Introduction To Infarstructures For Cloud Computing V0.2
 

Semelhante a Introduction to Cloud Computing - CCGRID 2009

Cloud Computing
Cloud ComputingCloud Computing
Cloud Computingchrismik
 
Introduction to Cloud Computing
Introduction to Cloud Computing Introduction to Cloud Computing
Introduction to Cloud Computing Pratik Patil
 
CC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838e
CC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838eCC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838e
CC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838eRamzanShareefPrivate
 
OIT552 Cloud Computing - Question Bank
OIT552 Cloud Computing - Question BankOIT552 Cloud Computing - Question Bank
OIT552 Cloud Computing - Question Bankpkaviya
 
Cloud computing ppt
Cloud computing pptCloud computing ppt
Cloud computing pptA
 
Lect15 cloud
Lect15 cloudLect15 cloud
Lect15 cloudVan Pham
 
Lect15 cloud
Lect15 cloudLect15 cloud
Lect15 cloudsree raj
 
Introduction to cloud computing
Introduction to cloud computingIntroduction to cloud computing
Introduction to cloud computingRevathi Ram
 
Cloud computing ppt
Cloud computing pptCloud computing ppt
Cloud computing pptA
 
Grid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptxGrid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptxDrAdeelAkram2
 

Semelhante a Introduction to Cloud Computing - CCGRID 2009 (20)

Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Best
BestBest
Best
 
Introduction to Cloud Computing
Introduction to Cloud Computing Introduction to Cloud Computing
Introduction to Cloud Computing
 
CC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838e
CC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838eCC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838e
CC Notes.pdf of jdjejwiwu22u28938ehdh3y2u2838e
 
OIT552 Cloud Computing - Question Bank
OIT552 Cloud Computing - Question BankOIT552 Cloud Computing - Question Bank
OIT552 Cloud Computing - Question Bank
 
Lect15 cloud
Lect15 cloudLect15 cloud
Lect15 cloud
 
Cloud
CloudCloud
Cloud
 
Cloud computing ppt
Cloud computing pptCloud computing ppt
Cloud computing ppt
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Cloud
CloudCloud
Cloud
 
Lect15 cloud
Lect15 cloudLect15 cloud
Lect15 cloud
 
Lect15 cloud
Lect15 cloudLect15 cloud
Lect15 cloud
 
Lect15 cloud
Lect15 cloudLect15 cloud
Lect15 cloud
 
Introduction to cloud computing
Introduction to cloud computingIntroduction to cloud computing
Introduction to cloud computing
 
Cloud computing ppt
Cloud computing pptCloud computing ppt
Cloud computing ppt
 
Lect15 cloud
Lect15 cloudLect15 cloud
Lect15 cloud
 
Grid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptxGrid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptx
 
cloud computng
cloud computng cloud computng
cloud computng
 
Cloud introduction
Cloud introductionCloud introduction
Cloud introduction
 
CLOUD
CLOUDCLOUD
CLOUD
 

Último

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Último (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

Introduction to Cloud Computing - CCGRID 2009

  • 1. Introduction to Cloud Computing Dr. James Broberg (brobergj@csse.unimelb.edu.au) Australian Postdoctoral Fellow University of Melbourne 1
  • 2. Introduction to Cloud Computing • Programme: • Part I - An Introduction to Cloud Computing. • Part II - “Get your head in the Clouds” - MetaCDN Cloud Case Study. • Part III - Open Research Issues in Cloud Computing. 2
  • 3. Cloud Computing - Part I • What is “cloud computing”? • What type of clouds exist? • How does cloud computing differ from Cluster, Grid & Utility Computing? • Examples of Computational Clouds • Examples of Storage Clouds • Examples of Platform/Application Clouds 3
  • 4. Cloud Computing - Part II • Case Study: MetaCDN • Cloud CDN Overlay application that uses Compute and Storage Clouds combined with traditional physical resources. 4
  • 5. Cloud Computing - Part III • Open Research Issues in Cloud Computing • Interoperability • Portability • Reliability & Monitoring • Data Security and Jurisdiction • Innovative Cloud Pricing Models • Innovative Service Models 5
  • 7. What is Cloud Computing? • How can we define Cloud Computing? • What does (and does not) constitute a “cloud” platform? • Enabling technologies for cloud computing • Virtual Machines • Virtualised Storage • Web Services 7
  • 8. Cloud Computing defined... • “.. a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet” - Wikipedia 8
  • 9. Cloud Computing defined... • “Clouds are hardware-based services offering compute, network and storage capacity where: Hardware management is highly abstracted from the buyer, Buyers incur infrastructure costs as variable OPEX, and Infrastructure capacity is highly elastic” - McKinsey & Co. Report: “Clearing the Air on Cloud Computing” 9
  • 10. Cloud Computing defined... • “Cloud computing has the following characteristics: (1) The illusion of infinite computing resources… (2) The elimination of an up-front commitment by Cloud users… (3). The ability to pay for use…as needed…”– UCBerkeley RADLabs 10
  • 11. Cloud Computing defined... • “... a pay-per-use model for enabling available, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” - National Institute of Standards and Technology (NIST) 11
  • 12. Cloud Computing defined... • “Clouds are a large pool of easily usable and accessible virtualized resources (such as hardware, development platforms and/or services). These resources can be dynamically re-configured to adjust to a variable load (scale), allow-ing also for an optimum resource utilization. This pool of resources is typically exploited by a pay-per-use model in which guarantees are offered by the Infrastructure Provider by means of customized SLAs.” - Paper by Vaquero et. al.: “A break in the clouds: towards a cloud definition” 12
  • 13. Common Ground? • Pay-per-use (no commitment, utility prices). • Elastic capacity - scale up/down on demand. • Self-service interface. • Resources are abstracted / virtualised. 13
  • 14. Enabling Technologies • Several key components have matured and are essential building blocks of many Cloud services: • Virtual Machines • Virtualised Storage • Web Services 14
  • 15. Virtual Machines • In the last 5 years VM technology has become pervasive and “cheap” / free • The main players are: ‣ VMWare [ESX/GSX Server, Workstation] ‣ XenSource [XenEnterprise/Server/Express] ‣ SWsoft/Parallels [Virtuozzo, Desktop] ‣ Microsoft [Virtual Server]
  • 16. Virtual Machines • Factors contributing to rising profile: • Commodity multi-core, 64bit machines [dual/quad core, >>4 gig memory] • Hardware assisted virtualisation - using Intel VT(tm) and AMD Pacifica(tm) - runs unmodified OS at near native speeds • Integration of VM tech. into mainstream server OS’s (RHEL, Ubuntu, Windows)
  • 17. Virtual Machines • Improves utilisation by multiplexing many VMs on one physical host (consolidation) • Allows agile deployment and management of services. • On demand cloning, (live) migration & checkpoint improves reliability. • VM can be a self-contained unit of execution and migration!
  • 18. Virtualised Storage • Distributed File Systems: • Google File System (GFS) • Hadoop Distributed File System (HDFS) • Cluster File Systems: • VMware vStorage VMFS • XenServer Storage Pool
  • 19. Web Services • SOAP • XML Messages • Web Services Description Language (WSDL) • WS-* • REST / RESTful • GET, POST, PUT, DELETE for HTTP (crud) • More lightweight HTTP / JSON schemes
  • 21. Public Cloud • Publicly accessible, self-service model: • Access via well-defined & published Web Services (i.e. SOAP or REST). • Access via management portal. • Free or pay-per-use. • No ongoing contract or commitment. 21
  • 22. Private Cloud • Emulate Public Cloud on private / internal resources. • Gives benefit of Clouds (elasticity, dynamic provisioning, multiplexing) while: • Maintaining control of resources (security). • Meeting Corporate/Regulatory req. (governance). • Option to scale out to Public Cloud ... 22
  • 23. Hybrid Cloud • Combination of private/internal and external Cloud resources. • “Cloudbursting” to handle “Flash Crowds” • Provision additional resources from Public Clouds on-demand. • Release resource when no longer needed. • Can outsource non-critical functions. 23
  • 24. How did we get here? Cluster Computing • What about: • Cluster Computing? Grid • Grid Computing? Computing • Utility Computing? Utility Computing 24
  • 25. Cluster Computing • Clusters are linked computer systems that can co-operate to perform computations and deliver services: • Often function / appear as single server. • Typically linked over LAN. • Offers scalability over single-server. • Used for high-availability (redundant), load balancing, shared compute (w/ IPC). 25
  • 26. Grid Computing • Grids are autonomous and dynamic distributed resources contributed by multiple organisations. • Can offer computing, network, sensor and storage resources. • Resources are loosely coupled, heterogeneous, geographically dispersed. • Used in diverse fields: climate modelling, drug design and protein analysis to solve “Grand Challenges”. 26
  • 27. Grid Computing • Traditional Grid resource management techniques did not ensure fair and equitable access to resources in many systems: • Traditional metrics (throughput, waiting time, slowdown) failed to capture the more subtle requirements of users. • No incentives for users to be flexible about resource req. or job deadlines. • No provisions to accommodate users with urgent work. 27
  • 28. Utility Computing • Users assign a “utility” value to their jobs: • Utility is a fixed or time-varying valuation that captures various QoS constraints (deadline, importance, satisfaction) • Valuation is amount they are willing to pay a service provider to satisfy demands. • Service providers attempt to maximise their own utility: • Utility may directly correlate with their profit. • Prioritise high yield (i.e. profit per unit of resource) user jobs. • Shared Grid systems are then viewed as a marketplace, where users compete for resources based on the perceived utility / value of their jobs. 28
  • 31. Public Compute Clouds - Infrastructure as a Service • Amazon EC2 • GoGrid • Slicehost • Mosso Cloud Servers 31
  • 32. Amazon Elastic Compute Cloud (EC2) • Provides resizable compute capacity in the cloud. • Can be leveraged via: • Web Services (SOAP or REST). • AWS Management Console. • EC2 Command Line Tools. • Provides hundreds of pre-made AMIs. 32
  • 33. Amazon Elastic Compute Cloud (EC2) • Standard Instances (S, L, XL) • Prop. more RAM than CPU • High CPU Instances (M, XL) • Prop. more CPU than RAM • Choice of Windows or Linux Images • US-East and EU-West Regions ($EU>$US) • “Value-added” AMIs cost more 33
  • 34. Amazon EC2 On- Demand Instances 34
  • 35. Amazon EC2 Reserved Instances 35
  • 36. Amazon EC2 Windows Server 36
  • 37. Amazon EC2 IBM Platforms 37
  • 38. Amazon EC2 Success Stories • SmugMug - Online Photo Sharing • EC2 instances handles batch ops: upload, rotate, transcode, watermark, etc... • Hybrid approach: Own datacenter + Cloud, autoscale up/down as needed. • Animoto - Creates Cool Videos from Photos & Music • Scaled from 50 instances of EC2 up to 3,500 instances of EC2 within days. 38
  • 39. GoGrid Cloud Hosting • Provides pre-made images: • Windows and Linux. • “Value-added” stacks on top. • Range of (fixed) instance sizes. • Offers hybrid dedicated / cloud server infrastructure. • Free hardware LB and autoscaling. 39
  • 40. Slicehost VPS Hosting • Fixed size “slices”. • Slice size measured by RAM, not CPU. • Pre-made Linux images. • No SLA, simply “best effort”. • Monthly billing (not per-hour). • Does that fit “Cloud” definition? 40
  • 41. Mosso Cloud Servers • Fixed size Cloud Servers. • Server size measured by RAM, not CPU • Offers range of pre-made Linux instances • Offers hybrid dedicated / cloud server infrastructure. • Offers fixed IPs and A-DNS by default. 41
  • 42. Compute Cloud Comparison Mosso Cloud Amazon EC2 GoGrid Slicehost Servers Instance Cost $0.10-$1.28 / hr $0.095-$1.32 / hr $20-$80 / month $0.015-$0.96 / hr Linux Support Yes Yes Yes Yes Windows Support Yes Yes No No Cores/CPU 1-20 1-6 4 (weighted) 4 (weighted) Memory 1.7GB -15GB 0.5GB - 8GB 256MB - 15.5GB 256MB - 15GB Persistent Storage No (req. S3/EBS) Yes Yes Yes Default Public IP No (req. Elast. IP) Yes Yes Yes Managed DNS No Yes No Yes Support Cost $400 / 20% Spend Free Free $A100 Hybrid Cloud? No Yes No Yes SLA 99.95% 100% N/A 100% Running instances 20* ? ? Unlimited* API Yes Yes Yes Yes 42
  • 43. Public Storage Clouds - Storage as a Service • Amazon Simple Storage Service (S3) • Amazon CloudFront • Nirvanix Storage Delivery Network • Mosso Cloud Files • Microsoft Azure Storage Services 43
  • 44. Amazon Simple Storage Service (S3) • Amazon S3 was launched US in March 2006, and EU in November 2007. • REST/SOAP interfaces to storage resources • Users can read, write or delete an unlimited # of objects, 1 byte to 5 GB each. • Files stored in flat “bucket” structure. • BitTorrent can be used to minimise cost. 44
  • 45. Amazon CloudFront • Launched in November 2008. • CDN service that adds 14 edge locations (8 in the US, 4 in EU, and 2 in Asia). • CloudFront does not offer persistent storage. • Analogous to proxy cache, with files deployed to and removed from CF locations based on demand. 45
  • 46. Nirvanix Storage Delivery Network (SDN) • Launched on September 2007. • Has 3 US locations (San Diego, Seacaucus, Houston), 1 EU (Frankfurt), 1 Asia (Tokyo) • Launched with SLA-backed uptime guarantee when S3 was only best-effort. • Offers automatic file replication over sites in the SDN, and supports file sizes up to 256 GB. 46
  • 47. Mosso CloudFiles • Launched late 2008. • Base storage location in Dallas Texas. • Files stored in flat “bucket” structure. • Offers integration with Limelight CDN. • Adds more than 70 locations. • No transfer costs from origin to CDN. 47
  • 48. Microsoft Azure Storage Service • CTP launched in late 2008. • Hosts Blobs, tables, and queues. • Blobs (files) stored in flat “bucket” structure. • Simple language agnostic REST interfaces. 48
  • 49. Cost Structures Nirvanix Amazon Amazon Amazon Mosso Global SDN S3 USA S3 Europe CloudFront CloudFiles < 2TB < 10TB < 10 TB < 10 TB < 5TB Incoming data ($/ GB) 0.18 0.1 0.1 N/A 0.08 Outgoing data ($/ GB) 0.18 0.17 0.17 0.17-0.21 0.22 Storage ($/GB/month) 0.25 0.15 0.18 N/A 0.15 Requests ($/1,000 PUT/ POST/LIST) 0.00 0.01 0.012 N/A 0.02 Requests ($/10,000 GET) 0.00 0.01 0.012 0.010-0.013 0.00
  • 50. Feature Comparison Nirvanix Amazon Mosso Amazon S3 Global SDN CloudFront CloudFiles SLA 99.9 99-99.9 99-99.9 99.9 Max File Size 256GB 5GB 5GB 5GB US PoP Yes Yes Yes Yes EU PoP Yes Yes Yes Yes Asia PoP Yes No Yes Yes AUS PoP No No No Yes Per file ACL Yes Yes Yes Yes Automatic replication of files Yes No Yes Yes Developer API’s / Web Services Yes Yes Yes Yes
  • 51. 40000 Pricing comparison Amazon CF USA/EU Amazon CF HK Amazon CF JP 35000 30000 25000 $USD/month 20000 15000 10000 5000 0 0 50 100 150 200 250 Outgoing TB Data/month
  • 52. Public App Clouds - Platform as a Service • Google AppEngine • Microsoft Azure Services Platform • Salesforce.com / Force.com • Mosso Cloud Sites • Heroku 52
  • 53. Google AppEngine • Python stack • Java stack (J2EE 6, JDO, JPA, JSP) [new] • App Engine serving architecture allows real time auto-scaling without virtualization. • ...provided you use limited native APIs. • ...provided you use Google APIs. • URLFetch, Datastore, memcache, etc. 53
  • 54. Google AppEngine - Free vs Billed Source: http://code.google.com/appengine/docs/quotas.html 54
  • 55. Google AppEngine - Billed • $0.10 per CPU core hour (actual CPU time an app uses to process requests and any Datastore usage). • $0.10 per GB bandwidth incoming, $0.12 per GB bandwidth outgoing. (in/out data, data usage of URLFetch API and Email API). • $0.15 per GB of data stored per month. • $0.0001 per email recipient for emails sent 55
  • 56. Azure Services Platform • Hosted .NET Stack (C# ,VB.Net, ASP.NET). • Java & Ruby SDK for .NET Services also available. • Windows Azure Fabric Controller: • Provides Scaling and reliability. • Manages memory resources and load balancing. • .NET Service Bus registers & connects applications together. • .NET Access Control identity providers, including enterprise directories and Windows LiveID. • .NET Workflow allows construction and execution of workflow instances. 56
  • 57. Salesforce.com • Force.com PaaS allows developers to create add-on functionality that integrates into main Salesforce CRM SaaS app. • Hosted Apex/Visualforce app • Apex is a proprietary Java-like language. • Visialforce is a XML-like syntax for building UIs in HTML, AJAX or Flex. • AppExchange paid & free app directory. 57
  • 58. Mosso Cloudsites • Windows and Linux stacks: • Linux - PHP 5, Perl, Python, MySQL 5 • Win - .Net 2.0, 3+3.5, ASP, MS SQL 2k8 • Runs application with very little (if any) modification (no custom APIs) • Transparent load balancing and autoscale. • Can run PHP, ASP, HTML, Python, and Perl pages concurrently from 1 site! 58
  • 59. Heroku • A platform for instant deployment of Ruby/ Rails web apps. • Servers are invisibly managed by the platform, and are never exposed to you. • Apps are dispersed across different CPU cores, maximizing performance and minimizing contention. • Logic can route around failures. 59
  • 60. Private / DYI Clouds • Many platforms exist to run your own Cloud: • OpenNebula • Eucalyptus • Nimbus / Globus Workspaces • Others ... 60
  • 61. OpenNebula • Open-source Virtual Infrastructure management software. • Supports dynamic resizing, partitioning and scaling of resources • Supports Private / Public / Hybrid Cloud models: • Turn cluster into private cloud. • Can expose service to public. • Cloud plugins (EC2, GoGrid) enable hybrid model. • Offers XML-RPC Web Services 61
  • 62. Eucalyptus • Open-source (BSD) software infrastructure for implementing quot;cloud computingquot; on clusters. • Public or Private Cloud • Web Service is fully AWS API compliant: • EC2, S3 and EBS are all emulated. • Enables a Hybrid approach - mix and match EC2 and Eucalyptus resources. 62
  • 63. Nimbus / Globus • Open-source framework to turn your cluster into an IaaS cloud. • Offers two Web Service interfaces: • Amazon EC2 WSDLs. • Grid community WSRF. • Several test “Science Clouds” deployed: • U. of Chicago, Florida, Perdue & Marsarky U. 63
  • 64. Get your head in the Clouds Cloud Case Study - MetaCDN 64
  • 65. MetaCDN: Enabling High Performance, Low Cost Content Storage and Delivery via the Cloud Dr. James Broberg (brobergj@csse.unimelb.edu.au) http://www.csse.unimelb.edu.au/~brobergj http://www.metacdn.org
  • 66. Content Delivery Networks (CDNs) • What is a CDN? • Content Delivery Networks (CDNs) such as Akamai, Mirror Image and Limelight place web server clusters in numerous geographical locations to improve the responsiveness and locality of the content it hosts for end-users.
  • 67. Existing CDN providers • Akamai is the clear leader in coverage and market share (approx. 80%), however... • Price is prohibitive for SME, NGO, Gov... • Anecdotally 2−15 times more expensive than Cloud Storage, and require 1−2 year commitments and min. data use (10TB+) • Academic CDNs include Coral, Codeen, Globule, however... • No SLA / QoS provided, only ‘best effort’
  • 68. Major CDN pricing • Most major CDN providers do not publish prices • “Average” prices from the 4-5 major CDNs in the market: • 50TB: $0.40 - $0.50 per GB delivered • 100TB: $0.25 - $0.45 per GB delivered • 250TB: $0.10 - $0.30 per GB delivered • Information taken from Dan Rayburn @ www.cdnpricing.com, StreamingMedia.com
  • 69. Storage Clouds ‘Storage as a Service’ Now! ??????
  • 70. 80000 Pricing comparison Amazon S3 USA/EU Nirvanix SDN Mosso Cloud Files 70000 Major CDNs (average) 60000 50000 $USD/month 40000 30000 20000 10000 0 0 50 100 150 200 250 Outgoing TB Data/month
  • 71. Introducing MetaCDN • What if we could create a low-cost, high performance overlay CDN using these storage clouds? • MetaCDN harnesses the diversity of multiple storage cloud providers, offering a choice of deployment location, features and pricing. • MetaCDN provides a uniform method / API for harnessing multiple storage clouds. • MetaCDN provides a single namespace to cover all supported providers, making it simple to integrate into origin sites, and handles load balancing for end-users. • The MetaCDN system offers content creators (who are not necessarily programmers!) a trivial way to harness the power of multiple cloud storage providers via a web portal
  • 72. How MetaCDN works Amazon S3 & Mosso Cloud Microsoft Azure Nirvanix SDN Coral CDN CloudFront Files CDN Storage Service JetS3t toolkit Nirvanix SDK Cloud Files SDK CoralConnector AzureConnector Java SDK Java SDK Java SDK Java stub Java stub Open Source Nirvanix, Inc Mosso, Inc MetaCDN.org MetaCDN.org AmazonS3Connector NirvanixConnector CloudFilesConnector Java stub Java stub Java stub Shared/Private MetaCDN.org MetaCDN.org MetaCDN.org Host MetaCDN WebDAVConnector Java stub MetaCDN MetaCDN QoS MetaCDN MetaCDN MetaCDN.org Manager Monitor Allocator Database SCPConnector Java stub Web Portal Load Redirector Web Service MetaCDN.org Java (JSF/EJB) based portal Random redirection SOAP Web Service FTPConnector Support HTTP POST Geographical redirection RESTful Web Service Java stub New/view/modify deployment Least cost redirection Programmatic access MetaCDN.org
  • 73. How MetaCDN works AmazonS3Connector NirvanixConnector createFolder(foldername, location) DefaultConnector createFolder(foldername, location) deleteFolder(foldername) DEPLOY_USA deleteFolder(foldername) createFile(file, foldername, DEPLOY_EU createFile(file, foldername, location, date) DEPLOY_ASIA location, date) createFile(fileURL, foldername, DEPLOY_AUS createFile(fileURL, foldername, location, date) createFolder(foldername, location) location, date) renameFile(filename, newname, deleteFolder(foldername) renameFile(filename, newname, location) throws createFile(file, foldername, location) FeatureNotSupportedException location, date) createTorrent(file) throws createTorrent(file) createFile(fileURL, foldername, FeatureNotSupportedException createTorrent(fileURL) location, date) createTorrent(fileURL) throws deleteFile(file, location) renameFile(filename, newname, FeatureNotSupportedException listFilesAndFolders() location) deleteFile(file, location) deleteFilesAndFolders() createTorrent(file) listFilesAndFolders() deleteFilesAndFolders() createTorrent(fileURL) <<exception>> deleteFile(file, location) FeatureNotSupportedException listFilesAndFolders() FeatureNotSupportedException(msg) deleteFilesAndFolders()
  • 74. MetaCDN Allocator • The MetaCDN Allocator allows users to deploy files either directly or from a public origin URL, with the following options: • Maximise coverage and performance • Deploy content in specific locations • Cost optimised deployment • Quality of Service (QoS) optimised
  • 75. MetaCDN Manager • The MetaCDN Manager ensures that: • All current deployments are meeting QoS targets (where applicable) • Replicas are removed when no longer required (minimising cost) • A users’ budget has not been exceeded, by tracking usage (i.e. storage/download)
  • 76. MetaCDN QoS Monitor • The MetaCDN QoS Monitor: • Tracks the performance of participating providers at all times • Monitors and records throughput, response time and uptime from a variety of locations • Ensures that upstream providers are meeting their Service Level Agreements
  • 77. MetaCDN Database MetaCDN 1 0:M CDN 1 1 CDN has for User Credentials Provider 1 1 1 hosted has has by M 1 M 1 deployed 0:M MetaCDN M hosted 1 Coverage Content as Replica at locations 1 M QoS Monitor measures
  • 78. MetaCDN Web Portal • Developed using Java Enterprise and Java Server Faces (JSF) technologies • JPA/MySQL back-end to store persistent data • Web portal acts as the entry point to the system and application-level load balancer • Most suited for small or ad-hoc deployments, and especially useful for less technically inclined content creators.
  • 79. Don't have a MetaCDN account? Sign in Register Username: master Password: •••••• Login All trademarks mentioned herein are the exclusive property of their respective owners. This project is supported by the:
  • 80. Register new MetaCDN account: Username: joebloggs Full Name: Joe Bloggs Password: •••••• Email: joe@blogs.com Preferred Providers: Nirvanix SDN Amazon S3 Mosso Cloud Files Microsoft Azure Storage Service Shared/Private Host Nirvanix SDN Amazon S3 Mosso Cloud Files Microsoft Azure Storage Service Shared/Private Host Enter your Amazon S3 Credentials: AWS Access Key: ****************************** AWS Secret Key: ****************************** Enable CloudFront: Register Cancel All trademarks mentioned herein are the exclusive property of their respective owners. This project is supported by the:
  • 81. Welcome to the MetaCDN Portal! Deploy content View existing content Deployment Map View existing replicas MetaCDN Analytics Edit Account Logout All trademarks mentioned herein are the exclusive property of their respective owners. This project is supported by the:
  • 82. Sideload Content: Choose URL: http://pitchfork.com/media/frontend/images/header_logo.gif Deployment region(s): North America Europe Asia Australasia Host Until: 30/05/2009 Deploy Cancel All trademarks mentioned herein are the exclusive property of their respective owners. This project is supported by the:
  • 83.
  • 84.
  • 85. Deployment Map: Terms of Use Back
  • 86. MetaCDN Web Service • Makes all functionality available via Web Services (SOAP & REST/HTTP) • Web interface is useful for novices and for ad-hoc deployments, but doesn’t scale • Larger customers have 1,000’s - 10,000 - 100,000s of files that need deployment • Let them automate their deployment and management via Web Services! • Perfect for Mashup developers!!!
  • 87. MetaCDN Load Redirector • We have created a unified namespace to simply deployment, routing, management • Currently, file deployment results in multiple URLs, each mapping to a replica • http://metacdn-eu-user.s3.amazonaws.com/myfile.mp4 • http://metacdn-us-user.s3.amazonaws.com/myfile.mp4 • http://node3.nirvanix.com/MetaCDN/user/myfile.mp4 • Single namespace is created for fine control • http://www.metacdn.org/FileMapper?itemid=2
  • 88. MetaCDN Load Redirector (cont.) • Actual load redirection logic depends on deployment option used by MetaCDN user: • Maximise coverage and performance? - Find closest physical replica • Deploy content in specific locations? - Find closest physical replica • Cost optimised deployment? - Find cheapest replica, minimises cost to maximise lifetime • Quality of Service (QoS) optimised? - Find best (historically) performing replica
  • 89. MetaCDN Load Redirector (cont.) MetaCDN end-user DNS Server MetaCDN gateway Resolve www.metacdn.org Return IP of closest MetaCDN gateway, www-na.metacdn.org GET http://metacdn.org/MetaCDN/FileMapper?itemid=1 processRequest () geoRedirect () HTTP 302 Redirect to http://metacdn-us-username.s3.amazonaws.com/filename.pdf Resolve metacdn-us-username.s3.amazonaws.com Amazon S3 USA Return IP of metacdn-us-username.s3.amazonaws.com GET http://metacdn-us-username.s3.amazonaws.com/filename.pdf Return replica
  • 90. Redirector Overhead 1.8 from USA S3 USA MetaCDN 1.6 1.4 1.2 1 Seconds 0.8 0.6 0.4 0.2 0 0 5 10 15 20 25 Hour
  • 91. Redirector Overhead 0.9 from Australia Nirvanix SDN #3 MetaCDN 0.85 0.8 0.75 Seconds 0.7 0.65 0.6 0.55 0 5 10 15 20 25 Hour
  • 92. Evaluating MetaCDN performance • Ran tests over 24 hour period (mid-week) • Downloading test replicas (1KB, 10MB) 30 times per hour, take average and conf. inter. • 10MB - Throughput, 1KB - Response Time • Ran test from 6 locations: Melbourne (AUS), Paris (FRA), Vienna (AUT), San Diego & New Jersey (USA), Seoul (KOR) • Replicas located across US, EU, ASIA, AUS
  • 93. Summary of Results - Throughput (KB/s) S3 S3 SDN SDN SDN SDN Coral US EU #1 #2 #3 #4 Melbourne Australia 264.3 389.1 30 366.8 408.4 405.5 173.7 Paris France 703.1 2116 483.8 2948 416.8 1042 530.2 Vienna Austria 490.7 1347 288.4 2271 211 538.7 453.4 Seoul South Korea 312.8 376.1 466.5 411.8 2456 588.2 152 San Diego USA 1234 323.5 5946 380.1 506.1 820.4 338.5 New Jersey USA 2381 1949 860.8 967.1 572.8 4230 636.4
  • 94. Summary of results - Response Time (Sec) S3 S3 SDN SDN SDN SDN Coral US EU #1 #2 #3 #4 Melbourne Australia 1.378 1.458 0.663 0.703 1.195 0.816 5.452 Paris France 0.533 0.2 0.538 0.099 1.078 0.316 3.11 Vienna Austria 0.723 0.442 0.585 0.099 1.088 0.406 3.171 Seoul South Korea 1.135 1.21 0.856 0.896 1 0.848 3.318 San Diego USA 0.232 0.455 0.23 0.361 0.775 0.319 4.655 New Jersey USA 0.532 0.491 0.621 0.475 1.263 0.516 1.916
  • 95. Summary of results (cont) • Clients benefited greatly from local replicas • Results are consistent in terms of response time and throughput with previous studies of dedicated CDNs • Back-end cloud providers have sufficient performance and reliability to be used to host replicas in the MetaCDN system • Adding “CDN” Cloud Providers (Amazon CloudFront, Mosso Cloud Files) will likely significantly improve results.
  • 96. How can we make MetaCDN scale? • Already grown from 1 gateway to multiple gateways: • 1 gateway in Melbourne, Australia (physical) • 1 gateway in Seattle, WA (EC2 “USA-East”) • 1 gateway in Dublin, IRE (EC2, “EU-West”) • Deploy more gateways on-demand as required: • Based on locality of requests, add gateways • As demand decreases, remove gateways.
  • 97. How do we make MetaCDN scale? • Use DNS-based redirection to closest gateway. • Dynamically update A-DNS entries using Web Service API. • Fill Cloud black holes with seamlessly integrated non-“Cloud” storage: • Add shared / private host support. • FTP, WebDAV, SCP accessible.
  • 98. MetaCDN features in planning / development • Support as many providers as possible • Windows Azure Storage Service support will be finished very shortly. • Integrated Flash video and MP3 audio streaming with embeddable players for customers to place on their origin sites.
  • 99. MetaCDN features in planning / development • Autonomic deployment management (expansion/contraction) based on demand • Autonomic deployment management (expansion/contraction) based on QoS • Security / ACL framework that spans all cloud storage providers • “One time” MetaCDN URLs
  • 100. Collaborations • Always looking for people to collaborate on the project • Work to be done on: • Load balancing / redirection algorithms • Intelligent Caching / replication algorithms • Security / Access Control of content • Improving MetaCDN Web Services • Please contact me if you are interested...
  • 101. Publications • J. Broberg and Z. Tari. MetaCDN: Harnessing Storage Clouds for High Performance Content Delivery. In Proceedings of The Sixth International Conference on Service-Oriented Computing [Demonstration Paper] (ICSOC 2008), LNCS 5364, pp. 730–731, 2008. • J. Broberg, R. Buyya and Z. Tari. Creating a ‘Cloud Storage’ Mashup for High Performance, Low Cost Content Delivery, Second International Workshop on Web APIs and Services Mashups (Mashups’08), In Proceedings of The Sixth International Conference on Service-Oriented Computing Workshops, LNCS 5472, pp. 178–183, 2009. • J. Broberg, R. Buyya, and Z. Tari, MetaCDN: Harnessing ‘Storage Clouds’ for high performance content delivery, Journal of Network and Computer Applications (JNCA), To appear, 2009 • R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, and I. Brandic. Cloud computing and emerging IT platforms: Vision, hype, and reality for delivering computing as the 5th utility, Future Generation Computer Systems. To appear, 2009.
  • 102. Open Research Issues in Cloud Computing 102
  • 103. Research Issues • Interoperability • Portability • Reliability & Monitoring • Data Security and Jurisdiction • Innovative Cloud Pricing Models • Innovative Service Models
  • 104. Interoperability • Many ongoing “open” standards efforts: • Cloud Computing Interoperability Forum • Open Grid Forum (OGF) Open Cloud Computing Interface Working Group • DMTF Open Cloud Standards Incubator • GoGrid API (CC licensed) • Sun Cloud API (CC licensed) • Amazon Web Services as “de-facto” 104
  • 105. Portability • Amazon Machine Image (AMI) • VMWare Virtual Machine Disk Format (VMDK) • Citrix XenServer / Microsoft Hyper-V Virtual Hard Disk (VHD) • Open Source Xen Virtual Block Device (VBD) - File or LVM based 105
  • 106. Portability - Solutions? • Virtual to Virtual (V2V): • VMware vCenter Converter • Citric XenConvert • DMTF Virtualization Management Initiative • Open Virtualization Format (OVF) • Initial support in XenServer / VMWare • Project Kensho (Xenserver/Citrix) • OVF Tool Technology Preview (VMWare) 106
  • 107. Reliability & Monitoring • Outages happen! • Amazon AWS: 8hrs (7/08), 2hrs (2/08), 48hrs (10/07) • Google GMail - 2hrs (2/09) • Google - 1.5hrs (5/09) - “An error in one of our systems caused us to direct some of our web traffic through Asia.” 107
  • 108. Reliability & Monitoring • Full transparency is needed: • Cloudstatus.com (Hyperic) • http://trust.salesforce.com/ (Salesforce.com) • http://status.aws.amazon.com/ (Amazon) 108
  • 109. Learn More about CloudStatus Updated 17:10:06. Updates in 44 Amazon Service Summary Amazon Web Services Health Summary Elastic Compute Cloud (EC2) These charts display real-time health status and the last twenty four hours of health history for key Amazon Web Simple Storage Service (S3) Services. Click a Service in the left panel for detailed service health status, metrics, and more history. More information Simple Queue Service (SQS) on CloudStatus. Simple DB (SDB) Healthy Service Issues Service Failure Flexible Payment Service (FPS) CURRENT Hyperic: EC2 deployment latency affected by SQS outage. EC2 Excessive amounts of 7/20/08 12:09 AM 7/21/08 12:09 AM EC2 zombies created @ 7/20/08 8:46 AM Sign-up for CloudStatus Updates. CURRENT Hyperic: S3 reports numerous internal server errors @ 7/20/08 S3 8:46 AM 7/20/08 12:09 AM 7/21/08 12:09 AM CURRENT Hyperic: SQS reports numerous internal server errors @ 7/20/08 SQS 8:46 AM 7/20/08 12:09 AM 7/21/08 12:09 AM CURRENT SDB 7/20/08 12:09 AM 7/21/08 12:09 AM CURRENT FPS 7/20/08 12:09 AM 7/21/08 12:09 AM About CloudStatus Beta CloudStatus Forums About Hyperic Hyperic HQ Hyperic Blog Problems with the website? Send us an email at webmaster@hyperic.com 109 ©2008 Hyperic, Inc.
  • 110. Home Security System Status Customer Login View Upcoming Maintenance Schedule Wednesday May 6, 2009 | 9:02 am PDT AP0 AP1 EU0 NA0 Service System NA1 NA2 NA3 NA4 NA5 NA6 CS0 CS1 CS2 CS3 (Japan) (APAC) (EMEA) (SSL) Status All Systems Operational No issues reported. Service Performance History † Updated 5/6/2009 9:01 am PDT System Status Avg. Number of AP0 AP1 EU0 NA0 Date Speed* NA1 NA2 NA3 NA4 NA5 NA6 CS0 CS1 CS2 CS3 Transactions (Japan) (APAC) (EMEA) (SSL) (seconds) 05/06/09 59,249,466 0.342 05/05/09 192,641,081 0.326 05/04/09 178,749,530 0.327 05/03/09 66,264,679 0.251 05/02/09 70,840,532 0.260 05/01/09 165,414,591 0.311 04/30/09 194,557,330 0.328 04/29/09 191,071,439 0.303 04/28/09 198,498,961 0.323 04/27/09 194,860,414 0.321 04/26/09 66,081,408 0.227 04/25/09 70,805,190 0.231 04/24/09 182,156,924 0.285 04/23/09 191,111,300 0.282 04/22/09 190,279,196 0.334 04/21/09 192,991,907 0.334 04/20/09 189,647,185 0.331 04/19/09 61,745,868 0.220 04/18/09 68,755,196 0.252 04/17/09 177,727,343 0.323 04/16/09 188,910,455 0.310 04/15/09 191,104,119 0.340 04/14/09 190,953,644 0.353 04/13/09 166,227,451 0.319 04/12/09 63,256,822 0.237 04/11/09 69,538,950 0.242 04/10/09 139,355,992 0.284 04/09/09 179,285,342 0.297 Instance available Performance issues Service disruption Informational message Status not available 110 † Service Performance History is updated four times daily. Today's date may reflect partial day's data. * Salesforce.com service transaction speed. Your on-site page load times may vary based on your bandwidth and network latency.
  • 111. 111
  • 112. 112
  • 113. 113
  • 114. 114
  • 115. Why is monitoring important? • “To be eligible, the credit request must (i) include your account number in the subject of the e-mail message [..]; (ii) include, in the body of the e-mail, the dates and times of each incident of non-zero Error Rates that you claim to have experienced; (iii) include your server request logs that document the errors and corroborate your claimed outage [..]; and (iv) be received by us within ten (10) business days after the end of the billing cycle in which the errors occurred.” - SLA for S3
  • 116. Why is monitoring important? • “To receive a credit, you must contact your The Rackspace Cloud account team within thirty (30) days following the end of the downtime. You must show that your use of the Cloud Servers was adversely affected in some way as a result of the downtime to be eligible for the credit.” - SLA for Mosso Cloud Servers
  • 117. Why is monitoring important? • “Customer must open a support case (a quot;Casequot;) during the Failure in question. Customer will open all Cases through the Customer Portal. In opening a Case, Customer will provide complete information regarding the nature of the problem, including any information reasonably necessary for diagnosis and correction, by following the Case opening procedures at the Customer Portal. [...]” - SLA for GoGrid
  • 118. Why is monitoring important? • Service credits are not automatic! • Requires immediate user action: • Claim within certain time period • Note specific dates and times of outage • Provide proof (i.e. logs) of outage • Automated monitoring & alert services are invaluable in this environment.
  • 119. Data Security and Jurisdiction in the Cloud • Cloud Servers abstract where processing occurs and where your data is stored. • Software/data are subject to laws & regs. of where they are executed & stored. • Consider: • Digital Millennium Copyright Act (DMCA) • Cryptography Export laws • Other regs (SEC, Sarbanes-Oxley, HIPPA)
  • 120. Innovative Cloud Pricing Models • Pricing for Cloud services is very static • Lets take some cues from traditional utilities: • Peak / Off Peak pricing. • Spreads demand, making capacity planning more predictable for providers. • Flexible Cloud Consumers can save money.
  • 121. Innovative Service Models for Clouds. • Create framework for Cloud Consumers to be Cloud Providers. • Again, cues from utilities like power: • End-users & businesses can sell back electricity generated by solar energy to grid • Enable sell back of under-utilised resources using same tech. cloud providers’ use! • Win-win situation as companies could resell these resources and expand their footprint.
  • 122. Introduction to Cloud Computing • What we covered: • Part I - An Introduction to Cloud Computing. • Part II - “Get your head in the Clouds” - MetaCDN Cloud Case Study. • Part III - Open Research Issues in Cloud Computing. 122

Notas do Editor

  1. Both VMWare and Citrix give away enterprise-class VM platforms.
  2. Can move multiple lightly/moderately loaded VMs to a single physical host - idea is hopefully they all won&#x2019;t be under heavy load simultaneously. Agile deployment means I can expand and contract my deployment trivially on a cluster Removes the difficulty inherent with distributed process migration.
  3. GFS and HDFS split large files into chunks (typically around 64MB each) and stores multiple copies of chunks for performance and redundancy reasons. XenServer Storage Pool is an abstraction layer than can include physical storage, iSCSI, NFS and other storage sources.
  4. WS-* refers to the huge number of Web service specifications that exist. WS-* covers things like Security Specifications, Privacy, Reliable Messaging Specifications, Resource Specifications, Business Process Specifications & Transaction Specifications
  5. With increasing popularity and usage, large Grid installations are facing new problems, such as excessive spikes in demand for resources coupled with strategic and adversarial behaviour by users.
  6. Mosso Cloud Servers is a separate Rackspace product offering that works as a utility service with hourly billing.
  7. SmugMug - Autoscaling software called &#x201C;SkyNet&#x201D;. EC2 instances deployed as needed. Animoto - launched Facebook app to integrate their service, popularity soared. Peaked at 5000 EC2 instances.
  8. Each storage provider outlines their own cost structure for data transferred in and out of their service, as well as charging for persistent storage. In each of these cases, the costs are in the order of cents per gigabyte. Pricing scales downward based on higher usage for all providers. There is no minimum data usage requirement and no contracts - you only pay for what you store and transfer.
  9. The providers themselves have very similar core functionality, but there are some key differences, for example, the largest allowable file size, the coverage footprint or specific features.
  10. Amazon CloudFront offers a CDN-like service that is significantly cheaper than tradional CDNs. Amazon charges different rates depending on where the data is delivered from to reflect the cost of data transfer and operations in different locations.
  11. An App Engine application cannot write to the filesytem (you must use Datastore) or open a socket or access another host directly (you must use URL fetch service). A Java application cannot create a new Thread either. .
  12. You can run very substantial application just using the free services.
  13. Distributed Systems Architecture Research Group at Universidad Complutense de Madrid.
  14. Computer Science Department at the University of California, Santa Barbara Now is now maintained by Eucalyptus Systems.
  15. Kate Keahey - Argonne National Laboratory and a Computation Institute fellow at the University of Chicago WSRF: WS-Resource Framework
  16. MetaCDN is a system that leverages several existing &#x2018;storage clouds&#x2019;, creating an integrated overlay network that provides a low cost, high performance content delivery network for content creators.
  17. *Content Delivery Networks (CDNs) such as Akamai and Mirror Image place web server clusters in numerous geographical locations to improve the responsiveness and locality of the content it hosts for end-users. *However, their services are priced out of reach for all but the largest enterprise customers.
  18. Major CDN providers are notoriously cagey about revealing their prices. Most will only reveal their prices if you are serious customer and are willing to commit to a contract and minimum data usage (as detailed in the previous slide). As such Dan Rayburn @ StreamingMedia.com (a blog run for streaming media and CDN professionals) undertakes an informal sampling of pricing (taken from CDN customers) every few months.
  19. Numerous &#x2018;storage cloud&#x2019; providers (or &#x2018;Storage as a Service&#x2019;) have emerged that can provide data storage and delivery in several continents, offering S.L.A. backed performance and uptime promises for their services.
  20. It is easy to see why storage clouds provide a compelling alternative to traditional CDNs for content producers that transfer significant amounts of data to their customers.
  21. 1. MetaCDN is more likely to meet the needs of content creators than a single provider could. 2. There is no &#x2018;unified&#x2019; or familiar interface for all storage clouds. Consider Amazon S3, Nirvanix SDN, Mosso Cloud Files and Microsoft Azure Storage Service. These four cloud storage providers have four separate access APIs that a developer would need to learn to access these services. 3. If a content creator attempted to utilise these providers themselves, they would essentially need to perform the load balancing and redirection themselves at their origin sites (complex!)
  22. The service is presented to end-users as a web portal for small or ad-hoc deployments or as Web Services (currently under development) for integration of customers with more complex and frequently changing content delivery needs. The web portal was developed using Java Enterprise and Java Server Faces (JSF) technologies, with a MySQL back-end to store user accounts, deployments, and the capabilities and pricing of service providers. Introduce connectors, and major components.
  23. The MetaCDN system integrates with each storage provider via connectors that provides an abstraction to hide the complexity arising from the differing ways each provider allows access to their systems. The connectors encapsulate basic operations like creation, deletion and renaming of files and folders. If an operation is not supported on a particular service, then the connector for that service should throw a FeatureNotSupportedException.
  24. 1. MetaCDN deploys as many replicas as possible to all available locations. 2. A user nominates regions and MetaCDN matches the requested regions with providers that service those areas. 3. Where MetaCDN deploys as many replicas in the locations requested by the user as their storage and transfer budget will allow, keeping them active until that budget is exhausted. 4. MetaCDN deploys to providers that match specific QoS targets that a user specifies, such as average throughput or response time from a particular location, which is tracked by persistent probing from the MetaCDN QoS monitor.
  25. The MetaCDN database tracks all pertinent information such as users of the system, credentials for various providers, details about the providers capabilities, pricing and footprint and details of replicas deployed.
  26. Using the web portal, users can sign up for an account on the MetaCDN system, and enter credentials for any cloud storage or other provider they have an account with. Once this simple step has been performed, they can utilise the MetaCDN system to intelligently deploy content onto storage providers according to their performance requirements and budget limitations.
  27. A MetaCDN user is required to register the credentials of providers they have accounts with. Once this step is done they do not need to worry about how to interact with each of the providers. Eventually we would like MetaCDN users to not require accounts with specific providers - rather MetaCDN would provide consolidated billing of users for storage and transfer of content.
  28. The MetaCDN \"Control Panel\" gives easy access to the core features of the service. You can deploy content, view existing deployments (via a high level content view or a detailed replica view), and view a deployment map overlayed onto Google Maps or Google Earth.
  29. Here we can see an example of geographical-based deployment. A user nominates regions and MetaCDN matches the requested regions with providers that service those areas. The user also specifies the desired lifetime of the deployment, after which the replicas will be removed.
  30. We can view details of our past deployments. We store and track information such as the origin id (i.e. the original source of the content), a unique GUID, the MetaCDN URL that represents the deployment, the number of times this content has been downloaded, the last time this content was downloaded and how many replicas were generated from this deployment.
  31. Here we can see the specific replicas that have been generated from our various deployments. For each replica, we can see which provider and location was utilised, the public URL of the replica, the number of times the replica has been downloaded, the last access time of a specific replica and options to modify, delete, or view the replica if we wish to fine tune our deployment.
  32. We can get a birds eye view of where our replicas are stored, and how many are stored in each location. MetaCDN generates a KML file for each user that is used to overlay on Google Maps (shown here) or we can view our deployments in Google Earth. We expect to overlay more useful information in these views in the near future, such as the cost expenditure at each location and the location of client (i.e. file consumer) hotspots.
  33. A web service interface is under development that will make all the functionality of the web portal available in a programmatic fashion. Obviously it's not feasible to deploy thousands of files manually via the web portal so we need to prove the facility for advanced customers to scale out easily and rapidly.
  34. *With multiple sources (and multiple URL&#x2019;s) the complexity of load balancing is imposed on the origin / content provider *With single namespace we can have coarse and fine-grained control via DNS redirection and layer4/7 load balancing http://www.metacdn.org:8080/MetaCDN/FileMapper?itemid=1 http://www.metacdn.org:8080/MetaCDN/FileMapper?itemid=1&policy=RAN http://www.metacdn.org:8080/MetaCDN/FileMapper?itemid=1&policy=GEO
  35. During the development phase only, only 1 copy of portal/redirector is running in Melbourne, Australia. The plan is to deploy portals in several locations across US, Asia and Europe. We will see from next slide why this is necessary.
  36. Let's assume that a consumer in the USA was accessing a replica directly (i.e. it magically knew the best replica to select), or via MetaCDN. Here we can see that there is around 0.4 seconds of overhead, which is predominantly the round-trip time to access the gateway in Australia.
  37. When a consumer has a gateway that is close to it (in this case, a consumer in Australia is utilising a local gateway) the overhead is significantly smaller, in the order of 0.05 seconds per request. It is obvious that local gateways are needed in key areas to maximise performance.
  38. In the second half of 2008 we evaluated the two major cloud storage providers at the time, Amazon S3 and Nirvanix SDN. We ran the test over 24 hours from a variety of client and replica locations to see whether the providers demonstrated sufficient performance (i.e. throughput and response times) to act as a \"poor man's\" CDN.
  39. In 5 out of 6 client locations there were at least 2 cloud-hosted replicas each that delivered throughput that is consistent with what we would expect from a traditional CDN service. <Kilobytes per second>
  40. In 4 our of 6 client locations there was 1-3 cloud-hosted replicas that delivered response time that is consistent with what we would expect from a traditional CDN service. It is worth noting here that these times represent the end to end latency and connection time (i.e. a HTTP connection is made), they are not simply ping measurements.
  41. Deploy EC2 instances
  42. UltraDNS or Dynect are DNS providers that allow you to update your ADNS entries via WS. FTP/WebDav support will be useful in locations where cloud providers do not (and are unlikely to) service.
  43. There is a lot of demand from customers to move away from Youtube and Vimeo flash video hosts and host their own streaming content directly on their origin site. This way they control the look and feel and ad monetization of their content.
  44. Many open questions - these are just a few of them. I don&#x2019;t have the answers - many exciting research opportunities here.
  45. Currently there are no well-defined standards for the different cloud offerings, so it is not trivial to switch between them, resulting in a degree of vendor lock-in. From a cloud consumer&#x2019;s perspective it should be easy to switch from one provider to another, if you are dissatisfied with the service, reliability or value for money you are receiving. I certainly believe that standards are needed for cloud computing and cloud storage providers but we need to be careful not to impose them too early and stifle all the great innovation that is happening in the cloud space right now. We may find that the dominant provider ends up setting the standards by default.
  46. Hundreds of premade AMIs available through Amazon VMWare has VMware Virtual Appliance Marketplace (over 1000) VBDs can be based on physical disk partitions, raw image files, QCOW images, and logical volume management (LVM) volumes. Many independent websites host hundreds of pre-made Xen images
  47. OVF has been defined as \"open, secure, portable, efficient and extensible format for the packaging and distribution of software to be run in virtual machines\". OVF is not tied to any particular hypervisor or processor architecture.
  48. It remains unclear whether cloud computing providers can meet regulatory compliance requirements for data storage, security, segregation and availability for industries like healthcare and banking, although there has been some success stories in the US where HIPAA ( Health Insurance Portability and Accountability Act) compliant health insurance claim processing system was deployed on Amazons Cloud Services. Care needs to be taken in these instances to ensure sensitive data is protected when hosted on external cloud computing providers.
  49. Innovative pricing models for Cloud Computing Services &#x2013; Currently the pricing for Cloud Computing services is very static. Something that can be derived from traditional utilities like electricity is the notion of peak and off peak pricing. This spreads the demand, making capacity planning more predictable for the cloud computing providers and can save money for cloud consumers that are flexible enough to use the services in off peak times.
  50. Innovative service models &#x2013; Allow cloud consumers to be cloud providers. In the same fashion end-users and businesses can sell back electricity generated by solar energy to the power grid, allow them to contribute to computational and storage clouds. It would be great for companies to sell back their under-utilised resources using the same technology cloud providers&#x2019; use. This could be a win-win situation as companies like Amazon, who only have a presence in the US and Europe, could resell these resources and expand their footprint into places like Australia, Asia and Africa.