SlideShare une entreprise Scribd logo
1  sur  63
Télécharger pour lire hors ligne
Design and Architecture

        Derek Collison
What is
    Cloud Foundry?



2
The Open
Platform as a Service



3
What is PaaS?




4
Or more specifically,
         aPaaS?



5
aPaaS
    • Application Platform as a Service
    • Applications and Services




6
aPaaS
    • Application Platform as a Service
    • Applications and Services
    • Not
     • VMs
     • Memory
     • Storage
     • Networks
     • CPU
7
What is
    OpenPaaS?



8
OpenPaaS
    • Multi-Language
    • Multi-Framework
    • Multi-Services
    • Multi-Cloud, Multi-IaaS
    • Hybrid - Public or Private or Both
    • OpenSource

9
OpenPaaS
     • Multi-Language
       • Ruby, Java, Scala, Node.js, Erlang, Python, PHP..
     • Multi-Framework
       • Rails, Sinatra, Spring, Grails, Express, Lift
     • Multi-Services
       • MySQL, Postgres, MongoDB, Redis, RabbitMQ
     • Multi-Cloud, Multi-IaaS
       • vSphere, MicroCloud, OpenStack,        AWS

10
The Open PaaS

                           Ap
                           pli


      vFabric
                                                                              Private
                             ca




                                                                      ce
     Postgres
                                  tio




                                                                     rfa
                 Data                                                         Clouds
                                      n




                                                                      e
                Services




                                                                   Int
                                     Se




                                                                           Public
                                          rvi




                                                               er
          vFabric




                                                              vid
                                              ce




          RabbitMQTM     Msg
                       Services                                            Clouds
                                                              ro
                                                 Int




                                                          dP
                                                    e




                                                                    Micro
                                                  rfa



                                                         ou

                                                                    Clouds
                                                    ce




                                    Other
                                                         Cl


                                   Services




11
What is
     our Goal?



12
What was our Goal?

     Raise the unit of currency
     to be the application and
      its associated services,
        not the infrastructure


13
What was our Goal?

     Best of breed delivery
     platform for all modern
        applications and
           frameworks


14
What was our Goal?

        Favor Choice
            and
         Openness



15
How was it Built?




16
How was it Built?
     • Kernel (CloudFoundry OSS)
      • Core PaaS System
     • Kernel and Orchestrator Shells
      • Layered on top of IaaS
     • Orchestrator
      • IaaS creation, management and
       orchestration



17
High Level
         Clients (VMC, STS, Browser)




                  CF Kernel




                Orchestrator




                    IaaS




     Hardware - CPU/Memory/Disk/Network



18
Basic Premises
     • Fail Fast
     • Self Healing
     • Horizontally Scalable Components
     • Distributed State
     • No Single Point of Failure
     • Should be as simple as possible

19
Basic Patterns
     • Event-Driven
     • Asynchronous
     • Non-blocking
     • Independent, Idempotent
     • Message Passing
     • Eventually Consistent

20
Basic Design
     • All components loosely coupled
      • Few “Classes”, many “Instances”
     • Messaging as foundation
      • Addressing and Component Discovery
      • Command and Control
     • JSON payloads
     • HTTP or File/Blob for data transport
21
Kernel Components
     • All dynamically discoverable
     • Launch and scale in any order
     • Can come and go as needed
     • Monitor via HTTP and JSON
     • Location independent


22
Kernel Components
     • Router
     • CloudController
     • DEA
     • HealthManager
     • Service Provisioning Agent
     • Messaging System

23
Logical View
                                                            Browser
     VMC client    STS plugin
                                                        (user app access)



                                 Routers


         CloudControllers        App              App


                                                            HealthManager
             Services                  DEA Pool



                                Messaging



24
25
     Architecture
Messaging




26
Messaging
     “The Nervous System”




27
Messaging
                                                            Browser
     VMC client    STS plugin
                                                        (user app access)



                                 Routers


         CloudControllers        App              App


                                                            HealthManager
             Services                  DEA Pool



                                Messaging



28
Messaging
     • Addressing and Discovery
      •   No static IPs or DNS lookups req’d
      •   Just Layer 4

     • Command and Control
     • Central communication system
     • Dial tone, fire and forget
     • Protects *itself* at all costs
     • Idempotent semantics
29
Router




30
Router
     “Traffic Cop”




31
Router
                                                             Browser
     VMC client    STS plugin
                                                         (user app access)



                                  Routers


         CloudControllers         App              App


                                                             HealthManager
             Services                   DEA Pool



                                 Messaging



32
Router
     • Handles all HTTP traffic
     • Maintains distributed routing state
     • Routes URLs to applications
     • Distributes load among instances
     • Realtime distributed updates to
      routing tables from DEAs


33
CloudController




34
CloudController
        “The King”




35
CloudController
                                                            Browser
     VMC client    STS plugin
                                                        (user app access)



                                 Routers


         CloudControllers        App              App


                                                            HealthManager
             Services                  DEA Pool



                                Messaging



36
CloudController
     • Handles all state transitions
     • Deals with users, apps, and services
     • Packages and Stages applications
     • Binds Services to Applications
     • Presents external REST API


37
HealthManager




38
HealthManager
      “Court Jester”




39
HealthManager
                                                            Browser
     VMC client    STS plugin
                                                        (user app access)



                                 Routers


         CloudControllers        App              App


                                                            HealthManager
             Services                  DEA Pool



                                Messaging



40
HealthManager
     • Monitors the state of the world
     • Initial value with realtime delta
      updates to “intended” vs “real”
     • Determines drift
     • Complains to the CloudControllers
      when something is not correct
     • No power to change state itself
41
DEA




42
DEA
     “Droplet Execution Agent”




43
DEA
                                                            Browser
     VMC client    STS plugin
                                                        (user app access)



                                 Routers


         CloudControllers        App              App


                                                            HealthManager
             Services                  DEA Pool



                                Messaging



44
DEA
                (Droplet Execution Agent)
     •   Responsible for running all applications
     •   Monitors all applications
         •   CPU, Mem, IO, Threads, Disk, FDs, etc

     •   All apps look same to DEA
         •   start and stop

     •   Express ability and desire to run an application
         •   runtimes, options, cluster avoidance, memory/cpu

     •   Alerts on any change in state of applications
     •   Provides secure/constrained OS runtime
         •   Hypervisor, Unix File and User, Linux Containers*
         •   Single or Multi-Tenant

45
How does it all
        Work?



46
Pushing an App
     • Client (VMC/STS) pushes meta-data to CC
     • Client optionally pushes resource
      signatures (diff analysis, sys wide)
     • Client pushes app resources to CC
     • CC puts app together
     • CC stages app asynchronously
     • CC binds and stages services
     • Droplet ready

47
48
     Architecture
Running an App
     •   CC asks DEAs for “help”
     •   First DEA back wins! Simple
     •   CC sends start request to selected DEA
     •   DEA pushes the “green” button
     •   DEA waits and monitors pid and ephemeral
         port for app to bind
     •   When app is healthy, sends “register” message
     •   Register message is seen by HM and Routers
     •   Routers bind URL to host:port

49
DEAs answer?
     • DEAs first determine YES or NO
      • correct runtime, options, memory, etc
     • Then calculate a Delay Taint
      • SHA hash of application
      • memory
      • cpu
     • Taint allows balancing and selection

50
Scale up & down?
     • Exact steps as running the app
      the first time
     • SHA1 taint helps avoid clustering
     • memory/cpu taint helps distribute
      as evenly as possible
     • Nothing pre-computed
     • Nothing assumed
51
Crashes?
     • If your app stops and we did not tell
      it to, that is a crash
     • Crashed apps are immediately
      detected by DEA and messaged
     • Routers disconnect route instantly
     • HM will signal CC
      •   something is wrong

     • CC will issue run sequence again
52
53
     Architecture
Access to my App?
     • All routers understand where all
      instances of your application are
      running
     • Will randomly pick backend, not
      semantically aware.
     • Will remove routes that are stale or
      unhealthy
     • Session stickiness and replication
      available, but best to avoid if possible
54
What about
     Services?



55
Services
                                                            Browser
     VMC client    STS plugin
                                                        (user app access)



                                 Routers


         CloudControllers        App              App


                                                            HealthManager
             Services                  DEA Pool



                                Messaging



56
Services
     • Service Advertisement
     • Service Provisioning
     • Gateway fronts multi-backends
     • Service Nodes scale independent
     • App and service talk directly
     • API to register into system
     • Closure for additional value
57
Provisioning
     VMC/STS



           1
                                 Routers
                            2

       CloudControllers                     Services Gateway
                                                         3
                            5
               6                                     4

                     Service Node     Service Node        Service Node
     Application
                        MySQL            Redis               Redis



                                Messaging



58
Access (Direct)
           Browser
       (user app access)


           1
                                Routers


       CloudControllers                    Services Gateway



                     Service Node       Service Node     Service Node
     Application
                        MySQL              Redis            Redis

                                    2
                              Messaging



59
Services
     VMware Dev Tools                Partner Dev Tools

     Cloud Foundry
       consume
                                                               Enterprise Services
                           apps              consume
                                               bind
                                                                   Data Director
            provision/bind

                        service
                                              service broker
                       controller
                                                                     SQLFire


     core services

                     Relational DB




                       vSphere


60
Learn more:

      www.cloudfoundry.org
      blog.cloudfoundry.com
     support.cloudfoundry.com




61
Thank You



62
Questions?
     dcollison@vmware.com
     derek.collison@gmail.com
     twitter: derekcollison




63

Contenu connexe

Tendances

SDN Network virtualization, NFV & MPLS synergies
SDN Network virtualization, NFV & MPLS synergiesSDN Network virtualization, NFV & MPLS synergies
SDN Network virtualization, NFV & MPLS synergiesHector.Avalos
 
Cloudstack collab talk
Cloudstack collab talkCloudstack collab talk
Cloudstack collab talkMidokura
 
Quantum - The Network Mechanics
Quantum - The Network MechanicsQuantum - The Network Mechanics
Quantum - The Network MechanicsKiran Murari
 
Quantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxQuantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxOpenStack Foundation
 
Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summitDan Wendlandt
 
Software-Based Networking & Security for the Cloud
Software-Based Networking & Security for the CloudSoftware-Based Networking & Security for the Cloud
Software-Based Networking & Security for the CloudMatt Wolpin
 
Quality of Service at the Internet Engineering Task Force
Quality of Service at the Internet Engineering Task ForceQuality of Service at the Internet Engineering Task Force
Quality of Service at the Internet Engineering Task ForceJohn Loughney
 
Am 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalAm 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalOpenCity Community
 
Cisco Live! Designing Multipoint WAN QoS
Cisco Live! Designing Multipoint WAN QoSCisco Live! Designing Multipoint WAN QoS
Cisco Live! Designing Multipoint WAN QoSEddie Kempe
 
Presentacion qos-
Presentacion qos-Presentacion qos-
Presentacion qos-Javier H
 
The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...
The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...
The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...scarisbrick
 
Vyatta cloud expo-sjc_2012-share
Vyatta cloud expo-sjc_2012-shareVyatta cloud expo-sjc_2012-share
Vyatta cloud expo-sjc_2012-shareScott Sneddon
 
Integrating OpenStack to Existing infrastructure
Integrating OpenStack to Existing infrastructureIntegrating OpenStack to Existing infrastructure
Integrating OpenStack to Existing infrastructurelaurabeckcahoon
 
Flexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLAN
Flexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLANFlexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLAN
Flexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLANCisco Canada
 

Tendances (20)

Quality of service
Quality of serviceQuality of service
Quality of service
 
Qo s
Qo sQo s
Qo s
 
Openstack@ebay.pptx
Openstack@ebay.pptxOpenstack@ebay.pptx
Openstack@ebay.pptx
 
SDN Network virtualization, NFV & MPLS synergies
SDN Network virtualization, NFV & MPLS synergiesSDN Network virtualization, NFV & MPLS synergies
SDN Network virtualization, NFV & MPLS synergies
 
Making case up
Making case upMaking case up
Making case up
 
Cloudstack collab talk
Cloudstack collab talkCloudstack collab talk
Cloudstack collab talk
 
Fa Qs Cdn
Fa Qs CdnFa Qs Cdn
Fa Qs Cdn
 
Quantum - The Network Mechanics
Quantum - The Network MechanicsQuantum - The Network Mechanics
Quantum - The Network Mechanics
 
Quantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxQuantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptx
 
Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summit
 
Software-Based Networking & Security for the Cloud
Software-Based Networking & Security for the CloudSoftware-Based Networking & Security for the Cloud
Software-Based Networking & Security for the Cloud
 
Quality of Service at the Internet Engineering Task Force
Quality of Service at the Internet Engineering Task ForceQuality of Service at the Internet Engineering Task Force
Quality of Service at the Internet Engineering Task Force
 
Am 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalAm 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-final
 
Cisco Live! Designing Multipoint WAN QoS
Cisco Live! Designing Multipoint WAN QoSCisco Live! Designing Multipoint WAN QoS
Cisco Live! Designing Multipoint WAN QoS
 
Lte World Summit 2010
Lte World Summit 2010Lte World Summit 2010
Lte World Summit 2010
 
Presentacion qos-
Presentacion qos-Presentacion qos-
Presentacion qos-
 
The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...
The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...
The Network\'s IN the (virtualised) Server: Virtualized Io In Heterogeneous M...
 
Vyatta cloud expo-sjc_2012-share
Vyatta cloud expo-sjc_2012-shareVyatta cloud expo-sjc_2012-share
Vyatta cloud expo-sjc_2012-share
 
Integrating OpenStack to Existing infrastructure
Integrating OpenStack to Existing infrastructureIntegrating OpenStack to Existing infrastructure
Integrating OpenStack to Existing infrastructure
 
Flexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLAN
Flexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLANFlexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLAN
Flexible Data Centre Fabric - FabricPath/TRILL, OTV, LISP and VXLAN
 

En vedette

Virtualizationonibmbladecenter 1225792256455769-8
Virtualizationonibmbladecenter 1225792256455769-8Virtualizationonibmbladecenter 1225792256455769-8
Virtualizationonibmbladecenter 1225792256455769-8Newlink
 
Interrogatorio pietro ostuni
Interrogatorio pietro ostuniInterrogatorio pietro ostuni
Interrogatorio pietro ostuniVoglioscendere
 
Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01
Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01
Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01Newlink
 
RE/MAX Gujarat Newsletter October-November 2014
RE/MAX Gujarat Newsletter October-November 2014RE/MAX Gujarat Newsletter October-November 2014
RE/MAX Gujarat Newsletter October-November 2014Manaan Choksi
 
Sin eng-22 - hearts for family
Sin eng-22 - hearts for familySin eng-22 - hearts for family
Sin eng-22 - hearts for familysochinaction
 
Sin eng-28 - love japan
Sin eng-28 - love japanSin eng-28 - love japan
Sin eng-28 - love japansochinaction
 

En vedette (7)

Virtualizationonibmbladecenter 1225792256455769-8
Virtualizationonibmbladecenter 1225792256455769-8Virtualizationonibmbladecenter 1225792256455769-8
Virtualizationonibmbladecenter 1225792256455769-8
 
Interrogatorio pietro ostuni
Interrogatorio pietro ostuniInterrogatorio pietro ostuni
Interrogatorio pietro ostuni
 
Email Etiquette
Email EtiquetteEmail Etiquette
Email Etiquette
 
Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01
Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01
Ciscounifiedservicedeliverylaunchmay2009final 090512004229-phpapp01
 
RE/MAX Gujarat Newsletter October-November 2014
RE/MAX Gujarat Newsletter October-November 2014RE/MAX Gujarat Newsletter October-November 2014
RE/MAX Gujarat Newsletter October-November 2014
 
Sin eng-22 - hearts for family
Sin eng-22 - hearts for familySin eng-22 - hearts for family
Sin eng-22 - hearts for family
 
Sin eng-28 - love japan
Sin eng-28 - love japanSin eng-28 - love japan
Sin eng-28 - love japan
 

Similaire à Qcon 111122082620-phpapp02

Cloud foundry - the building of the open paas presentation
Cloud foundry - the building of the open paas presentationCloud foundry - the building of the open paas presentation
Cloud foundry - the building of the open paas presentationXianzhu Yue
 
OpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDNOpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDNTe-Yen Liu
 
Integration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDSIntegration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDSSupreet Oberoi
 
EMEA OpenStack Day, July 13th 2011 in London - Jim Curry intro
EMEA OpenStack Day, July 13th 2011 in London - Jim Curry introEMEA OpenStack Day, July 13th 2011 in London - Jim Curry intro
EMEA OpenStack Day, July 13th 2011 in London - Jim Curry introOpen Stack
 
Pandora FMS - Technical presentation
Pandora FMS - Technical presentationPandora FMS - Technical presentation
Pandora FMS - Technical presentationSancho Lerena
 
Cloud lockin and interoperability v2 indic threads cloud computing conferen...
Cloud lockin and interoperability v2   indic threads cloud computing conferen...Cloud lockin and interoperability v2   indic threads cloud computing conferen...
Cloud lockin and interoperability v2 indic threads cloud computing conferen...IndicThreads
 
Cloud lockin and interoperability v2 indic threads cloud computing conferen...
Cloud lockin and interoperability v2   indic threads cloud computing conferen...Cloud lockin and interoperability v2   indic threads cloud computing conferen...
Cloud lockin and interoperability v2 indic threads cloud computing conferen...IndicThreads
 
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Lucas Jellema
 
JAVA를 활용한 클라우딩 환경 기반 PaaS
JAVA를 활용한 클라우딩 환경 기반 PaaSJAVA를 활용한 클라우딩 환경 기반 PaaS
JAVA를 활용한 클라우딩 환경 기반 PaaSmosaicnet
 
자바(Java)를 위한 클라우드 환경 기반 Paas
자바(Java)를 위한 클라우드 환경 기반 Paas자바(Java)를 위한 클라우드 환경 기반 Paas
자바(Java)를 위한 클라우드 환경 기반 Paasmosaicnet
 
CommunicAsia 2016- Moving Beyond the Hype
CommunicAsia 2016- Moving Beyond the HypeCommunicAsia 2016- Moving Beyond the Hype
CommunicAsia 2016- Moving Beyond the HypeRadisys Corporation
 
Integrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing InfrastructureIntegrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing InfrastructureHui Cheng
 
Building A Cloud Platform
Building A Cloud PlatformBuilding A Cloud Platform
Building A Cloud PlatformWSO2
 
Presenter manual cloud computing (specially for summer interns)
Presenter manual   cloud computing (specially for summer interns)Presenter manual   cloud computing (specially for summer interns)
Presenter manual cloud computing (specially for summer interns)XPERT INFOTECH
 
Introduction to cloud computing
Introduction to cloud computingIntroduction to cloud computing
Introduction to cloud computingJithin Parakka
 
Kentucky gis
Kentucky gisKentucky gis
Kentucky gisedsai
 
EMEA OpenStack Day Intro, July 13th 2011 in London
EMEA OpenStack Day Intro, July 13th 2011 in LondonEMEA OpenStack Day Intro, July 13th 2011 in London
EMEA OpenStack Day Intro, July 13th 2011 in LondonMark Collier
 

Similaire à Qcon 111122082620-phpapp02 (20)

Cloud foundry - the building of the open paas presentation
Cloud foundry - the building of the open paas presentationCloud foundry - the building of the open paas presentation
Cloud foundry - the building of the open paas presentation
 
OpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDNOpenStack 2012 fall summit observation - Quantum/SDN
OpenStack 2012 fall summit observation - Quantum/SDN
 
State of the OpenDaylight Union
State of the OpenDaylight UnionState of the OpenDaylight Union
State of the OpenDaylight Union
 
Integration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDSIntegration Platform For JMPS Using DDS
Integration Platform For JMPS Using DDS
 
EMEA OpenStack Day, July 13th 2011 in London - Jim Curry intro
EMEA OpenStack Day, July 13th 2011 in London - Jim Curry introEMEA OpenStack Day, July 13th 2011 in London - Jim Curry intro
EMEA OpenStack Day, July 13th 2011 in London - Jim Curry intro
 
Pandora FMS - Technical presentation
Pandora FMS - Technical presentationPandora FMS - Technical presentation
Pandora FMS - Technical presentation
 
Cloud lockin and interoperability v2 indic threads cloud computing conferen...
Cloud lockin and interoperability v2   indic threads cloud computing conferen...Cloud lockin and interoperability v2   indic threads cloud computing conferen...
Cloud lockin and interoperability v2 indic threads cloud computing conferen...
 
Cloud lockin and interoperability v2 indic threads cloud computing conferen...
Cloud lockin and interoperability v2   indic threads cloud computing conferen...Cloud lockin and interoperability v2   indic threads cloud computing conferen...
Cloud lockin and interoperability v2 indic threads cloud computing conferen...
 
Cloud Foundry et le Cloud vu par VMware
Cloud Foundry et le Cloud vu par VMwareCloud Foundry et le Cloud vu par VMware
Cloud Foundry et le Cloud vu par VMware
 
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
 
JAVA를 활용한 클라우딩 환경 기반 PaaS
JAVA를 활용한 클라우딩 환경 기반 PaaSJAVA를 활용한 클라우딩 환경 기반 PaaS
JAVA를 활용한 클라우딩 환경 기반 PaaS
 
자바(Java)를 위한 클라우드 환경 기반 Paas
자바(Java)를 위한 클라우드 환경 기반 Paas자바(Java)를 위한 클라우드 환경 기반 Paas
자바(Java)를 위한 클라우드 환경 기반 Paas
 
CommunicAsia 2016- Moving Beyond the Hype
CommunicAsia 2016- Moving Beyond the HypeCommunicAsia 2016- Moving Beyond the Hype
CommunicAsia 2016- Moving Beyond the Hype
 
Chris millercloud
Chris millercloudChris millercloud
Chris millercloud
 
Integrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing InfrastructureIntegrating OpenStack To Existing Infrastructure
Integrating OpenStack To Existing Infrastructure
 
Building A Cloud Platform
Building A Cloud PlatformBuilding A Cloud Platform
Building A Cloud Platform
 
Presenter manual cloud computing (specially for summer interns)
Presenter manual   cloud computing (specially for summer interns)Presenter manual   cloud computing (specially for summer interns)
Presenter manual cloud computing (specially for summer interns)
 
Introduction to cloud computing
Introduction to cloud computingIntroduction to cloud computing
Introduction to cloud computing
 
Kentucky gis
Kentucky gisKentucky gis
Kentucky gis
 
EMEA OpenStack Day Intro, July 13th 2011 in London
EMEA OpenStack Day Intro, July 13th 2011 in LondonEMEA OpenStack Day Intro, July 13th 2011 in London
EMEA OpenStack Day Intro, July 13th 2011 in London
 

Plus de Newlink

Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Newlink
 
Business model-design-and-innovation-for-competitive-advantage-19352
Business model-design-and-innovation-for-competitive-advantage-19352Business model-design-and-innovation-for-competitive-advantage-19352
Business model-design-and-innovation-for-competitive-advantage-19352Newlink
 
Thefutureofwork 091027180703-phpapp01
Thefutureofwork 091027180703-phpapp01Thefutureofwork 091027180703-phpapp01
Thefutureofwork 091027180703-phpapp01Newlink
 
2011 06-29- sp-seminar- cisco cdn solution-1
2011 06-29- sp-seminar- cisco cdn solution-12011 06-29- sp-seminar- cisco cdn solution-1
2011 06-29- sp-seminar- cisco cdn solution-1Newlink
 
Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Newlink
 
Voicecon094distrfinal 090427125221-phpapp01
Voicecon094distrfinal 090427125221-phpapp01Voicecon094distrfinal 090427125221-phpapp01
Voicecon094distrfinal 090427125221-phpapp01Newlink
 
Thenewnetworkforthedatacenter 100519185534-phpapp02
Thenewnetworkforthedatacenter 100519185534-phpapp02Thenewnetworkforthedatacenter 100519185534-phpapp02
Thenewnetworkforthedatacenter 100519185534-phpapp02Newlink
 
Avaya sipwithinyourenterprise-090629022848-phpapp02
Avaya sipwithinyourenterprise-090629022848-phpapp02Avaya sipwithinyourenterprise-090629022848-phpapp02
Avaya sipwithinyourenterprise-090629022848-phpapp02Newlink
 
Curso de-asterisk-everano-2007-1204975330483842-4
Curso de-asterisk-everano-2007-1204975330483842-4Curso de-asterisk-everano-2007-1204975330483842-4
Curso de-asterisk-everano-2007-1204975330483842-4Newlink
 
Asterisk presence-im-091015103222-phpapp02
Asterisk presence-im-091015103222-phpapp02Asterisk presence-im-091015103222-phpapp02
Asterisk presence-im-091015103222-phpapp02Newlink
 
Vnx series-technical-review-110616214632-phpapp02
Vnx series-technical-review-110616214632-phpapp02Vnx series-technical-review-110616214632-phpapp02
Vnx series-technical-review-110616214632-phpapp02Newlink
 
Imentorstevejobspdf 110826082634-phpapp02
Imentorstevejobspdf 110826082634-phpapp02Imentorstevejobspdf 110826082634-phpapp02
Imentorstevejobspdf 110826082634-phpapp02Newlink
 
Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Newlink
 
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)Newlink
 
Apc 091016024613-phpapp01
Apc 091016024613-phpapp01Apc 091016024613-phpapp01
Apc 091016024613-phpapp01Newlink
 
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)Newlink
 
Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Newlink
 
Video 111127013709-phpapp02
Video 111127013709-phpapp02Video 111127013709-phpapp02
Video 111127013709-phpapp02Newlink
 
Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Newlink
 
Sysengandiso15926nov11 111127021757-phpapp01
Sysengandiso15926nov11 111127021757-phpapp01Sysengandiso15926nov11 111127021757-phpapp01
Sysengandiso15926nov11 111127021757-phpapp01Newlink
 

Plus de Newlink (20)

Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01Businessmodelgenerationpreview 100125081253-phpapp01
Businessmodelgenerationpreview 100125081253-phpapp01
 
Business model-design-and-innovation-for-competitive-advantage-19352
Business model-design-and-innovation-for-competitive-advantage-19352Business model-design-and-innovation-for-competitive-advantage-19352
Business model-design-and-innovation-for-competitive-advantage-19352
 
Thefutureofwork 091027180703-phpapp01
Thefutureofwork 091027180703-phpapp01Thefutureofwork 091027180703-phpapp01
Thefutureofwork 091027180703-phpapp01
 
2011 06-29- sp-seminar- cisco cdn solution-1
2011 06-29- sp-seminar- cisco cdn solution-12011 06-29- sp-seminar- cisco cdn solution-1
2011 06-29- sp-seminar- cisco cdn solution-1
 
Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640
 
Voicecon094distrfinal 090427125221-phpapp01
Voicecon094distrfinal 090427125221-phpapp01Voicecon094distrfinal 090427125221-phpapp01
Voicecon094distrfinal 090427125221-phpapp01
 
Thenewnetworkforthedatacenter 100519185534-phpapp02
Thenewnetworkforthedatacenter 100519185534-phpapp02Thenewnetworkforthedatacenter 100519185534-phpapp02
Thenewnetworkforthedatacenter 100519185534-phpapp02
 
Avaya sipwithinyourenterprise-090629022848-phpapp02
Avaya sipwithinyourenterprise-090629022848-phpapp02Avaya sipwithinyourenterprise-090629022848-phpapp02
Avaya sipwithinyourenterprise-090629022848-phpapp02
 
Curso de-asterisk-everano-2007-1204975330483842-4
Curso de-asterisk-everano-2007-1204975330483842-4Curso de-asterisk-everano-2007-1204975330483842-4
Curso de-asterisk-everano-2007-1204975330483842-4
 
Asterisk presence-im-091015103222-phpapp02
Asterisk presence-im-091015103222-phpapp02Asterisk presence-im-091015103222-phpapp02
Asterisk presence-im-091015103222-phpapp02
 
Vnx series-technical-review-110616214632-phpapp02
Vnx series-technical-review-110616214632-phpapp02Vnx series-technical-review-110616214632-phpapp02
Vnx series-technical-review-110616214632-phpapp02
 
Imentorstevejobspdf 110826082634-phpapp02
Imentorstevejobspdf 110826082634-phpapp02Imentorstevejobspdf 110826082634-phpapp02
Imentorstevejobspdf 110826082634-phpapp02
 
Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01
 
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
 
Apc 091016024613-phpapp01
Apc 091016024613-phpapp01Apc 091016024613-phpapp01
Apc 091016024613-phpapp01
 
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
Thenewnetworkforthedatacenter 100519185534-phpapp02 (1)
 
Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640
 
Video 111127013709-phpapp02
Video 111127013709-phpapp02Video 111127013709-phpapp02
Video 111127013709-phpapp02
 
Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640Xen and-the-art-of-rails-deployment2640
Xen and-the-art-of-rails-deployment2640
 
Sysengandiso15926nov11 111127021757-phpapp01
Sysengandiso15926nov11 111127021757-phpapp01Sysengandiso15926nov11 111127021757-phpapp01
Sysengandiso15926nov11 111127021757-phpapp01
 

Dernier

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Dernier (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Qcon 111122082620-phpapp02

  • 1. Design and Architecture Derek Collison
  • 2. What is Cloud Foundry? 2
  • 3. The Open Platform as a Service 3
  • 6. aPaaS • Application Platform as a Service • Applications and Services 6
  • 7. aPaaS • Application Platform as a Service • Applications and Services • Not • VMs • Memory • Storage • Networks • CPU 7
  • 8. What is OpenPaaS? 8
  • 9. OpenPaaS • Multi-Language • Multi-Framework • Multi-Services • Multi-Cloud, Multi-IaaS • Hybrid - Public or Private or Both • OpenSource 9
  • 10. OpenPaaS • Multi-Language • Ruby, Java, Scala, Node.js, Erlang, Python, PHP.. • Multi-Framework • Rails, Sinatra, Spring, Grails, Express, Lift • Multi-Services • MySQL, Postgres, MongoDB, Redis, RabbitMQ • Multi-Cloud, Multi-IaaS • vSphere, MicroCloud, OpenStack, AWS 10
  • 11. The Open PaaS Ap pli vFabric Private ca ce Postgres tio rfa Data Clouds n e Services Int Se Public rvi er vFabric vid ce RabbitMQTM Msg Services Clouds ro Int dP e Micro rfa ou Clouds ce Other Cl Services 11
  • 12. What is our Goal? 12
  • 13. What was our Goal? Raise the unit of currency to be the application and its associated services, not the infrastructure 13
  • 14. What was our Goal? Best of breed delivery platform for all modern applications and frameworks 14
  • 15. What was our Goal? Favor Choice and Openness 15
  • 16. How was it Built? 16
  • 17. How was it Built? • Kernel (CloudFoundry OSS) • Core PaaS System • Kernel and Orchestrator Shells • Layered on top of IaaS • Orchestrator • IaaS creation, management and orchestration 17
  • 18. High Level Clients (VMC, STS, Browser) CF Kernel Orchestrator IaaS Hardware - CPU/Memory/Disk/Network 18
  • 19. Basic Premises • Fail Fast • Self Healing • Horizontally Scalable Components • Distributed State • No Single Point of Failure • Should be as simple as possible 19
  • 20. Basic Patterns • Event-Driven • Asynchronous • Non-blocking • Independent, Idempotent • Message Passing • Eventually Consistent 20
  • 21. Basic Design • All components loosely coupled • Few “Classes”, many “Instances” • Messaging as foundation • Addressing and Component Discovery • Command and Control • JSON payloads • HTTP or File/Blob for data transport 21
  • 22. Kernel Components • All dynamically discoverable • Launch and scale in any order • Can come and go as needed • Monitor via HTTP and JSON • Location independent 22
  • 23. Kernel Components • Router • CloudController • DEA • HealthManager • Service Provisioning Agent • Messaging System 23
  • 24. Logical View Browser VMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging 24
  • 25. 25 Architecture
  • 27. Messaging “The Nervous System” 27
  • 28. Messaging Browser VMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging 28
  • 29. Messaging • Addressing and Discovery • No static IPs or DNS lookups req’d • Just Layer 4 • Command and Control • Central communication system • Dial tone, fire and forget • Protects *itself* at all costs • Idempotent semantics 29
  • 31. Router “Traffic Cop” 31
  • 32. Router Browser VMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging 32
  • 33. Router • Handles all HTTP traffic • Maintains distributed routing state • Routes URLs to applications • Distributes load among instances • Realtime distributed updates to routing tables from DEAs 33
  • 35. CloudController “The King” 35
  • 36. CloudController Browser VMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging 36
  • 37. CloudController • Handles all state transitions • Deals with users, apps, and services • Packages and Stages applications • Binds Services to Applications • Presents external REST API 37
  • 39. HealthManager “Court Jester” 39
  • 40. HealthManager Browser VMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging 40
  • 41. HealthManager • Monitors the state of the world • Initial value with realtime delta updates to “intended” vs “real” • Determines drift • Complains to the CloudControllers when something is not correct • No power to change state itself 41
  • 43. DEA “Droplet Execution Agent” 43
  • 44. DEA Browser VMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging 44
  • 45. DEA (Droplet Execution Agent) • Responsible for running all applications • Monitors all applications • CPU, Mem, IO, Threads, Disk, FDs, etc • All apps look same to DEA • start and stop • Express ability and desire to run an application • runtimes, options, cluster avoidance, memory/cpu • Alerts on any change in state of applications • Provides secure/constrained OS runtime • Hypervisor, Unix File and User, Linux Containers* • Single or Multi-Tenant 45
  • 46. How does it all Work? 46
  • 47. Pushing an App • Client (VMC/STS) pushes meta-data to CC • Client optionally pushes resource signatures (diff analysis, sys wide) • Client pushes app resources to CC • CC puts app together • CC stages app asynchronously • CC binds and stages services • Droplet ready 47
  • 48. 48 Architecture
  • 49. Running an App • CC asks DEAs for “help” • First DEA back wins! Simple • CC sends start request to selected DEA • DEA pushes the “green” button • DEA waits and monitors pid and ephemeral port for app to bind • When app is healthy, sends “register” message • Register message is seen by HM and Routers • Routers bind URL to host:port 49
  • 50. DEAs answer? • DEAs first determine YES or NO • correct runtime, options, memory, etc • Then calculate a Delay Taint • SHA hash of application • memory • cpu • Taint allows balancing and selection 50
  • 51. Scale up & down? • Exact steps as running the app the first time • SHA1 taint helps avoid clustering • memory/cpu taint helps distribute as evenly as possible • Nothing pre-computed • Nothing assumed 51
  • 52. Crashes? • If your app stops and we did not tell it to, that is a crash • Crashed apps are immediately detected by DEA and messaged • Routers disconnect route instantly • HM will signal CC • something is wrong • CC will issue run sequence again 52
  • 53. 53 Architecture
  • 54. Access to my App? • All routers understand where all instances of your application are running • Will randomly pick backend, not semantically aware. • Will remove routes that are stale or unhealthy • Session stickiness and replication available, but best to avoid if possible 54
  • 55. What about Services? 55
  • 56. Services Browser VMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging 56
  • 57. Services • Service Advertisement • Service Provisioning • Gateway fronts multi-backends • Service Nodes scale independent • App and service talk directly • API to register into system • Closure for additional value 57
  • 58. Provisioning VMC/STS 1 Routers 2 CloudControllers Services Gateway 3 5 6 4 Service Node Service Node Service Node Application MySQL Redis Redis Messaging 58
  • 59. Access (Direct) Browser (user app access) 1 Routers CloudControllers Services Gateway Service Node Service Node Service Node Application MySQL Redis Redis 2 Messaging 59
  • 60. Services VMware Dev Tools Partner Dev Tools Cloud Foundry consume Enterprise Services apps consume bind Data Director provision/bind service service broker controller SQLFire core services Relational DB vSphere 60
  • 61. Learn more: www.cloudfoundry.org blog.cloudfoundry.com support.cloudfoundry.com 61
  • 63. Questions? dcollison@vmware.com derek.collison@gmail.com twitter: derekcollison 63