Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Java in the Cloud

marakana
May 23, 2012

Java in the Cloud

The cloud is one of those leading paradigm shifts that only happen every 10-15 years. Like other shifts before it (virtualization, offshoring, etc.), the cloud will profoundly impact the IT industry at large. No profession, no sector will remain shielded from the changes brought by the cloud.

Sacha Labourey, CEO of CloudBees and former CTO of JBoss, will first discuss how cloud computing is a natural step in the evolution and maturation of IT. He will then dig into what those changes mean for Java developers. Finally, he will discuss what choices Java developers are facing and will demonstrate what the future of Java developers might practically look like.

See the video presentation at http://mrkn.co/v51qe

marakana

May 23, 2012
Tweet

More Decks by marakana

Other Decks in Science

Transcript

  1. Developers,
    Welcome to the Cloud!
    Sacha Labourey
    CEO, CloudBees, Inc.
    May 9, 2012 – San Francisco
    Photo credit: @romainguy
    ©2012 CloudBees, Inc. All Rights Reserved

    View Slide

  2. 2

    Born in 1975 in Switzerland

    JBoss

    Clustering lead – 2001

    GM Europe - 2003

    CTO - 2005

    Red Hat

    JBoss acquisition in June 2006

    co-GM of Red Hat’s middleware division

    Left Red Hat in April 2009

    CloudBees

    Started in April 2010

    About 30 bees in 6 countries
    Introduction – Sacha Labourey
    ©2012 CloudBees, Inc. All
    X

    View Slide

  3. 3

    A story backwards…

    Cloud Computing - The Inexorable

    What does “Cloud” mean to developers?

    IaaS vs. PaaS vs. SaaS

    Weather forecasts

    Demo…
    Agenda
    ©2012 CloudBees, Inc. All

    View Slide

  4. 4

    We are pretty good at predicting what’s … predictable!

    No disruption, “constant speed”
    Business as usual…
    ©2012 CloudBees, Inc. All
    A
    B
    C
    ?

    View Slide

  5. 5

    When important paradigm shifts take place, it is hard to project
    yourself in the future…

    But once you sit “on the other side” of the shift, the
    changes it brought with it seem obvious

    Did someone/your kids ever ask you why phones
    used to have a cord?

    What could be the impact of Cloud Computing on IT?
    And on developers’ jobs?
    Let’s go through a story you probably know very well…
    Beware, paradigm shift ahead!
    ©2012 CloudBees, Inc. All

    View Slide

  6. 6

    During the 19th century, the frst electrical generators
    appeared

    Some companies set up their own generators for their
    own use

    Complex, fragile, very costly

    Absolutely not accessible
    to the mass market
    The frst electricity consumers/producers
    ©2012 CloudBees, Inc. All

    View Slide

  7. 7

    Cities start investing in power plants

    At the end of the 19th century, the frst power plants
    emerge

    1878 – Exposition Universelle de Paris

    1879 – St-Moritz (Switzerland)

    1882 – London & NYC

    1883 – Grenoble

    1884 – Le Locle
    Electricity starts being democratized
    ©2012 CloudBees, Inc. All

    View Slide

  8. 8
    A few (nice) examples (Le Locle)
    ©2012 CloudBees, Inc. All

    View Slide

  9. 9
    Some nice buildings (La Chaux-de-Fonds)
    ©2012 CloudBees, Inc. All
    Those are the “Googleplex” of the 19th
    century!

    View Slide

  10. 10

    Very costly

    No standards

    AC? DC?

    What frequency?

    110V, 220V, 230V, 240V, other?

    Plug? What plug?

    Redundancy? SLA?
    Yet, this was not as simple as it seems…
    ©2012 CloudBees, Inc. All

    View Slide

  11. 11
    Example: Paris (circa 1902)
    ?
    Source: http://seaus.free.fr/spip.php?article601
    ©2012 CloudBees, Inc. All

    View Slide

  12. 12
    « The Grid »
    Producer A
    Nuclear
    Producer B
    Solar
    Producer C
    Hydraulic
    Producer D
    Coal
    Producer A
    Nuclear
    Producer B
    Solar
    Producer D
    Coal
    Producer C
    Hydraulic
    Distributor
    Other Grids
    Today? Standards everywhere!
    Consumers
    ©2012 CloudBees, Inc. All

    View Slide

  13. What is the state of IT today?
    ©2012 Cloud Bees, Inc. All

    View Slide

  14. 14
    Today’s IT feels very much like electrical generators from the
    19th century
    Flashback
    Google Data Center
    Could IT evolve in a similar fashion?
    ©2012 CloudBees, Inc. All

    View Slide

  15. 15
    Sometimes, IT can be rudimentary…

    View Slide

  16. 16
    Sometimes, it is chaos…

    View Slide

  17. 17
    « And yet it moves »

    View Slide

  18. 18

    We are treating IT as “haute couture”

    Custom, “sur mesure”

    Unique

    Costly

    High overhead
    IT today
    ©2012 CloudBees, Inc. All

    View Slide

  19. 19
    The cloud

    View Slide

  20. 20

    In 2006, Amazon announces AWS

    Thanks Jeff

    ~Doubling every year

    Today, many traditional providers are being “cloudifed”

    Hosting providers  IaaS providers

    Middleware vendors  PaaS providers

    ISVs  SaaS
    The Cloud revolution has started
    ©2012 CloudBees, Inc. All

    View Slide

  21. 21
    The growth of data centers

    View Slide

  22. 22
    Data centers – some examples

    View Slide

  23. 23
    The cloud will do to IT,
    what electricity has done to the industry
    -
    “If you don’t like change,
    you are going to like irrelevance even less.”
    -- Gen. Erik Shineski
    ©2012 CloudBees, Inc. All

    View Slide

  24. 24
    Cloud computing – quick analogy
    Power Plants Cloud Providers
    Electrical
    Grids
    The Internet
    Electrical
    Plug
    Web Browser
    ©2012 CloudBees, Inc. All

    View Slide

  25. 25
    But what does it mean to me, as a software developer?!?
    Fine…
    ©2012 CloudBees, Inc. All

    View Slide

  26. Cloud 101
    The cloud for the not-so-dummies
    ©2012 Cloud Bees, Inc. All

    View Slide

  27. 27
    Traditional software stack
    ©2012 CloudBees, Inc. All
    Server
    Hypervisor
    VM
    AS
    JVM
    LB
    Application
    You

    View Slide

  28. 28
    ©2012 CloudBees, Inc. All
    Servers
    OS
    VM
    AS
    JVM
    LB
    Applications
    Cloud Computing: How to do it? Who does what?
    Cloud
    Provid
    er?

    View Slide

  29. 29
    Easy: « Just use a XaaS! »
    ©2012 CloudBees, Inc. All

    View Slide

  30. 30
    A what?!?
    ©2012 CloudBees, Inc. All
    Let’s decrypt
    These together

    View Slide

  31. 31

    AWS – the most popular example

    Server Lego blocks – VM, storage, IP, etc.

    Development environment:

    “Give me a server, an OS, a virtualization layer, an
    application server, a frewall, a database, I’ll deal with it!
    And patch it. And monitor it. And…”

    Flexible but cOmpLiCaTed

    User point of view

    Custom systems and environments
    IaaS
    ©2012 CloudBees, Inc. All

    View Slide

  32. 32
    IaaS – Congratulations!
    ©2012 Cloud Bees, Inc. All
    “Great” news: you have now become responsible for the data-center!

    View Slide

  33. 33
    ©2012 CloudBees, Inc. All
    See, I can do whatever I want
    with those Legos!

    View Slide

  34. 34
    ü
    Directly managing your IaaS resources provides you with
    resource elasticity (CAPEX-free), but…
    O
    The amount of soft-IT typically required to do so is …
    higher!

    All of the traditional IT activities remain
    (maintain/patch/monitor OS+JVM+AS+DB++, etc.)

    + cloud-specifc items: elasticity/security/automation

    My advice? Move on…
    IaaS – Consequences
    ©2012 CloudBees, Inc. All

    View Slide

  35. 35

    SalesForce.com, Zendesk, NetSuite, etc.

    Development environment

    Rigid – mostly through CONFIGURATION

    When available “development” takes place within the SaaS itself

    User point of view

    Standard applications

    Very fast bootstrap

    Most of the time, lock-in is
    very high
    SaaS
    ©2012 CloudBees, Inc. All

    View Slide

  36. 36
    ©2012 CloudBees, Inc. All

    View Slide

  37. 37
    ©2012 CloudBees, Inc. All

    View Slide

  38. 38

    Development environment

    “Give me my typical development environment and
    manage everything else for me – servers, scalability,
    failover, backups, etc.”

    User point of view

    Custom applications
    (Lots of different philosophies though!)
    PaaS
    ©2012 CloudBees, Inc. All

    View Slide

  39. 39
    ©2012 CloudBees, Inc. All
    Your application

    Platform
    core
    services
    IaaS
    Provider

    View Slide

  40. 40
    ©2012 CloudBees, Inc. All

    View Slide

  41. 41
    ©2012 CloudBees, Inc. All
    Load balancer
    ü Round robin
    ü Sticky sessions

    View Slide

  42. 42
    ©2012 CloudBees, Inc. All
    Session
    replication

    View Slide

  43. 43
    ©2012 CloudBees, Inc. All
    Auto-scale

    View Slide

  44. 44

    Applications and data are at the center of your world!

    Forget about servers, VMs, load-balancers, etc.

    Cloud concepts are applied to applications as frst class
    citizens

    On-demand, pay-as-you-go, elasticity, etc.

    No need to handle updates, patches, scalability, failover, etc.
    This is a Service, not just some Software!
    PaaS
    ©2012 Cloud Bees, Inc.

    View Slide

  45. 45
    1st decision: IaaS, SaaS or PaaS?
    ©2012 CloudBees, Inc. All
    Iaas
    Juggle with
    technologies
    Saas
    Constraint
    Paas
    Flexible

    View Slide

  46. 46
    PaaS – the new platform for developers
    ©2012 CloudBees, Inc. All
    Paas
    Flexible

    View Slide

  47. 47

    Could I please get a « Private PaaS »?

    Sure! We can also sell you a private jet!

    Very tempting! All of the advantages but no decision about the cloud is needed!
    And I’ll be able to customize it!

    Yes, but…

    A great part of the value from a PaaS comes from the « S »: SERVICE
    • With a public PaaS, you are outsourcing your Operations & DevOps

    With a Private PaaS you’ll get improve the« interface » between DEV and IT
    compared to traditional middleware, but … you remain in charge of all operations!

    And remember: Customization is the root of all evil!
    • « Can I get a 160V plug just for this toaster? »
    One word of caution…
    ©2012 CloudBees, Inc. All

    View Slide

  48. Yeah, but do I even need the cloud?
    And if I do, why now?
    ©2012 Cloud Bees, Inc. All

    View Slide

  49. 49
    Important changes are taking place

    Mobile

    Social

    Local

    Big Data

    Consumerization of IT

    HTML5

    Component reuse

    Open Source

    Agile SCRUM

    View Slide

  50. 50
    Entering the post-PC era
    Thanks to Mary Meeker and Matt Murphy, From David Skok presentation @ MassTLC

    View Slide

  51. 51
    51
    Source: Mary Meeker , 2011, www.kpcb.com/internettrends2011

    View Slide

  52. 52
    52
    Source: Mary Meeker , 2011, www.kpcb.com/internettrends2011

    View Slide

  53. 53
    Mobile Internet - 10x bigger!
    Thanks to Mary Meeker and Matt Murphy, From David Skok presentation @ MassTLC

    View Slide

  54. 54
    How to handle that massive increase?
    54

    View Slide

  55. 55
    How to handle…
    55
    10x more
    aplications!
    Hire 10x
    more
    developers?
    Pay 10x
    smaller
    salaries?
    Become 10x
    more
    productive?

    View Slide

  56. 56
    1.
    Value failure
    2.
    Increase productivity
    Solutions
    56

    View Slide

  57. 57
    About 25% of the projects fail
    … and failure is bad, right?
    So let’s « force » success…
    Let’s increase budget…
    Let’s extend the deadlines…
    Let’s reduce the scope…
    Let’s reduce expectations…
    Bottom line, let’s succeed! (easy)
    Valuing failure?!?
    57
    source: http://bit.ly/aaPgxe

    View Slide

  58. 58
    Since we have to deliver 10x more applications…
    …Are 100% of those ideas necessarily good ideas? NO!
    …Can we always know that beforehand? NO!
    If an idea is a BAD idea, we’d better know that fast  FAIL-FASTER!!!
    1. We must INCREASE the failure rate
    58
    Must read: http://speakerdeck.com/u/searls/p/the-mythical-team-month

    View Slide

  59. 59
    1. Fail-Faster - Fail-Smaller
    59
    Idea 1
    Idea 2
    Idea 3
    Idea 4
    Idea 5
    Idea 6
    Idea 7
    Idea 8
    DEV+IT
    TEAM
    App 1
    App 2
    App 3
    App 4
    Idea 5 Idea 6 Idea 7 Idea 8
    Idea 1 Idea 2 Idea 3 Idea 4
    DEV TEAM
    Dev 1 Dev 2 Dev 3 Dev 4
    App 1
    App 2
    App 3
    App 4
    App 5
    App 6
    App 7
    App 8

    View Slide

  60. 60
    1. Failing FAST with FEW resources
    is GOOD!
    “Repeat after me”
    60

    View Slide

  61. 61
    Doing small & fast projects is a great idea…
    except if FRICTION between DEV and IT remains constant
     very hard to scale!
     We must DROP friction between DEV and IT!
    2. Increase productivity
    61

    View Slide

  62. OK, but how do I do that?
    Use a PaaS!
    62

    View Slide

  63. 63
    Before PaaS
    Source
    Code
    Managemnt
    Jenkins
    Continuous
    Integration
    Unit
    Test
    Functional
    Test
    Load
    Test
    Integration
    Test
    Developer
    “Cloud you please provision a server for me?”
    “Could I get X, Y and Z installed on that server?”
    “Could you please patch my server?”
    “Could I please get a database dump?”
    Could I get a new Git server?
    Where could I run my Jenkins integration tests?
    IT

    View Slide

  64. 64
    With PaaS
    Source
    Code
    Managemnt
    Jenkins
    Continuous
    Integration
    Unit
    Test
    Functional
    Test
    Load
    Test
    Integration
    Test
    Developer
    Create a new account
    Create a new Git repository
    Create my new Jenkins testsuite
    Deploy my app and test it
    Deploy my production app with HA
    Done
    PaaS Portal

    View Slide

  65. 65
    Public Edition - IaaS Providers
    ©2012 CloudBees, Inc.
    CloudBees Platform as a Service
    Continuous
    Deployment
    Production
    Build
    Test
    Provisioning
    Maintenance
    Jenkins
    S
    a
    a
    S
    V
    e
    n
    d
    o
    r
    A
    p
    p
    l
    i
    c
    a
    t
    i
    o
    n
    s
    E
    n
    t
    e
    r
    p
    r
    i
    s
    e
    U
    s
    e
    r
    A
    p
    p
    l
    i
    c
    a
    t
    i
    o
    n
    s
    JVM – Java EE
    Java, Python, Scala, …
    CloudBees Core Platform Services
    [email protected]
    [email protected]
    Repositories
    Data Services
    Metering
    Billing
    Monitoring
    Management
    Messaging Identity
    Logging/
    Auditing
    Back-end services
    Runtime services
    D
    e
    v
    e
    l
    o
    p
    m
    e
    n
    t
    P
    r
    o
    j
    e
    c
    t
    s
    C
    l
    o
    u
    d
    B
    e
    e
    s
    E
    c
    o
    s
    y
    s
    t
    e
    m
    GI
    T
    Maven …
    SVN
    APIs
    C
    l
    o
    u
    d
    B
    e
    e
    s
    S
    m
    a
    r
    t
    P
    l
    u
    g
    i
    n
    s
    Databases
    Other SaaS
    On Premise
    Private Edition - On-Premise

    View Slide

  66. 66
    Public Edition - IaaS Providers
    ©2012 CloudBees, Inc.
    CloudBees Platform as a Service
    Continuous
    Deployment
    Production
    Build
    Test
    Provisioning
    Maintenance
    Jenkins
    S
    a
    a
    S
    V
    e
    n
    d
    o
    r
    A
    p
    p
    l
    i
    c
    a
    t
    i
    o
    n
    s
    E
    n
    t
    e
    r
    p
    r
    i
    s
    e
    U
    s
    e
    r
    A
    p
    p
    l
    i
    c
    a
    t
    i
    o
    n
    s
    JVM – Java EE
    Java, Python, Scala, …
    CloudBees Core Platform Services
    [email protected]
    [email protected]
    Repositories
    Data Services
    Metering
    Billing
    Monitoring
    Management
    Messaging Identity
    Logging/
    Auditing
    Back-end services
    Runtime services
    D
    e
    v
    e
    l
    o
    p
    m
    e
    n
    t
    P
    r
    o
    j
    e
    c
    t
    s
    C
    l
    o
    u
    d
    B
    e
    e
    s
    E
    c
    o
    s
    y
    s
    t
    e
    m
    GI
    T
    Maven …
    SVN
    APIs
    C
    l
    o
    u
    d
    B
    e
    e
    s
    S
    m
    a
    r
    t
    P
    l
    u
    g
    i
    n
    s
    Databases
    Other SaaS
    On Premise
    Private Edition - On-Premise
    Iterate

    View Slide

  67. Does it even work?!?
    67
    BULLSHIT 2.0 ?

    View Slide

  68. 68

    LoseIt! – Facts

    Mobile Application

    >12 million users

    >25’000 tx/minute

    Real-time activity monitoring

    Several releases a week

    loseIt! – Reality

    4 employees total

    2 developers

    2 marketing

    0 IT/operations

     4 employees
    68
    ü

    View Slide

  69. 69
    The cloud is
    … not secure!
    … not stable!
    The real question is more probably:
    What will you do when a “loseIt!” will be a competitor in your feld?
    (hint: be that“LoseIt!”)
    “If you don’t like change, you are going to like irrelevance even less.”
    -- Gen. Erik Shineski
    “Well, I am not too much of a cloud guy…”
    69

    View Slide

  70. 70

    Need for new data and applications is going to explode!

    It will become key to value failure and increase productivity

    New tools and processes are needed to achieve this

    PaaS is the new platform for developers

    The future is now!
    Conclusion
    70

    View Slide

  71. 71
    A few words about CloudBees
    Our Mission
    Strategy
    Transform the way enterprise Java™ applications are developed and
    deployed through a lifecycle approach to Platform as a Service (PaaS)
    serving the Java Family of Languages
    Why We’re
    Different
    CloudBees services the complete lifecycle of cloud
    application development and deployment for Java.
    No Servers. No Virtual Machines. No Software. No IT.
    A single integrated, extensible platform offering
    § Development Services, [email protected]
    §
    Continuous integration and repository services
    § Runtime Services, [email protected]
    §
    Continuous delivery, choice of application runtimes, database
    service, monitoring, operations

    View Slide

  72. 72
    Sacha
    Labourey
    CEO
    Co-founder of JBoss
    GM JBoss EMEA, then JBoss CTO.
    After JBoss acquisition by Red Hat, co-
    GM middleware division, left in March
    2009
    Steven
    Harris
    SVP Products
    More than 13 years leading Oracle's
    Java server development, including
    WebLogic and Java EE overall
    Andrew
    Lee
    VP Business
    Development
    Principal at Battery Ventures, Strategy
    and Corporate Business Development
    at VMware
    André
    Pino
    VP Marketing
    Principal Analyst at Forrester Research,
    VP & CMO at Acsis, CMO at Segue,
    SVP at iPhrase, GM Marketing at HP
    The CloudBees Team
    A proven team of developers and entrepreneurs
    François
    Déchery
    VP Int’l Business
    Development
    Dir. Services EMEA at JBoss, Dir. JBoss
    Support at Red Hat, Dir. Support
    Partners at Red Hat, KPMG Peat
    Marwick, Sun Microsystems, Metaware,
    Infor
    Kohsuke
    Kawaguchi
    Elite Developer &
    Architect
    Creator of the Jenkins CI server,
    originally known as Hudson. Broadly
    recognized open source and community
    leader
    Jim
    McLoughlin
    VP Sales
    SVP Sales Appirio, VP EMEA&America
    Borland Software, VP @ JD Edwards,
    PeopleSoft, IBM
    Spike
    Washburn
    VP Engineering
    Founder Stax. Middleware engineer and
    Dev Mgr. IBM WebSphere, Allaire,
    Aptana, Macromedia and Microsoft
    Bob Bickel
    Advisor
    GM HP middleware/Bluestone, VP
    Strategy & Business Dev at JBoss;
    Hyperic, Metaverse, Ringside Networks,
    eXo
    this

    View Slide

  73. 73

    Founded in April 2010

    Headquartered in Woburn, MA

    Deep roots in middleware and open source

    Award-winning platform in production today

    Great customer references!
    Company Overview

    View Slide

  74. 74
    ©2012 CloudBees, Inc. All
    Why does CloudBees rock?
    Confgure OS Secure OS Setup JVM
    Install AS on OS Confgure AS Secure AS
     provision nodes
    Install load-balancer
    (LB)
    Confgure LB
    Secure LB Setup BC for cluster QA cluster
    Confgure DNS
    Provision node:
    Provision cluster:
     Provision node Install DB Confgure DB
    Secure DB Setup BC for DB
    Provision DB:
     Provision cluster Provision DB Deploy schema
    Deploy App to each
    node
    Deploy App:
    (not a transparent update process)
    Analyse sec.
    bulletins
    Analyse QA bulletins Analyse AS/OS logs
    maintain OS maintain JVM maintain AS
    maintain DB
    Manage environment (recurring)
    maintain FW Validate/QA stack
    Measure App
    performance
    Acquire Hardware Provision node
    Update Cluster Update LB
    Metering/Scaling (recurring)
    Update Security
    (transparent,
    multi-version,
    HA, scalable)

    No need to care about servers, load-
    balancers, frewalls, backups, etc.

    The environment is constantly
    managed and monitored

    Scalability happens in realtime

    Integrated failover/HA

    We do « Ops », you do « Dev »
    Deploy app to traditional Java platform Deploy app to CloudBees
    DEPLOY

    View Slide

  75. 75
    > git clone ssh://[email protected]/webinar/jboss-
    kitchensink.git kitchensink
    > bees app:create --withCD –t jboss kitchensink
    > git remote add cloudbees ssh://[email protected]/webinar/kitchensink.git
    > git push cloudbees master
    > git commit -a -m “did modification"
    > git push cloudbees master
    CloudBees in 2 minutes
    75
    App Project
    Deploy
    [email protected] [email protected]
    Elastic
    Elastic
    Elastic App
    Source
    Control
    Jenkins
    Build/Test
    Push
    Create a Git
    repository, a
    Jenkins job and an
    application!

    View Slide

  76. 76
    The cloud – weather forecast
    ©2012 CloudBees, Inc. All
    SaaS
    By 2020, it will either be about
    PaaS
    or
    Can I find a pre-built solution
    that matches my needs?  SaaS
    If not, then I need to build a
    custom application  PaaS

    View Slide

  77. 77
     OS won’t matter to IT consumers
    ©2012 CloudBees, Inc. All
    Operating Systems

    View Slide

  78. 78
     Middleware won’t matter to IT consumers
    ©2012 CloudBees, Inc. All
    Middleware

    View Slide

  79. 79
     IaaS won’t matter to IT consumers
    ©2012 CloudBees, Inc. All
    IaaS

    View Slide

  80. 80

    Register on CloudBees.com, it is free and complete:

    Deploy your app in the cloud!

    Store your data

    Do your build & test in the cloud
    • Jenkins as a Service
    • Repositories: Git, SVN, Maven/DAV
    • Eclipse plugin

    Free program for FOSS projects
    https://grandcentral.cloudbees.com/account/signup
    Join the light side of the FORCE!
    ©2012 CloudBees, Inc. All

    View Slide

  81. 81
    Merci!
    ©2012 Cloud Bees, Inc. All
    Old Way
    Extra IT
    CloudBees
    Build.
    Test.
    Run.
    No IT

    View Slide