83
Introduction to the Oracle Cloud Microservices Platform open, manageable, polyglot and scalable On what would be and still can be… Introduction to the Oracle Cloud Microservices Platform 1 Lucas Jellema, CTO of AMIS nlOUG TechExperience 2018, Amersfoort, The Netherlands

On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

  • Upload
    vunhu

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud MicroservicesPlatform

open, manageable, polyglot and scalable

On what would be and still can be…

Introduction to the Oracle Cloud Microservices Platform 1

Lucas Jellema, CTO of AMIS

nlOUG TechExperience 2018, Amersfoort, The Netherlands

Page 2: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Lucas Jellema

Architect / Developer

1994 started in IT at Oracle

2002 joined AMIS

Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 2

Page 3: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

How do we implement microservices?

• And how we make the containers horizontally scalable

Introduction to the Oracle Cloud Microservices Platform 3

How do we get

from a Monolith

to Microservices?

Page 4: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Why?What?

How?

Introduction to the Oracle Cloud Microservices Platform 4

Page 5: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

What is IT all about?

Application

Production Runtime

Page 6: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

What is IT all about?

Application

Production Runtime

Platform

Introduction to the Oracle Cloud Microservices Platform 6

Page 7: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Objectives

• Business Agility

• In functionality: quick, cheap, effortless and risk free

• IT Agility

• In non-functionality: scale, resilience, infrastructure & location

• Real working applications with rapid relevant evolution that run reliably

Introduction to the Oracle Cloud Microservices Platform 7

Page 8: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

What is IT all about?

Application

Platform

Production Runtime

Operations

Monitoring &

Management

PlatformPlatform

Introduction to the Oracle Cloud Microservices Platform 8

Page 9: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Production Runtime is the Result of Preparation Runtime

Application

Platform

Production Runtime

Operations

Monitoring &

ManagementApplication

Preparation Runtime

Platform

Development

CD

Agile Design,

Build, Test

Introduction to the Oracle Cloud Microservices Platform 9

Page 10: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

What?

Introduction to the Oracle Cloud Microservices Platform 10

Page 11: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

One team has Agile responsibility through full lifecyle

Application

Platform

Production Runtime

Operations

Monitoring &

ManagementApplication

Preparation Runtime

Platform

Development

CD

Agile Design,

Build, Test

Introduction to the Oracle Cloud Microservices Platform 11

Page 12: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

One team has Agile responsibility through full lifecyle

Application

Platform

Production Runtime

Operations

Monitoring &

ManagementApplication

Preparation Runtime

Platform

Development

CD

Agile Design,

Build, Test

Introduction to the Oracle Cloud Microservices Platform 12

Page 13: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

One team has Agile responsibility through full lifecyle

Application

Platform

Application

Platform

Introduction to the Oracle Cloud Microservices Platform 13

Page 14: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

DevOps team owns and runs one (or more) products

Application

Platform

Generic Infrastructure Platform for running DevOps Products

Floorspace, Power,

Cooling, Storage,

Compute

Monitoring, Management,

Cache, Authentication,

RDBMS, Event HubIntroduction to the Oracle Cloud Microservices Platform 14

Page 15: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Multiple products from multiple teams run on a shared generic infrastructure

Generic Infrastructure Platform for running DevOps Products

Floorspace, Power,

Cooling, Storage,

Compute

Monitoring, Management,

Cache, Authentication,

RDBMS, Event Hub

Application

Platform

Application

Platform

Application

Platform

Application

Platform

Application

Platform

Introduction to the Oracle Cloud Microservices Platform 15

Page 16: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

(Application plus platform)under DevOps ==

Generic Infrastructure Platform for running DevOps Products

µ µ µ µ µ

Microservice

Introduction to the Oracle Cloud Microservices Platform 16

Page 17: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

What?

• Realistic approach (technology, people, process) => Something that works!

• No dependency on individuals

• Able to scale in rate of change

• Small, well: comprehensible, manageable

• Stand alone /isolated/encapsulated (in terms of change, release/deploy,

scale, location, implementation technology)

• Provide clear and meaningful functionality in a way that it can be consumed

• One microservice does not completely fall over when other microservices

break (or are redeployed)

• Able to scale elastically & horizontally and relocate easily

Introduction to the Oracle Cloud Microservices Platform 17

Page 18: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

How?

Introduction to the Oracle Cloud Microservices Platform 18

Page 19: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

How microservices

• One team owns the microservice and can do functional and technical

evolution and deployment continuously and independently

• The business ownership is clearly defined

Introduction to the Oracle Cloud Microservices Platform 19

Application

Platform

Page 20: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

THE MICROSERVICE

API

HTTP REST/JSON

Page 21: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

How microservices: design & implement

• Business & Team ownership of application and associated platform

• Automated CD – including regression test

• Open (standards, protocols) on the outside,

whatever you like inside

• Deployable on enterprise standardized microservices platform

• API & Event

• Standard protocols for interaction

• Horizontally scalable: multiple parallel instances

• Stateless instances – horizontally scalable up & down,

can handle fail over & restart

• Private Bounded (Data) Context

• Including derived data from other domains

Introduction to the Oracle Cloud Microservices Platform 21

Page 22: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 22

Page 23: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Microservices State

Cache

RDBMSDocument

StoreNoSQL

Generic Platform for running microservices

Event Hub

Big Data

Block

Storage

LDAP

Introduction to the Oracle Cloud Microservices Platform 23

Page 24: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Bounded context in microservices

• A micoservice needs to be able to run independently

• It needs to contain & own all data required to run

• It cannot depend on other microservices

API

Customer

APIUI

OrderCustomerModified event

Introduction to the Oracle Cloud Microservices Platform 24

Page 25: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Order Microservice

Demo – Maintaining Derived Data in Bounded Context

Introduction to the Oracle Cloud Microservices Platform 25

Application

Container

Customer Microservice

Customers

Topic

Event Hub

Application

Container

DBaaS

Page 26: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Microservices based Webshop

µ Customers µ Orders µ Products µ Loyalty µ Financeµ Logistics

Web Shop Portalµ

Customersµ Orders µ Products µ Loyalty µ Finance

Introduction to the Oracle Cloud Microservices Platform 26

Page 27: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

API Portal

Web Shop Portalµ

Customersµ Orders µ Products µ Loyalty µ Finance

API PlatformBackoffice

UI

Event Hub

Event

Schema

Registry

λ

Introduction to the Oracle Cloud Microservices Platform 27

Page 28: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Event

Monitor

…. Event-(First) Driven

Order

Products

Logistics

Shop

Customers

Loyalty Program Finance

Event Hub

Topic X Topic Y Topic Z Topic Q

• Order Payment

Received

• Customer Frozen• Product Stock

Update

• Shipping News

• Order Create

• Order Cancelled

• Customer Loyalty

Status Change

• Product Update

• Product added

to Shopping Cart

• New Customer

• Customer Profile Changed

• Customer Sign In

Introduction to the Oracle Cloud Microservices Platform 28

Page 29: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

How?

Run & Operate

Introduction to the Oracle Cloud Microservices Platform 29

Page 30: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Run & Operate Microservices

• Rapid rollout

• Including scale out & recover

• Non breaking upgrade & rollback

strategies (e.g. canary release)

• Agile infrastructure

• Relocate, independent of

infra specifics

• Health management

• Monitor and safeguard SLA requirements on response time, success

and availability

• Scale elastically

• TCO management

• DevOps: one team creates and runs

Introduction to the Oracle Cloud Microservices Platform 30

Generic Infrastructure Platform for running DevOps Products

µ µ µ µ µ

Page 31: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

The elephant in the room…

Introduction to the Oracle Cloud Microservices Platform 31

whale

Page 32: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Containers

• As vehicle for:

• Encapsulate

• Build

• Share & Ship

• Automated Tests

• Deploy

• Run

• Scale

• Relocate

• Standardize

Introduction to the Oracle Cloud Microservices Platform 32

Page 33: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 33

Compute

Node

Page 34: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 34

Compute

NodeCompute Node

Compute

Node

Page 35: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 35

Compute

NodeCompute Node

Compute

Node

Page 36: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 36

Compute

NodeCompute Node

Compute

Node

Page 37: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 37

Compute

NodeCompute Node

Compute

Node

Page 38: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 38

Compute

NodeCompute Node

Compute

Node

Cloud

StorageSAN

Page 39: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 39

Compute

NodeCompute Node

Compute

Node

Cloud

StorageSAN

Configuration

Map

Configuration

Map

Page 40: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 40

Compute

NodeCompute Node

Compute

Node

Page 41: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Compute

Node

Compute

Node

Compute

Node

Compute

Node

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 41

Compute Node

Page 42: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Compute

Node

Compute

Node

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 42

Compute Node

Page 43: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Compute

Node

Compute

Node

Looking for a runtime platform for

Introduction to the Oracle Cloud Microservices Platform 43

Compute Node

v2

v2

v2

v2

v2

Page 44: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 44

Page 45: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introducing Kubernetes

• Distributed Container Run Time Management platform

• Based on Google’s Borg system (in use at Google for over a decade)

• Initial announcement: 2014

• Kubernetes v1.0 was released on July 21, 2015

• A Kubernetes cluster typically spans multiple compute nodes

• Either in the cloud, on premises, on a single machine (minikube) or hybrid

• K8S manages Pods in which containers are running

• K8S schedules Pods on one or more nodes

• Docker can be the container runtime; other engines are supported as well,

such as rkt and containerd

• K8S handles network traffic to, between and from Pods

• The kubectl command line interface is used for most management activities

Introduction to the Oracle Cloud Microservices Platform 45

Page 46: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Cloud Native & Vendor Neutral

• Cloud Native Computing Foundation - CNCF

• Oracle is a platinum member since July 2017

• Cloud Native: container packaged, dynamically managed, microservices oriented

• Open technology for running container based workloads in a cross cloud vendor neutral

way

Introduction to the Oracle Cloud Microservices Platform 46

Page 47: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 47

Page 48: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 48

Page 49: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 49

Page 50: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Kubernetes & OKE Demo

Introduction to the Oracle Cloud Microservices Platform 50

Page 51: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Compute Node Compute Node

RequestCounter Microservice – V1

Introduction to the Oracle Cloud Microservices Platform

RequestCounter

http GET

counter

/

/health

/ready

/kill

51

Page 52: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Compute Node Compute Node

RequestCounter Microservice – V1

Introduction to the Oracle Cloud Microservices Platform

RequestCounter

http GET

countercounter

/

/health

/ready

/kill

52

Page 53: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Compute Node Compute Node

RequestCounter Microservice – V1

Introduction to the Oracle Cloud Microservices Platform

RequestCounter

http GET

countercounter

/

/health

/ready

/kill

counter=0

counter

53

Page 54: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Compute Node Compute Node

RequestCounter Microservice – V2

Introduction to the Oracle Cloud Microservices Platform

Cache

RequestCounter v2

http GET

counter

/

/health

/ready

/kill

54

Page 55: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 55

Page 56: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Automated Container [Build | Stock | Deliver] Pipelines

• Oracle Wercker

Introduction to the Oracle Cloud Microservices Platform 56

Page 57: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Wercker: Build, Test, Push and Deploy Pipelines for Containers

Introduction to the Oracle Cloud Microservices Platform 57

µµ

µ

Page 58: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Oracle Container Registry for Your Images

• After build and before run – container images need to be stored

• Secure (because runtime artefacts)

• Accessible (& low latency) to deployment engine and container runtime

• Scalable and Smart (no duplicate images and image layers)

Introduction to the Oracle Cloud Microservices Platform 58

Page 59: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 59

Page 60: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Microservice Runtime Platform - plus

Introduction to the Oracle Cloud Microservices Platform 60

Page 61: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 61

Page 62: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Istio – Service Mesh Operations

• Routing

• Access Control

• Whitelist/Blacklist

• Security

• TLS

• Resilience

• Rate Limiting & Circuit Breaker

• Monitoring

• Trace

• Service Graph

Introduction to the Oracle Cloud Microservices Platform 62

Page 63: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 63

Page 64: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Envoy Sidecar

Introduction to the Oracle Cloud Microservices Platform 64

Pod

Envoy Sidecar

http(s), tcp,gRPC

Metrics, trace, policy checks

Istio Pilot

Istio Mixer

Istio Auth

Page 65: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Istio Demo

Introduction to the Oracle Cloud Microservices Platform 65

Page 66: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 66

Page 67: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Istio – Bookinfo Demo

• 10% weight for routing to Reviews-v2

• Content based routing to Reviews-v3

for special user

• Denier/Blacklist on Details

Introduction to the Oracle Cloud Microservices Platform 67

Page 68: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 68

Page 69: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Introduction to the Oracle Cloud Microservices Platform 69

Page 70: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Zipkin Tracing

Introduction to the Oracle Cloud Microservices Platform 70

Page 71: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Prometheus

Introduction to the Oracle Cloud Microservices Platform 71

Page 72: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Grafana

Introduction to the Oracle Cloud Microservices Platform 72

Page 73: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Fluentd + Elastic Stack

Introduction to the Oracle Cloud Microservices Platform 73

Page 74: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Fluentd + Elastic Stack

Introduction to the Oracle Cloud Microservices Platform 74

Page 75: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Serverless

Introduction to the Oracle Cloud Microservices Platform 76

µ

Page 76: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Open Source ServerlessFunction Platform• Functions can be implemented in any

language

• Java, Go, PHP, JavaScript/Node,

Python, Ruby

• Functions run in their own container

• Functions can be accessed via HTTP calls

• Routing, load balancing, running is

taken care of by Fn Server platform

• Platform runs locally, on prem & in cloud

• Fn Flow orchestrates workflows across

multiple functions

• Workflow described in Java

• Includes business logic (conditional,

parallel execution, exceptions)

Introduction to the Oracle Cloud Microservices Platform 77

µ

Page 77: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Project Fn has announced support for

Introduction to the Oracle Cloud Microservices Platform 78

Page 78: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Managed Serverless Platform on Oracle Public Cloud

Introduction to the Oracle Cloud Microservices Platform 79

µ

Page 79: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Microservices Platform (Kubernetes & Istio) ++

• API Gateway

• Cache

• Event Hub

• Service Broker

• Chaos Monkey & Regression Testing

• Workflow

• Transactions (cross microservice)

• RDBMS, NoSQL, Data Lake(Big Data), Fast Data Ingestion

• Billing

• Notification

Introduction to the Oracle Cloud Microservices Platform 80

Microservices Platform

Storage

Page 80: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Oracle Container Native Microservices Architecture

Managed Kubernetes

Open Service BrokerEvent ManagementAPI Registry

Foo2

IST

IO

Dia

gn

ostics/M

on

ito

rin

g

IST

IO

Developer

Cloud

Prometheus

ISTIO

µ

CacheRDBMS

LDAP/IdM NoSQL

Billing

Engine

Block Storage

Voice

Recognition

Introduction to the Oracle Cloud Microservices Platform 81

Page 81: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Thank you

Dank je wel

• Blog: technology.amis.nl

• Email: [email protected]

• : @lucasjellema

• : lucas-jellema

• : www.amis.nl, [email protected]

Page 82: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Technologies

• Docker containers

• CD Pipelines (Wercker, Developer CS, Jenkins X)

• Kubernetes as deployment platform

• Distributed

• Rolling Upgrades

• Load Balancing & Networking

• Failover

• Elastic scaling

• Helm for predefined rollout

• Istio plus side cars

• Service Mesh

• Routing – policies, authorize, A/B, canary, throttle

• Metrics

• Circuitbreaker

• Prometheus – collect metricsIntroduction to the Oracle Cloud Microservices Platform 83

Page 83: On what would be and still can be… Introduction to the ... · Lucas Jellema Architect / Developer 1994 started in IT at Oracle 2002 joined AMIS Currently CTO & Solution Architect

Technologies (2)

• Grafana – Visualize metrics

• Vizceral – visualize traffic

• Kafka – events

• Elastic – logs??

• Redis – cache??

• API Gateway??

• Camunda/Conductor – workflow

• Fn - Serverless

Introduction to the Oracle Cloud Microservices Platform 84