SlideShare a Scribd company logo
© Copyright 2017 Dell Inc.1
CloudFoundry 101
© Copyright 2017 Dell Inc.2
Xuebin He
Software Developer
Dell EMC Dojo
Contributor of CloudFoundry
xuebin.he@dell.com
@hexuebin0201
© Copyright 2017 Dell Inc.3
A Japanese term which literally means "place of the way”.
A room in which martial arts are practiced
DOJO - noun ˈdō-(ˌ)jō
Contribute to Cloud Foundry Foundation sanctioned OS projects.
Train new Cloud Foundry contributors.
Innovate around the platform.
CLOUD FOUNDRY OS CONTRIBUTIONS & INNOVATION
Practice a modern software development methodology (XP, Lean Startup).
Evangelize new work patterns ‘the way’ to internal Dell EMC product teams.
DIGITAL TRANSFORMATION
Dell EMC Dojo
CLOUD FOUNDRY DOJO GOALS
© Copyright 2017 Dell Inc.4
World is changing
Move faster
Stay focused
© Copyright 2017 Dell Inc.5
Developer
© Copyright 2017 Dell Inc.6
IT
© Copyright 2017 Dell Inc.7
What is PaaS?
How does that help me?
© Copyright 2017 Dell Inc.8
Data
Application
Networking
Storage
Compute
Virtualization
Operating System
Runtime
App Server
Services
IaaS
PaaS
© Copyright 2017 Dell Inc.9
Open Source Community
Automated Container and App Orchestration
Self-Service Marketplace
High Availability and Scalability
Multi-Cloud Support
DevOps Friendly
Platform as a Service
© Copyright 2017 Dell Inc.10
What are the pains?
How does Cloud Foundry save me?
© Copyright 2017 Dell Inc.11
I need to deploy
my App
Submit a ticket
please!
EmailTicket: Create a VMTicket: Give me a Database
ITDeveloper
Ticket Passing
© Copyright 2017 Dell Inc.12
Marketplace
Service Broker API
© Copyright 2017 Dell Inc.13
Services
Easy
Access
© Copyright 2017 Dell Inc.14
Manual Deployment
© Copyright 2017 Dell Inc.15
Developer
Superman Dev
© Copyright 2017 Dell Inc.16
CF Push
© Copyright 2017 Dell Inc.17
No More
Manual
Deployment
© Copyright 2017 Dell Inc.18
Stay Focused
© Copyright 2017 Dell Inc.19
CF Push Demo
© Copyright 2017 Dell Inc.20
CF Push Demo
© Copyright 2017 Dell Inc.21
Development Test Production
It works on my laptop
© Copyright 2017 Dell Inc.22
Container
Services
Buildpack
Identical
• Identical Environments across
Development, Test, and Production
• Buildpack - Container Environment
• Runtime
• Application Server
• Services
Development
Test
Production
Runtime
App Server
Environments
© Copyright 2017 Dell Inc.23
z
Infrastructure Dependency
© Copyright 2017 Dell Inc.24
Diego Brain
Consul
HA Proxy
Loggregator
Cloud Controller
Diego Cell
UAA
PostgreSQL Router
Cloud Foundry
Azure GCP AWS vSphere Openstack RackHD
IaaS Abstraction
© Copyright 2017 Dell Inc.25
Midnight Redeploy TroubleshootDelivery
2AM Call
Redeploy
© Copyright 2017 Dell Inc.26
High Availability
24/7 Monitoring
Automated Resurrection
Multiple App Instances
Auto Scaling Instances
Easy Blue-Green
Upgrade
© Copyright 2017 Dell Inc.27
Logs
© Copyright 2017 Dell Inc.28
12 Factor App
Logs
Treat logs as event streams
Dev/Prod parity
Keep dev, staging and prod as similar as possible
Disposability
Robustness with fast startup and graceful shutdown
Concurrency
Scale out via the process model
Port Binding
Export services via port binding
Admin Processes
Run management tasks as one-off process
Build, Release, Run
Strictly separate build and run stages
Backing Services
Treat backing services as attached resources
Config
Store config in the environment
Dependencies
Explicitly declare and isolate dependencies
Code Base
One codebase tracked in version control, many deploys
Processes
Execute app as one or more stateless processes
© Copyright 2017 Dell Inc.29
ITDeveloper Cloud
What does the cloud look like?
© Copyright 2017 Dell Inc.30
© Copyright 2017 Dell Inc.31
© Copyright 2017 Dell Inc.32
All in one, one for all.
© Copyright 2017 Dell Inc.33
© Copyright 2017 Dell Inc.34
How does CF Work?
© Copyright 2017 Dell Inc.35
Runner
Scheduler
Developer Customer
Router
Logging
Auth
Runner
Cloud Foundry
Orchestrator
Runtime
Marketplace
Rose
.com
© Copyright 2017 Dell Inc.36
{ HA Proxy }
{ UAA }
{ Loggregator } { Router }
{ Cloud Controller }
{ Diego Cell }
{ Diego Brain }
{ Consul }
{ PostgreSQL }
{ Cloud Controller worker }
{ NATS }
{ Diego BBS }
{ MySQL Proxy }
{ Doppler }
{ etcd }
High Availability
5
7
2
2
2
2
© Copyright 2017 Dell Inc.37
CF HA Demo
© Copyright 2017 Dell Inc.38
CF HA Demo
© Copyright 2017 Dell Inc.39
Upcoming Talks
7 Lessons Learned from Implementing DevOps
Brian Roche & Emily Kaiser
Using GPU-as-a-Service in Cloud Foundry
Victor Fong & Layne Peng
Adventure of Pair Programming
Gary White
DevOps from a Developer Perspective
Megan Murawski
© Copyright 2017 Dell Inc.40
Q & A
© Copyright 2017 Dell Inc.41

More Related Content

What's hot

DockerCon EU 2017 - General Session Day 1
DockerCon EU 2017 - General Session Day 1DockerCon EU 2017 - General Session Day 1
DockerCon EU 2017 - General Session Day 1
Docker, Inc.
 
The Cloud Foundry Story
The Cloud Foundry StoryThe Cloud Foundry Story
The Cloud Foundry Story
VMware Tanzu
 
Introducción a Azure Devops Pipelines - Plain Concepts DevOps day
Introducción a Azure Devops Pipelines - Plain Concepts DevOps dayIntroducción a Azure Devops Pipelines - Plain Concepts DevOps day
Introducción a Azure Devops Pipelines - Plain Concepts DevOps day
Plain Concepts
 
DockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise Edition
DockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise EditionDockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise Edition
DockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise Edition
Docker, Inc.
 
AMS cloud developer challenge 2016
AMS cloud developer challenge 2016AMS cloud developer challenge 2016
AMS cloud developer challenge 2016
Graham Smith
 
DevOps and the DBA
DevOps and the DBADevOps and the DBA
DevOps and the DBA
Kellyn Pot'Vin-Gorman
 
Cloudy with a Chance of Databases
Cloudy with a Chance of DatabasesCloudy with a Chance of Databases
Cloudy with a Chance of Databases
Kellyn Pot'Vin-Gorman
 
DockerCon EU 2017 - Containers are not just for microservices
DockerCon EU 2017 - Containers are not just for microservicesDockerCon EU 2017 - Containers are not just for microservices
DockerCon EU 2017 - Containers are not just for microservices
Oscar Renalias
 
OpenStack Architected Like AWS (and GCP)
OpenStack Architected Like AWS (and GCP)OpenStack Architected Like AWS (and GCP)
OpenStack Architected Like AWS (and GCP)
Randy Bias
 
Hack for Good and Profit (Cloud Foundry Summit 2014)
Hack for Good and Profit (Cloud Foundry Summit 2014)Hack for Good and Profit (Cloud Foundry Summit 2014)
Hack for Good and Profit (Cloud Foundry Summit 2014)
VMware Tanzu
 
DevOps at scale: what we did, what we learned at Societe Generale
DevOps at scale: what we did, what we learned at Societe GeneraleDevOps at scale: what we did, what we learned at Societe Generale
DevOps at scale: what we did, what we learned at Societe Generale
Adrien Blind
 
Aprovisionamiento multi-proveedor con Terraform - Plain Concepts DevOps day
Aprovisionamiento multi-proveedor con Terraform  - Plain Concepts DevOps dayAprovisionamiento multi-proveedor con Terraform  - Plain Concepts DevOps day
Aprovisionamiento multi-proveedor con Terraform - Plain Concepts DevOps day
Plain Concepts
 
Pulling Back the Curtain – CloudStack in Private and Community Clouds
Pulling Back the Curtain –CloudStack in Private and Community CloudsPulling Back the Curtain –CloudStack in Private and Community Clouds
Pulling Back the Curtain – CloudStack in Private and Community Clouds
Chip Childers
 
An introduction to Cloud Foundry
An introduction to Cloud FoundryAn introduction to Cloud Foundry
An introduction to Cloud Foundry
JWORKS powered by Ordina
 
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-nativeKubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
cornelia davis
 
Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013
Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013
Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013
Amazon Web Services
 
Building A Diverse Geo-Architecture For Cloud Native Applications In One Day
Building A Diverse Geo-Architecture For Cloud Native Applications In One DayBuilding A Diverse Geo-Architecture For Cloud Native Applications In One Day
Building A Diverse Geo-Architecture For Cloud Native Applications In One Day
VMware Tanzu
 
Services are the New Cloud Platform (Services-as-a-Platform)
Services are the New Cloud Platform (Services-as-a-Platform)Services are the New Cloud Platform (Services-as-a-Platform)
Services are the New Cloud Platform (Services-as-a-Platform)
Randy Bias
 
Destination Marketing Open Source and Cloud Presentation
Destination Marketing Open Source and Cloud PresentationDestination Marketing Open Source and Cloud Presentation
Destination Marketing Open Source and Cloud Presentation
Isaac Christoffersen
 
Dell and OpenStack
Dell and OpenStackDell and OpenStack
Dell and OpenStack
eNovance
 

What's hot (20)

DockerCon EU 2017 - General Session Day 1
DockerCon EU 2017 - General Session Day 1DockerCon EU 2017 - General Session Day 1
DockerCon EU 2017 - General Session Day 1
 
The Cloud Foundry Story
The Cloud Foundry StoryThe Cloud Foundry Story
The Cloud Foundry Story
 
Introducción a Azure Devops Pipelines - Plain Concepts DevOps day
Introducción a Azure Devops Pipelines - Plain Concepts DevOps dayIntroducción a Azure Devops Pipelines - Plain Concepts DevOps day
Introducción a Azure Devops Pipelines - Plain Concepts DevOps day
 
DockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise Edition
DockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise EditionDockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise Edition
DockerCon 18 Cool Hacks: Cloud Native ML with Docker Enterprise Edition
 
AMS cloud developer challenge 2016
AMS cloud developer challenge 2016AMS cloud developer challenge 2016
AMS cloud developer challenge 2016
 
DevOps and the DBA
DevOps and the DBADevOps and the DBA
DevOps and the DBA
 
Cloudy with a Chance of Databases
Cloudy with a Chance of DatabasesCloudy with a Chance of Databases
Cloudy with a Chance of Databases
 
DockerCon EU 2017 - Containers are not just for microservices
DockerCon EU 2017 - Containers are not just for microservicesDockerCon EU 2017 - Containers are not just for microservices
DockerCon EU 2017 - Containers are not just for microservices
 
OpenStack Architected Like AWS (and GCP)
OpenStack Architected Like AWS (and GCP)OpenStack Architected Like AWS (and GCP)
OpenStack Architected Like AWS (and GCP)
 
Hack for Good and Profit (Cloud Foundry Summit 2014)
Hack for Good and Profit (Cloud Foundry Summit 2014)Hack for Good and Profit (Cloud Foundry Summit 2014)
Hack for Good and Profit (Cloud Foundry Summit 2014)
 
DevOps at scale: what we did, what we learned at Societe Generale
DevOps at scale: what we did, what we learned at Societe GeneraleDevOps at scale: what we did, what we learned at Societe Generale
DevOps at scale: what we did, what we learned at Societe Generale
 
Aprovisionamiento multi-proveedor con Terraform - Plain Concepts DevOps day
Aprovisionamiento multi-proveedor con Terraform  - Plain Concepts DevOps dayAprovisionamiento multi-proveedor con Terraform  - Plain Concepts DevOps day
Aprovisionamiento multi-proveedor con Terraform - Plain Concepts DevOps day
 
Pulling Back the Curtain – CloudStack in Private and Community Clouds
Pulling Back the Curtain –CloudStack in Private and Community CloudsPulling Back the Curtain –CloudStack in Private and Community Clouds
Pulling Back the Curtain – CloudStack in Private and Community Clouds
 
An introduction to Cloud Foundry
An introduction to Cloud FoundryAn introduction to Cloud Foundry
An introduction to Cloud Foundry
 
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-nativeKubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
 
Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013
Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013
Using Amazon RDS to Power Enterprise Applications (DAT202) | AWS re:Invent 2013
 
Building A Diverse Geo-Architecture For Cloud Native Applications In One Day
Building A Diverse Geo-Architecture For Cloud Native Applications In One DayBuilding A Diverse Geo-Architecture For Cloud Native Applications In One Day
Building A Diverse Geo-Architecture For Cloud Native Applications In One Day
 
Services are the New Cloud Platform (Services-as-a-Platform)
Services are the New Cloud Platform (Services-as-a-Platform)Services are the New Cloud Platform (Services-as-a-Platform)
Services are the New Cloud Platform (Services-as-a-Platform)
 
Destination Marketing Open Source and Cloud Presentation
Destination Marketing Open Source and Cloud PresentationDestination Marketing Open Source and Cloud Presentation
Destination Marketing Open Source and Cloud Presentation
 
Dell and OpenStack
Dell and OpenStackDell and OpenStack
Dell and OpenStack
 

Similar to Cloud Foundry 101

Real World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and AdobeReal World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and Adobe
Timothy Gelter
 
There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...
{code} by Dell EMC
 
The Power of DataOps for Cloud and Digital Transformation
The Power of DataOps for Cloud and Digital Transformation The Power of DataOps for Cloud and Digital Transformation
The Power of DataOps for Cloud and Digital Transformation
Delphix
 
Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...
Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...
Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...
{code} by Dell EMC
 
Virtualization and Containers
Virtualization and ContainersVirtualization and Containers
Virtualization and Containers
Kellyn Pot'Vin-Gorman
 
Managing ScaleIO as Software on Mesos
Managing ScaleIO as Software on MesosManaging ScaleIO as Software on Mesos
Managing ScaleIO as Software on Mesos
David vonThenen
 
Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017
Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017
Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017
{code} by Dell EMC
 
Confessions of the AppDev VP Webinar (Delphix)
Confessions of the AppDev VP Webinar (Delphix)Confessions of the AppDev VP Webinar (Delphix)
Confessions of the AppDev VP Webinar (Delphix)
Sam Molmud
 
Confessions of the AppDev VP
Confessions of the AppDev VPConfessions of the AppDev VP
Confessions of the AppDev VP
Delphix
 
PuppetConf 2017: Zero to Cloud- James Frederick, Dell EMC
PuppetConf 2017: Zero to Cloud- James Frederick, Dell EMCPuppetConf 2017: Zero to Cloud- James Frederick, Dell EMC
PuppetConf 2017: Zero to Cloud- James Frederick, Dell EMC
Puppet
 
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
{code} by Dell EMC
 
Screw DevOps, Let's Talk DataOps
Screw DevOps, Let's Talk DataOpsScrew DevOps, Let's Talk DataOps
Screw DevOps, Let's Talk DataOps
Kellyn Pot'Vin-Gorman
 
Webinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OSWebinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OS
Mesosphere Inc.
 
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
Sanjeev Sharma
 
Comparison of control plane deployment architectures in the scope of hypercon...
Comparison of control plane deployment architectures in the scope of hypercon...Comparison of control plane deployment architectures in the scope of hypercon...
Comparison of control plane deployment architectures in the scope of hypercon...
Miroslav Halas
 
Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...
Barton George
 
DevOps for the DBA- Jax Style!
DevOps for the DBA-  Jax Style!DevOps for the DBA-  Jax Style!
DevOps for the DBA- Jax Style!
Kellyn Pot'Vin-Gorman
 
Cloud Deployment Toolkit
Cloud Deployment ToolkitCloud Deployment Toolkit
Cloud Deployment Toolkit
Bret Piatt
 
Scaling DevSecOps Culture for Enterprise
Scaling DevSecOps Culture for EnterpriseScaling DevSecOps Culture for Enterprise
Scaling DevSecOps Culture for Enterprise
Opsta
 
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
{code} by Dell EMC
 

Similar to Cloud Foundry 101 (20)

Real World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and AdobeReal World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and Adobe
 
There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...There's More to Docker than the Container: The Docker Platform - Kendrick Col...
There's More to Docker than the Container: The Docker Platform - Kendrick Col...
 
The Power of DataOps for Cloud and Digital Transformation
The Power of DataOps for Cloud and Digital Transformation The Power of DataOps for Cloud and Digital Transformation
The Power of DataOps for Cloud and Digital Transformation
 
Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...
Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...
Mesosphere and the Enterprise: Run Your Applications on Apache Mesos - Steve ...
 
Virtualization and Containers
Virtualization and ContainersVirtualization and Containers
Virtualization and Containers
 
Managing ScaleIO as Software on Mesos
Managing ScaleIO as Software on MesosManaging ScaleIO as Software on Mesos
Managing ScaleIO as Software on Mesos
 
Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017
Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017
Kubernetes and ScaleIO demo - Clinton Kitson - Dell EMC World 2017
 
Confessions of the AppDev VP Webinar (Delphix)
Confessions of the AppDev VP Webinar (Delphix)Confessions of the AppDev VP Webinar (Delphix)
Confessions of the AppDev VP Webinar (Delphix)
 
Confessions of the AppDev VP
Confessions of the AppDev VPConfessions of the AppDev VP
Confessions of the AppDev VP
 
PuppetConf 2017: Zero to Cloud- James Frederick, Dell EMC
PuppetConf 2017: Zero to Cloud- James Frederick, Dell EMCPuppetConf 2017: Zero to Cloud- James Frederick, Dell EMC
PuppetConf 2017: Zero to Cloud- James Frederick, Dell EMC
 
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
 
Screw DevOps, Let's Talk DataOps
Screw DevOps, Let's Talk DataOpsScrew DevOps, Let's Talk DataOps
Screw DevOps, Let's Talk DataOps
 
Webinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OSWebinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OS
 
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...Applying DevOps, PaaS and cloud for better citizen service  outcomes - IBM Fe...
Applying DevOps, PaaS and cloud for better citizen service outcomes - IBM Fe...
 
Comparison of control plane deployment architectures in the scope of hypercon...
Comparison of control plane deployment architectures in the scope of hypercon...Comparison of control plane deployment architectures in the scope of hypercon...
Comparison of control plane deployment architectures in the scope of hypercon...
 
Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...
 
DevOps for the DBA- Jax Style!
DevOps for the DBA-  Jax Style!DevOps for the DBA-  Jax Style!
DevOps for the DBA- Jax Style!
 
Cloud Deployment Toolkit
Cloud Deployment ToolkitCloud Deployment Toolkit
Cloud Deployment Toolkit
 
Scaling DevSecOps Culture for Enterprise
Scaling DevSecOps Culture for EnterpriseScaling DevSecOps Culture for Enterprise
Scaling DevSecOps Culture for Enterprise
 
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
 

Recently uploaded

KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
dakas1
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
Karya Keeper
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
dakas1
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
sjcobrien
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.
AnkitaPandya11
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
kalichargn70th171
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
Alberto Brandolini
 

Recently uploaded (20)

KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
 

Cloud Foundry 101

  • 1. © Copyright 2017 Dell Inc.1 CloudFoundry 101
  • 2. © Copyright 2017 Dell Inc.2 Xuebin He Software Developer Dell EMC Dojo Contributor of CloudFoundry xuebin.he@dell.com @hexuebin0201
  • 3. © Copyright 2017 Dell Inc.3 A Japanese term which literally means "place of the way”. A room in which martial arts are practiced DOJO - noun ˈdō-(ˌ)jō Contribute to Cloud Foundry Foundation sanctioned OS projects. Train new Cloud Foundry contributors. Innovate around the platform. CLOUD FOUNDRY OS CONTRIBUTIONS & INNOVATION Practice a modern software development methodology (XP, Lean Startup). Evangelize new work patterns ‘the way’ to internal Dell EMC product teams. DIGITAL TRANSFORMATION Dell EMC Dojo CLOUD FOUNDRY DOJO GOALS
  • 4. © Copyright 2017 Dell Inc.4 World is changing Move faster Stay focused
  • 5. © Copyright 2017 Dell Inc.5 Developer
  • 6. © Copyright 2017 Dell Inc.6 IT
  • 7. © Copyright 2017 Dell Inc.7 What is PaaS? How does that help me?
  • 8. © Copyright 2017 Dell Inc.8 Data Application Networking Storage Compute Virtualization Operating System Runtime App Server Services IaaS PaaS
  • 9. © Copyright 2017 Dell Inc.9 Open Source Community Automated Container and App Orchestration Self-Service Marketplace High Availability and Scalability Multi-Cloud Support DevOps Friendly Platform as a Service
  • 10. © Copyright 2017 Dell Inc.10 What are the pains? How does Cloud Foundry save me?
  • 11. © Copyright 2017 Dell Inc.11 I need to deploy my App Submit a ticket please! EmailTicket: Create a VMTicket: Give me a Database ITDeveloper Ticket Passing
  • 12. © Copyright 2017 Dell Inc.12 Marketplace Service Broker API
  • 13. © Copyright 2017 Dell Inc.13 Services Easy Access
  • 14. © Copyright 2017 Dell Inc.14 Manual Deployment
  • 15. © Copyright 2017 Dell Inc.15 Developer Superman Dev
  • 16. © Copyright 2017 Dell Inc.16 CF Push
  • 17. © Copyright 2017 Dell Inc.17 No More Manual Deployment
  • 18. © Copyright 2017 Dell Inc.18 Stay Focused
  • 19. © Copyright 2017 Dell Inc.19 CF Push Demo
  • 20. © Copyright 2017 Dell Inc.20 CF Push Demo
  • 21. © Copyright 2017 Dell Inc.21 Development Test Production It works on my laptop
  • 22. © Copyright 2017 Dell Inc.22 Container Services Buildpack Identical • Identical Environments across Development, Test, and Production • Buildpack - Container Environment • Runtime • Application Server • Services Development Test Production Runtime App Server Environments
  • 23. © Copyright 2017 Dell Inc.23 z Infrastructure Dependency
  • 24. © Copyright 2017 Dell Inc.24 Diego Brain Consul HA Proxy Loggregator Cloud Controller Diego Cell UAA PostgreSQL Router Cloud Foundry Azure GCP AWS vSphere Openstack RackHD IaaS Abstraction
  • 25. © Copyright 2017 Dell Inc.25 Midnight Redeploy TroubleshootDelivery 2AM Call Redeploy
  • 26. © Copyright 2017 Dell Inc.26 High Availability 24/7 Monitoring Automated Resurrection Multiple App Instances Auto Scaling Instances Easy Blue-Green Upgrade
  • 27. © Copyright 2017 Dell Inc.27 Logs
  • 28. © Copyright 2017 Dell Inc.28 12 Factor App Logs Treat logs as event streams Dev/Prod parity Keep dev, staging and prod as similar as possible Disposability Robustness with fast startup and graceful shutdown Concurrency Scale out via the process model Port Binding Export services via port binding Admin Processes Run management tasks as one-off process Build, Release, Run Strictly separate build and run stages Backing Services Treat backing services as attached resources Config Store config in the environment Dependencies Explicitly declare and isolate dependencies Code Base One codebase tracked in version control, many deploys Processes Execute app as one or more stateless processes
  • 29. © Copyright 2017 Dell Inc.29 ITDeveloper Cloud What does the cloud look like?
  • 30. © Copyright 2017 Dell Inc.30
  • 31. © Copyright 2017 Dell Inc.31
  • 32. © Copyright 2017 Dell Inc.32 All in one, one for all.
  • 33. © Copyright 2017 Dell Inc.33
  • 34. © Copyright 2017 Dell Inc.34 How does CF Work?
  • 35. © Copyright 2017 Dell Inc.35 Runner Scheduler Developer Customer Router Logging Auth Runner Cloud Foundry Orchestrator Runtime Marketplace Rose .com
  • 36. © Copyright 2017 Dell Inc.36 { HA Proxy } { UAA } { Loggregator } { Router } { Cloud Controller } { Diego Cell } { Diego Brain } { Consul } { PostgreSQL } { Cloud Controller worker } { NATS } { Diego BBS } { MySQL Proxy } { Doppler } { etcd } High Availability 5 7 2 2 2 2
  • 37. © Copyright 2017 Dell Inc.37 CF HA Demo
  • 38. © Copyright 2017 Dell Inc.38 CF HA Demo
  • 39. © Copyright 2017 Dell Inc.39 Upcoming Talks 7 Lessons Learned from Implementing DevOps Brian Roche & Emily Kaiser Using GPU-as-a-Service in Cloud Foundry Victor Fong & Layne Peng Adventure of Pair Programming Gary White DevOps from a Developer Perspective Megan Murawski
  • 40. © Copyright 2017 Dell Inc.40 Q & A
  • 41. © Copyright 2017 Dell Inc.41

Editor's Notes

  1. Introduction Dell EMC Dojo The need for speed! World is moving at a much faster pace Deploy new software version every 10 seconds What is a platform? Cloud Foundry Introduction What are the problems that IT faces everyday? How functionalities of CF solve these problems? Demo Cloud Foundry High Level Architecture Cloud Foundry with Agile Development Comparison to Waterfall Functionalities of Cloud Foundry Application Design Pattern (12 Factor?) Upgrade / Scalability 2nd Demo Q&A
  2. - As we all can see, our world is changing. It’s moving at a much faster pace that It had never been! Tons of new ideas and technologies are coming out quickly. - Things are becoming more complicate and sophisticated. That leads to the market even harder to predict. We want our products and teams to be unstoppable in front of any kinds of changes. We want to catch up, but we also need to stay focused on the business value we want to create. - Lets talk a little about the pains we are having because of these changes.
  3. - As developers, we create value by delivering awesome code with no bugs. Few years ago, you can be a good developer by being pro in java and SQL. Now, there are more and more you need to know other than languages themselves. - Let me give you an example, lot more companies are using micro-services architecture for products, for reasons like better robustness of software, agile team structure or fast development. As a developer, I need to figure out which tool is the best to coordinate all the micro services, and setup the dev environment with the one I chose. And then apply it into my code. - This is just one particular example. There are more you need to explore.
  4. - As an administrator, you probably need to handle tons of emails everyday asking questions like how to get a dev environment. You replied, and then they come back with even more tickets to ask you do them favor with an unrejectable way. - Most of the work could be well automated or could be taken much less efforts to achieve. You could work on things are more valuable to your team, your company. Like creating latest Machine Learning environment for your data science developers. - Our administrators are fully overloaded, and it’s never getting better because the pace of changing never slows down . You as a manager either need to hire more people OR you can try CF.
  5. Putting these layers together, it's PaaS. A good question would be where is your business value? You really don’t want to deal with all the layers below the value line. If we want to drive to work, we don’t build cars ourselves, we buy them. It's the same thing here.
  6. CloudFoundry is the car you want to have because it has lot great features that tie to your business. Now we might have a little bit clue about what is CloudFoundry. Before we go deeper, lets talk about the pains we are having in detail that we mentioned.
  7. - You definitely know this better than me, but I still want to go through it very quick. - This is a classic pain for both sides. Emailing back and forth takes long. Developers might be totally blocked by that. The relationship between dev and administrators is kind like customers and vendors in the old marketplace. Dev always get what they want from administrators after certain bargain. Instead of paying by themselves, they are covered by company. - Now days, even traditional companies are digitalizing themselves like Walmart. Do you have to talk to the vendors to buy things? No, you can just to visit their websites and click buttons. It’s so easy, even cars could be delivered to your front door. Why can't we?
  8. - CF has a digitalized marketplace. It provides all kinds of services like database, persistence, tools for big data analysis, testing, CICD and many more. Developers could just go to the marketplace and buy whatever services they want. It's just few clicks with almost instant delivery. - Normally, the services live outside CF. CF talk to them through Service Broker API. It’s created by CF community. Now it’s becoming a industry standard. Lots of big companies are already adopting this API to some of their own services. - What does that mean?
  9. This is how the marketplace looks like in CloudFoundry web GUI.
  10. - Manual deploying applications is kinds like pushing round stone to the top of mountain. - They both may have few hundred steps, mistakes could be easily made. Even though you won’t get hurt or die when there is a failure, but you probably need to start from the very beginning. Some of the step might be very critical like database backup and migration. - And the situation is becoming worse. Remember in the begin I mentioned micro-services, which makes manual deployment even harder than before. Previously, you only have to deploy one giant monster application, but now you have to deploy many small version of it.
  11. As a developers, I need to investigate all kinds of new technologies. I am a Superman dev, we all know that this is not realistic.
  12. In CF, applications could be deployed literally by typing cf push, the rest will be handled by CF. CF is the cli we use to talk to CF. Basically, It will upload your source code to CF. Then do some calculation and figure out how to download your dependencies, compile your code and run it.
  13. No more yelling at innocent laptops. Let’s put some smile on face instead. Now you can investigate all kinds of new technologies and be a rockstar.
  14. Instead of being distracted by ticketing to IT, installing VMs, settings up dev databases, developer can be more creative on the application itself, and have more ideas on how to implements features and be a rockstar too.
  15. - We always have different environments because we have different teams. Sometimes, its really hard for IT to replicate production environments. Like VMAX, it's so expensive that developers have to use software defined version. - One day, You created a fantastic button and worked perfectly on you laptop. It's so beautiful that you want look at it for whole day everyday. Few days later, testers came back complaining you broke tests or administrators yelled you crashed production. And you were confused while starring at your awesome button, and replied: it worked on my laptop. Of course, It worked on your laptop! Otherwise, how could you push it. - Wearing their hats, It's none of their fault. But our company are losing value because it slows down the process or it gives a really bad user experience to our greatest customers.
  16. - In CF, its really easy to create separate but identical environments. - Each environment has the same container for running applications. - Say I'm pushing a java application, CF will use the same buildpack to pull your dependencies, compile your source code, setup the same runtime environment and use the same application server to run your application. - All the services are created in the marketplace, so they are identical too. But we can still create a powerful instance for production and low cost one for development. - If the button works on dev environments, it will work on other environments too. With CF, you can continue enjoy your fantastic button without interruption.
  17. Because of reasons, like better performance, lower cost, stronger security, sometimes we want to migrate our environments from one Infrastructure to another.
  18. - CloudFoundry is basically a bunch of micro-services running in different VMs being deployed together. - Migrating CF basically means redeploying the VMs on different IaaS. - CF has its own deployment tool to deploy softwares on different infrastructures, like vSphere.
  19. - I bet some of you have similar experience. Things do crash sometimes. And your company are losing money. - In a dark midnight, a madly ringing phone broke the silence and your sweetest dream that you had ever had, complaining the production environment went down. Some customers visited the website in an unexpected way hitting a mysterious bug. - Because `developers you shall not touch policy`, you, as an administrator, have to go to your production environment redeploy applications and download all logs and deliver them to developers for them to do troubleshooting. After they came with a hotfix, you need to redeploy again with the lasted change. - From the beginning to the end, It’s not your fault at all. But you are the first one to be blamed and the last one to leave the scene. It is not fair.
  20. - CF provides high availability in many different ways. - It will automatically resurrect your crushed apps. - We want to deliver our new features more often, so upgrading our application with 0 downtime is very import. CF provides very easy way to do blue-green upgrade with 0 downtime. With CF, you can continue on your sweetest dream.
  21. - Why it crash, most of the case its because our developers write crappy code. You could say nay, but bugs do come from development. - CloudFoundry encourage developers to build applications in a good modern way, 12 factor application, which is well adopted by lots companies. This should be separate talk. If you are interested, checkout 12factor.net - I wont go through the detail here, but basically, if you follow the rules here, It provides better robustness, better migrating, scaling troubleshooting abilities.
  22. At this point, I think we agree on that private cloud could solve problems for both developers and administrators and frictions between them. So what does the cloud look like or what it should look like?
  23. On a sunny day, a developer and an operator were lying down on the grass, thinking about the meaning of life. Suddenly, they wanted to figure out what does that cloud look like. They googled as we always do. But this time, they didn't get what they want. It's just another buzzword, cloud. Since google can't tell us, lets do it ourselves.
  24. You probably want security service to prevent bad guys from crashing your application. I feel container is a cool technology and I want to run my website inside a container. Your application is a website for a flower store, the visiting goes insane on mothers’ day, what would you do? Dev app~~~~~~~~~~~~~~~~~~~~~~~~~~ This is cloud foundry! All in one!
  25. You may don’t care about How does CF actually work, but you may curious about what happened after your application being pushed to CF.
  26. I totally forgot I need to scale up my application before the coming mother's day. In a traditional world, I might be doomed. But since I'm using CF, it doesn't matter. I can scale my applications in seconds.
  27. That’s all I have today. we have more awesome talks from our team.
  28. Any questions?