Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
SUSE® Powered Cloud Foundry A look at SUSE’s plans for empowering the market leading OSS PaaS
Ronald Nunan
Product Manager
SUSE [email protected]
Confidential
SUSE Cloud Foundry Upstream Installer
– New open source project for installing a recent stable release of cloud foundry from the Cloud Foundry Foundation’s Github.
– Installs SUSE’s cloud foundry stemcell.
– Validates OpenStack configuration for use with cloud foundry.
SUSE Cloud Foundry Upstream Installer
– New open source project for installing a recent stable release of cloud foundry from the Cloud Foundry Foundation’s Github.
– Installs SUSE’s cloud foundry stemcell.
– Validates OpenStack configuration for use with cloud foundry.
Agenda
What is Platform as a Service– What does it do
– What problem does it solve
What is Cloud Foundry– What problem does it solve
– Cloud Foundry architecture
What is SUSE adding to Cloud Foundry
Platform as a Service
Platform as a service (PaaS) is a category of cloud computing services that provides a platform allowing
customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app.
https://en.wikipedia.org/wiki/Platform_as_a_service
Did you know …… you are a software company?
Obviously software is an integral component -- in fact the primary component -- of every digital company. These companies use software to make money and keep their customers loyal and engaged.
But, you run a “non-digital” company. You produce widgets or provide services. Could you better serve your customers with software -- and even acquire new customers?
Do you see software as an essential way to provide more value with your products and services to keep your customers happy and loyal? You probably don’t. And that’s a huge problem, because your competition does.
Did you know …… you are a software company?
Obviously software is an integral component -- in fact the primary component -- of every digital company. These companies use software to make money and keep their customers loyal and engaged.
But, you run a “non-digital” company. You produce widgets or provide services. Could you better serve your customers with software -- and even acquire new customers?
Do you see software as an essential way to provide more value with your products and services to keep your customers happy and loyal? You probably don’t. And that’s a huge problem, because your competition does.
Did you know …… you are a software company?
Obviously software is an integral component -- in fact the primary component -- of every digital company. These companies use software to make money and keep their customers loyal and engaged.
But, you run a “non-digital” company. You produce widgets or provide services. Could you better serve your customers with software -- and even acquire new customers?
Do you see software as an essential way to provide more value with your products and services to keep your customers happy and loyal? You probably don’t. And that’s a huge problem, because your competition does.
Bottom-line
Software is essential to how you interact with your customers
Fortunately
There is a whole industry that is focused on simplifying this effort
Platform as a Service
With a Platform as a Service, all your company has to do is focus on your applications, everything else is taken care of for you:
● Development services● Deployment● Configuration management● Network management● Monitoring
You only take care of yourapplications! Man
aged
by
you
Man
age d
for y o
u
Applications
Data
Runtime
Middleware
Op. Sys.
Virtualization
Servers
Storage
Networking
IaaS
Applications
Data
Runtime
Middleware
Op. Sys.
Virtualization
Servers
Storage
Networking
PaaS
Applications
Data
Runtime
Middleware
Op. Sys.
Virtualization
Servers
Storage
Networking
Software
IDE
Big Change!
Developer
Request ServersRequest Servers
… wait …HW / VM Creation
… wait …HW / VM Creation
Setup OSSetup OS
Install SoftwareInstall Software
Setup MonitoringSetup Monitoring
Deploy WebsiteDeploy Website
Check / TestCheck / Test
Add to Load BalancerAdd to Load Balancer ...
Grab a Coffee
CF Push MyApp
No PaaS PaaS
Custom Services Custom Runtimes
Cloud FoundryThe leading PaaS OSS Project
Cloud Foundry is an open source cloud platform as a service (PaaS) on which developers can build, deploy, run and scale applications on public and private cloud models.
The Cloud Foundry Foundation now has over 63 members with hundreds of contributors.
Clouds
Framew
orks
Serv
ices
PublicPrivate
Java
spring
node js
Ruby
PostgreSQL
redis
MySQL
RabbitMQ
mongoDB
Cloud Foundry
QUOTE: Joshua McKenty, field CTO for Pivotal
"Ordinary people can't fly with a cape. They use a plane. Cloud Foundry is a plane."
Cloud Foundry lets ordinary enterprise developers build a modern, competitive business software without having to become proficient
on everything a modern cloud software provider knows.
Custom Services Custom Runtimes
Cloud FoundryThe leading PaaS OSS Project
Develop in your preferred language
Clouds
Framew
orks
Serv
ices
PublicPrivate
Java
spring
node js
Ruby
PostgreSQL
redis
MySQL
RabbitMQ
mongoDB
Custom Services Custom Runtimes
Cloud FoundryThe leading PaaS OSS Project
Develop in your preferred languagePull provisioned services into your application
Clouds
Framew
orks
Serv
ices
PublicPrivate
Java
spring
node js
Ruby
PostgreSQL
redis
MySQL
RabbitMQ
mongoDB
Custom Services Custom Runtimes
Cloud FoundryThe leading PaaS OSS Project
Develop in your preferred languagePull provisioned services into your applicationThen let cloud foundry
● compile, ● stage, ● start, ● scale, ● monitor ...
Clouds
Framew
orks
Serv
ices
PublicPrivate
Java
spring
node js
Ruby
PostgreSQL
redis
MySQL
RabbitMQ
mongoDB
SUSE Powered Cloud Foundry
– Understanding the Architecture
Understanding the Architecture1)CF Push
2)Create App
3)Stores App Metadata
4)Upload App Files
5)Stores App Files
6)App Start1) Stage App
2) Stream Staging Output
3) Store App Droplet
4) Report Staging Complete
5) Start App
6) Report Status
BuildpackBuildpack
RootfsRootfs
StemcellStemcell
CF Garden Container derived
from SUSE stemcell
CF Garden Container derived
from SUSE stemcell
App bits + MiddlewareApp bits + Middleware
FilesystemFilesystem
Kernel / DevicesKernel / Devices
RoutingRoutingRouterRouter
AuthenticationAuthenticationOAuth2 ServerOAuth2 Server Login ServerLogin Server
App LifecycleApp LifecycleCloud ControllerCloud Controller nsyncnsync DiegoDiego Cell RepsCell Reps
App Storage& ExecutionApp Storage& Execution
Blob StoreBlob StoreApp Execution (Diego Cell)App Execution (Diego Cell)
GardenGarden
ServicesServices Service Brokers Service Brokers
Messaging MessagingBBS (HTTP/S)BBS (HTTP/S) ConsulConsul NATS Message BusNATS Message Bus
Metrics / Logging Metrics / Logging Metric CollectorMetric Collector App Log CollectorApp Log Collector
Understanding the Architecture1)CF Push
2)Create App
3)Stores App Metadata
4)Upload App Files
5)Stores App Files
6)App Start1) Stage App
2) Stream Staging Output
3) Store App Droplet
4) Report Staging Complete
5) Start App
6) Report Status
BuildpackBuildpack
RootfsRootfs
StemcellStemcell
CF Garden Container derived
from SUSE stemcell
CF Garden Container derived
from SUSE stemcell
App bits + MiddlewareApp bits + Middleware
FilesystemFilesystem
Kernel / DevicesKernel / Devices
STEMCELL
The stemcell provides the application devices and a kernel to run.
The drivers for the network interface, semaphores required by compilers, and other kernel specific dependencies are also provided by the stemcell that is deployed to the DIEGO Cells.
ROOTFS
Containers receive a root filesystem at creation from an image. This is a minimal image providing just the essential dependencies for a Cloud Foundry buildpack to be able to run.
BUILDPACK
Buildpacks are the magic that enables developers to focus on developing business logic. It provides three scripts: detect, compile and release. As well as any bundled dependencies required for deploying a user's application.
Understanding the Architecture1)CF Push
2)Create App
3)Stores App Metadata
4)Upload App Files
5)Stores App Files
6)App Start1) Stage App
2) Stream Staging Output
3) Store App Droplet
4) Report Staging Complete
5) Start App
6) Report Status
STEMCELL
The stemcell provides the application devices and a kernel to run.
The drivers for the network interface, semaphores required by compilers, and other kernel specific dependencies are also provided by the stemcell that is deployed to the DIEGO Cells.
ROOTFS
Containers receive a root filesystem at creation from an image. This is a minimal image providing just the essential dependencies for a Cloud Foundry buildpack to be able to run.
BUILDPACK
Buildpacks are the magic that enables developers to focus on developing business logic. It provides three scripts: detect, compile and release. As well as any bundled dependencies required for deploying a user's application.
Blobstore DB
DIEGO
SystemBuildpacks
Detect Compile Release
no
yes + =
Understanding the Architecture1)CF Push
2)Create App
3)Stores App Metadata
4)Upload App Files
5)Stores App Files
6)App Start1) Stage App
2) Stream Staging Output
3) Store App Droplet
4) Report Staging Complete
5) Start App
6) Report Status
STEMCELL
The stemcell provides the application devices and a kernel to run.
The drivers for the network interface, semaphores required by compilers, and other kernel specific dependencies are also provided by the stemcell that is deployed to the DIEGO Cells.
ROOTFS
Containers receive a root filesystem at creation from an image. This is a minimal image providing just the essential dependencies for a Cloud Foundry buildpack to be able to run.
BUILDPACK
Buildpacks are the magic that enables developers to focus on developing business logic. It provides three scripts: detect, compile and release. As well as any bundled dependencies required for deploying a user's application.
Blobstore DB
DIEGO
SystemBuildpacks
Detect Compile Release
Understanding the Architecture1)CF Push
2)Create App
3)Stores App Metadata
4)Upload App Files
5)Stores App Files
6)App Start1) Stage App
2) Stream Staging Output
3) Store App Droplet
4) Report Staging Complete
5) Start App
6) Report Status
Blobstore DB
DIEGO
SystemBuildpacks
Detect Compile Release
no
yes + =
STEMCELL
The stemcell provides the application devices and a kernel to run.
The drivers for the network interface, semaphores required by compilers, and other kernel specific dependencies are also provided by the stemcell that is deployed to the DIEGO Cells.
ROOTFS
Containers receive a root filesystem at creation from an image. This is a minimal image providing just the essential dependencies for a Cloud Foundry buildpack to be able to run.
BUILDPACK
Buildpacks are the magic that enables developers to focus on developing business logic. It provides three scripts: detect, compile and release. As well as any bundled dependencies required for deploying a user's application.
Blobstore DB
DIEGO
SystemBuildpacks
Detect Compile Release
no
yes + =
RoutingRoutingRouterRouter
AuthenticationAuthenticationOAuth2 ServerOAuth2 Server Login ServerLogin Server
App LifecycleApp LifecycleCloud ControllerCloud Controller nsyncnsync DiegoDiego Cell RepsCell Reps
App Storage& Execution
App Storage& ExecutionBlob StoreBlob Store App Execution (Diego Cell)App Execution (Diego Cell)
GardenGarden
ServicesServices Service Brokers Service Brokers
Messaging MessagingBBS (HTTP/S)BBS (HTTP/S)ConsulConsul NATS Message BusNATS Message Bus
Metrics / Logging Metrics / Logging Metric CollectorMetric Collector App Log CollectorApp Log Collector
Understanding the Architecture1)CF Push
2)Create App
3)Stores App Metadata
4)Upload App Files
5)Stores App Files
6)App Start1) Stage App
2) Stream Staging Output
3) Store App Droplet
4) Report Staging Complete
5) Start App
6) Report Status
Cloud Foundry:
1)Creates App from your code
2)Stages App to CF
3)Starts your App
Cloud Foundry:
1)Creates App from your code
2)Stages App to CF
3)Starts your App
SUSE Stemcell and Cloud Foundry
BuildpackBuildpack
RootfsRootfs
StemcellStemcell
CF Garden Container derived
from SUSE stemcell
CF Garden Container derived
from SUSE stemcell
App bits + MiddlewareApp bits + Middleware
FilesystemFilesystem
Kernel / DevicesKernel / Devices
RoutingRoutingRouterRouter
AuthenticationAuthenticationOAuth2 ServerOAuth2 Server Login ServerLogin Server
App LifecycleApp LifecycleCloud ControllerCloud Controller nsyncnsync DiegoDiego Cell RepsCell Reps
App Storage& ExecutionApp Storage& Execution
Blob StoreBlob StoreApp Execution (Diego Cell)App Execution (Diego Cell)
GardenGarden
ServicesServices Service Brokers Service Brokers
Messaging MessagingBBS (HTTP/S)BBS (HTTP/S) ConsulConsul NATS Message BusNATS Message Bus
Metrics / Logging Metrics / Logging Metric CollectorMetric Collector App Log CollectorApp Log Collector
SUSESUSE
SUSE Installer (Leverages BOSH)
SUSE Installer (Leverages BOSH)
CFF
GitHub
CFF
GitHub
Blobstore DB
DIEGO
SystemBuildpacks
Detect Compile Release
no
yes + =
RoutingRoutingRouterRouter
AuthenticationAuthenticationOAuth2 ServerOAuth2 Server Login ServerLogin Server
App LifecycleApp LifecycleCloud ControllerCloud Controller nsyncnsync DiegoDiego Cell RepsCell Reps
App Storage& Execution
App Storage& ExecutionBlob StoreBlob Store App Execution (Diego Cell)App Execution (Diego Cell)
GardenGarden
ServicesServices Service Brokers Service Brokers
Messaging MessagingBBS (HTTP/S)BBS (HTTP/S)ConsulConsul NATS Message BusNATS Message Bus
Metrics / Logging Metrics / Logging Metric CollectorMetric Collector App Log CollectorApp Log Collector
SUSESUSE
SUSE Installer (Leverages BOSH)
SUSE Installer (Leverages BOSH)
CFF
GitHub
CFF
GitHub Transparently builds hardened SUSE-based containers into the elastic runtime.
BuildpackBuildpack
RootfsRootfs
StemcellStemcell
CF Garden Container derived
from SUSE stemcell
CF Garden Container derived
from SUSE stemcell
App bits + MiddlewareApp bits + Middleware
FilesystemFilesystem
Kernel / DevicesKernel / Devices
RoutingRoutingRouterRouter
AuthenticationAuthenticationOAuth2 ServerOAuth2 Server Login ServerLogin Server
App LifecycleApp LifecycleCloud ControllerCloud Controller nsyncnsync DiegoDiego Cell RepsCell Reps
App Storage& ExecutionApp Storage& Execution
Blob StoreBlob StoreApp Execution (Diego Cell)App Execution (Diego Cell)
GardenGarden
ServicesServices Service Brokers Service Brokers
Messaging MessagingBBS (HTTP/S)BBS (HTTP/S) ConsulConsul NATS Message BusNATS Message Bus
Metrics / Logging Metrics / Logging Metric CollectorMetric Collector App Log CollectorApp Log Collector
SUSESUSE
SUSE Installer (Leverages BOSH)
SUSE Installer (Leverages BOSH)
CFF
GitHub
CFF
GitHub
BuildpackBuildpack
RootfsRootfs
StemcellStemcell
CF Garden Container derived
from SUSE stemcell
CF Garden Container derived
from SUSE stemcell
App bits + MiddlewareApp bits + Middleware
FilesystemFilesystem
Kernel / DevicesKernel / Devices
RoutingRoutingRouterRouter
AuthenticationAuthenticationOAuth2 ServerOAuth2 Server Login ServerLogin Server
App LifecycleApp LifecycleCloud ControllerCloud Controller nsyncnsync DiegoDiego Cell RepsCell Reps
App Storage& ExecutionApp Storage& Execution
Blob StoreBlob StoreApp Execution (Diego Cell)App Execution (Diego Cell)
GardenGarden
ServicesServices Service Brokers Service Brokers
Messaging MessagingBBS (HTTP/S)BBS (HTTP/S) ConsulConsul NATS Message BusNATS Message Bus
Metrics / Logging Metrics / Logging Metric CollectorMetric Collector App Log CollectorApp Log Collector
SUSESUSE
SUSE Installer (Leverages BOSH)
SUSE Installer (Leverages BOSH)
CFF
GitHub
CFF
GitHub
Capabilities
– Intuitive GUI Installer
– Validates OpenStack for CF use
– Simplified documented process
– Installs stable upstream CFF build
– Hardened SUSE stemcell based on SUSE Linux Enterprise
– Updates through continuous integration process
– Obtainable through SUSE account teams
Cloud Foundry Foundation● Cloud Foundry Foundation:
– https://www.cloudfoundry.org/
● Download packages:
– https://www.cloudfoundry.org/use/download/
● Documentation:
– http://docs.cloudfoundry.org/
Credits
Many of diagrams were based on content from Cloud Foundry literature and technical
presentations