SlideShare a Scribd company logo
@csantanapr
Where Did My Servers Go?
Carlos Santana, IBM
csantana@us.ibm.com
@csantanapr
What you will learn
• How cloud computing has recently evolved to
enable developers to write cloud native
applications better,
faster, and cheaper using serverless technology.
• How OpenWhisk provides an open source
platform to enable cloud native, serverless, event
driven applications.
@csantanapr
Sometimes Servers let us down
• HARD DRIVE FAILS
• LINUX OS VULNERABILTY
• MIDDLEWARE VERSION UPDATE
• MORE MEMORY AND BIGGER CPU
• ….
@csantanapr
Scaling takes effort
Explosion in number of
containers / processes:
1. Increase of infrastructure
cost footprint
2. Increase of operational
management cost and
complexity
Region BRegion A
Break-down into microservices
Make each micro service HA
Protect against regional outages
Monolithic application
@csantanapr
Utilization
Average
Utilization
20% - 40%
of capacity
@csantanapr
Cloud Evolution
Bare
metal
Virtual
machines
Containers
PaaS
Functions
Decreasing concern (and control) over stack implementation
Increasingfocusonbusinesslogic
@csantanapr
Function-as-a-Service
@csantanapr
SCALING: 0 to N
@csantanapr
Pay as you go
@csantanapr
Plenty of Providers
@csantanapr
Compute Limits
flickr photo by zund https://flickr.com/photos/zund/12202485675 CC (BY-NC-ND) license
@csantanapr
Debug/Test/Monitor
flickr photo by Thomas Hawk
https://flickr.com/photos/thomashawk/4544013443 CC (BY-NC) license
@csantanapr
Deployment Complexity
@csantanapr
Frameworks
@csantanapr
Isn’t this Paas?
@csantanapr
OpenWhisk
OpenWhisk is a cloud platform
that executes code
in response to events
OpenWhisk
@csantanapr
OpenWhisk Use Cases
Serverless Web Application
Serverless Mobile Backend
Real-time data processing
Real-time Chatbot messaging
Scheduled Jobs
@csantanapr
OpenWhisk = open source
@csantanapr
Running locally
$ git clone github.com/openwhisk/openwhisk
$ cd openwhisk/tools/vagrant
$ ./hello
@csantanapr
IBM Bluemix OpenWhisk
@csantanapr
Programming Model
A Action:
A stateless, relatively short-running
function invoked as an event handler.
AJSON Object JSON Object
Input Output
Stateless Function
@csantanapr
Programming Model
A function main(params) {
console.log(“Hello “ + params.name);
return { msg: “Goodbye “ + params.name) };
}
OpenWhisk supports Node.js 6
@csantanapr
Programming Model
:=
A Action Sequence:
An Action that is a sequenced composition of
2 or more existing Actions.
Note: This composition technique allows the reuse of existing action
implementations treating them as “building blocks” for other Actions.
@csantanapr
Programming Model
24
Trigger:
Note: In a pub-sub system, a trigger could be viewed as a message topic.
The name for a class of events.
Triggers represent the events (and their data) themselves
without any concept of how they were generated.
OpenWhisk
Serverless
Platform
@csantanapr
Programming Model
R Rule:
T A
Trigger
(Event)
Action
(Event handler)
Rule
(conditional logic)
A mapping from a Trigger to an Action which
may contain simple conditional logic.
Note: OpenWhisk evaluates incoming events (that belong to a Trigger) and
invokes the assigned Action (event handler) associated by the Rule.
@csantanapr
Execution Model
Pool of actions
Swift DockerJS
Trigger
1
Running
action
Running
action
Running
action
3
OpenWhisk
Engine
2 A
T
AAA
@csantanapr
Event Driven
Event
Providers
Cloudant
GitHub
Weather
…
Which triggers execution of
associated OpenWhisk action
2
Slack
JS Swift Docker …
An event occurs, for example
• Commit pushed to GitHub repository
• Data changed in Cloudant
1
OpenWhisk
@csantanapr
REST Microservices
Send HTTP request
HTTP GET
app.com/customers
1
Invoke OpenWhisk
action get-customers
Browser
Mobile App
Web App
2
JS Swift Docker …
OpenWhisk
API
Proxy
@csantanapr
Under the hood
Couch
DB
Consul
Router (NGINX)
Controller
Kafka
Invoker Invoker
Docker
Executor Executor
Docker
Java Swift
Executor Executor
NodeJS Python
1. Router receives request to API
via CLI or UI
2. Controller checks entitlement
and dispatches requests to
Kafka
3. Invokers pull requests from
CouchDB and start execution of
the action
@csantanapr
Under the hood: Deep look
bit.ly/ow-int
1. Entering the system: nginx
2. Really entering the system: Controller
3. Authentication and Authorization: CouchDB
4. Getting the action: CouchDB… again
5. Who’s there to invoke the action: Consul
6. Please form a line: Kafka
7. Actually invoking the code already: Invoker
8. Storing the results: Yes… CouchDB again
@csantanapr
Slack Bot
bit.ly/ow-demo-2
GET /register
POST /command
POST /event
Register
action
Event
action
Command
action
2
OpenWhisk
Engine
1
AAA
API
Proxy
Register
the bot
Respond
to direct
messages
Respond
to slash
commands
@csantanapr
Smart home IoT, Banking
github.com/openwhisk/awesome-openwhisk
Project OpenFridge:
Improving customer service
with event driven IoT
Project OpenChecks:
Mobile check deposit with
optical character recognition
@csantanapr
DarkVision
https://github.com/IBM-Bluemix/openwhisk-darkvisionapp
@csantanapr
Skylink
https://github.com/IBM-Bluemix/skylink
@csantanapr
Logistics Wizard
https://github.com/IBM-Bluemix/logistics-wizard
@csantanapr
Learning is Fun
• DarkVision
• Skylink
• Open Checks
• Open Fridge
• Logistic Wizard
• IOT data-in-motion
• Slack invite
• QR Generator
• Blog Nag
• Just Follow You
• Slack Bot
• Jekyll Publisher
@csantanapr
Join Us!
github.com/openwhisk
@OpenWhisk
bluemix.net/openwhisk
slack.openwhisk.org
StackOverflow tagged =>openwhisk
Openwhisk.org

More Related Content

PDF
Monitoring kubernetes across data center and cloud
PDF
Using Apache Kafka to Analyze Session Windows
PDF
Event Stream Processing with Kafka and Samza
PPTX
Serverless Apps with Open Whisk
PDF
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
PDF
Full Stack Reactive In Practice
PDF
Devoxx university - Kafka de haut en bas
PPTX
Distributed architecture in a cloud native microservices ecosystem
Monitoring kubernetes across data center and cloud
Using Apache Kafka to Analyze Session Windows
Event Stream Processing with Kafka and Samza
Serverless Apps with Open Whisk
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Full Stack Reactive In Practice
Devoxx university - Kafka de haut en bas
Distributed architecture in a cloud native microservices ecosystem

What's hot (20)

PPTX
Samza la hug
PDF
Spring Cloud Netflix OSS
PDF
Bootstrapping Microservices with Kafka, Akka and Spark
PDF
IoT 'Megaservices' - High Throughput Microservices with Akka
PPTX
Enforcing Application SLA with Congress and Monasca
PPTX
Ceilosca
PDF
Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015
PDF
Ceilometer presentation ods havana final - published
PDF
Unreal Engine 4 Blueprints: Odio e amore Roberto De Ioris - Codemotion Rome 2017
PDF
Beyond the brokers - Un tour de l'écosystème Kafka
PDF
Live Coding a KSQL Application
PDF
Samza: Real-time Stream Processing at LinkedIn
PDF
How Yelp Leapt to Microservices with More than a Message Queue
PDF
Application Monitoring using Datadog
PDF
JHipster conf 2019 - Kafka Ecosystem
PDF
Troubleshooting as Your Kafka Clusters Grow (Krunal Vora, Tinder) Kafka Summi...
PDF
Elastic Data Analytics Platform @Datadog
PDF
OpenPOWER Webinar Series : Cloud native with openshift presentation from Indu...
PDF
NetflixOSS Meetup S6E2 - Spinnaker, Kayenta
PDF
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
Samza la hug
Spring Cloud Netflix OSS
Bootstrapping Microservices with Kafka, Akka and Spark
IoT 'Megaservices' - High Throughput Microservices with Akka
Enforcing Application SLA with Congress and Monasca
Ceilosca
Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015
Ceilometer presentation ods havana final - published
Unreal Engine 4 Blueprints: Odio e amore Roberto De Ioris - Codemotion Rome 2017
Beyond the brokers - Un tour de l'écosystème Kafka
Live Coding a KSQL Application
Samza: Real-time Stream Processing at LinkedIn
How Yelp Leapt to Microservices with More than a Message Queue
Application Monitoring using Datadog
JHipster conf 2019 - Kafka Ecosystem
Troubleshooting as Your Kafka Clusters Grow (Krunal Vora, Tinder) Kafka Summi...
Elastic Data Analytics Platform @Datadog
OpenPOWER Webinar Series : Cloud native with openshift presentation from Indu...
NetflixOSS Meetup S6E2 - Spinnaker, Kayenta
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
Ad

Viewers also liked (20)

PDF
How to contribute to Serverless Apache OpenWhisk OpenSource101 NCSU
PPT
OpenWhisk Introduction
PPTX
FCC Just Peace Covenant
PPTX
COSTO Y VOLUMEN
PDF
So You Want to Write for O'Reilly
PPT
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
PDF
Computer and Cyber forensics, a case study of Ghana
DOCX
Caratula de historia
PPTX
Real-Time Communications between Microservices
PPT
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
PPTX
Perancangan Media Pembelajaran
PDF
IBM Bluemix OpenWhisk: Serverless Conference 2016, Tokyo, Japan: The Future o...
PDF
Generic Drugs; Comparative Dissolution Profile & Discriminative Method for Di...
PPT
сапфо
PDF
Claim & Reasonable Probability (Part 2)
PDF
OpenWhisk - A platform for cloud native, serverless, event driven apps
PPTX
PPTX
Tics 4
PPTX
Implicaciones éticas en torno al acceso y uso
PDF
Health Literacy for Young Scientists
How to contribute to Serverless Apache OpenWhisk OpenSource101 NCSU
OpenWhisk Introduction
FCC Just Peace Covenant
COSTO Y VOLUMEN
So You Want to Write for O'Reilly
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
Computer and Cyber forensics, a case study of Ghana
Caratula de historia
Real-Time Communications between Microservices
IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of ...
Perancangan Media Pembelajaran
IBM Bluemix OpenWhisk: Serverless Conference 2016, Tokyo, Japan: The Future o...
Generic Drugs; Comparative Dissolution Profile & Discriminative Method for Di...
сапфо
Claim & Reasonable Probability (Part 2)
OpenWhisk - A platform for cloud native, serverless, event driven apps
Tics 4
Implicaciones éticas en torno al acceso y uso
Health Literacy for Young Scientists
Ad

Similar to OpenWhisk: Where Did My Servers Go? (20)

PDF
Serverless apps with OpenWhisk
PDF
Build a cloud native app with OpenWhisk
PDF
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
PDF
Azure Container Apps
PDF
OpenWhisk - Serverless Architecture
PDF
Top conf serverlezz
PDF
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
PPTX
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...
PDF
Introduction to apache kafka, confluent and why they matter
PDF
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
PDF
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with K...
PDF
2016-06 - Design your api management strategy - AWS - Microservices on AWS
PPTX
Serverless on OpenStack with Docker Swarm, Mistral, and StackStorm
PDF
Serverless Architectural Patterns & Best Practices
PDF
Actors or Not: Async Event Architectures
PPTX
DevOps, Microservices and Serverless Architecture
PDF
A Hitchhiker’s Guide to the Cloud Native Stack. #CDS17
PDF
A hitchhiker‘s guide to the cloud native stack
PDF
How to Build a Big Data Application: Serverless Edition
PPTX
High-speed, Reactive Microservices 2017
Serverless apps with OpenWhisk
Build a cloud native app with OpenWhisk
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
Azure Container Apps
OpenWhisk - Serverless Architecture
Top conf serverlezz
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...
Introduction to apache kafka, confluent and why they matter
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with K...
2016-06 - Design your api management strategy - AWS - Microservices on AWS
Serverless on OpenStack with Docker Swarm, Mistral, and StackStorm
Serverless Architectural Patterns & Best Practices
Actors or Not: Async Event Architectures
DevOps, Microservices and Serverless Architecture
A Hitchhiker’s Guide to the Cloud Native Stack. #CDS17
A hitchhiker‘s guide to the cloud native stack
How to Build a Big Data Application: Serverless Edition
High-speed, Reactive Microservices 2017

More from Carlos Santana (8)

PDF
Amazon EKS multi-cluster gitops-bridge
PDF
Building a Bridge between Terraform and ArgoCD
PDF
Control Planes on Kubernetes and Policy Validation
PPTX
Navigating Disaster Recovery in Kubernetes and CNCF Crossplane
PPTX
Scaling production grade EKS Multi-Cluster environments using GitOps
PDF
NodeJS Serverless backends for your frontends
PDF
OpenWhisk Meetup - Austin, TX 07/2017
PDF
Shark Tank OpenWhisk Incubating at ApacheCon 2017
Amazon EKS multi-cluster gitops-bridge
Building a Bridge between Terraform and ArgoCD
Control Planes on Kubernetes and Policy Validation
Navigating Disaster Recovery in Kubernetes and CNCF Crossplane
Scaling production grade EKS Multi-Cluster environments using GitOps
NodeJS Serverless backends for your frontends
OpenWhisk Meetup - Austin, TX 07/2017
Shark Tank OpenWhisk Incubating at ApacheCon 2017

Recently uploaded (20)

PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PDF
Digital Systems & Binary Numbers (comprehensive )
PPTX
Advanced SystemCare Ultimate Crack + Portable (2025)
PDF
Time Tracking Features That Teams and Organizations Actually Need
PDF
Wondershare Recoverit Full Crack New Version (Latest 2025)
PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PPTX
Introduction to Windows Operating System
PDF
MCP Security Tutorial - Beginner to Advanced
PDF
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
PPTX
Computer Software and OS of computer science of grade 11.pptx
PDF
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
PDF
Website Design Services for Small Businesses.pdf
PDF
iTop VPN Crack Latest Version Full Key 2025
DOCX
Greta — No-Code AI for Building Full-Stack Web & Mobile Apps
PPTX
Cybersecurity: Protecting the Digital World
PPTX
Trending Python Topics for Data Visualization in 2025
PPTX
chapter 5 systemdesign2008.pptx for cimputer science students
PDF
Complete Guide to Website Development in Malaysia for SMEs
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
STL Containers in C++ : Sequence Container : Vector
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
Digital Systems & Binary Numbers (comprehensive )
Advanced SystemCare Ultimate Crack + Portable (2025)
Time Tracking Features That Teams and Organizations Actually Need
Wondershare Recoverit Full Crack New Version (Latest 2025)
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
Introduction to Windows Operating System
MCP Security Tutorial - Beginner to Advanced
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
Computer Software and OS of computer science of grade 11.pptx
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
Website Design Services for Small Businesses.pdf
iTop VPN Crack Latest Version Full Key 2025
Greta — No-Code AI for Building Full-Stack Web & Mobile Apps
Cybersecurity: Protecting the Digital World
Trending Python Topics for Data Visualization in 2025
chapter 5 systemdesign2008.pptx for cimputer science students
Complete Guide to Website Development in Malaysia for SMEs
Designing Intelligence for the Shop Floor.pdf
STL Containers in C++ : Sequence Container : Vector

OpenWhisk: Where Did My Servers Go?

Editor's Notes

  • #5: In this transition to cloud native application development, the management of decomposed containerized applications has brought new operational concerns.
  • #6: Google released a study in July 2013, average utilization rates for 20,000 server clusters for three months. Find typical cluster spent most of its time running between 20-40 percent of capacity. That’s your money that’s better used. Spent on servers which are doing nothing. … Like having the water tap on all the time.
  • #7: Over the past ten years we’ve seen a steady improvement how fast developers can create and deploy applications to production. Starting with the moment that service providers matched virtualized resources with self service APIs, speed has been accelerating. Recently we’ve seen the shift from IaaS to PaaS, where developers concern themselves only with their apps and data. And now, we’ve seen the rise of Functions as a Service programming. Thoughout this shift the developer has narrowed his focus purely on business value, and lost site of more and more operational concerns, hence the term serverless.
  • #8: Shrunk unit of deployment. Focus on deploy small micro services, comprised of just a few functions, 100s lines of code. Not whole application. Platform starts new instances for each request. Don’t have instances running doing nothing. Don’t even have to think about servers? Implement interface.
  • #9: application designers can count on unlimited capacity of the platform to instantiate as many or as few functions as requested. Extreme speed means what happens if you get another request whilst your function is running? Start another one! Don’t have to predict traffic load. Scaling is free and automatic. microservice deployments and for applications with highly variable capacity requirements.
  • #12: Serverless is not designed for every usecase. Legacy HR payroll system. Modern application designed for the cloud. Enforce this architectural style through compute limits…. FaaS functions are stateless Execution Duration Startup Latency Memory/Allocation Allocation
  • #13: RELIANT ON SERVER TOOLS. Instrument, measure Open-source can help. LOGGING. Ensure logs are good. Testing, unit testing is easy, integration testing is hard. OpenWhisk == open source.
  • #14: Deploying one application to one hundred micro services concurrently. Deploy, version, fallback. Micro services come with complexity. Distributed computing is hard. Evaluate whether faaS event-driven architecture is a good fit for their applications and their team's development skills.
  • #15: Frameworks to help manage deployments. Serverless framework most popular. Working on Openwhisk support. Multi-vendor ….
  • #19: OpenWhisk is open-source. Announced in February, open-source the platform at the same time. Lot of people using serverless are very concerned about “vendor-lockin”. If you visit github.com/openwhisk access to the entire platform. Uses standard cloud-scale open-source components like Apache Kafka, Consul, Docker. Team continues to develop in the open. Milestones, raise tickets, browse documentation. Submit pull-requests.
  • #20: Which means you can have a full server less platform running on your laptop with three commands.. Vagrant file to set up the VM running the platform services using Docker. Running locally in minutes.
  • #21: but if you don’t feel like running it yourself, sign-up for a free account on IBM Bluemix. Hosted OpenWhisk platform. Currently in beta, which means they are no charges! Dashboard and visual code editor. Tooling.
  • #34: Discover dark data in videos with IBM Watson and IBM Bluemix OpenWhisk Dark Vision processes videos to discover dark data. By analyzing video frames with IBM Watson Visual Recognition, Dark Vision builds a summary with a set of tags and famous people or building detected in the video. Use this summary to enhance video search and categorization.
  • #35: Skylink is a sample application that connects drones to the cloud with near realtime image analysis leveraging IBM Cloudant, OpenWhisk, IBM Watson, and IBM Bluemix. Skylink is a sample application that lets you connect a DJI drone aircraft to the IBM Cloud with near realtime image analysis leveraging IBM Cloudant, OpenWhisk, IBM Watson, and Alchemy Vision.
  • #36: The Logistics Wizard is an end-to-end, smart supply chain management solution that showcases how to execute hybrid cloud, microservices, and predictive data analytics in the real world. Logistics Wizard is a reimagined supply chain optimization system for the 21st century. A number of companies use on-premises applications to run their supply chain business processes. Enterprise Resource Planning systems are often one of them and play a critical role in the daily operations.
  • #37: Take some inspiration from some of the the apps that people have built using OpenWhisk, play with them learn and have fun