APIs sind in den letzten 10 Jahren immer populärer geworden. Heute sehen wir den Einsatz von APIs in sehr vielen Bereichen unseres Lebens, wie z.B. in Connected Homes und Mobile Applications. Darüber hinaus sind sie Kernbestandteil der digitalen Transformation für viele Unternehmen, um Zugang zu den eigenen Daten und Geschäftsfunktionen zu ermöglichen. API Management wird hier zu einem wichtigen Werkzeug, um die Kontrolle zu behalten.
Aus der Ecke der verteilten Cloud-native Applikationen kommen nun Service Meshes ins Spiel, ein weiteres sehr interessantes Werkzeug zur Verwaltung von Netzwerken von (Micro)Services. Wir werfen einen Blick auf die wichtigsten Funktionen und Einsatzbereiche und stellen beide Ansätze gegenüber.
Service Mesh meets API Management - Verteilte Services gut im Griff!
1. Service Mesh vs. API
Management
Verteilte Services gut im Griff
Katja Weisheit
Holger Dietrich
Softwerkskammer
Chemnitz
Photo by Omar
Flores on Unsplash
2. 12/05/2020 Service Mesh meets API Management - Verteilte Services gut im Griff! 2
Holger Dietrich is CEO and
co-founder at pentacor
holger.dietrich@pentacor.de
Katja Weisheit is an IT architect
and API enthusiast at pentacor
katja.weisheit@pentacor.de
3. We love interactive sessions!
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
3
• Use Menti to participate! è https://www.menti.com/
• Submit your code: XXXXXX
• Raise questions directly!
• Discussion is always welcome!
• Your experience is always welcome!
6. Do Microservices really help us?
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
6
Photo by Alina Grubnyak on Unsplash
7. APIs show faster growth rate in 2019 than in
previous years
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
7
Source: https://www.programmableweb.com/news/apis-show-faster-growth-rate-2019-previous-years/research/2019/07/17
8. After the session you will have the
answers to the following questions?
• What is a Service Mesh and how does it
help to address challenges in distributed
architectures?
• Why do I need APIs and what is API
Management used for?
• What do I need to manage services?
Service Meshes, API Management or
both?
12/05/2020 8
9. What are the challenges in a distributed
microservice architecture?
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
9
Web App
Online Shop
Business
Service
Reviews Service
DB Service
Database Service
Business
Service
Product Service
Business
Service
Ratings Service
? HTTP 500
Security
Resilience
Routing
Logging
Monitoring
Tracing
Security
Resilience
Routing
Logging
Monitoring
Tracing
Security
Resilience
Routing
Logging
Monitoring
Tracing
10. You might end up in a Service Mess?
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
10
11. Proxy
Making a service mess to a service mesh
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
11
Web App
Online Shop
Business
Service
Product Service
Proxy
Business
Service
Reviews Service
Proxy
Relational
Database
Database Service
Proxy
Business
Service
Ratings Service
Proxy
Proxy deployed as “Sidecar”
with each service
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
12. Data
Plane
Istio Service Mesh Architecture
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
12
Business
Service
Product Service
Proxy
Relational
Database
Database Service
Proxy
Control
PlanePilot Galley Citadel
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Discovery
Configuration
Certificates
Mesh boundary
Egress
Gateway
Private Ingress
Gateway
Public Ingress
Gateway
External
Service
Private
Network
Public
Network
13. Routing – sample Service Mesh functions
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
13
Photo by Javier Allegue Barros on Unsplash
• Canary Releases
• A/B Testing
14. Resilience – Service Mesh
sample functions
•Circuit Breaker
•Retry
•Timeout
12/05/2020 14
Photo by Markus Spiske on Unsplash
15. Fault Injection – Service Mesh sample
functions
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
15
Photo by 🇨🇭 Claudio Schwarz | @purzlbaum on Unsplash
• Delays: increase response time
• Aborts: simulate crash failure
16. Service Mesh – Now
what’s the gain?
12/05/2020 16
Control
Photo by Erik Kroon on Unsplash
Transparency
Photo by Bud Helisson on Unsplash
Photo by Will Francis on Unsplash
Separation
of concerns
17. Identify API products in your Service Mesh?
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
17
Proxy
Web App
Online Shop
Business
Service
Product API
Proxy
Business
Service
Reviews Service
Proxy
Relational
Database
Database Service
Proxy
Business
Service
Ratings Service
Proxy
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Application
Consumer 1
Application
Consumer 2
Online Shop Application
18. What can you do with API products?
Share business!
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
18
E.g. In-Car-Delivery provided by DHL und Smart
19. What can you do with API products?
Share data!
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
19
Images by Daimler AG on Mercedes-Benz /developers
21. 12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
21
What is API
Management?
Image by Apigee on API Analytics Overview
See how your API was used.
22. What is API Management?
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
22
Image by Google / Apigee
API Lifecycle Management
23. What is API Management?
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
23
Image by Google
24. API Gateway
How can you manage your API?
Option 1: using a central API Gateway
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
24
Business
Service
Product API
Proxy
Application
Consumer 1
Application
Consumer 2
Control
PlaneAPI Mgmt Server
Self
Service
Developer
Portal
Provider
Portal
25. How can you manage your API?
Option 2: using a sidecar / proxy
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
25
Application
Consumer 1
Application
Consumer 2
Control
PlaneAPI Mgmt Server
Self
Service
Developer
Portal
Provider
Portal
Business
Service
Product API
Proxy
26. Service Mesh & API Mgmt ARC together
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
26
Data
Plane
Business
Service
Product API
Proxy
Relational
Database
Database Service
Proxy
Svc M.
Control
Plane
Pilot Galley Citadel
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Security,Resilience,
Routing,Logging,
Monitoring,Tracing
Discovery
Configuration
Certificates
Application
Consumer 1
Application
Consumer 2
API Mgmt
Control
Plane
API Mgmt Server
Self
Service
Developer
Portal
Provider
Portal
27. 12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
27
Feature Service Mesh API Management
Communication • L3, L4, L7 (HTTP) • L7 (HTTP based)
Use Case • Focus on networking
• Manage service communication
• Focus on business / Publish APIs to catalogue
• Manage API products and consumer subscriptions
Authorization • Service identities, client certificate • Developer apps (clients), Subscriptions, API Key, OAuth
Monitoring & analytics • traffic monitoring: latencies, error rates,
performance, etc.
• traffic monitoring
• Monitoring developer apps & subscription based API usage
Rate limiting • Protect service, requests per second • Business related, e.g. to provide tiers (gold, silver, etc.)
Proxies • Distributed sidecars, no workflows • Workflows possible like transformations, etc.
Self-Service Portals • Observability portals (e.g. Kiali)
• Restricted configuration features
• Developer Portal
• Provider Portal with extended config features
Monetization N/A • Billing, Reporting, rate plans, etc.
API Management & Service Meshes are
solving 2 different aspects
28. Follow Up?
• Drawback of Service Meshes?
• Sample Scenario: WSO2 API Management & Service Mesh in
practice?
• … Ideas? è feedback from community:
• Performance impact
• Services Meshes and messaging / ESBs / async scenarios
• Experiences with services meshes in productive applications
12/05/2020
Service Mesh meets API Management - Verteilte Services gut
im Griff!
28