• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution
 

[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution

on

  • 2,365 views

Elaster CAP is a Platform-as-a-Service (PaaS) solution that enable any developer or service provider to host their own PaaS cloud. So they can focus on application logic and Elaster CAP will help to ...

Elaster CAP is a Platform-as-a-Service (PaaS) solution that enable any developer or service provider to host their own PaaS cloud. So they can focus on application logic and Elaster CAP will help to reduce operation cost. Elaster CAP supports Java Web Applications and Hadoop Map/Reduce Applications. It also provides many cloud-based infrastructures to support your Software-as-a-Service applications, such as Relational Database, Index/Search service, and Big-data Storage with S3 compatible adapter. Elaster CAP is designed to be elastic that, depends on the use cases, the cloud can be as small as one node, or as big as more than hundreds of nodes. The nodes in Elaster CAP can run on physical machines in your data center, or virtual machines hosted by Infrastructure-as-a-Service (IaaS) providers such as EC2 and TCloud Elaster.

In this talk, We'd like to describe the technology and strategy we took when building Elaster CAP. And share the pitfalls and gotchas that we experienced during the journey.

Statistics

Views

Total Views
2,365
Views on SlideShare
2,081
Embed Views
284

Actions

Likes
9
Downloads
79
Comments
0

6 Embeds 284

http://www.jeffhung.net 270
http://trender.trendmicro.com 8
http://webcache.googleusercontent.com 2
http://home.jeffhung.net 2
http://66.163.168.225 1
http://theoldreader.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • http://blogs.msdn.com/b/dachou/archive/2009/01/13/cloud-computing-and-the-microsoft-platform.aspx
  • Application Development Platform: Suitable for startups or companies want to revisit and rewrite existing applicationsApplication Management Platform: Help companies move their applications as-is with little or no need for retrofit.http://www.prudentcloud.com/cloud-computing-technology/multiple-personalities-of-platform-as-a-service-18102010/Force.com: http://www.salesforce.com/platform/Microsoft Azure: http://www.microsoft.com/windowsazure/Google AppEngine: http://code.google.com/appengine/Heroku: http://heroku.com/RIghtScale: http://www.rightscale.com/Makara: http://www.makara.com/JBoss/PHPJoins Red Hat

[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution [OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution Presentation Transcript

  • Copyright 2010 TCloud Computing Inc.
    The Path to Pass into PaaS
    How We Build the Solution
  • The Speaker
    Jeff Hung
    A Bloggerwww.jeffhung.net/blog
    Identity on the Net@jeffhung
    Developer of Trend Microjeff_hung@trend.com.tw
    Copyright 2010 TCloud Computing Inc.
  • Cloud Computing & Elaster CAP
    3
    Copyright 2010 TCloud Computing Inc.
  • The History of Computing
    4
    Copyright 2010 TCloud Computing Inc.
  • 5
    Mr. User
    More like a Capital Game
    Value Near to End User
  • Elaster CAP 1.0
    SaaS 5
    SaaS 1
    SaaS 7
    SaaS 4
    SaaS 2
    SaaS 3
    SaaS 6
    Elaster CAP is a Product for public / private / vertical PaaS operators.
    Softwareas-a-Service
    Developeror Startups
    Run
    Dynamic Workload Distribution & Optimization
    Scalability & Availability
    Platform as-a-Service
    Cloud ServiceOperator
    Provide
    ElasterCloud Application Platform API
    Development
    Deployment
    TcloudComputing
    Sale
    Publish
    Management
    TCloudElaster CAP
    (Cloud Application Platform)
    Big Data
    Unpredictable
    Peak Workloads
    Massive
    Compute
    6
  • Elaster CAP Philosophy
    Minimum change of skill-set of developer
    Developers don’t need to learn new skill for developing or porting their applications runon top of Elaster CAP
    Cloud-based infrastructure in a box
    native high-scalability, high-availability,and load-balancing in system design
    7
    Copyright 2010 TCloud Computing Inc.
  • PaaS Personalities
    Application Development Platform
    Radically embracing cloud computing
    Force.com, Microsoft Azure, Google AppEngine, Heroku
    Application Management Platform
    Enable existing on-premise frameworks
    RightScale, Makara
    And… Elaster CAP
    Data Processing Platform
    Specialized purpose-driven
    Amazon Map/Reduce, PingIdentity, Akamai
    8
    http://www.prudentcloud.com/cloud-computing-technology/multiple-personalities-of-platform-as-a-service-18102010/
  • Copyright 2010 TCloud Computing Inc.
    9
    Runtime Services:
    JSP (2.1) / Servlet (2.5) / J2SE 5 or Java SE 6
    PHP (5.3)
    Hadoop Map/Reduce (0.20.2)
    Resource Services:
    RDB (MySQL 5.1)
    Search Engine
    Big Data Storage(Like Amazon S3)
  • Free PaaS Playground
    Enabled by ElasterCAP
    Hosted by TCloud.
    Elaster CAP Official Site
    Download Center
    Document Center
    Tech Support Forum
    Launched in Jan, 2011: www.elasterlabs.com.tw
    10
    Copyright 2010 TCloud Computing Inc.
  • How to Build a PaaS Platform?
    11
  • The Technical Problems
    Hundreds or thousands of machines
    Each with tens or hundreds of instances
    Instances should be paired or clustered together,for HA and Balancing
    Dispatch network traffics to correct back-end
    Plan to deliver various cloud services,from time to time
    Eventually, we still have to face the problem:How do we optimize it?
    12
    Copyright 2010 TCloud Computing Inc.
  • The Realistic Problems
    We won’t really operate it.
    Customer don’t know how to operate it.
    Developer want silver bullet, maybe.
    Who’s gonna buy it?
    How will it sale?
    13
    Copyright 2010 TCloud Computing Inc.
    CHANGE
  • That’s Simplify the Problem
    Static configurable feature set
    Define enabled services when bootstrapping
    Same static configurations everywhere
    No online upgrade
    dynamically wired
    incrementally deployed and tested
    Believe some fallacies
    FQDN and flat L3 environment
    Homogenous topology, sort of
    No provisioning
    Install everything, launch by needs
    14
  • Scale from 1 to N
    ZooKeeper
    ElasterCAP Composite Server
    ElasterCAP Composite Server
    HadoopNameNode
    API Server
    Resource Host
    API Server
    Resource Host
    Hadoop
    Data Node
    Load Balancer
    Hadoop
    Data Node
    Load Balancer
    Hbase Master
    Java Web Container
    Hbase Region Server
    Java Web Container
    Hbase Region Server
    LDAP Server
    AMP Server
    AMP Server
    WOE Instance
    MySQL Database
    WOE Instance
    MySQL Database
    System DB
    Fedora 12 x64
    Fedora 12 x64
    Master Node
    Worker Node * N
  • Network Configurations
    Recognize 2 network segments:
    The Public Network –Accepting Web Traffics from Internet.
    The Private Network – Inter-communicate between nodes.
    These 2 network segments can be the same one.
    Use wildcard DNS as 1st tier load balancing
    www.elasterlabs.com.tw
    api.elasterlabs.com.tw
    *.app.elasterlabs.com.tw
    *.s3.elasterlabs.com.tw
    16
    Copyright 2010 TCloud Computing Inc.
    All point to multiple IP addresses configured as the public network.
    The 2nd tier load balancers are waiting there to dispatch requests to backend application servers.
  • Copyright 2010 TCloud Computing Inc.
    17
    Internet
    MySQL Database
    MySQL Database
    MySQL Database
    MySQL Database
    Elaster CAP Service (API Server)
    Elaster CAP Service (API Server)
    Java Web Container
    Elaster CAP Service (API Server)
    Java Web Container
    Elaster CAP Service (API Server)
    Java Web Container
    Java Web Container
    api.elasterlabs.com.tw
    Manage
    Balancer
    *.app.elasterlabs.com.tw
    Lucene Indexer
    Lucene Indexer
    Lucene Indexer
    Search Engine
    Driven by Workload Optimization Engine (WOE)
    HadoopHBase
    HadoopHBase
    HadoopHBase
    HadoopHBase
  • Resource Host vs. Guest Instances
    18
    Fedora 12 x86 on Physical/Virtual Machine
    API Server
    CompositeServer (JVM)
    NginxGuest Instance
    Nginx Balancer(Daemon)
    Resource Host
    JettyGuest Instance
    Jetty Container (JVM)
    WOE

    MySQLGuest Instance
    MySQL Server(Daemon)
  • 19
    API Server
    1: Where is WOE?
    Coordination Service
    (ZooKeeper)
    2: Hey, I need a Jetty.
    3: Locate hosting based on global knowledge.
    WOE
    0: Hosted in all nodes, only leader activate.
    5: I’m currently running a Jetty.
    4: Oh, I’m expected to run a Jetty.
  • Cloud Entity and Expected/Current State
    20
    Copyright 2010 TCloud Computing Inc.
    WOE
    /
    resourcehosts
    Cloud Entity
    0ea40b00...5c3f4c436e7b
    expected
    current
    Resource Host
    Guest Instance
    (ephemeral)
    JAVA_WEB_CONTAINER
    8e1bb5f1...766787dd7540
    expected
    JettyGuest Instance
    MySQLGuest Instance
    NginxGuest Instance
    current
    <<realize>>
    DATABASE
  • State Transaction
    21
    Transit from anycurrent state to expected state.
    INITIALIZING
    STARTING
    STOPPED
    STARTED
    UPDATING
    STOPPING
    DESTROYING
    DESTROYED
    CRASHED
    NeedRecovery
  • Why not RPC or MQ?
    RPC doesn’t scale. Consider locating best hosting.
    MQ can’t remember, and can’t be tracked.
    Communicate via Whiteboard using ZooKeeper
    Strict ordering
    Event notification
    Asynchronous
    Global Knowledge
    22
    Copyright 2010 TCloud Computing Inc.
  • Application IDE (Integrated development environment)
    Elaster CAP SDK
    Application Management API
    Application Management
    Portal
    App Runtime
    Workload Optimization Engine (WOE)
    MapReduce
    Web Container
    Servlet Container
    M/R Jobs
    HTML
    JSP
    Resource Host
    Elaster CAP API
    System Administration CLI
    Relational DB (MySQL)
    Search Engine
    Other…
    Big-Data Storage
    Operating System (Linux Fedora 12)
    Infrastructure Service (virtual machine or physical machine)
  • Elaster Labs – Current Status
    5+ virtual machines
    13x Running Applications
    Just released Elaster CAP 1.0.1.1025
    Download from www.elasterlabs.com.tw
    VM Image Distribution
    Platform of TM Programming Contest 2011
    We appreciate your comments. 
    24
    Copyright 2010 TCloud Computing Inc.
  • Thank You.
    25
    Copyright 2010 TCloud Computing Inc.
  • Questions?
    26
    Copyright 2010 TCloud Computing Inc.