SlideShare a Scribd company logo
1 of 30
Download to read offline
© 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

Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...
Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...
Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...Amazon Web Services
 
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!
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetesrajdeep
 
Containers: The What, Why, and How
Containers: The What, Why, and HowContainers: The What, Why, and How
Containers: The What, Why, and HowSneha Inguva
 
VMware Tanzu Introduction
VMware Tanzu IntroductionVMware Tanzu Introduction
VMware Tanzu IntroductionVMware Tanzu
 
Introduction to Istio on Kubernetes
Introduction to Istio on KubernetesIntroduction to Istio on Kubernetes
Introduction to Istio on KubernetesJonh Wendell
 
VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...
VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...
VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...Edureka!
 
How NOT to Measure Latency
How NOT to Measure LatencyHow NOT to Measure Latency
How NOT to Measure LatencyC4Media
 
Istio : Service Mesh
Istio : Service MeshIstio : Service Mesh
Istio : Service MeshKnoldus Inc.
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentationSuresh Kumar
 
Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Animesh Singh
 
12 factor app - Core Guidelines To Cloud Ready Solutions
12 factor app - Core Guidelines To Cloud Ready Solutions12 factor app - Core Guidelines To Cloud Ready Solutions
12 factor app - Core Guidelines To Cloud Ready SolutionsKashif Ali Siddiqui
 
AWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker on AWSAWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker on AWSAmazon Web Services
 

What's hot (20)

Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...
Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...
Amazon Virtual Private Cloud (VPC): Networking Fundamentals and Connectivity ...
 
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...
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
Containers: The What, Why, and How
Containers: The What, Why, and HowContainers: The What, Why, and How
Containers: The What, Why, and How
 
Jenkins Overview
Jenkins OverviewJenkins Overview
Jenkins Overview
 
Ansible
AnsibleAnsible
Ansible
 
VMware Tanzu Introduction
VMware Tanzu IntroductionVMware Tanzu Introduction
VMware Tanzu Introduction
 
Introduction to Istio on Kubernetes
Introduction to Istio on KubernetesIntroduction to Istio on Kubernetes
Introduction to Istio on Kubernetes
 
AWS Containers Day.pdf
AWS Containers Day.pdfAWS Containers Day.pdf
AWS Containers Day.pdf
 
VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...
VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...
VMware Tutorial For Beginners | VMware Workstation | VMware Virtualization | ...
 
How NOT to Measure Latency
How NOT to Measure LatencyHow NOT to Measure Latency
How NOT to Measure Latency
 
AWS Security and SecOps
AWS Security and SecOpsAWS Security and SecOps
AWS Security and SecOps
 
Istio : Service Mesh
Istio : Service MeshIstio : Service Mesh
Istio : Service Mesh
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
Jenkins tutorial
Jenkins tutorialJenkins tutorial
Jenkins tutorial
 
Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!
 
Introduction to Amazon EKS
Introduction to Amazon EKSIntroduction to Amazon EKS
Introduction to Amazon EKS
 
ansible why ?
ansible why ?ansible why ?
ansible why ?
 
12 factor app - Core Guidelines To Cloud Ready Solutions
12 factor app - Core Guidelines To Cloud Ready Solutions12 factor app - Core Guidelines To Cloud Ready Solutions
12 factor app - Core Guidelines To Cloud Ready Solutions
 
AWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker on AWSAWS January 2016 Webinar Series - Introduction to Docker on AWS
AWS January 2016 Webinar Series - Introduction to Docker 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 CloudsMichael Elder
 
Move existing middleware to the cloud
Move existing middleware to the cloudMove existing middleware to the cloud
Move existing middleware to the cloudArthur De Magalhaes
 
Bluemix DevOps Meetup
Bluemix DevOps MeetupBluemix DevOps Meetup
Bluemix DevOps MeetupKyle Brown
 
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 FunctionsEUBrasilCloudFORUM .
 
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 PrivateMichael 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 platformDaniel 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 platformOpenWhisk
 
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 LinuxONEFilipe 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 CloudAlan Kan
 
Building serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhiskBuilding serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhiskDaniel 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 KubernetesIBM 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 ApplicationsDaniel Berg
 
IBM Container Service Overview
IBM Container Service OverviewIBM Container Service Overview
IBM Container Service OverviewKyle 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 TechnologyDaniel Krook
 
Serverless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhiskServerless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhiskDaniel 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 FunctionsDaniel 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 SantanderDaniel Krook
 
The CNCF on Serverless
The CNCF on ServerlessThe CNCF on Serverless
The CNCF on ServerlessDaniel 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 FunctionsDaniel 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 OpenWhiskDaniel 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 OpenWhiskDaniel 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 appsDaniel 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 SoftLayerDaniel 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 GroupDaniel 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

SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationShrmpro
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsBert Jan Schrijver
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburgmasabamasaba
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durbanmasabamasaba
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 

Recently uploaded (20)

SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 

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.