SlideShare a Scribd company logo
1 of 28
Download to read offline
InterConnect
2017
Containerize, PaaS or Go
Serverless?
Phil Estes @estesp
Lin Sun @linsun_unc
A Case Study in Application
Deployment Models
1
Application Deployment Models:
A Brief Overview
2
Your compute options
in the post VM world
can be confusing.
PaaS (Cloud Foundry) <
Containers <
[Orchestration] <
FaaS/“Serverless” <
3
4
Cloud Foundry Overview
5
IBM is leading 3 projects,
has 2 in incubation &
contributes to 10 overall
IBM has been the #2
contributor since the
community was established,
behind only Pivotal.
Clouds
Services
Buildpacks
Bluemix PaaS Leverages Cloud Foundry
> Continuing IBM’s history of embracing Open Source
6
Bluemix Cloud Foundry Quick Start
> A range of sophisticated programming language & quick start boilerplates:
7
Fast, lightweight, isolated application containers
“Docker containers spin up fast and provide a layer of isolation from other services running in containers.”
“The lightweight containers can spin up in a matter of seconds without consuming a lot of resources.”
Containers: Based on Docker
8
Read-only template used to create Docker containers
Build new images by modifying existing images
Find and share images on a registry (Docker Hub)
Containers: Images
9
Beta available March 20th.
Combining Docker and Kubernetes to deliver powerful tools,
an intuitive user experience, and built-in security and isolation
to enable rapid delivery of applications - all while leveraging
IBM Cloud Services including cognitive capabilities from
Watson.
www.ibm.com/cloud-computing/bluemix/containers
IBM Bluemix Container Service
10
Intelligent Scheduling Automated rollouts and rollbacks Container Security & PrivacyDesign Your Own Cluster
Self-healing Horizontal scaling Leverages IBM Cloud & Watson Integrated Operational Tools
S
M
L
Service discovery & load balancing Secret & configuration management Simplified Cluster Management Native Kubernetes Experience
IBM Bluemix Container Service
New Section
New Section
13
+ =
www.ibm.com/cloud-computing/bluemix/containers
IBM Bluemix
Container Service
14
Commonly referred to as “serverless” computing, the function/event-oriented
computing model takes focus away from deploying application components onto
servers
Function-as-a-Service: Overview
„Event-action platform
to execute code in
response to events“
15
Serverless deployment & operations model
We hide infrastructural and operational complexity allowing you to focus on coding: 

You provide code – we execute it!
Optimal utilization, fair pricing at any scale
We provide you exactly with the resources you need; and charge you when your for
code is executed
Flexible programming model & powerful tooling
We support multiple languages (incl. Swift) and even the execution of custom logic
via Docker containers plus SDK/tools to declaratively chain your code snippets
Open source & open ecosystem
Open to run anywhere (on-premises vs. Bluemix hosted), no vendor lock-in and a
growing ecosystem of contributors and partners
OpenWhisk: Details
1
2
3
4
16
}1 Associated Services
OpenWhisk Bluemix
Runtime
Cloudant
Data event occurs:
- git commit
- CloudantDB operation
- etc.
Event triggers:
- An associated
OpenWhisk action
2
Node.js Swift Docker
OpenWhisk: How does it work?
Registered Actions
Git
Weather API
…
OR direct execution:
- Web Action endpoint
- `wsk` action execute
- etc.
17
Consistent experience:
Common service binding & consumption model
Common user ID & permissions model
Common routing layer
Consistent experience
• Common service binding & consumption model
• Common user ID & permissions model
• Common routing layer
Level of
abstraction
Flexibility
OpenWhisk
FaaS
flexibility vs ease of use/abstraction trade-off
Bluemix: Compute Models
Cloud Foundry
PaaS
Docker/Containers
CaaS
Kubernetes/Containers
CaaS
18
Execute code on-demand in a highly scalable, managed environment through event
driven triggers. Functions can be written in Javascript, Apple Swift, or custom
Docker images. SDK with service binding and API gateway (beta) support available.
OpenWhisk
Build and deploy portable applications with significant flexibility and control over
content that run anywhere without having to reconfigure and deploy for different
environments. Orchestrate using available technologies, including Kubernetes.
Containers
Deploy and scale applications using a broad set of runtimes, binding to a rich set of
cloud services, without having to manually configure and manage servers.
Cloud
Foundry
Infrastructure
Control
Bluemix: Compute Model Comparison
Demo Application: FlightAssist
A practical comparison of the three
compute models discussed
19
Uses several APIs/services:
> TripIt API
> FlightStats API
> Weather Company API
> Cloudant NoSQL DB
A Node.js application; default deploys as a CloudFoundry
application. Easily decomposable into a set of service
queries after retrieving trip data.
https://github.com/estesp/flightassist/
20
FlightAssist: Overview
21
FlightAssist: Application Layout
FlightAssist
Language: Node.js
Monolithic CF app
TripIt API
Bluemix Services
Weather
Company
Data
External API/Services
Cloudant
FlightStats API
http://localhost:3000/
http://localhost:3000/authenticate
http://localhost:3000/flights
view index.ejs
oAUTH w/TripIt
TripIt oAUTH callback > view trips.ejs
AJAX calls:
/i/tripdata
/i/flightinfo
/i/weather
/i/conninfo
22
FlightAssist: Application Demonstration
FlightAssist
Language: Node.js
Monolithic CF app
AJAX calls:
/i/tripdata
/i/flightinfo
/i/weather
/i/conninfo
http://localhost:3000/
FlightAssist
Language: Node.js
Monolithic
Containerized App
http://localhost:3000/
FlightAssist
Language: Node.js
App Container
http://localhost:3000/
WeatherService
Language: Python
Container
http://localhost:5000/
/i/weather
WeatherService
Language: Swift
OpenWhisk Action
See: https://github.com/estesp/flightassist/
Demo
Deploying FlightAssist with various
application models
23
Understanding Your Compute
Options
Trade-offs for deployment
methodologies
24
25
Deployment Model Comparison
Containers PaaS/Cloud Foundry FaaS/OpenWhisk
• Full control over runtime
environment (minimal OS)
• Lends itself towards reuse/
organizational control (e.g.
common base image for
application dev/test/prod)
• Portable runtime packaging (dev.
laptop, production server, public
cloud)
• Orchestration platforms and
paradigms support micro service
architectures well (service
discovery, load balancing, etc.)
• No requirement to understand/
manage OS layer; CF buildpacks
• Platform handles routing, scaling,
logging, health check with little
to no involvement from developer.
• Service catalog/service binding
model highly beneficial for ease of
consuming and configuring
external capabilities (APIs,
databases, platform capabilities)
• Infrastructure not even a
discussion point with function
developer. “PaaS on steroids”
• Highly granular “utility” model for
pricing (100ms) means short-lived
functions incur minimal cost. Very
low latency + “infinite” scaling.
• Custom [Docker image]
runtime support for non-standard
use cases (bash script, compiled
code) with same workflow
• Encourages good micro service
architecture flows with action
trigger and sequence capabilities• OS layer updates/patching
• More developer/operator concerns:
build, service configuration, custom
middleware/backends (instead of
provided services)
• Little to no visibility into platform
(OS image, library/runtime versions,
etc.); mercy of build pack updates?
• Tends to guide developer towards
monolithic app development
• App routing/interactions limited to
HTTP/HTTPS
• Some limitations in runtime support
(complexity in using libs/frameworks)
• Actions via HTTP still maturing; can be
complex to configure.
• Visibility/debug can be difficult
26
Notices and disclaimers
Copyright © 2017 by International Business Machines Corporation (IBM).
No part of this document may be reproduced or transmitted in any form
without written permission from IBM.
U.S. Government Users Restricted Rights — use, duplication or
disclosure restricted by GSA ADP Schedule Contract with IBM.
Information in these presentations (including information relating to
products that have not yet been announced by IBM) has been reviewed
for accuracy as of the date of initial publication and could include
unintentional technical or typographical errors. IBM shall have no
responsibility to update this information. This document is distributed
“as is” without any warranty, either express or implied. In no event
shall IBM be liable for any damage arising from the use of this
information, including but not limited to, loss of data, business
interruption, loss of profit or loss of opportunity. IBM products and
services are warranted according to the terms and conditions of the
agreements under which they are provided.
IBM products are manufactured from new parts or new and used parts. 

In some cases, a product may not be new and may have been previously
installed. Regardless, our warranty terms apply.”
Any statements regarding IBM's future direction, intent or product
plans are subject to change or withdrawal without notice.
Performance data contained herein was generally obtained in a
controlled, isolated environments. Customer examples are presented 

as illustrations of how those customers have used IBM products and 

the results they may have achieved. Actual performance, cost, savings or
other results in other operating environments may vary.
References in this document to IBM products, programs, or services does
not imply that IBM intends to make such products, programs or services
available in all countries in which IBM operates or does business.
Workshops, sessions and associated materials may have been prepared
by independent session speakers, and do not necessarily reflect the 

views of IBM. All materials and discussions are provided for informational
purposes only, and are neither intended to, nor shall constitute legal or
other guidance or advice to any individual participant or their specific
situation.
It is the customer’s responsibility to insure its own compliance with legal
requirements and to obtain advice of competent legal counsel as to
the identification and interpretation of any relevant laws and regulatory
requirements that may affect the customer’s business and any actions

the customer may need to take to comply with such laws. IBM does not
provide legal advice or represent or warrant that its services or products
will ensure that the customer is in compliance with any law.
27
Notices and disclaimers
continued
Information concerning non-IBM products was obtained from the suppliers
of those products, their published announcements or other publicly
available sources. IBM has not tested those products in connection with
this publication and cannot confirm the accuracy of performance,
compatibility or any other claims related to non-IBM products. Questions
on the capabilities of non-IBM products should be addressed to the
suppliers of those products. IBM does not warrant the quality of any third-
party products, or the ability of any such third-party products to
interoperate with IBM’s products. IBM expressly disclaims all
warranties, expressed or implied, including but not limited to, the
implied warranties of merchantability and fitness for a particular,
purpose.
The provision of the information contained herein is not intended to, and
does not, grant any right or license under any IBM patents, copyrights,
trademarks or other intellectual property right.
IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS,
Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document
Management System™, FASP®, FileNet®, Global Business Services®,

Global Technology Services®, IBM ExperienceOne™, IBM SmartCloud®,
IBM Social Business®, Information on Demand, ILOG, Maximo®,
MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower,
PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®,
PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®,
PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®,
SoDA, SPSS, Sterling Commerce®, StoredIQ, Tealeaf®, Tivoli® Trusteer®,
Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and
System z® Z/OS, are trademarks of International Business Machines
Corporation, registered in many jurisdictions worldwide. Other product
and service names might be trademarks of IBM or other companies. A
current list of IBM trademarks is available on the Web at "Copyright and
trademark information" at: www.ibm.com/legal/copytrade.shtml.
InterConnect
2017
Thank You!
28
Phil Estes @estesp
Lin Sun @linsun_unc
Check out/enhance/contribute to our demo
application:
https://github.com/estesp/flightassist
https://github.com/estesp/flightassist-weather

More Related Content

What's hot

Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectPatrick Chanezon
 
DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps
DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps  DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps
DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps Docker, Inc.
 
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...Docker, Inc.
 
Infinit: Modern Storage Platform for Container Environments
Infinit: Modern Storage Platform for Container EnvironmentsInfinit: Modern Storage Platform for Container Environments
Infinit: Modern Storage Platform for Container EnvironmentsDocker, Inc.
 
Docker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker CloudDocker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker CloudDocker, Inc.
 
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...Patrick Chanezon
 
DCSF 19 Docker Enterprise Platform and Architecture
DCSF 19 Docker Enterprise Platform and ArchitectureDCSF 19 Docker Enterprise Platform and Architecture
DCSF 19 Docker Enterprise Platform and ArchitectureDocker, Inc.
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2Docker, Inc.
 
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Edureka!
 
DockerCon SF 2015: How to Build a Secure DevOps Environment for the Government
DockerCon SF 2015: How to Build a Secure DevOps Environment for the GovernmentDockerCon SF 2015: How to Build a Secure DevOps Environment for the Government
DockerCon SF 2015: How to Build a Secure DevOps Environment for the GovernmentDocker, Inc.
 
Developing with Docker for the Arm Architecture
Developing with Docker for the Arm ArchitectureDeveloping with Docker for the Arm Architecture
Developing with Docker for the Arm ArchitectureDocker, Inc.
 
On-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad Afanah
On-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad AfanahOn-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad Afanah
On-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad AfanahDocker, Inc.
 
Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016Stuart Charlton
 
Docker introduction &amp; benefits
Docker introduction &amp; benefitsDocker introduction &amp; benefits
Docker introduction &amp; benefitsAmit Manwade
 
What's New in Docker - February 2017
What's New in Docker - February 2017What's New in Docker - February 2017
What's New in Docker - February 2017Patrick Chanezon
 
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logicielsDocker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logicielsPatrick Chanezon
 
Weave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapWeave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapPatrick Chanezon
 
How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...Animesh Singh
 
Developing Enterprise Applications for the Cloud, from Monolith to Microservices
Developing Enterprise Applications for the Cloud,from Monolith to MicroservicesDeveloping Enterprise Applications for the Cloud,from Monolith to Microservices
Developing Enterprise Applications for the Cloud, from Monolith to MicroservicesDavid Currie
 

What's hot (20)

Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby project
 
DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps
DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps  DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps
DCSF19 Adding a Modern API Layer to ‘Dockerized’ Legacy Apps
 
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
 
Infinit: Modern Storage Platform for Container Environments
Infinit: Modern Storage Platform for Container EnvironmentsInfinit: Modern Storage Platform for Container Environments
Infinit: Modern Storage Platform for Container Environments
 
Docker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker CloudDocker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker Cloud
 
Docker In Cloud
Docker In CloudDocker In Cloud
Docker In Cloud
 
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
 
DCSF 19 Docker Enterprise Platform and Architecture
DCSF 19 Docker Enterprise Platform and ArchitectureDCSF 19 Docker Enterprise Platform and Architecture
DCSF 19 Docker Enterprise Platform and Architecture
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2
 
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
 
DockerCon SF 2015: How to Build a Secure DevOps Environment for the Government
DockerCon SF 2015: How to Build a Secure DevOps Environment for the GovernmentDockerCon SF 2015: How to Build a Secure DevOps Environment for the Government
DockerCon SF 2015: How to Build a Secure DevOps Environment for the Government
 
Developing with Docker for the Arm Architecture
Developing with Docker for the Arm ArchitectureDeveloping with Docker for the Arm Architecture
Developing with Docker for the Arm Architecture
 
On-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad Afanah
On-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad AfanahOn-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad Afanah
On-the-Fly Containerization of Enterprise Java & .NET Apps by Amjad Afanah
 
Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016
 
Docker introduction &amp; benefits
Docker introduction &amp; benefitsDocker introduction &amp; benefits
Docker introduction &amp; benefits
 
What's New in Docker - February 2017
What's New in Docker - February 2017What's New in Docker - February 2017
What's New in Docker - February 2017
 
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logicielsDocker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
 
Weave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapWeave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 Recap
 
How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...
 
Developing Enterprise Applications for the Cloud, from Monolith to Microservices
Developing Enterprise Applications for the Cloud,from Monolith to MicroservicesDeveloping Enterprise Applications for the Cloud,from Monolith to Microservices
Developing Enterprise Applications for the Cloud, from Monolith to Microservices
 

Viewers also liked

Diving Through The Layers: Investigating runc, containerd, and the Docker eng...
Diving Through The Layers: Investigating runc, containerd, and the Docker eng...Diving Through The Layers: Investigating runc, containerd, and the Docker eng...
Diving Through The Layers: Investigating runc, containerd, and the Docker eng...Phil Estes
 
InterConnect: Java, Node.js and Swift - Which, Why and When
InterConnect: Java, Node.js and Swift - Which, Why and WhenInterConnect: Java, Node.js and Swift - Which, Why and When
InterConnect: Java, Node.js and Swift - Which, Why and WhenChris Bailey
 
Creating Effective Mobile Applications with IBM Bluemix
Creating Effective Mobile Applications with IBM BluemixCreating Effective Mobile Applications with IBM Bluemix
Creating Effective Mobile Applications with IBM BluemixAndrew Ferrier
 
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...Brian Petrini
 
Understanding Docker and IBM Bluemix Container Service
Understanding Docker and IBM Bluemix Container ServiceUnderstanding Docker and IBM Bluemix Container Service
Understanding Docker and IBM Bluemix Container ServiceAndrew Ferrier
 
Top IoT Technologies To Grow Your Business - IBM InterConnect 2017
Top IoT Technologies To Grow Your Business - IBM InterConnect 2017Top IoT Technologies To Grow Your Business - IBM InterConnect 2017
Top IoT Technologies To Grow Your Business - IBM InterConnect 2017Hector Del Castillo, CPM, CPMM
 
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easy
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easyInterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easy
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easyBrian Petrini
 
Regione Lombardia - Bando AttrACT - Accordi per l’attrattività
Regione Lombardia - Bando AttrACT - Accordi per l’attrattivitàRegione Lombardia - Bando AttrACT - Accordi per l’attrattività
Regione Lombardia - Bando AttrACT - Accordi per l’attrattivitàGuido Alberto Micci
 
EL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199s
EL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199sEL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199s
EL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199spolitao
 
Guida alla realizzazione di un localization kit
Guida alla realizzazione di un localization kitGuida alla realizzazione di un localization kit
Guida alla realizzazione di un localization kitLuigi Muzii
 
Winston Churchill Presentation
Winston Churchill PresentationWinston Churchill Presentation
Winston Churchill Presentation71721
 
Mba assignments projects
Mba assignments projectsMba assignments projects
Mba assignments projectsDistPub India
 
Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...
Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...
Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...Conferencia Sindrome Metabolico
 
Mujeres importantes en la historia de Marruecos
Mujeres importantes en la historia de MarruecosMujeres importantes en la historia de Marruecos
Mujeres importantes en la historia de Marruecosluifaris
 
Unfair dismissal
Unfair dismissalUnfair dismissal
Unfair dismissalTommy Myles
 
What successful it managers do from 8am 8pm: Your timetable
What successful it managers do from 8am 8pm: Your timetableWhat successful it managers do from 8am 8pm: Your timetable
What successful it managers do from 8am 8pm: Your timetableRedspire Ltd
 
La diferencia entre investigar un insight y descubrir un insight
La diferencia entre  investigar un insight y  descubrir un insightLa diferencia entre  investigar un insight y  descubrir un insight
La diferencia entre investigar un insight y descubrir un insightUPN Universidad Privada del Norte
 
7 Hacks for Google AdWords to Driver More Leads & Conversion
7 Hacks for Google AdWords to Driver More Leads & Conversion7 Hacks for Google AdWords to Driver More Leads & Conversion
7 Hacks for Google AdWords to Driver More Leads & ConversionArayan Kummar Sharma
 
Trastornos hepáticos, vesiculares y pancreáticos
Trastornos hepáticos, vesiculares y pancreáticosTrastornos hepáticos, vesiculares y pancreáticos
Trastornos hepáticos, vesiculares y pancreáticosIECHS
 
The unlucky 13 - the early warning signs of potential workplace violence
The unlucky 13   - the early warning signs of potential workplace violenceThe unlucky 13   - the early warning signs of potential workplace violence
The unlucky 13 - the early warning signs of potential workplace violenceW. Barry Nixon, SPHR
 

Viewers also liked (20)

Diving Through The Layers: Investigating runc, containerd, and the Docker eng...
Diving Through The Layers: Investigating runc, containerd, and the Docker eng...Diving Through The Layers: Investigating runc, containerd, and the Docker eng...
Diving Through The Layers: Investigating runc, containerd, and the Docker eng...
 
InterConnect: Java, Node.js and Swift - Which, Why and When
InterConnect: Java, Node.js and Swift - Which, Why and WhenInterConnect: Java, Node.js and Swift - Which, Why and When
InterConnect: Java, Node.js and Swift - Which, Why and When
 
Creating Effective Mobile Applications with IBM Bluemix
Creating Effective Mobile Applications with IBM BluemixCreating Effective Mobile Applications with IBM Bluemix
Creating Effective Mobile Applications with IBM Bluemix
 
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...
InterConnect 2017 HBP-3394-Enable innovative cloud solutions with IBM BPM and...
 
Understanding Docker and IBM Bluemix Container Service
Understanding Docker and IBM Bluemix Container ServiceUnderstanding Docker and IBM Bluemix Container Service
Understanding Docker and IBM Bluemix Container Service
 
Top IoT Technologies To Grow Your Business - IBM InterConnect 2017
Top IoT Technologies To Grow Your Business - IBM InterConnect 2017Top IoT Technologies To Grow Your Business - IBM InterConnect 2017
Top IoT Technologies To Grow Your Business - IBM InterConnect 2017
 
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easy
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easyInterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easy
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easy
 
Regione Lombardia - Bando AttrACT - Accordi per l’attrattività
Regione Lombardia - Bando AttrACT - Accordi per l’attrattivitàRegione Lombardia - Bando AttrACT - Accordi per l’attrattività
Regione Lombardia - Bando AttrACT - Accordi per l’attrattività
 
EL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199s
EL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199sEL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199s
EL FRAUDE DE CEDATOS / https://www.youtube.com/watch?v=ouLs1O2bmN0&t=1199s
 
Guida alla realizzazione di un localization kit
Guida alla realizzazione di un localization kitGuida alla realizzazione di un localization kit
Guida alla realizzazione di un localization kit
 
Winston Churchill Presentation
Winston Churchill PresentationWinston Churchill Presentation
Winston Churchill Presentation
 
Mba assignments projects
Mba assignments projectsMba assignments projects
Mba assignments projects
 
Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...
Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...
Medición por ecografía basado en radiofrecuencia del Grosor Intima Media Caro...
 
Mujeres importantes en la historia de Marruecos
Mujeres importantes en la historia de MarruecosMujeres importantes en la historia de Marruecos
Mujeres importantes en la historia de Marruecos
 
Unfair dismissal
Unfair dismissalUnfair dismissal
Unfair dismissal
 
What successful it managers do from 8am 8pm: Your timetable
What successful it managers do from 8am 8pm: Your timetableWhat successful it managers do from 8am 8pm: Your timetable
What successful it managers do from 8am 8pm: Your timetable
 
La diferencia entre investigar un insight y descubrir un insight
La diferencia entre  investigar un insight y  descubrir un insightLa diferencia entre  investigar un insight y  descubrir un insight
La diferencia entre investigar un insight y descubrir un insight
 
7 Hacks for Google AdWords to Driver More Leads & Conversion
7 Hacks for Google AdWords to Driver More Leads & Conversion7 Hacks for Google AdWords to Driver More Leads & Conversion
7 Hacks for Google AdWords to Driver More Leads & Conversion
 
Trastornos hepáticos, vesiculares y pancreáticos
Trastornos hepáticos, vesiculares y pancreáticosTrastornos hepáticos, vesiculares y pancreáticos
Trastornos hepáticos, vesiculares y pancreáticos
 
The unlucky 13 - the early warning signs of potential workplace violence
The unlucky 13   - the early warning signs of potential workplace violenceThe unlucky 13   - the early warning signs of potential workplace violence
The unlucky 13 - the early warning signs of potential workplace violence
 

Similar to Containerize, PaaS, or Go Serverless!?

Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on BluemixRam Vennam
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsMichael Elder
 
InterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOpsInterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOpsDaniel Berg
 
Ibm bluemix
Ibm bluemix Ibm bluemix
Ibm bluemix Narendra
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Michael Elder
 
Bluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User GroupBluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User GroupJon Marshall
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Rohit Kelapure
 
Bluemix DevOps Meetup
Bluemix DevOps MeetupBluemix DevOps Meetup
Bluemix DevOps MeetupKyle Brown
 
When to use serverless computing.pdf
When to use serverless computing.pdfWhen to use serverless computing.pdf
When to use serverless computing.pdfseo18
 
When to use serverless computing.pdf
When to use serverless computing.pdfWhen to use serverless computing.pdf
When to use serverless computing.pdfSGBSeo
 
fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6Kirill Osipov
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk IntroductionIoana Baldini
 
IBM Lightning Talk
IBM Lightning TalkIBM Lightning Talk
IBM Lightning TalkMongoDB
 
D-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBMD-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBMDEVOPS D-DAY
 
InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...
InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...
InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...Daniel Berg
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDBJake Peyser
 
Integrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry AppIntegrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry AppIBM
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix Rohit Kelapure
 
App Development Evolution: What has changed?
App Development Evolution: What has changed? App Development Evolution: What has changed?
App Development Evolution: What has changed? Dev_Events
 

Similar to Containerize, PaaS, or Go Serverless!? (20)

Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on Bluemix
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
 
InterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOpsInterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOps
 
Ibm bluemix
Ibm bluemix Ibm bluemix
Ibm bluemix
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
 
Bluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User GroupBluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User Group
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
 
Bluemix DevOps Meetup
Bluemix DevOps MeetupBluemix DevOps Meetup
Bluemix DevOps Meetup
 
When to use serverless computing.pdf
When to use serverless computing.pdfWhen to use serverless computing.pdf
When to use serverless computing.pdf
 
When to use serverless computing.pdf
When to use serverless computing.pdfWhen to use serverless computing.pdf
When to use serverless computing.pdf
 
fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6
 
Blue mix
Blue mixBlue mix
Blue mix
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk Introduction
 
IBM Lightning Talk
IBM Lightning TalkIBM Lightning Talk
IBM Lightning Talk
 
D-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBMD-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBM
 
InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...
InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...
InterConnect 2015: 3045 Hybrid Cloud - How to get a return from an investment...
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDB
 
Integrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry AppIntegrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry App
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix
 
App Development Evolution: What has changed?
App Development Evolution: What has changed? App Development Evolution: What has changed?
App Development Evolution: What has changed?
 

More from Phil Estes

Enabling Security via Container Runtimes
Enabling Security via Container RuntimesEnabling Security via Container Runtimes
Enabling Security via Container RuntimesPhil Estes
 
Extended and embedding: containerd update & project use cases
Extended and embedding: containerd update & project use casesExtended and embedding: containerd update & project use cases
Extended and embedding: containerd update & project use casesPhil Estes
 
Cloud Native TLV Meetup: Securing Containerized Applications Primer
Cloud Native TLV Meetup: Securing Containerized Applications PrimerCloud Native TLV Meetup: Securing Containerized Applications Primer
Cloud Native TLV Meetup: Securing Containerized Applications PrimerPhil Estes
 
Securing Containerized Applications: A Primer
Securing Containerized Applications: A PrimerSecuring Containerized Applications: A Primer
Securing Containerized Applications: A PrimerPhil Estes
 
Securing Containerized Applications: A Primer
Securing Containerized Applications: A PrimerSecuring Containerized Applications: A Primer
Securing Containerized Applications: A PrimerPhil Estes
 
Let's Try Every CRI Runtime Available for Kubernetes
Let's Try Every CRI Runtime Available for KubernetesLet's Try Every CRI Runtime Available for Kubernetes
Let's Try Every CRI Runtime Available for KubernetesPhil Estes
 
CraftConf 2019: CRI Runtimes Deep Dive: Who Is Running My Pod?
CraftConf 2019:  CRI Runtimes Deep Dive: Who Is Running My Pod?CraftConf 2019:  CRI Runtimes Deep Dive: Who Is Running My Pod?
CraftConf 2019: CRI Runtimes Deep Dive: Who Is Running My Pod?Phil Estes
 
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...Phil Estes
 
Giving Back to Upstream | DockerCon 2019
Giving Back to Upstream | DockerCon 2019Giving Back to Upstream | DockerCon 2019
Giving Back to Upstream | DockerCon 2019Phil Estes
 
What's Running My Containers? A review of runtimes and standards.
What's Running My Containers? A review of runtimes and standards.What's Running My Containers? A review of runtimes and standards.
What's Running My Containers? A review of runtimes and standards.Phil Estes
 
Docker London Meetup: Docker Engine Evolution
Docker London Meetup: Docker Engine EvolutionDocker London Meetup: Docker Engine Evolution
Docker London Meetup: Docker Engine EvolutionPhil Estes
 
FOSDEM 2019: A containerd Project Update
FOSDEM 2019: A containerd Project UpdateFOSDEM 2019: A containerd Project Update
FOSDEM 2019: A containerd Project UpdatePhil Estes
 
CRI Runtimes Deep-Dive: Who's Running My Pod!?
CRI Runtimes Deep-Dive: Who's Running My Pod!?CRI Runtimes Deep-Dive: Who's Running My Pod!?
CRI Runtimes Deep-Dive: Who's Running My Pod!?Phil Estes
 
Docker Athens: Docker Engine Evolution & Containerd Use Cases
Docker Athens: Docker Engine Evolution & Containerd Use CasesDocker Athens: Docker Engine Evolution & Containerd Use Cases
Docker Athens: Docker Engine Evolution & Containerd Use CasesPhil Estes
 
It's 2018. Are My Containers Secure Yet!?
It's 2018. Are My Containers Secure Yet!?It's 2018. Are My Containers Secure Yet!?
It's 2018. Are My Containers Secure Yet!?Phil Estes
 
Docker Engine Evolution: From Monolith to Discrete Components
Docker Engine Evolution: From Monolith to Discrete ComponentsDocker Engine Evolution: From Monolith to Discrete Components
Docker Engine Evolution: From Monolith to Discrete ComponentsPhil Estes
 
An Open Source Story: Open Containers & Open Communities
An Open Source Story: Open Containers & Open CommunitiesAn Open Source Story: Open Containers & Open Communities
An Open Source Story: Open Containers & Open CommunitiesPhil Estes
 
Whose Job Is It Anyway? Kubernetes, CRI, & Container Runtimes
Whose Job Is It Anyway? Kubernetes, CRI, & Container RuntimesWhose Job Is It Anyway? Kubernetes, CRI, & Container Runtimes
Whose Job Is It Anyway? Kubernetes, CRI, & Container RuntimesPhil Estes
 
Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018Phil Estes
 
Embedding Containerd For Fun and Profit
Embedding Containerd For Fun and ProfitEmbedding Containerd For Fun and Profit
Embedding Containerd For Fun and ProfitPhil Estes
 

More from Phil Estes (20)

Enabling Security via Container Runtimes
Enabling Security via Container RuntimesEnabling Security via Container Runtimes
Enabling Security via Container Runtimes
 
Extended and embedding: containerd update & project use cases
Extended and embedding: containerd update & project use casesExtended and embedding: containerd update & project use cases
Extended and embedding: containerd update & project use cases
 
Cloud Native TLV Meetup: Securing Containerized Applications Primer
Cloud Native TLV Meetup: Securing Containerized Applications PrimerCloud Native TLV Meetup: Securing Containerized Applications Primer
Cloud Native TLV Meetup: Securing Containerized Applications Primer
 
Securing Containerized Applications: A Primer
Securing Containerized Applications: A PrimerSecuring Containerized Applications: A Primer
Securing Containerized Applications: A Primer
 
Securing Containerized Applications: A Primer
Securing Containerized Applications: A PrimerSecuring Containerized Applications: A Primer
Securing Containerized Applications: A Primer
 
Let's Try Every CRI Runtime Available for Kubernetes
Let's Try Every CRI Runtime Available for KubernetesLet's Try Every CRI Runtime Available for Kubernetes
Let's Try Every CRI Runtime Available for Kubernetes
 
CraftConf 2019: CRI Runtimes Deep Dive: Who Is Running My Pod?
CraftConf 2019:  CRI Runtimes Deep Dive: Who Is Running My Pod?CraftConf 2019:  CRI Runtimes Deep Dive: Who Is Running My Pod?
CraftConf 2019: CRI Runtimes Deep Dive: Who Is Running My Pod?
 
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...
 
Giving Back to Upstream | DockerCon 2019
Giving Back to Upstream | DockerCon 2019Giving Back to Upstream | DockerCon 2019
Giving Back to Upstream | DockerCon 2019
 
What's Running My Containers? A review of runtimes and standards.
What's Running My Containers? A review of runtimes and standards.What's Running My Containers? A review of runtimes and standards.
What's Running My Containers? A review of runtimes and standards.
 
Docker London Meetup: Docker Engine Evolution
Docker London Meetup: Docker Engine EvolutionDocker London Meetup: Docker Engine Evolution
Docker London Meetup: Docker Engine Evolution
 
FOSDEM 2019: A containerd Project Update
FOSDEM 2019: A containerd Project UpdateFOSDEM 2019: A containerd Project Update
FOSDEM 2019: A containerd Project Update
 
CRI Runtimes Deep-Dive: Who's Running My Pod!?
CRI Runtimes Deep-Dive: Who's Running My Pod!?CRI Runtimes Deep-Dive: Who's Running My Pod!?
CRI Runtimes Deep-Dive: Who's Running My Pod!?
 
Docker Athens: Docker Engine Evolution & Containerd Use Cases
Docker Athens: Docker Engine Evolution & Containerd Use CasesDocker Athens: Docker Engine Evolution & Containerd Use Cases
Docker Athens: Docker Engine Evolution & Containerd Use Cases
 
It's 2018. Are My Containers Secure Yet!?
It's 2018. Are My Containers Secure Yet!?It's 2018. Are My Containers Secure Yet!?
It's 2018. Are My Containers Secure Yet!?
 
Docker Engine Evolution: From Monolith to Discrete Components
Docker Engine Evolution: From Monolith to Discrete ComponentsDocker Engine Evolution: From Monolith to Discrete Components
Docker Engine Evolution: From Monolith to Discrete Components
 
An Open Source Story: Open Containers & Open Communities
An Open Source Story: Open Containers & Open CommunitiesAn Open Source Story: Open Containers & Open Communities
An Open Source Story: Open Containers & Open Communities
 
Whose Job Is It Anyway? Kubernetes, CRI, & Container Runtimes
Whose Job Is It Anyway? Kubernetes, CRI, & Container RuntimesWhose Job Is It Anyway? Kubernetes, CRI, & Container Runtimes
Whose Job Is It Anyway? Kubernetes, CRI, & Container Runtimes
 
Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018Containerd Project Update: FOSDEM 2018
Containerd Project Update: FOSDEM 2018
 
Embedding Containerd For Fun and Profit
Embedding Containerd For Fun and ProfitEmbedding Containerd For Fun and Profit
Embedding Containerd For Fun and Profit
 

Recently uploaded

Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 

Recently uploaded (20)

Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 

Containerize, PaaS, or Go Serverless!?

  • 1. InterConnect 2017 Containerize, PaaS or Go Serverless? Phil Estes @estesp Lin Sun @linsun_unc A Case Study in Application Deployment Models 1
  • 3. Your compute options in the post VM world can be confusing. PaaS (Cloud Foundry) < Containers < [Orchestration] < FaaS/“Serverless” < 3
  • 5. 5 IBM is leading 3 projects, has 2 in incubation & contributes to 10 overall IBM has been the #2 contributor since the community was established, behind only Pivotal. Clouds Services Buildpacks Bluemix PaaS Leverages Cloud Foundry > Continuing IBM’s history of embracing Open Source
  • 6. 6 Bluemix Cloud Foundry Quick Start > A range of sophisticated programming language & quick start boilerplates:
  • 7. 7 Fast, lightweight, isolated application containers “Docker containers spin up fast and provide a layer of isolation from other services running in containers.” “The lightweight containers can spin up in a matter of seconds without consuming a lot of resources.” Containers: Based on Docker
  • 8. 8 Read-only template used to create Docker containers Build new images by modifying existing images Find and share images on a registry (Docker Hub) Containers: Images
  • 9. 9 Beta available March 20th. Combining Docker and Kubernetes to deliver powerful tools, an intuitive user experience, and built-in security and isolation to enable rapid delivery of applications - all while leveraging IBM Cloud Services including cognitive capabilities from Watson. www.ibm.com/cloud-computing/bluemix/containers IBM Bluemix Container Service
  • 10. 10 Intelligent Scheduling Automated rollouts and rollbacks Container Security & PrivacyDesign Your Own Cluster Self-healing Horizontal scaling Leverages IBM Cloud & Watson Integrated Operational Tools S M L Service discovery & load balancing Secret & configuration management Simplified Cluster Management Native Kubernetes Experience IBM Bluemix Container Service
  • 14. 14 Commonly referred to as “serverless” computing, the function/event-oriented computing model takes focus away from deploying application components onto servers Function-as-a-Service: Overview „Event-action platform to execute code in response to events“
  • 15. 15 Serverless deployment & operations model We hide infrastructural and operational complexity allowing you to focus on coding: 
 You provide code – we execute it! Optimal utilization, fair pricing at any scale We provide you exactly with the resources you need; and charge you when your for code is executed Flexible programming model & powerful tooling We support multiple languages (incl. Swift) and even the execution of custom logic via Docker containers plus SDK/tools to declaratively chain your code snippets Open source & open ecosystem Open to run anywhere (on-premises vs. Bluemix hosted), no vendor lock-in and a growing ecosystem of contributors and partners OpenWhisk: Details 1 2 3 4
  • 16. 16 }1 Associated Services OpenWhisk Bluemix Runtime Cloudant Data event occurs: - git commit - CloudantDB operation - etc. Event triggers: - An associated OpenWhisk action 2 Node.js Swift Docker OpenWhisk: How does it work? Registered Actions Git Weather API … OR direct execution: - Web Action endpoint - `wsk` action execute - etc.
  • 17. 17 Consistent experience: Common service binding & consumption model Common user ID & permissions model Common routing layer Consistent experience • Common service binding & consumption model • Common user ID & permissions model • Common routing layer Level of abstraction Flexibility OpenWhisk FaaS flexibility vs ease of use/abstraction trade-off Bluemix: Compute Models Cloud Foundry PaaS Docker/Containers CaaS Kubernetes/Containers CaaS
  • 18. 18 Execute code on-demand in a highly scalable, managed environment through event driven triggers. Functions can be written in Javascript, Apple Swift, or custom Docker images. SDK with service binding and API gateway (beta) support available. OpenWhisk Build and deploy portable applications with significant flexibility and control over content that run anywhere without having to reconfigure and deploy for different environments. Orchestrate using available technologies, including Kubernetes. Containers Deploy and scale applications using a broad set of runtimes, binding to a rich set of cloud services, without having to manually configure and manage servers. Cloud Foundry Infrastructure Control Bluemix: Compute Model Comparison
  • 19. Demo Application: FlightAssist A practical comparison of the three compute models discussed 19
  • 20. Uses several APIs/services: > TripIt API > FlightStats API > Weather Company API > Cloudant NoSQL DB A Node.js application; default deploys as a CloudFoundry application. Easily decomposable into a set of service queries after retrieving trip data. https://github.com/estesp/flightassist/ 20 FlightAssist: Overview
  • 21. 21 FlightAssist: Application Layout FlightAssist Language: Node.js Monolithic CF app TripIt API Bluemix Services Weather Company Data External API/Services Cloudant FlightStats API http://localhost:3000/ http://localhost:3000/authenticate http://localhost:3000/flights view index.ejs oAUTH w/TripIt TripIt oAUTH callback > view trips.ejs AJAX calls: /i/tripdata /i/flightinfo /i/weather /i/conninfo
  • 22. 22 FlightAssist: Application Demonstration FlightAssist Language: Node.js Monolithic CF app AJAX calls: /i/tripdata /i/flightinfo /i/weather /i/conninfo http://localhost:3000/ FlightAssist Language: Node.js Monolithic Containerized App http://localhost:3000/ FlightAssist Language: Node.js App Container http://localhost:3000/ WeatherService Language: Python Container http://localhost:5000/ /i/weather WeatherService Language: Swift OpenWhisk Action See: https://github.com/estesp/flightassist/
  • 23. Demo Deploying FlightAssist with various application models 23
  • 24. Understanding Your Compute Options Trade-offs for deployment methodologies 24
  • 25. 25 Deployment Model Comparison Containers PaaS/Cloud Foundry FaaS/OpenWhisk • Full control over runtime environment (minimal OS) • Lends itself towards reuse/ organizational control (e.g. common base image for application dev/test/prod) • Portable runtime packaging (dev. laptop, production server, public cloud) • Orchestration platforms and paradigms support micro service architectures well (service discovery, load balancing, etc.) • No requirement to understand/ manage OS layer; CF buildpacks • Platform handles routing, scaling, logging, health check with little to no involvement from developer. • Service catalog/service binding model highly beneficial for ease of consuming and configuring external capabilities (APIs, databases, platform capabilities) • Infrastructure not even a discussion point with function developer. “PaaS on steroids” • Highly granular “utility” model for pricing (100ms) means short-lived functions incur minimal cost. Very low latency + “infinite” scaling. • Custom [Docker image] runtime support for non-standard use cases (bash script, compiled code) with same workflow • Encourages good micro service architecture flows with action trigger and sequence capabilities• OS layer updates/patching • More developer/operator concerns: build, service configuration, custom middleware/backends (instead of provided services) • Little to no visibility into platform (OS image, library/runtime versions, etc.); mercy of build pack updates? • Tends to guide developer towards monolithic app development • App routing/interactions limited to HTTP/HTTPS • Some limitations in runtime support (complexity in using libs/frameworks) • Actions via HTTP still maturing; can be complex to configure. • Visibility/debug can be difficult
  • 26. 26 Notices and disclaimers Copyright © 2017 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM. U.S. Government Users Restricted Rights — use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM. Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. This document is distributed “as is” without any warranty, either express or implied. In no event shall IBM be liable for any damage arising from the use of this information, including but not limited to, loss of data, business interruption, loss of profit or loss of opportunity. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided. IBM products are manufactured from new parts or new and used parts. 
 In some cases, a product may not be new and may have been previously installed. Regardless, our warranty terms apply.” Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice. Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented 
 as illustrations of how those customers have used IBM products and 
 the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary. References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business. Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the 
 views of IBM. All materials and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation. It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions
 the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law.
  • 27. 27 Notices and disclaimers continued Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third- party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM expressly disclaims all warranties, expressed or implied, including but not limited to, the implied warranties of merchantability and fitness for a particular, purpose. The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right. IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management System™, FASP®, FileNet®, Global Business Services®,
 Global Technology Services®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®, Information on Demand, ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®, SoDA, SPSS, Sterling Commerce®, StoredIQ, Tealeaf®, Tivoli® Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
  • 28. InterConnect 2017 Thank You! 28 Phil Estes @estesp Lin Sun @linsun_unc Check out/enhance/contribute to our demo application: https://github.com/estesp/flightassist https://github.com/estesp/flightassist-weather