ibm bluemix openwhisk: serverless conference 2017, austin, usa: the journey continues: what's...

Post on 23-Jan-2018

1.039 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskThe journey continues: What's new in OpenWhisk land and what have our customers built?

© 2017 IBM Corporation l Interconnect 2017

@AndreasNauerz@Michael_beh

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Available asopen source via Apacheopenwhisk.org

FaaS platform to execute code in response to events

OpenWhisk

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

FaaS platform to execute code in response to events

OpenWhisk

Also available as managed service on IBM Bluemixbluemix.net/openwhisk

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

OpenWhisk allows you to build up an entirely serverless application architecture

Openwhisk

IOT

Mobile

Cognitive

APIs

Data

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

API Gateway supportAllows to map API endpoints to OpenWhisk actions

GA Now

Serverless microservice APIs/backend

What is OpenWhisk good for?

Available for free, without limits

Define Actions:getCostumercreateCostumer deleteCostumer

Define API Endpoints (URLs) and map to ActionsGet: mydomain.com/…/customersPost: mydomain.com/…/customers Delete: mydomain.com/…/customers

12

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskgetCostumercreateCostumer deleteCostumer

Easy to add and edit:Security (API key, API secret, OAuth validation, CORS)Rate-LimitingMap actions to API endpoints (OpenAPI Doc creation)Easy socialization (sharing, API key creation)Analytics (API calls, errors, response time)Test your API (API Explorer) Upload Swagger/OpenAPI Doc

3

2 1

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is OpenWhisk good for?

1

3

4

2

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Gives you full control over HTTP request/response from within an action

New

Web actions

Serverless microservice APIs/backend

What is OpenWhisk good for?

Another way to invoke an action is via our newest web action capabilities. Those OpenWhisk actions quickly enable you to build web based applications. Allowing backend logic which your web application can access  anonymously without requiring an OpenWhisk authentication key. It is up to the action developer to

hello

Client

OpenwhiskIBM Cloudant

Enable Action to be a WebAction

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is OpenWhisk good for?Sending a redirect

Setting a cookie

Sending an image

Examples for response handling

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is OpenWhisk good for?

Example for request handling

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Allows to use Kong as an alternative open & vendor-agnostic API Gateway

New

Kong plug-infor OpenWhisk

Serverless microservice APIs/backend

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is OpenWhisk good for?

1

2

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is OpenWhisk good for?

3

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Integration with

New

Allows OpenWhisk to work with today’s stream-based applications; stream data to/from OpenWhisk and leverage PubNub BLOCKS for lightweight compute in the network.

Bringing OpenWhisk to Realtime Applications

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is OpenWhisk good for?

Vehicle DispatchPubNub Blocks → OpenWhisk

PubNub Blocks filters geo data and routes to OpenWhisk for

computation. OpenWhisk runs business logic and M.L. and broadcasts back to PubNub

listeners on end-devices.

NewSample use-cases…

Disaster AlertsOpenWhisk → PubNub

OpenWhisk detects weather anomalies and and broadcasts to PubNub listeners on end-devices

for real-time disaster alerts.

Social Chat AppPubNub → Watson + OpenWhisk

PubNub filters chat messages through a PubNub Watson

Translator Block, and offloads audience analysis to OpenWhisk for

async post-processing.

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is OpenWhisk good for?

Sample…

Clone and configure PubNub’s OpenWhisk Block at pubnub.com/openwhisk

{ “Openwhisk”: { “triggerName”: “hello_world” “payload”: {“message”: “Hello From PubNub BLOCKS!”, “publishTime”: 1492747834095 } } }

function main(params) { var dateNow = + new Date();

return { message: params.message, time_to_publish: dateNow - params.publishTime } }

{ “message”: “Hello From PubNub Blocks!”, “time_to_publish”: 15 }

1

2

3

4

JSON input payload to your Block

OpenWhisk simple computation

New

Return output

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Swift Action

Mobile backend

IBM API Gateway

Openwhisk

APIHi!

What is OpenWhisk good for?

Outsource compute-intensive tasks to a powerful & scalable serverless platform and implement your actions even without changing the programming language.

Swift Action

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is Serverless good for?

Mobile backend

The Weather Godshttps://itunes.apple.com/us/app/weather-gods/id1041512978?mt=8

IBM API Gateway

Openwhisk

APIHi!

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskThe Weather Gods High Level Architecture

Weather CheckerTWC

Weather Model

Group Scanner

1Cron trigger every 3 minutes

Cloudant

Set flag to check weather for each user location in the group

For each user location updated

2

Weather Collector Trigger

Snow Scanner

Rain Scanner

Wind Scanner

Storm Scanner

Frost Scanner

ETC Scanner

3Weather Update Trigger

Notification

Not

ifica

tion

Mod

el

Send Notification

4

Notification Trigger

Bluemix

Notification

Weather Gods

OpenWhisk Actions

External

Data

Triggers

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Data processing

OpenwhiskIBM Cloudant

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Data processing

OpenwhiskIBM Cloudant

Ideally suited for working with multimedia data like audio, image and video data:Audio normalizationImage rotation, sharpening, noise reduction or Thumbnail generationImage OCR’ing

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Data processing

OpenwhiskIBM Cloudant

http://ecc.ibm.com/case-study/us-en/ECCF-CDC12387USEN

What do our customers do with OpenWhisk?

10x faster 90% less cost

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskSiteSpirit High Level Architecture

ms2-image-moveupload-trigger

ms2-imagecrop-trigger

Upload Bucket

Per Customer

Costumer DB

+mediaspirit-transform

cloudant/create

ms2-changelistener

ms2-cloudant-

trigger

+

+

ms2-moveuploaded-upload

ms2-get-clientconfig

ms2-moveuploaded-done

+

+

+ms2-fetch-cropres

ms2-get-clientconfig

ms2-imagecropper

ms2-crop-done

mediaspirit-newfile-uploaded

Crop Resolutions Buckets

?

Sequence

Trigger

Action

Manager DB

Object Storage

1

23

4

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Data processing

OpenwhiskIBM Cloudant

What do our customers do with OpenWhisk?

Less cost <$2 for all paper checksprocessed within 1 year

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskSantander High Level Architecture

IBM Bluemix Openwhisk

Object Storage

Archived Audited Parsed Processed

Resized Images

Represents System of Records

Save Images

Find Checks

ChangesChanges

ParseCheck

OCREngine

Record Deposit

Email Notification

Trigger ActionIBM Cloudant

1 2 3 4

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Cognitive

OpenwhiskIBM Cloudant

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Cognitive

Skylinkhttps://github.com/IBM-Bluemix/skylink

OpenwhiskIBM Cloudant

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Real-time Datastream OpenwhiskIBM Message Hub IBM Cloudant

Event processing/Message Hub

Bluemix-managed Apache Kafka service for real-time build outs of data pipelines and streaming apps

What is OpenWhisk good for?

supports binary dataNew

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Real-time Datastream OpenwhiskIBM Message Hub IBM Cloudant

Event processing via IBM App Connect

IBM App Connect

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Watson IoT Realtime Insights

Trigger events based on IoT sensor data

What is OpenWhisk good for?

IOT

Device

1Weather Update Trigger

Watson IOT Platform

Realtime Insights rules 2 3

4 Trigger an Action

OpenWhisk

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat is Serverless good for?

Abilisensehttps://www.abilisense.com/

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskAbilisense High Level Architecture

AbilisenseOpenwhisk

Compose for MangoDB

IBM Weather Channel

IOTIBM Watson IOT

Platform

Object Storage

SoundProcessing

Machine Learning

Notifications

sFTP/FA

SP

MQTT

HTTP

REST

Abilisense

MQTT

Smart Cities

REST

12a

2b3 4

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Assumptions

Home Devices 1,000 Un.

Avg. Sound File Size 1 MB

Avg. Number of Sound Readings 10 Monthly

IoT Reading Frequency 1 Hourly

IoT Recording Data Size 2 KB

Weather Data Reading Frequency 1 Hourly

Weather Data Reading Size 2 KB

Weather Data Total Capability 1.41 MB

AbilisenseAssumptions

Runtime Action per Millisecond 5

Memory MB 512

Number of Executions 5,000,000.00

Monthly Cost 14,45 US$

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

IoT Node-Red

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Scheduled tasks

Periodic Alarm Openwhisk

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

ChatbotsIBM API Gateway

(Optional)

API

What is OpenWhisk good for?

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhiskWhat do our customers do with OpenWhisk?

Customers and Partners

Clie

nts

Part

ners

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Commercial offering home: bluemix.net/openwhisk

Open-source offering home: openwhisk.org

Slack: slack.openwhisk.org

Additional resources

Learn more

© 2017 IBM Corporation l Interconnect 2017

IBM Bluemix OpenWhisk

Github github.com/openwhisk

Twitter twitter.com/openwhisk

Medium medium.com/openwhisk

Slideshare slideshare.net/OpenWhisk

Youtube youtube.com/channel/UCbzgShnQk8F43NKsvEYA1SA

Learn more

Additional resources

top related