the lazy developer's guide to cloud foundry - holly cummins
DESCRIPTION
JAX London presentation 2014TRANSCRIPT
© 2014 IBM Corporation
The Lazy Developer’s Guide to Cloud Foundry
Document number
Holly Cummins @holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
?
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
A model for excellence in public speaking
© 2014 IBM Corporation
@holly_cummins
Cloud Foundry
> cf push
© 2014 IBM Corporation
Any questions?
© 2014 IBM Corporation
@holly_cummins
?
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
IaaS
© 2014 IBM Corporation
@holly_cummins
PaaS
© 2014 IBM Corporation
@holly_cummins
SaaS
© 2014 IBM Corporation
@holly_cummins
The joy of cloud
© 2014 IBM Corporation
@holly_cummins
Introducing Cloud Foundry
© 2014 IBM Corporation
@holly_cummins
The Cloud Foundry Foundation
© 2014 IBM Corporation
@holly_cummins
The Cloud Foundry Foundation
© 2014 IBM Corporation
@holly_cummins
Public or private cloud?
© 2014 IBM Corporation
@holly_cummins
Public cloud
© 2014 IBM Corporation
@holly_cummins
Public cloud
© 2014 IBM Corporation
@holly_cummins
Public cloud
This is supposed to show it’s easy to get going.
© 2014 IBM Corporation
@holly_cummins
Public cloud
This is supposed to show it’s easy to get going.It’s a bad graphic but a great benefit.
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
System capacity still matters
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
Security
© 2014 IBM Corporation
@holly_cummins
▪Who has access to the data? ▪Who manages the servers? ▪What’s the patching policy?
Security is not just physical
© 2014 IBM Corporation
@holly_cummins
Hybrid cloud
© 2014 IBM Corporation
@holly_cummins
Public or private cloud?
© 2014 IBM Corporation
@holly_cummins
How big is your organisation?
© 2014 IBM Corporation
@holly_cummins
How big is your organisation?
© 2014 IBM Corporation
@holly_cummins
How big is your organisation?
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
Can we hear more about Cloud Foundry now, please?
© 2014 IBM Corporation
@holly_cummins
Public or private Cloud Foundry?
© 2014 IBM Corporation
@holly_cummins
Public or private Cloud Foundry?
© 2014 IBM Corporation
@holly_cummins
Public or private Cloud Foundry?
© 2014 IBM Corporation
@holly_cummins
Cloud Foundry
> cf push
© 2014 IBM Corporation
Putting your demo where your mouth is
© 2014 IBM Corporation
@holly_cummins
No really, that was cool
© 2014 IBM Corporation
@holly_cummins
No really, that was cool
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
© 2014 IBM Corporation
@holly_cummins
Remember that I said it was easy to get going?
© 2014 IBM Corporation
@holly_cummins
Buildpacks
© 2014 IBM Corporation
@holly_cummins
Buildpacks
© 2014 IBM Corporation
@holly_cummins
Out of the box
© 2014 IBM Corporation
@holly_cummins
▪Java
Out of the box
© 2014 IBM Corporation
@holly_cummins
▪Java▪Node.js
Out of the box
© 2014 IBM Corporation
@holly_cummins
▪Java▪Node.js▪PHP
Out of the box
© 2014 IBM Corporation
@holly_cummins
▪Java▪Node.js▪PHP▪Python
Out of the box
© 2014 IBM Corporation
@holly_cummins
▪Java▪Node.js▪PHP▪Python▪Ruby
Out of the box
© 2014 IBM Corporation
@holly_cummins
▪Java▪Node.js▪PHP▪Python▪Ruby▪Go
Out of the box
© 2014 IBM Corporation
@holly_cummins
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell–Clojure
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell–Clojure–Scala
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell–Clojure–Scala
▪That thing you saw Greg Young talk about yesterday
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell–Clojure–Scala
▪That thing you saw Greg Young talk about yesterday –Erlang
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell–Clojure–Scala
▪That thing you saw Greg Young talk about yesterday –Erlang
▪The dark side
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell–Clojure–Scala
▪That thing you saw Greg Young talk about yesterday –Erlang
▪The dark side–.NET
Bring your own
© 2014 IBM Corporation
@holly_cummins
▪Your preferred app server flavour–WebSphere Liberty Profile (of course!)–Jetty–nginx
▪The functional language to impress your colleagues with–Haskell–Clojure–Scala
▪That thing you saw Greg Young talk about yesterday –Erlang
▪The dark side–.NET
▪….
Bring your own
© 2014 IBM Corporation
@holly_cummins
Bring someone else’s
© 2014 IBM Corporation
@holly_cummins
Bring someone else’s
© 2014 IBM Corporation
@holly_cummins
▪Start with someone else’s. ▪Cut, paste, fork.
No really, bring your own
© 2014 IBM Corporation
@holly_cummins
Life of a buildpack
© 2014 IBM Corporation
@holly_cummins
▪Detect
Life of a buildpack
© 2014 IBM Corporation
@holly_cummins
▪Detect–Do I understand this application?
Life of a buildpack
© 2014 IBM Corporation
@holly_cummins
▪Detect–Do I understand this application?
▪Compile
Life of a buildpack
© 2014 IBM Corporation
@holly_cummins
▪Detect–Do I understand this application?
▪Compile–I do understand this application! Let’s package it up into a self-contained unit (“droplet”)
Life of a buildpack
© 2014 IBM Corporation
@holly_cummins
▪Detect–Do I understand this application?
▪Compile–I do understand this application! Let’s package it up into a self-contained unit (“droplet”)
▪Release
Life of a buildpack
© 2014 IBM Corporation
@holly_cummins
▪Detect–Do I understand this application?
▪Compile–I do understand this application! Let’s package it up into a self-contained unit (“droplet”)
▪Release–Ok, let’s go!
Life of a buildpack
© 2014 IBM Corporation
@holly_cummins
Services
© 2014 IBM Corporation
@holly_cummins
▪You didn’t want to provide an app server …
Services
© 2014 IBM Corporation
@holly_cummins
▪You didn’t want to provide an app server …▪… so you don’t want to provide the database …
Services
© 2014 IBM Corporation
@holly_cummins
▪You didn’t want to provide an app server …▪… so you don’t want to provide the database …▪… or the email provider …
Services
© 2014 IBM Corporation
@holly_cummins
▪You didn’t want to provide an app server …▪… so you don’t want to provide the database …▪… or the email provider …▪… or the monitoring
Services
© 2014 IBM Corporation
@holly_cummins
Some are generic
© 2014 IBM Corporation
@holly_cummins
Some are not …
© 2014 IBM Corporation
@holly_cummins
… and there are a lot
© 2014 IBM Corporation
@holly_cummins
services:! - instance_ABC! - instance_XYZ
Binding services
© 2014 IBM Corporation
@holly_cummins
Using a bound service
© 2014 IBM Corporation
@holly_cummins
System.getProperty(VCAP_SERVICES);!!{! sqldb": [! {! "name": "SQLDB-myDB",! "label": "sqldb"! "plan": "sqldb_small"! "credentials": {! "hostname": "75.126.155.139",! "host": "75.126.155.139",! "port": 50000,! "username": "u123456",! "password": "CasDQ5v72u",! "db": "I_012345",! "jdbcurl": "jdbc:db2://75.126.155.139:50000/I_012345",! "uri": "db2://u123:[email protected]:50000/I_012345"! }! }! ]!}!
Using a bound service
© 2014 IBM Corporation
@holly_cummins
Docker
© 2014 IBM Corporation
@holly_cummins
Decker
© 2014 IBM Corporation
@holly_cummins
Decker
+
© 2014 IBM Corporation
@holly_cummins
Decker
> cf push
© 2014 IBM Corporation
@holly_cummins
Decker
> cf push
© 2014 IBM Corporation
@holly_cummins
Decker
> cf push
© 2014 IBM Corporation
@holly_cummins
In the future
© 2014 IBM Corporation
@holly_cummins
▪More convergence
In the future
© 2014 IBM Corporation
@holly_cummins
▪More convergence▪Cloud Foundry will have first class support for pushing docker images
In the future
© 2014 IBM Corporation
@holly_cummins
▪More convergence▪Cloud Foundry will have first class support for pushing docker images▪Cloud Foundry will use Docker’s lib container internally
In the future
© 2014 IBM Corporation
Thank you. Any questions?
@holly_cummins