SlideShare a Scribd company logo
© 2017 IBM Corporation l Interconnect 2017
Containers vs serverless
Navigating application deployment options
@DanielKrook
Daniel Krook

Software Architect, IBM
Bare Metal
VM VM
VM
Virtual machines
Functions
Containers
IBM Bluemix Containers vs Serverless@DanielKrook
Cloud computing options in the post-VM world are overwhelming
IBM Bluemix Containers vs Serverless@DanielKrook
But containerization is a given for cloud applications
Enables greater density, faster startup, and
more consistent application deployment.
Eases 12 Factor application delivery, handles
operational concerns (lifecycle, scale).
Enables polyglot microservices architectures
using the right language runtime for the job.
JavaScript
JavaScript
JavaScript
Swift
Java
IBM Bluemix Containers vs Serverless@DanielKrook
So which containerization approach will work best for you?
Platform
Orchestration
Containers
Serverless
Cost
Performance
Maintenance
Experience
© 2017 IBM Corporation l Interconnect 2017
Containers vs serverless
Kubernetes, Cloud Foundry, and Apache OpenWhisk
IBM Bluemix Containers vs Serverless@DanielKrook
Let’s look at three common container deployment models
Full control over infrastructure
and maximum portability
Focus on the application and let
the platform handle the rest
Auto-scaled, event-driven applications
that respond to a variety of triggers
Containers-as-a-Service Platform-as-a-Service Functions-as-a-Service
IBM Bluemix Containers vs Serverless@DanielKrook
Each containerization approach has its particular advantagesIncreasingfocusonbusinesslogic
Decreasing concern (and control) over stack implementation
Full control over infrastructure
and maximum portability
Focus on the application and let
the platform handle the rest
Auto-scaled, event-driven applications
that respond to a variety of triggers
Containers
Applications
Functions
IBM Bluemix Containers vs Serverless@DanielKrook
Kubernetes on the IBM Bluemix Container Service
Build and deploy portable applications with flexibility and control over configuration that
run anywhere without the need to reconfigure and deploy for different environments.
Benefits Target audience
• Native, managed Kubernetes
experience.
• Supports secure binding apps
to Watson and other APIs.
• Scans Docker images and live
containers for vulnerabilities
and malware.
• Developers and teams who want control over how their application and all of its
dependencies are packaged and versioned, ensuring portability and reuse
across deployment platforms.
• Developers looking for high performance among a cohesive set of
interdependent, independently scaling microservices.
• Organizations moving containers to the cloud and who are experienced with end-
to-end cluster deployments.
Containers-as-a-Service
IBM Bluemix Containers vs Serverless@DanielKrook
Cloud Foundry through IBM Bluemix Instant Runtimes
Deploy and scale applications using a broad set of runtimes, binding to a catalog of data,
AI, IoT, security services, without having to manually configure and manage servers.
• Complete, distributed, scalable,
production grade Platform-as-a-
Service framework.
• Buildpacks and brokered
services provide Cloud Foundry
extensibility.
• Developers who want a deployment platform that enables them to focus on
application source code and files (not packaging them) and not worry about the OS.
• Developers who are creating more traditional HTTP-based services (apps and APIs)
with routable hostnames by default.
• Organizations that are comfortable with a more stable model of cloud computing that
has been around for a longer period of time (comprehensive docs, many samples).
Benefits Target audience
Platform-as-a-Service
IBM Bluemix Containers vs Serverless@DanielKrook
Apache OpenWhisk hosted on IBM Bluemix
Execute code on-demand in an auto-scaled, managed environment through event-
driven triggers. Write functions in JavaScript, Swift, Java, Python, or custom Docker
images. Declare mappings to event sources. HTTP API gateway support built-it.
• Platform to run short lived container
instances with application code in
response to specific events
• Provides a scalable, polyglot, and
extensible platform for integrating
many event sources at granular
cost
• Developers who want to focus purely on business logic within individual functions
that automatically scale in response to demand and closely tie transactions to cost.
• Developers and teams creating non-HTTP applications, such as those that
respond to database changes, IoT readings, asynchronous, non-performance
critical tasks.
• Organizations that are comfortable adopting cutting edge technology in an area
where standards and best practices have not yet been thoroughly established.
Benefits Target audience
Functions-as-a-Service
IBM Bluemix Containers vs Serverless@DanielKrook
Serverless is a great fit for non-HTTP workloads as well
Execute logic in response to database change
Perform analytics on sensor input messages
Provide cognitive computing via chatbots
Schedule tasks performed for a short time
Invoke autoscaled APIs and mobile backends
bit.ly/bx-sl-wl
© 2017 IBM Corporation l Interconnect 2017
Containers vs serverless
Deploying a simple application to each platform
IBM Bluemix Containers vs Serverless@DanielKrook
Deploying a JavaScript application to each platform
APPLICATION
PUBLIC NETWORK CLOUD NETWORK
FIBONACCI
AS APP
FIBONACCI
AS CONTAINER
OpenWhisk
FIBONACCI
AS ACTION
app.js (or handler.js)
lib/fibonacci.js
bit.ly/bx-mdo
Sample app has 3 HTTP API endpoints
- Compute Fibonacci number 

after n iterations.

- Run the computation for t
milliseconds.

- Simulate a crash of the service 

by exiting the process.
IBM Bluemix Containers vs Serverless@DanielKrook
Deploying the Fibonacci application to Kubernetes
Clone the sample code
curl http://169.48.137.10:30080/fibonacci?iteration=1000
curl http://169.48.137.10:30080/fibonacci?duration=5000
curl -X POST http://169.48.137.10:30080/fibonacci?crash=true
Test against the public IP given
git clone https://github.com/IBM-Bluemix/multiple-deployment-options
cd services
Build locally, and push to the
IBM private container registry
bx cr login
bx cr namespace-create krook
docker build -t registry.ng.bluemix.net/krook/fibonacci:latest .
docker push registry.ng.bluemix.net/krook/fibonacci:latest
Create a Kubernetes cluster
with the new Container Service
bx cs cluster-create --name oscon
bx cs cluster-config oscon
export KUBECONFIG=...
Deploy the set of containers to
that cluster
vi fibonacci-deployment.yml (update namespace)

kubectl create -f fibonacci-deployment.yml
IBM Bluemix Containers vs Serverless@DanielKrook
Deploying the Fibonacci application to Cloud Foundry
Clone the sample code
curl http://fibonacci-service-oscon.mybluemix.net/fibonacci?iteration=1000
curl http://fibonacci-service-oscon.mybluemix.net/fibonacci?duration=5000
curl -X POST http://fibonacci-service-oscon.mybluemix.net/fibonacci?crash=true
Test against the hostname
git clone https://github.com/IBM-Bluemix/multiple-deployment-options
cd services
Update configuration as
needed, push the application to
the cloud
bx cf login
vi manifest.yml (update hostname)
bx cf push
IBM Bluemix Containers vs Serverless@DanielKrook
Deploying the Fibonacci application to OpenWhisk
Clone the sample code
curl https://openwhisk.ng.bluemix.net/api/v1/web/.../default/fibonacci?iteration=1000
curl https://openwhisk.ng.bluemix.net/api/v1/web/.../default/fibonacci?duration=5000
curl -X POST https://openwhisk.ng.bluemix.net/api/v1/web/.../default/fibonacci?crash=true
Test against the hostname
git clone https://github.com/IBM-Bluemix/multiple-deployment-options
cd services
Update configuration as
needed, push the application to
the cloud
wsk property set --apihost openwhisk.ng.bluemix.net --auth xxxxxxx
npm install
node deploy.js --install (convenience script that wraps the wsk CLI)
IBM Bluemix Containers vs Serverless@DanielKrook
Day two operations: It’s running! Now what?
IBM Bluemix Containers vs Serverless@DanielKrook
Day two operations: With power comes responsibility
Add more resilience by scaling
each service
bx cf scale fibonacci-service-oscon -i 3
kubectl scale --replicas=3 -f fibonacci-deployment.yml
Confirm new instances have
been created in Cloud Foundry
bx cf apps
name requested state instances memory disk urls
fibonacci-service-oscon started 3/3 256M 1G …
Confirm new instances have
been created in Kubernetes
kubectl get pods
NAME READY STATUS RESTARTS AGE
fibonacci-deployment-838971134-44cxv 1/1 Running 0 21s
fibonacci-deployment-838971134-k3cn3 1/1 Running 0 21s
fibonacci-deployment-838971134-l3rkh 1/1 Running 2 4d
IBM Bluemix Containers vs Serverless@DanielKrook
Day two operations: Better!
© 2017 IBM Corporation l Interconnect 2017
Containers vs serverless
So how do you actually choose a deployment option?
IBM Bluemix Containers vs Serverless@DanielKrook
Considerations for selecting a containerization platform
• Control over runtime environment (runtimes,
versions, minimal OS).

• Greater reusability and portability of container
images.

• Great fit for bringing containerized apps and
systems to the cloud.
• No need to manage underlying OS.

• Buildpacks provide influence over the
runtime, giving as much or as little control
(sensible defaults) as desired.

• Great fit for many existing web apps with a
stable programming model.
• OS, runtime, and even container lifecycle is
completely abstracted (serverless).

• Autoscales in response to demand, with an
associated granular cost model.

• Great fit for emerging, non-HTTP, event-driven
workloads involving IoT, data, messages.

• More responsibility over package configuration
(security patches).

• Need to understand distributed systems.
• Loss of control over operating system, 

possibly at the mercy of buildpack versions.

• Limited to HTTP/HTTPS
• An emerging computing model, rapid
innovation with less comprehensive and stable
documentation, samples, tools, and best
practices.

Full control over infrastructure
and maximum portability
Focus on the application and let
the platform handle the rest
Auto-scaled, event-driven applications
that respond to a variety of triggers
Containers-as-a-Service Platform-as-a-Service Functions-as-a-Service
IBM Bluemix Containers vs Serverless@DanielKrook
Performing your own in depth assessment of each platform
Score that against the cost for
the services. It's not always
about compute, particularly in
a highly distributed serverless
solution.

How much does this service
cost? Am I assuming certain
features are built-in?

How much will dependent
services cost?

Is latency between services
an issue?
Experiment with each
approach. Find what works
best for your app from a
functionality and development
experience.

What if I need to change the
code of my service?

How do I ensure continuity
of service while I deploy the
update?

How much control do I really
need over the runtime?
Gather performance numbers
such as time to recovery with
Kubernetes and Cloud Foundry as
well as cold starts with OpenWhisk.
Explore other non-functional
characteristics.

How do I secure my service?

How do I make my application
resilient to a data-center failure?

What if my service fails? Will the
platform automatically recover?
Will it be transparent to end-
users?
Evaluate features Measure operations Consider integrations
IBM Bluemix Containers vs Serverless@DanielKrook
Some considerations for running on more than one platform
Split components of your application across deployment targets
Think about matching the right technology to the right job, for example I have an IoT demo that uses both a Cloud
Foundry application and a set of OpenWhisk actions. Serverless isn't a magic bullet, but a new option to consider.
Design your application for more than one deployment target
Another design choice is to make your code as generic as it can be, allow it to be tested locally, and rely on
environment variables to influence how it runs in particular environments. The FlightAssist app shows this.
Continue to use your existing DevOps pipelines for any of the approaches
Kubernetes, Cloud Foundry, and OpenWhisk can all be driven by command line tools, and the same Docker image
can potentially be reused across platforms.

Consider abstractions, such as the Serverless Framework, for JavaScript applications
Or perhaps one of the other options like Zappa or Lambada that help port existing Python WSGi and JAX-RS REST
API applications from traditional hosting to a serverless platform (still exploring ports to OpenWhisk).
© 2017 IBM Corporation l Interconnect 2017
Containers vs serverless
Learn more
IBM Bluemix Containers vs Serverless@DanielKrook
Deploy the sample app to all three services on Bluemix
github.com/IBM-Bluemix/multiple-deployment-options (bit.ly/bx-mdo)
Learn about FlightAssist, a more in-depth study with data services
github.com/estesp/flightassist
See more Kubernetes, Cloud Foundry, and OpenWhisk samples on GitHub
github.com/IBM
Prefer to work hands-on with a developer advocate?
developer.ibm.com/code/work-with-us
Get started evaluating each option for your application
IBM Bluemix Containers vs Serverless@DanielKrook
Learn about serverless with Apache OpenWhisk at OSCON
© 2017 IBM Corporation l Interconnect 2017
Containers vs serverless
Additional material
IBM Bluemix Containers vs Serverless@DanielKrook
Kubernetes on the IBM Bluemix Container Service
1. Use the bx command line (with cs and cr
subcommands) or Bluemix GUI to manage clusters,
images, and containers.
2. Push your Docker images to your private
Bluemix registry.
3. Deploy containers to the cluster, and make your app
accessible from the Internet.
4. Bind a Bluemix service to your pods to bring extra capability
to your containers.
5. Monitor the health of your cluster and apps on Bluemix
IBM Bluemix Containers vs Serverless@DanielKrook
Cloud Foundry through IBM Bluemix Instant Runtimes
1. Choose the cf command line or Bluemix GUI to manage
your web apps.
2. Create your web app by using Bluemix user interface or
the bx cf command line.
3. Edit and version your code in Bluemix DevOps or local
development environment.
5. Bind app services by using Bluemix user interface or the cf
command line.
6. Provision monitoring services to manage the health of your
applications.
IBM Bluemix Containers vs Serverless@DanielKrook
Apache OpenWhisk hosted on IBM Bluemix
1. Choose the wsk command line or Bluemix GUI to create
your actions (functions).
2. Choose the wsk command line or Bluemix GUI to create
your event triggers.
3. Choose the wsk command line or Bluemix GUI to map
triggers to actions.
4. Choose the wsk command line or Bluemix GUI to monitor
action invocations.

More Related Content

What's hot

Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Amazon Web Services Korea
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
Nguyen Tung
 
AWS Business Essentials Day
AWS Business Essentials DayAWS Business Essentials Day
AWS Business Essentials Day
Amazon Web Services
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
Amazon Web Services
 
DevOps Foundation
DevOps FoundationDevOps Foundation
DevOps Foundation
Homepree Rloy
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
Amazon Web Services
 
Pets vs. Cattle: The Elastic Cloud Story
Pets vs. Cattle: The Elastic Cloud StoryPets vs. Cattle: The Elastic Cloud Story
Pets vs. Cattle: The Elastic Cloud Story
Randy Bias
 
Microservices for Application Modernisation
Microservices for Application ModernisationMicroservices for Application Modernisation
Microservices for Application Modernisation
Ajay Kumar Uppal
 
How to choose the right messaging service
How to choose the right messaging serviceHow to choose the right messaging service
How to choose the right messaging service
Yan Cui
 
Monitoring modern applications using Elastic
Monitoring modern applications using ElasticMonitoring modern applications using Elastic
Monitoring modern applications using Elastic
Elasticsearch
 
Microservices
MicroservicesMicroservices
Microservices
SmartBear
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in Practice
Kasun Indrasiri
 
DevOps on AWS - Building Systems to Deliver Faster
DevOps on AWS - Building Systems to Deliver FasterDevOps on AWS - Building Systems to Deliver Faster
DevOps on AWS - Building Systems to Deliver Faster
Amazon Web Services
 
Messaging Systems on AWS
Messaging Systems on AWSMessaging Systems on AWS
Messaging Systems on AWS
Amazon Web Services
 
From Monolithic to Microservices
From Monolithic to Microservices From Monolithic to Microservices
From Monolithic to Microservices
Amazon Web Services
 
Aws concepts-power-point-slides
Aws concepts-power-point-slidesAws concepts-power-point-slides
Aws concepts-power-point-slides
Sushil Thapa
 
Monoliths and Microservices
Monoliths and Microservices Monoliths and Microservices
Monoliths and Microservices
Bozhidar Bozhanov
 
(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC
(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC
(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC
Amazon Web Services
 
IBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and Turbonomic
IBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and TurbonomicIBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and Turbonomic
IBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and Turbonomic
Laura Naumann
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
Amazon Web Services
 

What's hot (20)

Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
Aurora MySQL Backtrack을 이용한 빠른 복구 방법 - 진교선 :: AWS Database Modernization Day 온라인
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
AWS Business Essentials Day
AWS Business Essentials DayAWS Business Essentials Day
AWS Business Essentials Day
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
DevOps Foundation
DevOps FoundationDevOps Foundation
DevOps Foundation
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Pets vs. Cattle: The Elastic Cloud Story
Pets vs. Cattle: The Elastic Cloud StoryPets vs. Cattle: The Elastic Cloud Story
Pets vs. Cattle: The Elastic Cloud Story
 
Microservices for Application Modernisation
Microservices for Application ModernisationMicroservices for Application Modernisation
Microservices for Application Modernisation
 
How to choose the right messaging service
How to choose the right messaging serviceHow to choose the right messaging service
How to choose the right messaging service
 
Monitoring modern applications using Elastic
Monitoring modern applications using ElasticMonitoring modern applications using Elastic
Monitoring modern applications using Elastic
 
Microservices
MicroservicesMicroservices
Microservices
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in Practice
 
DevOps on AWS - Building Systems to Deliver Faster
DevOps on AWS - Building Systems to Deliver FasterDevOps on AWS - Building Systems to Deliver Faster
DevOps on AWS - Building Systems to Deliver Faster
 
Messaging Systems on AWS
Messaging Systems on AWSMessaging Systems on AWS
Messaging Systems on AWS
 
From Monolithic to Microservices
From Monolithic to Microservices From Monolithic to Microservices
From Monolithic to Microservices
 
Aws concepts-power-point-slides
Aws concepts-power-point-slidesAws concepts-power-point-slides
Aws concepts-power-point-slides
 
Monoliths and Microservices
Monoliths and Microservices Monoliths and Microservices
Monoliths and Microservices
 
(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC
(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC
(NET409) How Twilio Migrated Its Services from EC2-Classic to EC2-VPC
 
IBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and Turbonomic
IBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and TurbonomicIBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and Turbonomic
IBM Cloud Pak for MCM Partner Add Ons Humio, SysDig, and Turbonomic
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 

Similar to Containers vs serverless - Navigating application deployment options

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
Michael Elder
 
Move existing middleware to the cloud
Move existing middleware to the cloudMove existing middleware to the cloud
Move existing middleware to the cloud
Arthur De Magalhaes
 
Bluemix DevOps Meetup
Bluemix DevOps MeetupBluemix DevOps Meetup
Bluemix DevOps Meetup
Kyle Brown
 
Cloud Native & Docker
Cloud Native & DockerCloud Native & Docker
Cloud Native & Docker
Brian Christner
 
IBM Cloud Paks - IBM Cloud
IBM Cloud Paks - IBM CloudIBM Cloud Paks - IBM Cloud
IBM Cloud Paks - IBM Cloud
AniaPaplaCardenal
 
Lightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to FunctionsLightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to Functions
EUBrasilCloudFORUM .
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud Private
Michael Elder
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platform
Daniel Krook
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platform
OpenWhisk
 
IBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEIBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONE
Filipe Miranda
 
IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...
IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...
IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...
Michael O'Sullivan
 
DevOps at Scale with Containers and the Cloud
DevOps at Scale with Containers and the CloudDevOps at Scale with Containers and the Cloud
DevOps at Scale with Containers and the Cloud
Alan Kan
 
Building serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhiskBuilding serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhisk
Daniel Krook
 
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
IBM France Lab
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
Phil Estes
 
IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)
Sanjay Nayak
 
IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...
IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...
IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...
Michael O'Sullivan
 
Developing Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDeveloping Hybrid Cloud Applications
Developing Hybrid Cloud Applications
Daniel Berg
 
IBM Container Service Overview
IBM Container Service OverviewIBM Container Service Overview
IBM Container Service Overview
Kyle Brown
 
Pivotal Container Service Overview
Pivotal Container Service Overview Pivotal Container Service Overview
Pivotal Container Service Overview
VMware Tanzu
 

Similar to Containers vs serverless - Navigating application deployment options (20)

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
 
Move existing middleware to the cloud
Move existing middleware to the cloudMove existing middleware to the cloud
Move existing middleware to the cloud
 
Bluemix DevOps Meetup
Bluemix DevOps MeetupBluemix DevOps Meetup
Bluemix DevOps Meetup
 
Cloud Native & Docker
Cloud Native & DockerCloud Native & Docker
Cloud Native & Docker
 
IBM Cloud Paks - IBM Cloud
IBM Cloud Paks - IBM CloudIBM Cloud Paks - IBM Cloud
IBM Cloud Paks - IBM Cloud
 
Lightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to FunctionsLightening the burden of cloud resources administration: from VMs to Functions
Lightening the burden of cloud resources administration: from VMs to Functions
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud Private
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platform
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platform
 
IBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEIBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONE
 
IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...
IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...
IBM Hybrid Cloud Integration UCC Talk, 23rd November 2021 - Cloud Application...
 
DevOps at Scale with Containers and the Cloud
DevOps at Scale with Containers and the CloudDevOps at Scale with Containers and the Cloud
DevOps at Scale with Containers and the Cloud
 
Building serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhiskBuilding serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhisk
 
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
20200113 - IBM Cloud Côte d'Azur - DeepDive Kubernetes
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
 
IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)
 
IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...
IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...
IBM Cloud UCC Talk, 8th December 2020 - Cloud Native, Microservices, and Serv...
 
Developing Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDeveloping Hybrid Cloud Applications
Developing Hybrid Cloud Applications
 
IBM Container Service Overview
IBM Container Service OverviewIBM Container Service Overview
IBM Container Service Overview
 
Pivotal Container Service Overview
Pivotal Container Service Overview Pivotal Container Service Overview
Pivotal Container Service Overview
 

More from Daniel Krook

Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Daniel Krook
 
Engaging Open Source Developers to Develop Tech for Good through Code and Res...
Engaging Open Source Developers to Develop Tech for Good through Code and Res...Engaging Open Source Developers to Develop Tech for Good through Code and Res...
Engaging Open Source Developers to Develop Tech for Good through Code and Res...
Daniel Krook
 
COVID-19 and Climate Change Action Through Open Source Technology
COVID-19 and Climate Change Action Through Open Source TechnologyCOVID-19 and Climate Change Action Through Open Source Technology
COVID-19 and Climate Change Action Through Open Source Technology
Daniel Krook
 
Serverless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhiskServerless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhisk
Daniel Krook
 
Workshop: Develop Serverless Applications with IBM Cloud Functions
Workshop: Develop Serverless Applications with IBM Cloud FunctionsWorkshop: Develop Serverless Applications with IBM Cloud Functions
Workshop: Develop Serverless Applications with IBM Cloud Functions
Daniel Krook
 
Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...
Daniel Krook
 
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at SantanderServerless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Daniel Krook
 
The CNCF on Serverless
The CNCF on ServerlessThe CNCF on Serverless
The CNCF on Serverless
Daniel Krook
 
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Daniel Krook
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhisk
Daniel Krook
 
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Daniel Krook
 
Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...
Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...
Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...
Daniel Krook
 
Serverless apps with OpenWhisk
Serverless apps with OpenWhiskServerless apps with OpenWhisk
Serverless apps with OpenWhisk
Daniel Krook
 
OpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsOpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven apps
Daniel Krook
 
Containers, OCI, CNCF, Magnum, Kuryr, and You!
Containers, OCI, CNCF, Magnum, Kuryr, and You!Containers, OCI, CNCF, Magnum, Kuryr, and You!
Containers, OCI, CNCF, Magnum, Kuryr, and You!
Daniel Krook
 
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayerTaking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Daniel Krook
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
Daniel Krook
 
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
Daniel Krook
 
Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...
Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...
Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...
Daniel Krook
 
Finding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User GroupFinding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User Group
Daniel Krook
 

More from Daniel Krook (20)

Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
 
Engaging Open Source Developers to Develop Tech for Good through Code and Res...
Engaging Open Source Developers to Develop Tech for Good through Code and Res...Engaging Open Source Developers to Develop Tech for Good through Code and Res...
Engaging Open Source Developers to Develop Tech for Good through Code and Res...
 
COVID-19 and Climate Change Action Through Open Source Technology
COVID-19 and Climate Change Action Through Open Source TechnologyCOVID-19 and Climate Change Action Through Open Source Technology
COVID-19 and Climate Change Action Through Open Source Technology
 
Serverless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhiskServerless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhisk
 
Workshop: Develop Serverless Applications with IBM Cloud Functions
Workshop: Develop Serverless Applications with IBM Cloud FunctionsWorkshop: Develop Serverless Applications with IBM Cloud Functions
Workshop: Develop Serverless Applications with IBM Cloud Functions
 
Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...Event specifications, state of the serverless landscape, and other news from ...
Event specifications, state of the serverless landscape, and other news from ...
 
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at SantanderServerless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
 
The CNCF on Serverless
The CNCF on ServerlessThe CNCF on Serverless
The CNCF on Serverless
 
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhisk
 
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
 
Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...
Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...
Open Container Technologies and OpenStack - Sorting Through Kubernetes, the O...
 
Serverless apps with OpenWhisk
Serverless apps with OpenWhiskServerless apps with OpenWhisk
Serverless apps with OpenWhisk
 
OpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsOpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven apps
 
Containers, OCI, CNCF, Magnum, Kuryr, and You!
Containers, OCI, CNCF, Magnum, Kuryr, and You!Containers, OCI, CNCF, Magnum, Kuryr, and You!
Containers, OCI, CNCF, Magnum, Kuryr, and You!
 
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayerTaking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
 
Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...
Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...
Quickly build and deploy a scalable OpenStack Swift application using IBM Blu...
 
Finding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User GroupFinding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User Group
 

Recently uploaded

Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
KrzysztofKkol1
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Visitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.appVisitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.app
NaapbooksPrivateLimi
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
Jelle | Nordend
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
Peter Caitens
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
varshanayak241
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 

Recently uploaded (20)

Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Visitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.appVisitor Management System in India- Vizman.app
Visitor Management System in India- Vizman.app
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 

Containers vs serverless - Navigating application deployment options

  • 1. © 2017 IBM Corporation l Interconnect 2017 Containers vs serverless Navigating application deployment options @DanielKrook Daniel Krook Software Architect, IBM Bare Metal VM VM VM Virtual machines Functions Containers
  • 2. IBM Bluemix Containers vs Serverless@DanielKrook Cloud computing options in the post-VM world are overwhelming
  • 3. IBM Bluemix Containers vs Serverless@DanielKrook But containerization is a given for cloud applications Enables greater density, faster startup, and more consistent application deployment. Eases 12 Factor application delivery, handles operational concerns (lifecycle, scale). Enables polyglot microservices architectures using the right language runtime for the job. JavaScript JavaScript JavaScript Swift Java
  • 4. IBM Bluemix Containers vs Serverless@DanielKrook So which containerization approach will work best for you? Platform Orchestration Containers Serverless Cost Performance Maintenance Experience
  • 5. © 2017 IBM Corporation l Interconnect 2017 Containers vs serverless Kubernetes, Cloud Foundry, and Apache OpenWhisk
  • 6. IBM Bluemix Containers vs Serverless@DanielKrook Let’s look at three common container deployment models Full control over infrastructure and maximum portability Focus on the application and let the platform handle the rest Auto-scaled, event-driven applications that respond to a variety of triggers Containers-as-a-Service Platform-as-a-Service Functions-as-a-Service
  • 7. IBM Bluemix Containers vs Serverless@DanielKrook Each containerization approach has its particular advantagesIncreasingfocusonbusinesslogic Decreasing concern (and control) over stack implementation Full control over infrastructure and maximum portability Focus on the application and let the platform handle the rest Auto-scaled, event-driven applications that respond to a variety of triggers Containers Applications Functions
  • 8. IBM Bluemix Containers vs Serverless@DanielKrook Kubernetes on the IBM Bluemix Container Service Build and deploy portable applications with flexibility and control over configuration that run anywhere without the need to reconfigure and deploy for different environments. Benefits Target audience • Native, managed Kubernetes experience. • Supports secure binding apps to Watson and other APIs. • Scans Docker images and live containers for vulnerabilities and malware. • Developers and teams who want control over how their application and all of its dependencies are packaged and versioned, ensuring portability and reuse across deployment platforms. • Developers looking for high performance among a cohesive set of interdependent, independently scaling microservices. • Organizations moving containers to the cloud and who are experienced with end- to-end cluster deployments. Containers-as-a-Service
  • 9. IBM Bluemix Containers vs Serverless@DanielKrook Cloud Foundry through IBM Bluemix Instant Runtimes Deploy and scale applications using a broad set of runtimes, binding to a catalog of data, AI, IoT, security services, without having to manually configure and manage servers. • Complete, distributed, scalable, production grade Platform-as-a- Service framework. • Buildpacks and brokered services provide Cloud Foundry extensibility. • Developers who want a deployment platform that enables them to focus on application source code and files (not packaging them) and not worry about the OS. • Developers who are creating more traditional HTTP-based services (apps and APIs) with routable hostnames by default. • Organizations that are comfortable with a more stable model of cloud computing that has been around for a longer period of time (comprehensive docs, many samples). Benefits Target audience Platform-as-a-Service
  • 10. IBM Bluemix Containers vs Serverless@DanielKrook Apache OpenWhisk hosted on IBM Bluemix Execute code on-demand in an auto-scaled, managed environment through event- driven triggers. Write functions in JavaScript, Swift, Java, Python, or custom Docker images. Declare mappings to event sources. HTTP API gateway support built-it. • Platform to run short lived container instances with application code in response to specific events • Provides a scalable, polyglot, and extensible platform for integrating many event sources at granular cost • Developers who want to focus purely on business logic within individual functions that automatically scale in response to demand and closely tie transactions to cost. • Developers and teams creating non-HTTP applications, such as those that respond to database changes, IoT readings, asynchronous, non-performance critical tasks. • Organizations that are comfortable adopting cutting edge technology in an area where standards and best practices have not yet been thoroughly established. Benefits Target audience Functions-as-a-Service
  • 11. IBM Bluemix Containers vs Serverless@DanielKrook Serverless is a great fit for non-HTTP workloads as well Execute logic in response to database change Perform analytics on sensor input messages Provide cognitive computing via chatbots Schedule tasks performed for a short time Invoke autoscaled APIs and mobile backends bit.ly/bx-sl-wl
  • 12. © 2017 IBM Corporation l Interconnect 2017 Containers vs serverless Deploying a simple application to each platform
  • 13. IBM Bluemix Containers vs Serverless@DanielKrook Deploying a JavaScript application to each platform APPLICATION PUBLIC NETWORK CLOUD NETWORK FIBONACCI AS APP FIBONACCI AS CONTAINER OpenWhisk FIBONACCI AS ACTION app.js (or handler.js) lib/fibonacci.js bit.ly/bx-mdo Sample app has 3 HTTP API endpoints - Compute Fibonacci number 
 after n iterations. - Run the computation for t milliseconds. - Simulate a crash of the service 
 by exiting the process.
  • 14. IBM Bluemix Containers vs Serverless@DanielKrook Deploying the Fibonacci application to Kubernetes Clone the sample code curl http://169.48.137.10:30080/fibonacci?iteration=1000 curl http://169.48.137.10:30080/fibonacci?duration=5000 curl -X POST http://169.48.137.10:30080/fibonacci?crash=true Test against the public IP given git clone https://github.com/IBM-Bluemix/multiple-deployment-options cd services Build locally, and push to the IBM private container registry bx cr login bx cr namespace-create krook docker build -t registry.ng.bluemix.net/krook/fibonacci:latest . docker push registry.ng.bluemix.net/krook/fibonacci:latest Create a Kubernetes cluster with the new Container Service bx cs cluster-create --name oscon bx cs cluster-config oscon export KUBECONFIG=... Deploy the set of containers to that cluster vi fibonacci-deployment.yml (update namespace) kubectl create -f fibonacci-deployment.yml
  • 15. IBM Bluemix Containers vs Serverless@DanielKrook Deploying the Fibonacci application to Cloud Foundry Clone the sample code curl http://fibonacci-service-oscon.mybluemix.net/fibonacci?iteration=1000 curl http://fibonacci-service-oscon.mybluemix.net/fibonacci?duration=5000 curl -X POST http://fibonacci-service-oscon.mybluemix.net/fibonacci?crash=true Test against the hostname git clone https://github.com/IBM-Bluemix/multiple-deployment-options cd services Update configuration as needed, push the application to the cloud bx cf login vi manifest.yml (update hostname) bx cf push
  • 16. IBM Bluemix Containers vs Serverless@DanielKrook Deploying the Fibonacci application to OpenWhisk Clone the sample code curl https://openwhisk.ng.bluemix.net/api/v1/web/.../default/fibonacci?iteration=1000 curl https://openwhisk.ng.bluemix.net/api/v1/web/.../default/fibonacci?duration=5000 curl -X POST https://openwhisk.ng.bluemix.net/api/v1/web/.../default/fibonacci?crash=true Test against the hostname git clone https://github.com/IBM-Bluemix/multiple-deployment-options cd services Update configuration as needed, push the application to the cloud wsk property set --apihost openwhisk.ng.bluemix.net --auth xxxxxxx npm install node deploy.js --install (convenience script that wraps the wsk CLI)
  • 17. IBM Bluemix Containers vs Serverless@DanielKrook Day two operations: It’s running! Now what?
  • 18. IBM Bluemix Containers vs Serverless@DanielKrook Day two operations: With power comes responsibility Add more resilience by scaling each service bx cf scale fibonacci-service-oscon -i 3 kubectl scale --replicas=3 -f fibonacci-deployment.yml Confirm new instances have been created in Cloud Foundry bx cf apps name requested state instances memory disk urls fibonacci-service-oscon started 3/3 256M 1G … Confirm new instances have been created in Kubernetes kubectl get pods NAME READY STATUS RESTARTS AGE fibonacci-deployment-838971134-44cxv 1/1 Running 0 21s fibonacci-deployment-838971134-k3cn3 1/1 Running 0 21s fibonacci-deployment-838971134-l3rkh 1/1 Running 2 4d
  • 19. IBM Bluemix Containers vs Serverless@DanielKrook Day two operations: Better!
  • 20. © 2017 IBM Corporation l Interconnect 2017 Containers vs serverless So how do you actually choose a deployment option?
  • 21. IBM Bluemix Containers vs Serverless@DanielKrook Considerations for selecting a containerization platform • Control over runtime environment (runtimes, versions, minimal OS). • Greater reusability and portability of container images. • Great fit for bringing containerized apps and systems to the cloud. • No need to manage underlying OS. • Buildpacks provide influence over the runtime, giving as much or as little control (sensible defaults) as desired. • Great fit for many existing web apps with a stable programming model. • OS, runtime, and even container lifecycle is completely abstracted (serverless). • Autoscales in response to demand, with an associated granular cost model. • Great fit for emerging, non-HTTP, event-driven workloads involving IoT, data, messages. • More responsibility over package configuration (security patches). • Need to understand distributed systems. • Loss of control over operating system, 
 possibly at the mercy of buildpack versions. • Limited to HTTP/HTTPS • An emerging computing model, rapid innovation with less comprehensive and stable documentation, samples, tools, and best practices. Full control over infrastructure and maximum portability Focus on the application and let the platform handle the rest Auto-scaled, event-driven applications that respond to a variety of triggers Containers-as-a-Service Platform-as-a-Service Functions-as-a-Service
  • 22. IBM Bluemix Containers vs Serverless@DanielKrook Performing your own in depth assessment of each platform Score that against the cost for the services. It's not always about compute, particularly in a highly distributed serverless solution. How much does this service cost? Am I assuming certain features are built-in? How much will dependent services cost? Is latency between services an issue? Experiment with each approach. Find what works best for your app from a functionality and development experience. What if I need to change the code of my service? How do I ensure continuity of service while I deploy the update? How much control do I really need over the runtime? Gather performance numbers such as time to recovery with Kubernetes and Cloud Foundry as well as cold starts with OpenWhisk. Explore other non-functional characteristics. How do I secure my service? How do I make my application resilient to a data-center failure? What if my service fails? Will the platform automatically recover? Will it be transparent to end- users? Evaluate features Measure operations Consider integrations
  • 23. IBM Bluemix Containers vs Serverless@DanielKrook Some considerations for running on more than one platform Split components of your application across deployment targets Think about matching the right technology to the right job, for example I have an IoT demo that uses both a Cloud Foundry application and a set of OpenWhisk actions. Serverless isn't a magic bullet, but a new option to consider. Design your application for more than one deployment target Another design choice is to make your code as generic as it can be, allow it to be tested locally, and rely on environment variables to influence how it runs in particular environments. The FlightAssist app shows this. Continue to use your existing DevOps pipelines for any of the approaches Kubernetes, Cloud Foundry, and OpenWhisk can all be driven by command line tools, and the same Docker image can potentially be reused across platforms. Consider abstractions, such as the Serverless Framework, for JavaScript applications Or perhaps one of the other options like Zappa or Lambada that help port existing Python WSGi and JAX-RS REST API applications from traditional hosting to a serverless platform (still exploring ports to OpenWhisk).
  • 24. © 2017 IBM Corporation l Interconnect 2017 Containers vs serverless Learn more
  • 25. IBM Bluemix Containers vs Serverless@DanielKrook Deploy the sample app to all three services on Bluemix github.com/IBM-Bluemix/multiple-deployment-options (bit.ly/bx-mdo) Learn about FlightAssist, a more in-depth study with data services github.com/estesp/flightassist See more Kubernetes, Cloud Foundry, and OpenWhisk samples on GitHub github.com/IBM Prefer to work hands-on with a developer advocate? developer.ibm.com/code/work-with-us Get started evaluating each option for your application
  • 26. IBM Bluemix Containers vs Serverless@DanielKrook Learn about serverless with Apache OpenWhisk at OSCON
  • 27. © 2017 IBM Corporation l Interconnect 2017 Containers vs serverless Additional material
  • 28. IBM Bluemix Containers vs Serverless@DanielKrook Kubernetes on the IBM Bluemix Container Service 1. Use the bx command line (with cs and cr subcommands) or Bluemix GUI to manage clusters, images, and containers. 2. Push your Docker images to your private Bluemix registry. 3. Deploy containers to the cluster, and make your app accessible from the Internet. 4. Bind a Bluemix service to your pods to bring extra capability to your containers. 5. Monitor the health of your cluster and apps on Bluemix
  • 29. IBM Bluemix Containers vs Serverless@DanielKrook Cloud Foundry through IBM Bluemix Instant Runtimes 1. Choose the cf command line or Bluemix GUI to manage your web apps. 2. Create your web app by using Bluemix user interface or the bx cf command line. 3. Edit and version your code in Bluemix DevOps or local development environment. 5. Bind app services by using Bluemix user interface or the cf command line. 6. Provision monitoring services to manage the health of your applications.
  • 30. IBM Bluemix Containers vs Serverless@DanielKrook Apache OpenWhisk hosted on IBM Bluemix 1. Choose the wsk command line or Bluemix GUI to create your actions (functions). 2. Choose the wsk command line or Bluemix GUI to create your event triggers. 3. Choose the wsk command line or Bluemix GUI to map triggers to actions. 4. Choose the wsk command line or Bluemix GUI to monitor action invocations.