Slide 1

Slide 1 text

1 1 Providing Services to Cloud Native Platforms with the

Slide 2

Slide 2 text

Alex Ley Product Manager Pivotal Cloud Foundry OSBAPI PMC Chair @alexevade 2 Intro

Slide 3

Slide 3 text

Outcomes • Understand problems developers face today accessing services • Learnt what the Open Service Broker API is and it’s history • How to offer services to CF & K8s • Hackathon Ideas • Know how to get involved 3

Slide 4

Slide 4 text

4 What is the problem for developers? @alexevade

Slide 5

Slide 5 text

5 @alexevade

Slide 6

Slide 6 text

6 @alexevade

Slide 7

Slide 7 text

7 @alexevade

Slide 8

Slide 8 text

8 @alexevade

Slide 9

Slide 9 text

9 @alexevade

Slide 10

Slide 10 text

10 @alexevade

Slide 11

Slide 11 text

11 @alexevade

Slide 12

Slide 12 text

12 @alexevade

Slide 13

Slide 13 text

13 @alexevade

Slide 14

Slide 14 text

14 @alexevade

Slide 15

Slide 15 text

15 @alexevade

Slide 16

Slide 16 text

16 @alexevade

Slide 17

Slide 17 text

17 Often this takes MONTHS @alexevade

Slide 18

Slide 18 text

18 @alexevade

Slide 19

Slide 19 text

19 @alexevade

Slide 20

Slide 20 text

20 @alexevade

Slide 21

Slide 21 text

21 What is a service broker? • Provides a standardized API to externalize management of services from Cloud Application Platforms • Automates the lifecycle of a service including credential management https://docs.cloudfoundry.org/services/api.html @alexevade

Slide 22

Slide 22 text

22 Broker API Endpoints • /v2/catalog (GET) • /v2/service_instances/:id (PUT/PATCH/DELETE) • /v2/service_instances/:id/service_bindings/:id (PUT/DELETE) • /v2/service_instances/:id/last_operation (GET) • All are authenticated with basic auth @alexevade

Slide 23

Slide 23 text

23 Broker API Endpoints https://github.com/openservicebrokerapi/ servicebroker/blob/v2.13/spec.md @alexevade

Slide 24

Slide 24 text

24 What is OSBAPI? • It’s a specification… • Implemented by platforms that want to offer easy access to services • Implemented by service providers that want to offer managed services to platforms • It’s not about how the service is deployed @alexevade

Slide 25

Slide 25 text

25 Advertise a Service Catalog Service Broker Get catalog Return services & plans Cloud Platform @alexevade

Slide 26

Slide 26 text

26 Create a Service Cloud Platform Service Broker Service Instance @alexevade

Slide 27

Slide 27 text

27 Bind a Service username : admin password : secret Cloud Platform Service Binding Service Instance

Slide 28

Slide 28 text

28 Service Broker Using a Service username : admin password : secret Service Binding Info Service Instance App running on platform @alexevade

Slide 29

Slide 29 text

29 Service Broker API v2 @alexevade

Slide 30

Slide 30 text

30 @alexevade

Slide 31

Slide 31 text

31 @alexevade

Slide 32

Slide 32 text

32 Service Broker API v2 @alexevade

Slide 33

Slide 33 text

33 “By standardizing the industry on the Open Service Broker API, we can build a foundation for an ecosystem that transcends a single community” Abby Kearns Executive Director - Cloud Foundry @alexevade

Slide 34

Slide 34 text

34 @alexevade

Slide 35

Slide 35 text

35

Slide 36

Slide 36 text

36 @alexevade

Slide 37

Slide 37 text

37

Slide 38

Slide 38 text

38

Slide 39

Slide 39 text

39 @alexevade

Slide 40

Slide 40 text

40 Service Broker Kubernetes Service Catalog (alpha) Cloud Foundry K8s Pod CF App @alexevade

Slide 41

Slide 41 text

41 Service Broker Cloud Foundry K8s Pod CF App Kubernetes Service Catalog (alpha) @alexevade

Slide 42

Slide 42 text

Providing a service 42 via OSBAPI

Slide 43

Slide 43 text

43 Service plans •What is the service? •What does a user get? •How much does it cost? •What extra inputs can users send? @alexevade

Slide 44

Slide 44 text

44 Types of services •Vanilla Service Broker - Databases, APIs, etc! •Route Services - Security, API Management •Volume Services - Specialist Disk & Storage @alexevade

Slide 45

Slide 45 text

45 Create a Service Broker •Implement a service broker that conforms the the Service Broker API v2 Specification •Simple interface for developers •Choose synchronous or async provisioning @alexevade

Slide 46

Slide 46 text

46 Hackathon Ideas 46

Slide 47

Slide 47 text

47 Create New Services @alexevade

Slide 48

Slide 48 text

48 Build a Service Broker Spring Cloud Service Broker Framework https://github.com/spring-cloud/spring-cloud-cloudfoundry-service-broker BrokerAPI: Golang Service Broker Framework https://github.com/pivotal-cf/brokerapi On-Demand Services SDK https://github.com/pivotal-cf/on-demand-service-broker-release @alexevade

Slide 49

Slide 49 text

49 Example Service Brokers https://github.com/openservicebrokerapi/servicebroker/blob/ v2.13/gettingStarted.md Ruby Example Broker https://github.com/cloudfoundry-samples/github-service-broker-ruby Spring Mongo DB Broker https://github.com/spring-cloud-samples/cloudfoundry-service-broker Golang Example Broker https://github.com/avade/cf-example-broker/ @alexevade

Slide 50

Slide 50 text

50 Create Enhanced Services User Experiences @alexevade

Slide 51

Slide 51 text

51 "plans": [{ "schemas": { "service_instance": { "create": , "update": , }, "service_binding": { "create": } } }] http://json-schema.org/draft-04 Featured in v2.13 of the specification Configuration Schemas @alexevade

Slide 52

Slide 52 text

52 Create Tools @alexevade

Slide 53

Slide 53 text

53 https://github.com/Haishi2016/osb-checker @alexevade

Slide 54

Slide 54 text

54 New & Enhanced Endpoints •Enhance the API to do something new and cool! •Build a broker to show this off! @alexevade

Slide 55

Slide 55 text

55 Create Multi Platform Integrations @alexevade

Slide 56

Slide 56 text

Cloud Foundry 56 Istio Service Broker Kubernetes K8s Pod 56 CF App Istio Control Plane Expose services via the Istio broker @alexevade

Slide 57

Slide 57 text

57 How can I get involved with the OSBAPI community? @alexevade

Slide 58

Slide 58 text

58 Get involved • Community interests on our weekly call (Tuesdays 9:30am PST)
 https://github.com/openservicebrokerapi/servicebroker/wiki/Weekly-Call
 • GitHub (includes Getting Started page)
 https://github.com/openservicebrokerapi/servicebroker
 • Slack / Google Group
 http://slack.openservicebrokerapi.org
 https://groups.google.com/forum/#!forum/open-service-broker-api @alexevade

Slide 59

Slide 59 text

Questions? 59 @alexevade