Cloud Foundry
                              Overview
                             Compiled by Rajdeep Dua
                                         Director
                              Developer Relations VMware India


                              twitter : @rajdeepdua



Thursday, February 21, 13
The Shift

                                                 Cloud



                             Client
           MainFrame                     Web     Mobile
                             Server



                                                 HTML5




                70s         80s/90s   Late 90s   Now

Thursday, February 21, 13
Cloud Computing


                     •      Once in 10-15 years shift

                     •      Moving compute / storage / heavy lifting to the
                            cloud




Thursday, February 21, 13
Shifting Priorities of the
                                      Cloud

                     1. 2000 : Web
                     2. 2002 : Infrastructure
                     3. 2008 : Platform
                     4. 2012 : Developer and Polyglot




Thursday, February 21, 13
Cloud Foundry

                                                      Ap
                                                          pli

                             vFabric
                                                            ca

                            Postgres                                                                                 Private
                                                               tio




                                                                                                            ce
                                                                                                                     Clouds
                                                                   n




                                                                                                           rfa
                                                                      Se

                                          Data Services




                                                                                                         nte
                                                                          rvi



                                                                                                                 Public




                                                                                                       rI
                                  vFabric
                                                                             ce



                                  RabbitMQTM




                                                                                                     ide
                                                                                                                 Clouds
                                                                                    Int




                                                                                                       v
                                                    Msg Services
                                                                                       e




                                                                                                    ro
                                                                                      rfa




                                                                                                dP         Micro
                                                                                          ce


                                                                                               ou
                                                                                                           Clouds
                                                                                               Cl

                                                                   Other Services




Thursday, February 21, 13
cloudfoundry.com




Thursday, February 21, 13
cloudfoundry.org

                                           github.com/cloudfoundry

                            !  .NET x 2                          !  Memcached
                            !  PHP                               !  SQL Server
                            !  JRuby                             !  Neo4j
                            !  Python                            !  CouchDB
                            !  Rails 2.x                         !  VirtualBox
                            !  Closure                           !  Mono
                            !  Erlang                            !  Rack
                            !  Haskell                           !  VirtualBox




Thursday, February 21, 13
Cloud Foundry
                             Architecture




Thursday, February 21, 13
Architectural Elements

                            •   No Single Point of Failure

                            •   Self Healing

                            •   Distributed Architecture

                            •   Horizontal Scaling




Thursday, February 21, 13
Cloud Foundry Layers




Thursday, February 21, 13
Cloud Foundry Inner Shell




Thursday, February 21, 13
Cloud Foundry Inner Shell




Thursday, February 21, 13
Cloud Controller

                                      • Interfaces with VMC, STS
                                        and Portal
                                      • Rails Application
                                      • Provides Rest Interfaces
                                        for
                                        • Apps
                                        • Services
                                        • Orgs
                                        • Spaces

Thursday, February 21, 13
Cloud Controller..contd




Thursday, February 21, 13
Stager
                                 • Converts the App into a
                                   standard binary
                                 • Uses Pluggin Architecture
                                 • Each Pluggin understands a
                                   Framework or runtime




Thursday, February 21, 13
DEA - Execution Agent

                                        • All the Apps run in this
                                          container
                                        • Monitors Apps memory
                                          and disk usage
                                        • Consistent view of the
                                          App irrespective of
                                          runtime
                                        • App Isolation


Thursday, February 21, 13
DEA - Application Isolation




Thursday, February 21, 13
Services

                                  • Interfaces between the
                                    Controller and the Service
                                    Nodes.
                                  • Service Gateway for each
                                    type of Service
                                  • Services deployed in
                                    separate VMs



Thursday, February 21, 13
Router
                                • Responsible for routing
                                  request from outside
                                  world to external facing
                                  components :
                                  • UAA
                                  • Controller
                                  • User Apps in DEA




Thursday, February 21, 13
Cloud Foundry Outer Shell




Thursday, February 21, 13
OuterShell : Cloud Foundry
                         Clusters

                     •      5000+ VMs

                     •      40+ unique node types

                     •      75+ software packages

                     •      24/7 Operations

                     •      No downtimes




Thursday, February 21, 13
BOSH

                     •      Automated Virtual Infrastructure

                     •      Software Deployment, Configuration and Updates

                     •      Active Monitoring and Alerting

                     •      Used to Manage Cloud Foundry Clusters




Thursday, February 21, 13
Components of Bosh




Thursday, February 21, 13
Components of Bosh..




Thursday, February 21, 13
Cloud Provider Interface

             •       Provides abstraction to the
                     Infrastructure

             •       Implementation for
                     vSphere, OpenStack and
                     AWS

             •       Pluggable architecture
                     allows other stack to be
                     added like vCloud




Thursday, February 21, 13
Deployment on vSphere




Thursday, February 21, 13
Steps to Deploy on
                                      vSphere
                     1. Setup the Hardware -
                            1.1.ESXi boxes, vCenter, SAN based Storage, Private
                                Network with L2 / L3 Switch
                            1.2.Domain Name Server
                     2. Install Bosh CLI
                     3. Install Micro Bosh
                     4. Use Micro Bosh to Install Bosh - 6 VMs
                     5. Use Bosh to Install Cloud Foundry - 49 VMs


Thursday, February 21, 13
Summary

                      •     Cloud Foundry is a Polyglot Open Source Paas

                      •     Can be run on Public or Private Cloud

                      •     It is Iaas agnostic : Supports vSphere, AWS,
                            OpenStack

                      •     Avoids vendor lock-in




Thursday, February 21, 13
To Get Started
                                     Signup at
                            http://www.cloudfoundry.com


                               To Setup Cloud Foundry
                            http://github.com/cloudfoundry




Thursday, February 21, 13

Cloud Foundry Architecture and Overview

  • 1.
    Cloud Foundry Overview Compiled by Rajdeep Dua Director Developer Relations VMware India twitter : @rajdeepdua Thursday, February 21, 13
  • 2.
    The Shift Cloud Client MainFrame Web Mobile Server HTML5 70s 80s/90s Late 90s Now Thursday, February 21, 13
  • 3.
    Cloud Computing • Once in 10-15 years shift • Moving compute / storage / heavy lifting to the cloud Thursday, February 21, 13
  • 4.
    Shifting Priorities ofthe Cloud 1. 2000 : Web 2. 2002 : Infrastructure 3. 2008 : Platform 4. 2012 : Developer and Polyglot Thursday, February 21, 13
  • 5.
    Cloud Foundry Ap pli vFabric ca Postgres Private tio ce Clouds n rfa Se Data Services nte rvi Public rI vFabric ce RabbitMQTM ide Clouds Int v Msg Services e ro rfa dP Micro ce ou Clouds Cl Other Services Thursday, February 21, 13
  • 6.
  • 7.
    cloudfoundry.org github.com/cloudfoundry !  .NET x 2 !  Memcached !  PHP !  SQL Server !  JRuby !  Neo4j !  Python !  CouchDB !  Rails 2.x !  VirtualBox !  Closure !  Mono !  Erlang !  Rack !  Haskell !  VirtualBox Thursday, February 21, 13
  • 8.
    Cloud Foundry Architecture Thursday, February 21, 13
  • 9.
    Architectural Elements • No Single Point of Failure • Self Healing • Distributed Architecture • Horizontal Scaling Thursday, February 21, 13
  • 10.
  • 11.
    Cloud Foundry InnerShell Thursday, February 21, 13
  • 12.
    Cloud Foundry InnerShell Thursday, February 21, 13
  • 13.
    Cloud Controller • Interfaces with VMC, STS and Portal • Rails Application • Provides Rest Interfaces for • Apps • Services • Orgs • Spaces Thursday, February 21, 13
  • 14.
  • 15.
    Stager • Converts the App into a standard binary • Uses Pluggin Architecture • Each Pluggin understands a Framework or runtime Thursday, February 21, 13
  • 16.
    DEA - ExecutionAgent • All the Apps run in this container • Monitors Apps memory and disk usage • Consistent view of the App irrespective of runtime • App Isolation Thursday, February 21, 13
  • 17.
    DEA - ApplicationIsolation Thursday, February 21, 13
  • 18.
    Services • Interfaces between the Controller and the Service Nodes. • Service Gateway for each type of Service • Services deployed in separate VMs Thursday, February 21, 13
  • 19.
    Router • Responsible for routing request from outside world to external facing components : • UAA • Controller • User Apps in DEA Thursday, February 21, 13
  • 20.
    Cloud Foundry OuterShell Thursday, February 21, 13
  • 21.
    OuterShell : CloudFoundry Clusters • 5000+ VMs • 40+ unique node types • 75+ software packages • 24/7 Operations • No downtimes Thursday, February 21, 13
  • 22.
    BOSH • Automated Virtual Infrastructure • Software Deployment, Configuration and Updates • Active Monitoring and Alerting • Used to Manage Cloud Foundry Clusters Thursday, February 21, 13
  • 23.
  • 24.
  • 25.
    Cloud Provider Interface • Provides abstraction to the Infrastructure • Implementation for vSphere, OpenStack and AWS • Pluggable architecture allows other stack to be added like vCloud Thursday, February 21, 13
  • 26.
  • 27.
    Steps to Deployon vSphere 1. Setup the Hardware - 1.1.ESXi boxes, vCenter, SAN based Storage, Private Network with L2 / L3 Switch 1.2.Domain Name Server 2. Install Bosh CLI 3. Install Micro Bosh 4. Use Micro Bosh to Install Bosh - 6 VMs 5. Use Bosh to Install Cloud Foundry - 49 VMs Thursday, February 21, 13
  • 28.
    Summary • Cloud Foundry is a Polyglot Open Source Paas • Can be run on Public or Private Cloud • It is Iaas agnostic : Supports vSphere, AWS, OpenStack • Avoids vendor lock-in Thursday, February 21, 13
  • 29.
    To Get Started Signup at http://www.cloudfoundry.com To Setup Cloud Foundry http://github.com/cloudfoundry Thursday, February 21, 13