Cloud native and microservices architecture · 2019-06-06 · Cloud native and microservices...

Preview:

Citation preview

Cloud native and microservices architecture

1

Andrzej KowalczykSenior Solutions Architect

THE CHANGING WORLD OF APPLICATIONS

3

“ By 2027, more than 75% of the S&P 500

will be companies that we have not heard of yet. ”

Professor Richard Foster, Yale University

Image source: https://www.flickr.com/photos/onurturkcu/4826048220/

4

INNOVATION PREVAILS

Source: Yahoo Finance (*Peak Market Value 2006)

MICROSERVICES ARCHITECTURE

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Application Server

HTML Javascript Web

ServiceServiceService

Service Service Service

Data Access

Runtime

Service

Runtime

Service

MICROSERVICES ARCHITECTURE

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Runtime

Service

Application Server

HTML Javascript Web

ServiceServiceService

Service Service Service

Data Access

DISTRIBUTED

Runtime

Service

Runtime

Service

DISTRIBUTED ARCHITECTURE

Service ServiceService

Service ServiceService

Service ServiceService

1. The network is reliable2. Latency is zero3. Bandwidth is infinite4. The network is secure5. Topology doesn't change6. There is one administrator7. Transport cost is zero8. The network is homogeneous

EIGHT FALLACIES OF DISTRIBUTED COMPUTING

Source: https://en.wikipedia.org/wiki/Fallacies_of_distributed_computingPhoto: Icon made by Freepik from www.flaticon.com

DEPLOYMENT

ServiceContainer

INFRASTRUCTURE

ServiceContainer

ServiceContainer

Virtual

Cloud

Physical

source code

binarypackage

containerimage

BUILD ONCE, DEPLOY ANYWHERE

CONFIGURATION

Spring CloudConfig Server

Service

Config

Service

Config

Service

Config

INFRASTRUCTURE

SERVICE DISCOVERY

Service

Spring CloudConfig Server Netflix Eureka

Netflix Ribbon Config

Service

Config

Service

Config

Svc Discovery Svc Discovery Svc Discovery

INFRASTRUCTURE

DYNAMIC ROUTING

Spring CloudConfig Server

Service

Netflix EurekaNetflix Ribbon Config

Service

Config

Service

Config

Svc Discovery Svc Discovery Svc Discovery

Routing Routing Routing

Netflix ZuulServer

INFRASTRUCTURE

DYNAMIC ROUTING

Spring CloudConfig Server

Service

Netflix EurekaNetflix Ribbon Config

Service

Config

Service

Config

Svc Discovery Svc Discovery Svc Discovery

Routing Routing Routing

Netflix ZuulServer

INFRASTRUCTURE

TRACING AND VISIBILITY

Spring CloudConfig Server

Service

Netflix EurekaNetflix Ribbon Config

Service

Config

Service

Config

Svc Discovery Svc Discovery Svc Discovery

Routing Routing Routing

Netflix ZuulServer

Circuit Breaker Circuit Breaker Circuit Breaker

Tracing Tracing TracingZipKin Server

INFRASTRUCTURE

WHAT ABOUT…?

POLYGLOT APPS

EXISTING APPS

THERE SHOULD BE A BETTER WAY

ADDRESS THE COMPLEXITY IN THE INFRASTRUCTURE

POD

SERVICECONTAINER

POD

SERVICECONTAINER

POD

SERVICECONTAINER

KUBERNETES

AUTOMATING CONTAINER DEPLOYMENT

INFRASTRUCTURE

BUILD AND DEPLOY CLOUD-NATIVE APPS WITH RED HAT OPENSHIFT

Service

CONTAINER

Service

CONTAINER

Service

CONTAINER

ANYINFRASTRUCTURE

OpenShift Container Platform(Enterprise Kubernetes)

Amazon Web Services Microsoft Azure Google CloudOpenStackDatacenterLaptop

ANYAPPLICATION

Service

CONTAINER

Service

CONTAINER

Service Discovery

Config Mgmt

Build Automation

Deploy Automation

Monitoring

Log Mgmt

Security

CI/CD Pipelines

Self-Service

Multi-language

Automation

Collaboration

Seamless

Standards-based

Web-scale

Open Source

Enterprise Grade

Secure

CRITICAL FEATURES FOR BOTH DEV AND OPS

23

RED HAT OPENSHIFT CONTAINER PLATFORMTransform development and operations

Deploy & manage container b/ apps

Seamless across hybrid clouds

Automated and scalable

Shift to a containerized, DevOps deployment model

Consistency across environments

Key microservices enabler

25

PRIVATE CLOUD

IMPLEMENT HYBRID INTEGRATION PLATFORM Single platform and toolchain across cloud environments provides consistency and flexibility for current and future deployments

Deploy on-premisePUBLIC CLOUD

Deploy on public cloud providerMANAGED CLOUD

Deployed and managed by Red Hat

26

NATIVE SUPPORT FOR YOUR PIPELINE

Continuous integration &

testing

Continuous delivery &

deployment

Continuous operations

Build

Test

Release Operate

Deploy Monitor

Continuous assessment

Continuous assessment

SERVICE MESHA dedicated network for

service-to-service communications

Photo on Visual Hunt

MICROSERVICES EVOLUTION

Service

Config

Svc Discovery

Routing

Circuit Breaker

Tracing

Service

Platform Container Platform (+ Service Mesh)

...2014 2018

POD

ENVOY

SERVICE

POD

ENVOY

SERVICE

POD

ENVOY

SERVICE

Pilot Mixer Auth

SERVICE MESH ARCHITECTURE

Applies security, route rules, policies and reports traffic telemetry at the pod level

Jaeger

FAULT TOLERANCE

SERVICEA

SERVICEB

CIRCUIT BREAKERS WITHOUT ISTIO

SERVICECCB CB

coupled to the service code

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

CIRCUIT BREAKERS WITH ISTIO

transparent to the services

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

CIRCUIT BREAKERS WITH ISTIO

improved response time with global circuit status

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

TIMEOUTS AND RETRIES WITH ISTIO

configure timeouts and retries, transparent to the services

timeout: 10 secretry: 5

timeout: 15 secretry: 5

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

RATE LIMITING WITH ISTIO

limit invocation rates, transparent to the services

max 500 concurrent reqs

max 100 connections

SERVICE SECURITY

SERVICEA

SERVICEB

SECURE COMMUNICATION WITHOUT ISTIO

SERVICECTLS TLS TLS TLS

coupled to the service code

SECURE COMMUNICATION WITH ISTIO

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

mutual TLS authentication, transparent to the services

TLS TLS

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

CONTROL SERVICE ACCESS WITH ISTIO

control the service access flow, transparent to the services

CHAOS ENGINEERING

CHAOS ENGINEERING WITHOUT ISTIO

SERVICEA

SERVICEB

SERVICEC

Netflix Chaos Monkeys

Netflix Spinnaker

randomtermination

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

CHAOS ENGINEERING WITH ISTIO

inject delays, transparent to the services

10 sec delay in 10% of requests

inject protocol-specific errors, transparent to the services

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

CHAOS ENGINEERING WITH ISTIO

HTTP 400in 5% of requests

DYNAMIC ROUTING

GatewayServiceSERVICE

A

SERVICEB:1

DYNAMIC ROUTING WITHOUT ISTIO

SERVICEB:2

Netflix ZuulServer

custom code to enable dynamic routing

POD

SERVICEA

ENVOY

POD

SERVICEB:v2

ENVOY

CANARY DEPLOYMENT WITH ISTIO

POD

SERVICEB:v1

ENVOY

boston employee

everyone

POD

SERVICEA

ENVOY

POD

SERVICEB:v2

ENVOY

A/B DEPLOYMENT WITH ISTIO

POD

SERVICEB:v1

ENVOY

50% traffic

50% traffic

POD

SERVICEA

ENVOY

POD

SERVICEB:v2

ENVOY

DARK LAUNCHES WITH ISTIO

POD

SERVICEB:v1

ENVOY

100% traffic

mirror traffic

DISTRIBUTED TRACING

SERVICEA

SERVICEB

SERVICEC

DISTRIBUTED TRACING WITHOUT ISTIO

Spring SleuthZipKin

Spring SleuthZipKin

Spring SleuthZipKin

code to enable dynamic tracing

POD

SERVICEA

ENVOY

POD

SERVICEB

ENVOY

POD

SERVICEC

ENVOY

DISTRIBUTED TRACING WITH ISTIO & JAEGER

discovers service relationships and process times, transparent to the services

SERVICE A SERVICE B SERVICE C210 ms 720 ms

930 ms

DISTRIBUTED SERVICES PLATFORM

ANYINFRASTRUCTURE

OpenShift Container Platform(Enterprise Kubernetes)

Amazon Web Services Microsoft Azure Google CloudOpenStackDatacenterLaptop

OpenShift Service Mesh(Istio + Jaeger)

ANYAPPLICATION

Service

CONTAINER

Service

CONTAINER

Service

CONTAINER

Service

CONTAINER

Service

CONTAINER

CUSTOMER EXAMPLES

FINANCIAL SERVICES: UNITED KINGDOM

SOLUTION:

SUCCESS:“We need to deliver products to market quicker than ever and be more responsive to market trends. We want to become the bank of the future.”

SIMON CASHMORE, HEAD OF PAAS MIDDLEWARE ENGINEERING, BARCLAYS

● With its new DevOps approach and aPaaS environment, Barclays’ developers can work more efficiently to quickly release updates and features.

● Self-service capabilities have cut provisioning times from weeks to hours and freed up IT staff to work on new, valuable projects instead of routine tasks

Red Hat 2017 Innovation Award Winner

Red Hat OpenShift Container PlatformRed Hat 3scale API Management PlatformRed Hat JBoss Enterprise Application Platform

Red Hat JBoss FuseRed Hat Gluster StorageRed Hat OpenShift Dedicated

TRANSPORTATION/EMEA

SOLUTIONMigrated several of its IT systems to the cloud to become more flexible, secure, and efficient.

WHY RED HATWanted to select open source software that was backed by support from a trusted vendor. Created API foundation for seamless handoff between the airport and its partners.

RESULTS● Achieved quick development and deployment ● Gained support for more agile processes through self service capabilities ● Made flight, baggage, reservation, and other data available throughout the airport

and to all partners

CHALLENGETo become best digital airport and improve passenger experience

PRODUCTS & SERVICES

Source: Red Hat case study, Amsterdam Airport Schiphol builds agile cloud with Red Hat, August, 2017.

Launched a new cloud platform in

10 days and cut development time for new services and APIs

by

50% Red Hat SatelliteRed Hat Consulting

Red Hat 3scale API Management

RED HAT 3scale API MANAGEMENT PLATFORMEnabling API first

API visibility & control enterprise wide

Security, rate limits, analytics, API keys,

developer portal

Manage internal and external APIs

Transform internal IT into “API first” approach

Empower teams to deliver their own APIs

Provide global visibility and a uniform approach

GARTNER API MANAGEMENT MQ

Gartner recognized Red Hat as a LEADER in the Magic Quadrant for Full Life Cycle API Management, Apr 2018

AWARD WINNING INNOVATIONS

❏ Leader in Gartner Magic Quadrant for Full Lifecycle API Management (2016, 2018)

❏ CODiE 2017 SIIA award: Best API Management Platform

❏ 2017 API World award: Best API Management Platform

CONFIDENTIAL Designator

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHat

61

Red Hat is the world’s leading provider of enterprise

open source software solutions. Award-winning

support, training, and consulting services make Red

Hat a trusted adviser to the Fortune 500.

Thank you

Recommended