Slide 1

Slide 1 text

IBM and Business Partner Use Only l Fast Start 2018 @thomasj James Thomas
 Developer Advocate, IBM ☁ Serverless Backends and APIs with
 Swift and Apache OpenWhisk © 2017 IBM Corporation l Interconnect 2017

Slide 2

Slide 2 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Introduction 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is Apache OpenWhisk & IBM Cloud Functions? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop

Slide 3

Slide 3 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Agenda 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is IBM Cloud Functions fka OpenWhisk? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop

Slide 4

Slide 4 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions What is serverless aka FaaS? Runs code only on-demand on a per-request basis Serverless deployment & operations model VM No servers Just code

Slide 5

Slide 5 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions What is serverless aka FaaS? Runs code only on-demand on a per-request basis

Slide 6

Slide 6 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions What is serverless aka FaaS? Runs code only on-demand on a per-request basis Scales on a per-request basis

Slide 7

Slide 7 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions What is serverless aka FaaS? Runs code only on-demand on a per-request basis Optimal utilization & granular pricing zz z time charged

Slide 8

Slide 8 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Agenda 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is IBM Cloud Functions fka OpenWhisk? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop

Slide 9

Slide 9 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Why is serverless better than a traditional approach? CF Container VM Application Process and Idle 2 Requests 1a Polling 1b Worry about scaling • When to scale? (mem-, cpu-, response time-, etc. driven?) • How fast can you scale? Worry about resiliency & cost • At least 2 processes for HA • Keep them running & healthy • Deployment in multiple regions Charged even when idling / not 100% utilized Continuous polling due to missing event programming model Traditional model Process and Idle

Slide 10

Slide 10 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Trigger 1 OpenWhisk Engine 2 Pool of Actions Js Swift Java Python Docker Running Action Running Action Running Action 3 Scales inherently • One process per request No cost overhead for resiliency • No long running process to be made HA / multi-region Introduces event programming model Charges only for what is used • Only worry about code
 higher dev velocity, lower operational costs Serverless model Deploy actions within millisecs, run it, free up resources Why is serverless better than a traditional approach?

Slide 11

Slide 11 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is Apache OpenWhisk & IBM Cloud Functions? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop Agenda

Slide 12

Slide 12 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions What is Apache OpenWhisk & IBM Cloud Fns? FaaS platform to execute code in response to events

Slide 13

Slide 13 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Delivered as
 open-source via Apache openwhisk.org FaaS platform to execute code in response to events What is Apache OpenWhisk & IBM Cloud Fns?

Slide 14

Slide 14 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Managed service on
 IBM Cloud bluemix.net/openwhisk FaaS platform to execute code in response to events What is Apache OpenWhisk & IBM Cloud Fns?

Slide 15

Slide 15 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Supported Languages JS/NodeJS Swift Python Java Docker Go Haskell Scala . . . Multi- language Support Community Efforts … and more to come JS/NodeJS 8 Java Python 3 Swift 3 Docker / Binary Go … Scala What is Apache OpenWhisk & IBM Cloud Fns? PHP Rust Haskell

Slide 16

Slide 16 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Non-blocking Blocking Periodic Support for different invocation models What is Apache OpenWhisk & IBM Cloud Fns?

Slide 17

Slide 17 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Event Provider Open event emitter (consumer ecosystem) Open interface
 for event emitters What is Apache OpenWhisk & IBM Cloud Fns?

Slide 18

Slide 18 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Event Provider Periodic IBM Cloudant Message Hub Mobile Push Github IBM App Connect What is Apache OpenWhisk & IBM Cloud Fns?

Slide 19

Slide 19 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Supports higher-level programming constructs Chaining/ Sequencing Action 1 Action 2 Parameter Binding Default Name Default Parameters Default Value What is Apache OpenWhisk & IBM Cloud Fns?

Slide 20

Slide 20 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Memory allocated (MB) Time executing (milliseconds) Instances executing simultaneously (count) Pricing model Time an action was running * memory allocated to action $0.000017 per GBs Free tier: 400000 GBs per month What is Apache OpenWhisk & IBM Cloud Fns?

Slide 21

Slide 21 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Agenda 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is IBM Cloud Functions fka OpenWhisk? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop

Slide 22

Slide 22 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions How does IBM Cloud Functions fit into our cloud ecosystem? Bare Metal Virtual Server 
 or VMware Container IBM Cloud Functions Cloud Foundry Performance & Control Speed Language/
 Framework “Serverless” / “Event Driven” Apps Open PaaS Environment Maximum Performance & Control Maximum Portability Portability Leverage Existing Images & Tools IBM Cloud Container Service | IBM Confidential | ©2017 IBM Corporation

Slide 23

Slide 23 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Agenda 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is IBM Cloud Functions fka OpenWhisk? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is serverless good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop

Slide 24

Slide 24 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Volatile and/or event-driven workload that can be split in smaller short-running pieces. Suited for sporadic as well as heavy load scenarios. What is serverless good for?

Slide 25

Slide 25 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions API Gateway support Allows to map API endpoints 
 to IBM Cloud Functions actions Serverless microservice APIs/backend Available for free, without limits Define Actions: getCostumer createCostumer
 deleteCostumer Define API Endpoints (URLs) and map to Actions Get: mydomain.com/…/customers Post: mydomain.com/…/customers
 Delete: mydomain.com/…/customers 1 2 What is serverless good for?

Slide 26

Slide 26 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions getCostumer createCostumer
 deleteCostumer Easy to add and edit: Security (API key, API secret, OAuth validation, CORS) Rate-Limiting Map 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 serverless good for?

Slide 27

Slide 27 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Swift Action IBM API Gateway Openwhisk API Hi! Outsource compute-intensive tasks to a powerful & scalable serverless platform and implement your actions even without changing the programming language. Swift Action Mobile backend What is serverless good for?

Slide 28

Slide 28 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Data processing Openwhisk IBM Cloudant What is IBM Cloud Functions good for?

Slide 29

Slide 29 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Data processing Openwhisk IBM Cloudant Ideally suited for working with multimedia data like audio, image and video data: Audio normalization Image rotation, sharpening, noise reduction or Thumbnail generation Image OCR’ing Video transcoding What is IBM Cloud Functions good for?

Slide 30

Slide 30 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Cognitive Openwhisk IBM Cloudant What is IBM Cloud Functions good for?

Slide 31

Slide 31 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Real-time Datastream Openwhisk IBM Message Hub IBM Cloudant Event processing/ Message Hub Managed Apache Kafka service for real- time build outs of data pipelines and streaming apps supports binary data What is IBM Cloud Functions good for?

Slide 32

Slide 32 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Watson IoT Realtime Insights Trigger events based on IoT sensor data IOT Device 1 Weather Update Trigger Watson IOT Platform Realtime Insights rules 2 3 4 Trigger an Action IBM Cloud Functions What is IBM Cloud Functions good for?

Slide 33

Slide 33 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is IBM Cloud Functions fka OpenWhisk? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop Agenda

Slide 34

Slide 34 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Other serverless platforms… Competitors Apache OpenWhisk is the only platform to support Swift natively

Slide 35

Slide 35 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Agenda 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is IBM Cloud Functions fka OpenWhisk? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop

Slide 36

Slide 36 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Commercial offering home: bluemix.net/openwhisk Open-source offering home: openwhisk.org Slack: slack.openwhisk.org Additional material Learn more

Slide 37

Slide 37 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Github github.com/openwhisk Twitter twitter.com/openwhisk Medium medium.com/openwhisk Slideshare slideshare.net/OpenWhisk Youtube youtube.com/channel/ UCbzgShnQk8F43NKsvEYA1SA Learn more Learn more

Slide 38

Slide 38 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Agenda 1. What is serverless aka FaaS? 2. Why is serverless better than a traditional approach? 3. What is IBM Cloud Functions fka OpenWhisk? 4. How does IBM Cloud Functions fit into our cloud ecosystem? 5. What is IBM Cloud Functions good for? 6. Who are our competitors? 7. Additional material 8. Hands-on workshop

Slide 39

Slide 39 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions What you will learn Hands-on workshop 1. Setting up development environment 2. Basic concepts: Actions, Triggers, Rules, Packages 3. How to work with the IBM Cloud Functions CLI 4. How to work with the IBM Cloud Functions UI 5. Connecting actions to event sources. 6. Exposing actions as APIs using API Gateway. 7. How to work with additional tools
 … Serverless Framework 8. Building a Weather bot for Slack

Slide 40

Slide 40 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Time to get started… Let’s go! Hands-on workshop

Slide 41

Slide 41 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Important links Hands-on workshop Workshop materials:
 http://bit.ly/serverless-swift Follow Swift code examples

Slide 42

Slide 42 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions Coming soon… Hands-on workshop Swift 4 + Codable support!

Slide 43

Slide 43 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions

Slide 44

Slide 44 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions

Slide 45

Slide 45 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions More info… Hands-on workshop Try this out today…
 https://github.com/apache/ incubator-openwhisk-runtime-swift

Slide 46

Slide 46 text

IBM and Business Partner Use Only l Fast Start 2018 IBM Cloud Functions In case you want to follow or reach out… Mail: [email protected] Twitter: @thomasj Slack: http://openwhisk.incubator.apache.org/slack.html Hands-on workshop