SlideShare una empresa de Scribd logo
1 de 52
API Gateways are Going Through
an “Identity Crisis”
@soloio_inc
CHRISTIAN POSTA
• Field CTO @ solo.io
• Author of a few books
• Contributor to many open-source projects
• Architect, blogger, speaker, mentor, leader
https://bit.ly/istio-in-action
@christianposta
christian@solo.io
https://blog.christianposta.com
https://slideshare.net/ceposta
3 FREE COPIES AT END OF THE SESSION:
COMPLEMENTS OF SOLO.IO
https://bit.ly/istio-in-action
Identity
Crisis?
A period of uncertainty and
confusion in which a sense of
identity becomes insecure,
typically due to change in
expected aims or role
Integration sucks, let’s build APIs
Organizations will always have multiple
systems that need to talk to each other.
Definition of “API”
An explicitly and purposefully defined interface designed to be
invoked over a network that enables software developers to get
programmatic access to data and functionality within and
between an organization in a controlled and comfortable way.
Managing APIs
API Management systems
• Security
• Rate limiting
• Policy enforcement
• Logging
• Reporting
• API documentation
• Sign up
• Monetization plans
• Chargeback/billing
API Management reality
• Route everything through
an API Gateway and
series of load balancers
• Metrics collection
• Security enforcement
• Rate limiting
• Governance catalog
API Gateway reality
We’ve seen “API Gateway” become synonymous with solving
service-to-service governance and communication problems.
Microservices to go faster
• Smaller, independently
deployable services
• Decentralized communication
patterns
• Services own their own state
• Still needed to solve for
service-to-service
communication problems
Service to service communication
• Service discovery
• Load balancing
• Metric collection
• Resiliency (timeout, retry circuit breaker, rate limiting)
• Strong identity and security
• Policy enforcement
• Traffic control, routing, fine-grained request flow
• Distributed tracing
Service mesh for service to service
Service mesh functionality
• Fine-grained traffic control (at request level)
• End-to-end encryption with strong Identity
• Network-level (request) metric collection and tracing
• Policy enforcement
• Request-level resilience
Service mesh for service-to-service
Service mesh more adequately solves for, service-to-
service communication problems than a traditional API
Management solution/gateway, and is abstracted from
any particular deployment platform.
Service-to-service communication
Evolution of the term API Gateway…
So what about API Gateways?
Common wisdom
API Gateways: for north/south traffic
Service Mesh: for east/west traffic
Service-mesh ingress gateway
”north/south” traffic
”east/west” traffic
Some say the distinction between mesh and API Gatway
is north/south vs east/west traffic management?
Kubernetes ingress gateway
Federated cluster/mesh
Where, exactly, is the
north/south traffic?
API Gateway “Identity Crisis”
• Centralized, shared infrastructure that facilitate the exposure
and governance of existing APIs to external entities?
• Centralized, shared infrastructure that handles service-to-
service traffic?
• Cluster ingress sentries that tightly control what user traffic
comes into the cluster or leaves it?
• “North/south” traffic controller in a service mesh?
First principles are important
Let’s step back for a second.
What is the API Gateway design pattern?
Pattern?
https://twitter.com/starbuxman
API Gateway Pattern
“A service that’s the entry point into the
microservices-based application … is
responsible for request routing,
API composition, protocol translation …
and edge functions like authentication,
authorization, rate limiting, caching, et. al.”
See also: https://microservices.io/patterns/apigateway.html
https://www.manning.com/books/microservices-patterns
API Gateway Pattern: forces at play
• API surface intentionally smaller than what clients need (see
microservices)
• Clients become coupled to the architecture
• Microservices dilutes the notion of “what is an application”
• Service-to-service protocols not consumable outside the
architecture
• Clients on non-uniform networks with different latency and
bandwidth assumptions
• Should hide heterogeneous application architectures
API Gateway Pattern: what it does
• Tailored API for different kinds of clients
• Abstracts backend services, protocols, message shapes, etc
• Powerful matching/routing, discovery, transformation,
aggregation, protocol translation
• Backends for front-ends
• A developer-first construct
• Intended to be decentralized and change at the pace of your
applications
• Network-level functions including rate-limiting,
authentication/authorization, caching, metrics collection
API Gateway Pattern: what it does
API Gateways build flexible APIs
API Gateways build flexible APIs
API Gateways build flexible APIs
API Gateways build flexible APIs
API gateways are not about service-to-service communication.
API Gateways build flexible APIs
Build API Gateways with:
• Spring Cloud Gateway
• Netflix Zuul
• IBM Loopback
• Solo.io Gloo
• WSO2 Ballerina
• Apache Camel/Spring Integration
Meet Gloo, a next-generation API Gateway
https://github.com/solo-io/gloo
What is Gloo?
● Open-source; ASLv2
● Built on Envoy Proxy
● Routing engine for “function” composition
● SOAP, Swagger/REST, gRPC, HTTP/1, HTTP/2,
WebSockets
● Transformations
● Powerful discovery mechanisms
● Extensible control plane
● GraphQL Engine (https://sqoop.solo.io) https://gloo.solo.io
What is Gloo?
● Weighted routing, canary releases
● Offload authentication/authorization
● OAuth flows
● Plugin in to platform auth services
● TLS termination, passthrough, mTLS
● Rate limiting
● Dynamic configuration
● Deploy to any infrastructure
● Kubernetes native (when deployed to Kubernetes) https://gloo.solo.io
Gloo is based on Envoy Proxy
● Purpose built to make application network traffic
resilient and observable
● Good performance, written in C++
● Massive community adoption
● Vibrant, responsive community
● Dynamic configuration APIs
● Graduated project in CNCF
Used by:
https://envoyproxy.i
o
Gloo control plane
Gloo composes functions
● Request path
● Method
● Headers
● Body shape/type
● AWS Lambdas
● Google Cloud
Functions
● Azure Functions
func updateShoppingCart(custId int, item Item) Cart
Gloo composes functions
● Request path
● Method
● Headers
● Body shape/type
● AWS Lambdas
● Google Cloud
Functions
● Azure Functions
Functions?
● Request path
● Method
● Headers
● Body shape/type
● AWS Lambdas
● Google Cloud
Functions
● Azure Functions
Use Gloo to build a API Gateway
foo.io/customer foo.io/order bar.io/account bar.io/order
Monolith Microservices Cloud Functions Hybrid Application
Gloo companion project: Sqoop
Query
Monolith Microservices Cloud Functions
Result
https://sqoop.solo.io
Gloo companion project: Sqoop
https://sqoop.solo.io
● OpenSource GraphQL engine built on top of Gloo
● Configure GraphQL Schemas and Resolvers
● Default use Gloo upstreams as resolvers
● Leverage Gloo
○ Caching
○ Transformations
○ Security
○ Routing
○ Observability
● Can extend resolvers
● Part of newly announced GraphQL Foundation
http://bit.ly/graphql-foundation
Gloo as Kubernetes-native API Gateway
$ glooctl add route 
--path-exact /api/findCustomer 
--dest-name customer-upstream 
--rest-function-name findById
Use powerful Gloo CRDs to
configure Gloo’s Gateway:
● Gateway
● VirtualService
● Upstream
● Proxy
Gloo is complementary to Istio/service mesh
Gloo is complementary to Istio/service mesh
Check out Gloo!
https://gloo.solo.io https://sqoop.solo.io https://supergloo.solo.io
For more information
● https://solo.io/glooe-trial
● https://solo.io
● https://medium.com/solo-io
● https://twitter.com/soloio_inc
● https://gloo.solo.io
● https://sqoop.solo.io
● https://supergloo.solo.io
● https://squash.solo.io
HOW BOOK WINNERS WILL BE DECIDED:
https://bit.ly/istio-in-action
For everyone else: 40% off with code:
cpistio
Tweet with @christianposta and hashtag:
#Gloo and #Chicago
Example:
“Thanks @christianposta for the amazing
talk on APIs, service mesh, and of course,
#Gloo in #Chicago!”
The 1st, 5th, and 15th person will get a free copy!
Thank you
@soloio_inc

Más contenido relacionado

La actualidad más candente

Multicluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh PatternsMulticluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh PatternsChristian Posta
 
API World: The service-mesh landscape
API World: The service-mesh landscapeAPI World: The service-mesh landscape
API World: The service-mesh landscapeChristian Posta
 
Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)Christian Posta
 
The Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data PlaneThe Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data PlaneChristian Posta
 
Atlanta Microservices Day: Istio Service Mesh
Atlanta Microservices Day: Istio Service MeshAtlanta Microservices Day: Istio Service Mesh
Atlanta Microservices Day: Istio Service MeshChristian Posta
 
Microservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service meshMicroservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service meshChristian Posta
 
Come for the traffic management, stay for the security
Come for the traffic management, stay for the securityCome for the traffic management, stay for the security
Come for the traffic management, stay for the securityChristian Posta
 
Role of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoptionRole of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoptionChristian Posta
 
Microservices Journey Fall 2017
Microservices Journey Fall 2017Microservices Journey Fall 2017
Microservices Journey Fall 2017Christian Posta
 
Multi-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMeshMulti-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMeshChristian Posta
 
Istio: solving challenges of hybrid cloud
Istio: solving challenges of hybrid cloudIstio: solving challenges of hybrid cloud
Istio: solving challenges of hybrid cloudChristian Posta
 
Lowering the risk of monolith to microservices
Lowering the risk of monolith to microservicesLowering the risk of monolith to microservices
Lowering the risk of monolith to microservicesChristian Posta
 
Communication in a Microservice Architecture
Communication in a Microservice ArchitectureCommunication in a Microservice Architecture
Communication in a Microservice ArchitecturePer Bernhardt
 
Integration Microservices
Integration MicroservicesIntegration Microservices
Integration MicroservicesKasun Indrasiri
 
Microservices Integration Patterns with Kafka
Microservices Integration Patterns with KafkaMicroservices Integration Patterns with Kafka
Microservices Integration Patterns with KafkaKasun Indrasiri
 
High Productivity Platform
High Productivity PlatformHigh Productivity Platform
High Productivity PlatformChris Haddad
 
Eight Miles High: Build Cloud-native and Cloud-aware Systems
Eight Miles High: Build Cloud-native and Cloud-aware SystemsEight Miles High: Build Cloud-native and Cloud-aware Systems
Eight Miles High: Build Cloud-native and Cloud-aware SystemsChris Haddad
 
Bridging Microservices, APIs and Integration
Bridging Microservices, APIs and IntegrationBridging Microservices, APIs and Integration
Bridging Microservices, APIs and IntegrationKasun Indrasiri
 

La actualidad más candente (20)

Multicluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh PatternsMulticluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh Patterns
 
API World: The service-mesh landscape
API World: The service-mesh landscapeAPI World: The service-mesh landscape
API World: The service-mesh landscape
 
Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)
 
Intro to Knative
Intro to KnativeIntro to Knative
Intro to Knative
 
The Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data PlaneThe Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data Plane
 
Atlanta Microservices Day: Istio Service Mesh
Atlanta Microservices Day: Istio Service MeshAtlanta Microservices Day: Istio Service Mesh
Atlanta Microservices Day: Istio Service Mesh
 
Microservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service meshMicroservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service mesh
 
Come for the traffic management, stay for the security
Come for the traffic management, stay for the securityCome for the traffic management, stay for the security
Come for the traffic management, stay for the security
 
Role of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoptionRole of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoption
 
Microservices Journey Fall 2017
Microservices Journey Fall 2017Microservices Journey Fall 2017
Microservices Journey Fall 2017
 
Multi-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMeshMulti-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMesh
 
Istio: solving challenges of hybrid cloud
Istio: solving challenges of hybrid cloudIstio: solving challenges of hybrid cloud
Istio: solving challenges of hybrid cloud
 
Lowering the risk of monolith to microservices
Lowering the risk of monolith to microservicesLowering the risk of monolith to microservices
Lowering the risk of monolith to microservices
 
Communication in a Microservice Architecture
Communication in a Microservice ArchitectureCommunication in a Microservice Architecture
Communication in a Microservice Architecture
 
Integration Microservices
Integration MicroservicesIntegration Microservices
Integration Microservices
 
Microservices Integration Patterns with Kafka
Microservices Integration Patterns with KafkaMicroservices Integration Patterns with Kafka
Microservices Integration Patterns with Kafka
 
Microservice architecture-api-gateway-considerations
Microservice architecture-api-gateway-considerationsMicroservice architecture-api-gateway-considerations
Microservice architecture-api-gateway-considerations
 
High Productivity Platform
High Productivity PlatformHigh Productivity Platform
High Productivity Platform
 
Eight Miles High: Build Cloud-native and Cloud-aware Systems
Eight Miles High: Build Cloud-native and Cloud-aware SystemsEight Miles High: Build Cloud-native and Cloud-aware Systems
Eight Miles High: Build Cloud-native and Cloud-aware Systems
 
Bridging Microservices, APIs and Integration
Bridging Microservices, APIs and IntegrationBridging Microservices, APIs and Integration
Bridging Microservices, APIs and Integration
 

Similar a API Gateways are going through an identity crisis

Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...Callon Campbell
 
AWS Serverless API Management - Meetup
AWS Serverless API Management - MeetupAWS Serverless API Management - Meetup
AWS Serverless API Management - MeetupSamuel Vandecasteele
 
Extend soa with api management Sangam18
Extend soa with api management Sangam18Extend soa with api management Sangam18
Extend soa with api management Sangam18Vinay Kumar
 
Six Steps To Build A Successful API
Six Steps To Build A Successful APISix Steps To Build A Successful API
Six Steps To Build A Successful APIChris Haddad
 
Six Steps to Build Successful APIs
Six Steps to Build Successful APIsSix Steps to Build Successful APIs
Six Steps to Build Successful APIsWSO2
 
apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...
apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...
apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...apidays
 
API Economy, Realizing the Business Value of APIs
API Economy, Realizing the Business Value of APIsAPI Economy, Realizing the Business Value of APIs
API Economy, Realizing the Business Value of APIsColdFusionConference
 
Extend soa with api management spoug- Madrid
Extend soa with api management   spoug- MadridExtend soa with api management   spoug- Madrid
Extend soa with api management spoug- MadridVinay Kumar
 
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...WSO2
 
2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api Management2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api ManagementSmartWave
 
Integrating Alfresco with Portals
Integrating Alfresco with PortalsIntegrating Alfresco with Portals
Integrating Alfresco with PortalsPiergiorgio Lucidi
 
A Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices EditionA Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices Edition3scale
 
A Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices EditionA Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices EditionSteven Willmott
 
xConf-2022-api-gateway-service-mesh.pdf
xConf-2022-api-gateway-service-mesh.pdfxConf-2022-api-gateway-service-mesh.pdf
xConf-2022-api-gateway-service-mesh.pdfWesley Reisz
 
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Kai Wähner
 

Similar a API Gateways are going through an identity crisis (20)

Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
 
AWS Serverless API Management - Meetup
AWS Serverless API Management - MeetupAWS Serverless API Management - Meetup
AWS Serverless API Management - Meetup
 
Extend soa with api management Sangam18
Extend soa with api management Sangam18Extend soa with api management Sangam18
Extend soa with api management Sangam18
 
Six Steps To Build A Successful API
Six Steps To Build A Successful APISix Steps To Build A Successful API
Six Steps To Build A Successful API
 
Six Steps to Build Successful APIs
Six Steps to Build Successful APIsSix Steps to Build Successful APIs
Six Steps to Build Successful APIs
 
apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...
apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...
apidays LIVE Paris 2021 - Lessons from the API Stewardship Journey in Azure b...
 
M meijer api management - tech-days 2015
M meijer   api management - tech-days 2015M meijer   api management - tech-days 2015
M meijer api management - tech-days 2015
 
API Economy, Realizing the Business Value of APIs
API Economy, Realizing the Business Value of APIsAPI Economy, Realizing the Business Value of APIs
API Economy, Realizing the Business Value of APIs
 
Extend soa with api management spoug- Madrid
Extend soa with api management   spoug- MadridExtend soa with api management   spoug- Madrid
Extend soa with api management spoug- Madrid
 
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
 
Oow2016 review--paas-microservices-
Oow2016 review--paas-microservices-Oow2016 review--paas-microservices-
Oow2016 review--paas-microservices-
 
API Gateway report
API Gateway reportAPI Gateway report
API Gateway report
 
2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api Management2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api Management
 
Integrating Alfresco with Portals
Integrating Alfresco with PortalsIntegrating Alfresco with Portals
Integrating Alfresco with Portals
 
Api design part 1
Api design part 1Api design part 1
Api design part 1
 
Open Banking & Open Insurance
Open Banking & Open InsuranceOpen Banking & Open Insurance
Open Banking & Open Insurance
 
A Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices EditionA Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices Edition
 
A Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices EditionA Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices Edition
 
xConf-2022-api-gateway-service-mesh.pdf
xConf-2022-api-gateway-service-mesh.pdfxConf-2022-api-gateway-service-mesh.pdf
xConf-2022-api-gateway-service-mesh.pdf
 
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
 

Más de Christian Posta

Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Understanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload IdentityUnderstanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload IdentityChristian Posta
 
Compliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient MeshCompliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient MeshChristian Posta
 
Cilium + Istio with Gloo Mesh
Cilium + Istio with Gloo MeshCilium + Istio with Gloo Mesh
Cilium + Istio with Gloo MeshChristian Posta
 
Cloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service MeshCloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service MeshChristian Posta
 
Deep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo EnterpriseDeep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo EnterpriseChristian Posta
 
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and LinkerdNavigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and LinkerdChristian Posta
 
Chaos Debugging for Microservices
Chaos Debugging for MicroservicesChaos Debugging for Microservices
Chaos Debugging for MicroservicesChristian Posta
 
A microservices journey - Round 2
A microservices journey - Round 2A microservices journey - Round 2
A microservices journey - Round 2Christian Posta
 
The Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your ServicesThe Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your ServicesChristian Posta
 

Más de Christian Posta (10)

Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Understanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload IdentityUnderstanding Wireguard, TLS and Workload Identity
Understanding Wireguard, TLS and Workload Identity
 
Compliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient MeshCompliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient Mesh
 
Cilium + Istio with Gloo Mesh
Cilium + Istio with Gloo MeshCilium + Istio with Gloo Mesh
Cilium + Istio with Gloo Mesh
 
Cloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service MeshCloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service Mesh
 
Deep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo EnterpriseDeep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo Enterprise
 
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and LinkerdNavigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
 
Chaos Debugging for Microservices
Chaos Debugging for MicroservicesChaos Debugging for Microservices
Chaos Debugging for Microservices
 
A microservices journey - Round 2
A microservices journey - Round 2A microservices journey - Round 2
A microservices journey - Round 2
 
The Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your ServicesThe Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your Services
 

Último

Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 

Último (20)

Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 

API Gateways are going through an identity crisis

  • 1. API Gateways are Going Through an “Identity Crisis” @soloio_inc
  • 2. CHRISTIAN POSTA • Field CTO @ solo.io • Author of a few books • Contributor to many open-source projects • Architect, blogger, speaker, mentor, leader https://bit.ly/istio-in-action @christianposta christian@solo.io https://blog.christianposta.com https://slideshare.net/ceposta
  • 3. 3 FREE COPIES AT END OF THE SESSION: COMPLEMENTS OF SOLO.IO https://bit.ly/istio-in-action
  • 4. Identity Crisis? A period of uncertainty and confusion in which a sense of identity becomes insecure, typically due to change in expected aims or role
  • 5. Integration sucks, let’s build APIs Organizations will always have multiple systems that need to talk to each other.
  • 6. Definition of “API” An explicitly and purposefully defined interface designed to be invoked over a network that enables software developers to get programmatic access to data and functionality within and between an organization in a controlled and comfortable way.
  • 8. API Management systems • Security • Rate limiting • Policy enforcement • Logging • Reporting • API documentation • Sign up • Monetization plans • Chargeback/billing
  • 9. API Management reality • Route everything through an API Gateway and series of load balancers • Metrics collection • Security enforcement • Rate limiting • Governance catalog
  • 10. API Gateway reality We’ve seen “API Gateway” become synonymous with solving service-to-service governance and communication problems.
  • 11. Microservices to go faster • Smaller, independently deployable services • Decentralized communication patterns • Services own their own state • Still needed to solve for service-to-service communication problems
  • 12. Service to service communication • Service discovery • Load balancing • Metric collection • Resiliency (timeout, retry circuit breaker, rate limiting) • Strong identity and security • Policy enforcement • Traffic control, routing, fine-grained request flow • Distributed tracing
  • 13. Service mesh for service to service
  • 14. Service mesh functionality • Fine-grained traffic control (at request level) • End-to-end encryption with strong Identity • Network-level (request) metric collection and tracing • Policy enforcement • Request-level resilience
  • 15. Service mesh for service-to-service Service mesh more adequately solves for, service-to- service communication problems than a traditional API Management solution/gateway, and is abstracted from any particular deployment platform.
  • 17. Evolution of the term API Gateway… So what about API Gateways?
  • 18. Common wisdom API Gateways: for north/south traffic Service Mesh: for east/west traffic
  • 19. Service-mesh ingress gateway ”north/south” traffic ”east/west” traffic Some say the distinction between mesh and API Gatway is north/south vs east/west traffic management?
  • 21. Federated cluster/mesh Where, exactly, is the north/south traffic?
  • 22. API Gateway “Identity Crisis” • Centralized, shared infrastructure that facilitate the exposure and governance of existing APIs to external entities? • Centralized, shared infrastructure that handles service-to- service traffic? • Cluster ingress sentries that tightly control what user traffic comes into the cluster or leaves it? • “North/south” traffic controller in a service mesh?
  • 23. First principles are important Let’s step back for a second. What is the API Gateway design pattern?
  • 25. API Gateway Pattern “A service that’s the entry point into the microservices-based application … is responsible for request routing, API composition, protocol translation … and edge functions like authentication, authorization, rate limiting, caching, et. al.” See also: https://microservices.io/patterns/apigateway.html https://www.manning.com/books/microservices-patterns
  • 26. API Gateway Pattern: forces at play • API surface intentionally smaller than what clients need (see microservices) • Clients become coupled to the architecture • Microservices dilutes the notion of “what is an application” • Service-to-service protocols not consumable outside the architecture • Clients on non-uniform networks with different latency and bandwidth assumptions • Should hide heterogeneous application architectures
  • 27. API Gateway Pattern: what it does • Tailored API for different kinds of clients • Abstracts backend services, protocols, message shapes, etc • Powerful matching/routing, discovery, transformation, aggregation, protocol translation • Backends for front-ends • A developer-first construct • Intended to be decentralized and change at the pace of your applications • Network-level functions including rate-limiting, authentication/authorization, caching, metrics collection
  • 28. API Gateway Pattern: what it does
  • 29. API Gateways build flexible APIs
  • 30. API Gateways build flexible APIs
  • 31. API Gateways build flexible APIs
  • 32. API Gateways build flexible APIs API gateways are not about service-to-service communication.
  • 33. API Gateways build flexible APIs
  • 34. Build API Gateways with: • Spring Cloud Gateway • Netflix Zuul • IBM Loopback • Solo.io Gloo • WSO2 Ballerina • Apache Camel/Spring Integration
  • 35. Meet Gloo, a next-generation API Gateway https://github.com/solo-io/gloo
  • 36. What is Gloo? ● Open-source; ASLv2 ● Built on Envoy Proxy ● Routing engine for “function” composition ● SOAP, Swagger/REST, gRPC, HTTP/1, HTTP/2, WebSockets ● Transformations ● Powerful discovery mechanisms ● Extensible control plane ● GraphQL Engine (https://sqoop.solo.io) https://gloo.solo.io
  • 37. What is Gloo? ● Weighted routing, canary releases ● Offload authentication/authorization ● OAuth flows ● Plugin in to platform auth services ● TLS termination, passthrough, mTLS ● Rate limiting ● Dynamic configuration ● Deploy to any infrastructure ● Kubernetes native (when deployed to Kubernetes) https://gloo.solo.io
  • 38. Gloo is based on Envoy Proxy ● Purpose built to make application network traffic resilient and observable ● Good performance, written in C++ ● Massive community adoption ● Vibrant, responsive community ● Dynamic configuration APIs ● Graduated project in CNCF Used by: https://envoyproxy.i o
  • 40. Gloo composes functions ● Request path ● Method ● Headers ● Body shape/type ● AWS Lambdas ● Google Cloud Functions ● Azure Functions func updateShoppingCart(custId int, item Item) Cart
  • 41. Gloo composes functions ● Request path ● Method ● Headers ● Body shape/type ● AWS Lambdas ● Google Cloud Functions ● Azure Functions
  • 42. Functions? ● Request path ● Method ● Headers ● Body shape/type ● AWS Lambdas ● Google Cloud Functions ● Azure Functions
  • 43. Use Gloo to build a API Gateway foo.io/customer foo.io/order bar.io/account bar.io/order Monolith Microservices Cloud Functions Hybrid Application
  • 44. Gloo companion project: Sqoop Query Monolith Microservices Cloud Functions Result https://sqoop.solo.io
  • 45. Gloo companion project: Sqoop https://sqoop.solo.io ● OpenSource GraphQL engine built on top of Gloo ● Configure GraphQL Schemas and Resolvers ● Default use Gloo upstreams as resolvers ● Leverage Gloo ○ Caching ○ Transformations ○ Security ○ Routing ○ Observability ● Can extend resolvers ● Part of newly announced GraphQL Foundation http://bit.ly/graphql-foundation
  • 46. Gloo as Kubernetes-native API Gateway $ glooctl add route --path-exact /api/findCustomer --dest-name customer-upstream --rest-function-name findById Use powerful Gloo CRDs to configure Gloo’s Gateway: ● Gateway ● VirtualService ● Upstream ● Proxy
  • 47. Gloo is complementary to Istio/service mesh
  • 48. Gloo is complementary to Istio/service mesh
  • 49. Check out Gloo! https://gloo.solo.io https://sqoop.solo.io https://supergloo.solo.io
  • 50. For more information ● https://solo.io/glooe-trial ● https://solo.io ● https://medium.com/solo-io ● https://twitter.com/soloio_inc ● https://gloo.solo.io ● https://sqoop.solo.io ● https://supergloo.solo.io ● https://squash.solo.io
  • 51. HOW BOOK WINNERS WILL BE DECIDED: https://bit.ly/istio-in-action For everyone else: 40% off with code: cpistio Tweet with @christianposta and hashtag: #Gloo and #Chicago Example: “Thanks @christianposta for the amazing talk on APIs, service mesh, and of course, #Gloo in #Chicago!” The 1st, 5th, and 15th person will get a free copy!

Notas del editor

  1. Originally meant to expose APIs to external partners and users Users could sign up and pay for access to APIs Expose “plans”, share document
  2. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  3. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  4. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  5. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  6. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  7. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  8. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  9. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  10. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  11. This is what API Gateway from API Management vendors started to gravitate toward. Service mesh more adequately solves for this Located with the application No extra “hops” Strong identity and end-to-end security
  12. \